From 1563c462a2fe4843462f106bae7c0d072c3588a8 Mon Sep 17 00:00:00 2001 From: kolaente Date: Fri, 6 Dec 2024 14:56:39 +0100 Subject: [PATCH] fix(projects): correctly calculate the number of tasks and projects to delete --- .../settings/ProjectSettingsDelete.vue | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/frontend/src/views/project/settings/ProjectSettingsDelete.vue b/frontend/src/views/project/settings/ProjectSettingsDelete.vue index 69bd6c38f..74512eee7 100644 --- a/frontend/src/views/project/settings/ProjectSettingsDelete.vue +++ b/frontend/src/views/project/settings/ProjectSettingsDelete.vue @@ -49,7 +49,7 @@ const router = useRouter() const totalTasks = ref(null) const project = computed(() => projectStore.projects[route.params.projectId]) -const childProjectIds = ref([]) +const projectIdsToDelete = ref([]) watchEffect( async () => { @@ -57,13 +57,14 @@ watchEffect( return } - childProjectIds.value = projectStore.getChildProjects(parseInt(route.params.projectId)).map(p => p.id) - if (childProjectIds.value.length === 0) { - childProjectIds.value = [parseInt(route.params.projectId)] - } + projectIdsToDelete.value = projectStore + .getChildProjects(parseInt(route.params.projectId)) + .map(p => p.id) + + projectIdsToDelete.value.push(parseInt(route.params.projectId)) const taskService = new TaskService() - await taskService.getAll({}, {filter: `project in ${childProjectIds.value.join(',')}`}) + await taskService.getAll({}, {filter: `project in ${projectIdsToDelete.value.join(',')}`}) totalTasks.value = taskService.totalPages * taskService.resultCount }, ) @@ -72,10 +73,10 @@ useTitle(() => t('project.delete.title', {project: project?.value?.title})) const deleteNotice = computed(() => { if(totalTasks.value && totalTasks.value > 0) { - if (childProjectIds.value.length <= 1) { + if (projectIdsToDelete.value.length <= 1) { return t('project.delete.tasksToDelete', {count: totalTasks.value}) - } else if (childProjectIds.value.length > 1) { - return t('project.delete.tasksAndChildProjectsToDelete', {tasks: totalTasks.value, projects: childProjectIds.value.length}) + } else if (projectIdsToDelete.value.length > 1) { + return t('project.delete.tasksAndChildProjectsToDelete', {tasks: totalTasks.value, projects: projectIdsToDelete.value.length}) } }