diff --git a/src/components/displays/department/tables/SelfServeTasksTable.vue b/src/components/displays/department/tables/SelfServeTasksTable.vue index 78b2b68c..8f70e2e3 100644 --- a/src/components/displays/department/tables/SelfServeTasksTable.vue +++ b/src/components/displays/department/tables/SelfServeTasksTable.vue @@ -8,6 +8,10 @@ const { loadList, loadSwitch, metaCurrentPage, metaItemsPerPage, setList } = use import { SessionUser } from "@/components/session/token/SessionUser.vue"; import { ref, watch } from "vue"; import SelfServeTaskAttachmentsModal from "@/components/displays/department/tables/SelfServeTaskAttachmentsModal.vue"; +import { + SELF_SERVE_TASK_BUTTON_OPTIONS, + normalizeSelfServeTaskButtons, +} from "@/components/session/token/SessionUser/Objects/selfServeTaskButtons.js"; // Define the props const props = defineProps({ @@ -36,24 +40,15 @@ const closeAttachmentsModal = () => { const editButtonsFunction = (id, column, value, onAfterSubmit) => { editingButtonsId.value = id; - try { - const parsed = JSON.stringify(value); - if (Array.isArray(parsed)) { - currentButtonsSelection.value = parsed; - } else { - console.warn('Parsed buttons value is not an array:', parsed); - currentButtonsSelection.value = []; - } - } catch (e) { - console.warn('Error parsing buttons value:', e); - currentButtonsSelection.value = []; - } + currentButtonsSelection.value = normalizeSelfServeTaskButtons(value); showButtonsEditModal.value = true; }; const saveButtonsEdit = async () => { - console.warn('Saving buttons with selection:', currentButtonsSelection.value); - await SessionUser.objects.self_serve_tasks.set.buttons(editingButtonsId.value, currentButtonsSelection.value); + await SessionUser.objects.self_serve_tasks.set.buttons( + editingButtonsId.value, + normalizeSelfServeTaskButtons(currentButtonsSelection.value) + ); showButtonsEditModal.value = false; loadList(); }; @@ -237,15 +232,15 @@ const getScopeLabel = (object) => {