diff --git a/components/form/communication/escalation-detail-new-form.tsx b/components/form/communication/escalation-detail-new-form.tsx index bc4b001b..4cec0e92 100644 --- a/components/form/communication/escalation-detail-new-form.tsx +++ b/components/form/communication/escalation-detail-new-form.tsx @@ -103,20 +103,6 @@ export default function FormQuestionsDetail() { const [selectedOperatorEscalation, setSelectedOperatorEscalation] = useState< string[] >([]); - // const [replies, setReplies] = useState([ - // // { - // // id: 1, - // // name: "Mabes Polri - Approver", - // // message: "test", - // // timestamp: "2024-12-20 00:56:10", - // // }, - // // { - // // id: 2, - // // name: "Mabes Polri - Approver", - // // message: "balas", - // // timestamp: "2025-01-18 17:42:48", - // // }, - // ]); const { control, @@ -156,12 +142,11 @@ export default function FormQuestionsDetail() { setDetail(detail); setDetailTickets(detail); - // Ambil escalationTeams seperti ":891:" if (detail?.escalationTeams) { const teamIds = detail.escalationTeams .split(":") - .filter((id: string) => id); // hapus string kosong - setSelectedOperatorEscalation(teamIds); // set ke state + .filter((id: string) => id); + setSelectedOperatorEscalation(teamIds); } getTicketReply(); @@ -409,7 +394,7 @@ export default function FormQuestionsDetail() { {/* Tag yang ditampilkan secara kolom */} {selectedOperator.length > 0 && ( -
+
{selectedOperator.map((id) => { const label = operatorOpt.find( (op: any) => op.value === id @@ -453,6 +438,7 @@ export default function FormQuestionsDetail() { className="flex items-center space-x-2 cursor-pointer px-2 py-1 hover:bg-gray-100 rounded" > { @@ -495,7 +481,7 @@ export default function FormQuestionsDetail() { {selectedOperatorEscalation.length > 0 && ( -
+
{selectedOperatorEscalation.map((id) => { const operator = curatorOpt.find( (op: any) => op.value === id diff --git a/components/form/communication/escalation-forward-form.tsx b/components/form/communication/escalation-forward-form.tsx index 0ef23d75..062276ce 100644 --- a/components/form/communication/escalation-forward-form.tsx +++ b/components/form/communication/escalation-forward-form.tsx @@ -43,7 +43,7 @@ import { import { ChevronDownIcon } from "lucide-react"; import { getOperatorUser } from "@/service/management-user/management-user"; import makeAnimated from "react-select/animated"; -import Select from "react-select"; +import Select, { ActionMeta, MultiValue } from "react-select"; interface Option { id: string; @@ -109,9 +109,7 @@ export default function FormQuestionsForward() { const [selectedOperator, setSelectedOperator] = useState([]); const [options, setOptions] = useState([]); const animatedComponent = makeAnimated(); - const [selectedOption, setSelectedOption] = useState
- {/*
+
-
*/} +
{preview && (
[]; - if ((Number(roleId) == 3 || Number(roleId) == 14) && Number(levelNumber) == 1) { + if ( + (Number(roleId) == 3 || Number(roleId) == 14) && + Number(levelNumber) == 1 + ) { menusSelected = [ { groupLabel: t("apps"), @@ -1531,13 +1534,236 @@ export function getMenuList(pathname: string, t: any): Group[] { icon: "heroicons:share", children: [], }, + // { + // href: "/contributor/content/spit", + // label: "spit", + // active: pathname.includes("/content/spit"), + // icon: "heroicons:credit-card", + // children: [], + // }, + // { + // href: "/contributor/content/nulis-ai", + // label: "nulis ai", + // active: pathname.includes("/content/nulisai"), + // icon: "heroicons:credit-card", + // children: [], + // }, + ], + }, + ], + }, + { + groupLabel: "", + id: "agenda-setting", + menus: [ + { + id: "agenda-setting", + href: "/contributor/agenda-setting", + label: t("agenda-setting"), + active: pathname.includes("/agenda-setting"), + icon: "iconoir:journal-page", + submenus: [], + }, + ], + }, + { + groupLabel: "", + id: "planning", + menus: [ + { + id: "planning", + href: "/contributor/planning", + label: t("planning"), + active: pathname.includes("/planning"), + icon: "pajamas:planning", + submenus: [ { - href: "/contributor/content/spit", - label: "spit", - active: pathname.includes("/content/spit"), - icon: "heroicons:credit-card", + href: "/contributor/planning/mediahub", + label: "mediaHub", + active: pathname.includes("/planning/mediahub"), + icon: "heroicons:arrow-trending-up", children: [], }, + { + href: "/contributor/planning/medsos-mediahub", + label: "medsos mediahub", + active: pathname.includes("/planning/medsos-mediahub"), + icon: "heroicons:shopping-cart", + children: [], + }, + ], + }, + ], + }, + { + groupLabel: "", + id: "task", + menus: [ + { + id: "task", + href: "/contributor/task", + label: t("task"), + active: pathname.includes("/task"), + icon: "fluent:clipboard-task-add-24-regular", + submenus: [], + }, + ], + }, + { + groupLabel: "", + id: "schedule", + menus: [ + { + id: "schedule", + href: "/contributor/schedule", + label: t("schedule"), + active: pathname.includes("/schedule"), + icon: "uil:schedule", + submenus: [ + { + href: "/contributor/schedule/press-conference", + label: t("press-conference"), + active: pathname.includes("/schedule/press-conference"), + icon: "heroicons:arrow-trending-up", + children: [], + }, + { + href: "/contributor/schedule/event", + label: t("event"), + active: pathname.includes("/schedule/event"), + icon: "heroicons:shopping-cart", + children: [], + }, + { + href: "/contributor/schedule/press-release", + label: t("press-release"), + active: pathname.includes("/schedule/press-release"), + icon: "heroicons:shopping-cart", + children: [], + }, + ], + }, + ], + }, + { + groupLabel: "", + id: "blog", + menus: [ + { + id: "blog", + href: "/contributor/blog", + label: t("blog"), + active: pathname.includes("/blog"), + icon: "fluent:clipboard-text-32-regular", + submenus: [], + }, + ], + }, + { + groupLabel: "", + id: "curatedcontent", + menus: [ + { + id: "curatedcontent", + href: "/shared/curated-content", + label: t("curated-content"), + active: pathname.includes("/curated-content"), + icon: "pixelarticons:calendar-text", + submenus: [], + }, + ], + }, + { + groupLabel: "", + id: "communication", + menus: [ + { + id: "communication", + href: "/shared/communication", + label: t("communication"), + active: pathname.includes("/communication"), + icon: "token:chat", + submenus: [], + }, + ], + }, + { + groupLabel: "", + id: "contest", + menus: [ + { + id: "contest", + href: "/shared/contest", + label: t("contest"), + active: pathname.includes("/contest"), + icon: "ic:outline-emoji-events", + submenus: [], + }, + ], + }, + ]; + } else if (Number(roleId) == 4 && Number(levelNumber) == 2) { + menusSelected = [ + { + groupLabel: t("apps"), + id: "dashboard", + menus: [ + { + id: "dashboard", + href: "/dashboard", + label: t("dashboard"), + active: pathname.includes("/dashboard"), + icon: "material-symbols:dashboard", + submenus: [], + }, + ], + }, + { + groupLabel: "", + id: "content", + menus: [ + { + id: "content", + href: "/contributor/content/image", + label: t("content"), + active: pathname.includes("/content"), + icon: "line-md:youtube", + submenus: [ + { + href: "/contributor/content/image", + label: t("image"), + active: pathname.includes("/content/image"), + icon: "ic:outline-image", + children: [], + }, + { + href: "/contributor/content/video", + label: t("video"), + active: pathname.includes("/content/video"), + icon: "line-md:youtube", + children: [], + }, + { + href: "/contributor/content/teks", + label: t("text"), + active: pathname.includes("/content/teks"), + icon: "heroicons:document", + children: [], + }, + { + href: "/contributor/content/audio", + label: t("audio"), + active: pathname.includes("/content/audio"), + icon: "heroicons:share", + children: [], + }, + // { + // href: "/contributor/content/spit", + // label: "spit", + // active: pathname.includes("/content/spit"), + // icon: "heroicons:credit-card", + // children: [], + // }, // { // href: "/contributor/content/nulis-ai", // label: "nulis ai", @@ -1700,7 +1926,7 @@ export function getMenuList(pathname: string, t: any): Group[] { }, ]; } else if ( - (Number(roleId) == 3 || Number(roleId) == 4 || Number(roleId) == 14 || Number(roleId) == 15) && + (Number(roleId) == 3 || Number(roleId) == 14 || Number(roleId) == 15) && Number(levelNumber) == 2 ) { if (Number(userLevelId) != 761) { @@ -2158,7 +2384,10 @@ export function getMenuList(pathname: string, t: any): Group[] { ]; } } else if ( - (Number(roleId) == 3 || Number(roleId) == 4 || Number(roleId) == 14 || Number(roleId) == 15) && + (Number(roleId) == 3 || + Number(roleId) == 4 || + Number(roleId) == 14 || + Number(roleId) == 15) && Number(levelNumber) == 3 ) { if (Number(userParentLevelId) != 761) { diff --git a/service/content/content.ts b/service/content/content.ts index 21d94937..d200a906 100644 --- a/service/content/content.ts +++ b/service/content/content.ts @@ -173,10 +173,10 @@ export async function createMedia(data: any) { export async function uploadThumbnail(id: any, data: any) { const url = `media/upload?id=${id}&operation=thumbnail`; - const headers = { - "Content-Type": "multipart/form-data", - }; - return httpPostInterceptor(url, data, headers); + // const headers = { + // "Content-Type": "multipart/form-data", + // }; + return httpPostInterceptor(url, data); } export async function detailSPIT(id: any) { @@ -234,4 +234,4 @@ export async function postActivityLog(data: any) { "content-type": "application/json", }; return httpPost(url, headers, data); -} \ No newline at end of file +}