This commit is contained in:
sajjadtalkhabi
2026-05-21 15:51:32 +03:30
parent 8990ceaddd
commit 74227d5021
71 changed files with 2014 additions and 1666 deletions
+16 -12
View File
@@ -149,18 +149,22 @@ const { data: existingTerm } = useAdminTermQuery(termId, {
enabled: () => !!termId.value,
})
watch(existingTerm, (term) => {
if (!term) return
form.value = {
title: term.title || '',
description: term.description || '',
isActive: term.isActive ?? true,
startsAt: term.startsAt || '',
endsAt: term.endsAt || '',
coverMediaId: term.coverMediaId || null,
}
if (term.coverUrl) image.value = { url: term.coverUrl }
})
watch(
existingTerm,
(term) => {
console.log(term)
if (!term) return
form.value = {
title: term.title || '',
description: term.description || '',
isActive: term.isActive ?? true,
startsAt: term.startsAt || '',
endsAt: term.endsAt || '',
}
if (term.coverUrl) image.value = { url: term.coverUrl }
},
{ immediate: true }
)
const uploadMutation = useUploadMediaMutation()
@@ -73,9 +73,8 @@ import AttachCourseToTermModal from '@/features/admin/terms/components/modals/At
import {
adminTermsKeys,
useAdminTermsListQuery,
useChangeAdminTermStatusMutation,
useCloneAdminTermMutation,
useDeleteAdminTermMutation,
useUpdateAdminTermMutation,
} from '@/services/query/admin-terms'
const router = useRouter()
@@ -110,8 +109,8 @@ const onEdit = (term) => {
const invalidate = () => queryClient.invalidateQueries({ queryKey: adminTermsKeys.all })
const deleteMutation = useDeleteAdminTermMutation()
const cloneMutation = useCloneAdminTermMutation()
const changeStatusMutation = useChangeAdminTermStatusMutation()
// Backend has no dedicated status endpoint — PATCH /terms/:id with { isActive }.
const updateMutation = useUpdateAdminTermMutation()
const onAskDelete = (term) => {
openModal('ConfirmModal', {
@@ -121,12 +120,8 @@ const onAskDelete = (term) => {
})
}
const onClone = (term) => {
cloneMutation.mutate(term.id, { onSuccess: invalidate })
}
const onChangeStatus = ({ id, isActive }) => {
changeStatusMutation.mutate({ id, payload: { isActive } }, { onSuccess: invalidate })
updateMutation.mutate({ id, payload: { isActive } }, { onSuccess: invalidate })
}
const onShowDetails = (term) => {