diff --git a/components/landing-page/search-section-polda.tsx b/components/landing-page/search-section-polda.tsx index d9f1f8d0..2b5cb137 100644 --- a/components/landing-page/search-section-polda.tsx +++ b/components/landing-page/search-section-polda.tsx @@ -12,14 +12,26 @@ import EventCalender from "./event-calender"; import UserSurveyBox from "./survey-box"; import ScrollableContentPolda from "./scrollable-content-polda"; import AdvertisementPlacements from "./advertisement-placements"; +import { useTheme } from "next-themes"; const SearchSectionPolda = () => { const [contentType, setContentType] = useState("all"); const [search, setSearch] = useState(""); const router = useRouter(); const t = useTranslations("LandingPage"); + const { theme } = useTheme(); + + // Determine background image based on theme + const getBackgroundImage = () => { + if (theme === "dark") { + return "url('/assets/background-dark.jpg')"; + } else { + return "url('/assets/background-white.jpg')"; + } + }; + return ( -
+
diff --git a/components/landing-page/search-section-satker.tsx b/components/landing-page/search-section-satker.tsx index eb1f8bf2..9cd1e8b7 100644 --- a/components/landing-page/search-section-satker.tsx +++ b/components/landing-page/search-section-satker.tsx @@ -13,14 +13,27 @@ import UserSurveyBox from "./survey-box"; import ScrollableContentPolda from "./scrollable-content-polda"; import ScrollableContentSatker from "./scrollable-content-satker"; import AdvertisementPlacements from "./advertisement-placements"; +import { useTheme } from "next-themes"; const SearchSectionSatker = () => { const [contentType, setContentType] = useState("all"); const [search, setSearch] = useState(""); const router = useRouter(); const t = useTranslations("LandingPage"); + + const { theme } = useTheme(); + + // Determine background image based on theme + const getBackgroundImage = () => { + if (theme === "dark") { + return "url('/assets/background-dark.jpg')"; + } else { + return "url('/assets/background-white.jpg')"; + } + }; + return ( -
+
diff --git a/components/landing-page/search-section.tsx b/components/landing-page/search-section.tsx index a1a58d8d..ee26e1e7 100644 --- a/components/landing-page/search-section.tsx +++ b/components/landing-page/search-section.tsx @@ -11,6 +11,7 @@ import { useTranslations } from "next-intl"; import { useRouter } from "next/navigation"; import router from "next/router"; import React, { useState } from "react"; +import { useTheme } from "next-themes"; import ScrollableContent from "./search-section-new"; import NewContent from "./new-content"; import ContentCategory from "./content-category"; @@ -24,10 +25,21 @@ const SearchSection = () => { const [search, setSearch] = useState(""); const router = useRouter(); const t = useTranslations("LandingPage"); + const { theme } = useTheme(); + + // Determine background image based on theme + const getBackgroundImage = () => { + if (theme === "dark") { + return "url('/assets/background-dark.jpg')"; + } else { + return "url('/assets/background-white.jpg')"; + } + }; + return (
diff --git a/components/partials/auth/login-form.tsx b/components/partials/auth/login-form.tsx index ca632089..ec9e36e8 100644 --- a/components/partials/auth/login-form.tsx +++ b/components/partials/auth/login-form.tsx @@ -147,119 +147,105 @@ const LoginForm = () => { }); const profile = await getProfile(access_token); console.log("PROFILE : ", profile?.data?.data); - + + Cookies.set("home_path", profile?.data?.data?.homePath, { + expires: 1, + }); + Cookies.set( + "profile_picture", + profile?.data?.data?.profilePictureUrl, + { + expires: 1, + } + ); + Cookies.set("state", profile?.data?.data?.userLevel?.name, { + expires: 1, + }); + Cookies.set( + "state-prov", + profile.data?.data?.userLevel?.province?.provName, + { + expires: 1, + } + ); + setCookiesEncrypt("uie", profile?.data?.data?.id, { + expires: 1, + }); + setCookiesEncrypt("urie", profile?.data?.data?.roleId, { + expires: 1, + }); + setCookiesEncrypt("urne", profile?.data?.data?.role?.name, { + expires: 1, + }); + setCookiesEncrypt("ulie", profile?.data?.data?.userLevel?.id, { + expires: 1, + }); + setCookiesEncrypt( + "uplie", + profile?.data?.data?.userLevel?.parentLevelId, + { + expires: 1, + } + ); + setCookiesEncrypt( + "ulne", + profile?.data?.data?.userLevel?.levelNumber, + { + expires: 1, + } + ); + setCookiesEncrypt("ufne", profile?.data?.data?.fullname, { + expires: 1, + }); + setCookiesEncrypt("ulnae", profile?.data?.data?.userLevel?.name, { + expires: 1, + }); + setCookiesEncrypt("uinse", profile?.data?.data?.instituteId, { + expires: 1, + }); + console.log("ssaddd", profile?.data?.data?.roleId); if ( - profile?.data?.data?.isInternational == true || - profile?.data?.data?.isActive == false || - profile?.data?.data?.isDelete == true + Number(profile?.data?.data?.roleId) == 2 || + Number(profile?.data?.data?.roleId) == 3 || + Number(profile?.data?.data?.roleId) == 4 || + Number(profile?.data?.data?.roleId) == 9 || + Number(profile?.data?.data?.roleId) == 10 || + Number(profile?.data?.data?.roleId) == 11 || + Number(profile?.data?.data?.roleId) == 12 || + Number(profile?.data?.data?.roleId) == 18 || + Number(profile?.data?.data?.roleId) == 19 ) { - Object.keys(Cookies.get()).forEach((cookieName) => { - Cookies.remove(cookieName); - }); - warning( - "Akun Anda tidak dapat digunakan untuk masuk ke MediaHub Polri", - "/auth/login" - ); - } else { - Cookies.set("home_path", profile?.data?.data?.homePath, { - expires: 1, - }); - Cookies.set( - "profile_picture", - profile?.data?.data?.profilePictureUrl, - { + if (profile?.data?.data?.roleId === 18) { + window.location.href = "/in/dashboard/executive-data"; + // router.push('/admin/dashboard'); + Cookies.set("status", "login", { expires: 1, - } - ); - Cookies.set("state", profile?.data?.data?.userLevel?.name, { - expires: 1, - }); - Cookies.set( - "state-prov", - profile.data?.data?.userLevel?.province?.provName, - { + }); + } else if (profile?.data?.data?.roleId === 2) { + window.location.href = "/in/dashboard/executive"; + Cookies.set("status", "login", { expires: 1, - } - ); - setCookiesEncrypt("uie", profile?.data?.data?.id, { - expires: 1, - }); - setCookiesEncrypt("urie", profile?.data?.data?.roleId, { - expires: 1, - }); - setCookiesEncrypt("urne", profile?.data?.data?.role?.name, { - expires: 1, - }); - setCookiesEncrypt("ulie", profile?.data?.data?.userLevel?.id, { - expires: 1, - }); - setCookiesEncrypt( - "uplie", - profile?.data?.data?.userLevel?.parentLevelId, - { - expires: 1, - } - ); - setCookiesEncrypt( - "ulne", - profile?.data?.data?.userLevel?.levelNumber, - { - expires: 1, - } - ); - setCookiesEncrypt("ufne", profile?.data?.data?.fullname, { - expires: 1, - }); - setCookiesEncrypt("ulnae", profile?.data?.data?.userLevel?.name, { - expires: 1, - }); - setCookiesEncrypt("uinse", profile?.data?.data?.instituteId, { - expires: 1, - }); - console.log("ssaddd", profile?.data?.data?.roleId); - if ( - Number(profile?.data?.data?.roleId) == 2 || - Number(profile?.data?.data?.roleId) == 3 || - Number(profile?.data?.data?.roleId) == 4 || - Number(profile?.data?.data?.roleId) == 9 || - Number(profile?.data?.data?.roleId) == 10 || - Number(profile?.data?.data?.roleId) == 11 || - Number(profile?.data?.data?.roleId) == 12 || - Number(profile?.data?.data?.roleId) == 18 || - Number(profile?.data?.data?.roleId) == 19 + }); + } else if ( + profile?.data?.data?.userLevel?.id == 794 || + profile?.data?.data?.userLevel?.parentLevelId == 761 ) { - if (profile?.data?.data?.roleId === 18) { - window.location.href = "/in/dashboard/executive-data"; - // router.push('/admin/dashboard'); - Cookies.set("status", "login", { - expires: 1, - }); - } else if (profile?.data?.data?.roleId === 2) { - window.location.href = "/in/dashboard/executive"; - Cookies.set("status", "login", { - expires: 1, - }); - } else if ( - profile?.data?.data?.userLevel?.id == 794 || - profile?.data?.data?.userLevel?.parentLevelId == 761 - ) { - window.location.href = "/in/dashboard"; - Cookies.set("status", "login", { - expires: 1, - }); - } else { - window.location.href = "/in/dashboard"; - // router.push('/admin/dashboard'); - Cookies.set("status", "login", { - expires: 1, - }); - } + window.location.href = "/in/dashboard"; + Cookies.set("status", "login", { + expires: 1, + }); } else { - window.location.href = "/"; + window.location.href = "/in/dashboard"; + // router.push('/admin/dashboard'); Cookies.set("status", "login", { expires: 1, }); } + } else { + window.location.href = "/"; + Cookies.set("status", "login", { + expires: 1, + }); } } } catch (err: any) { diff --git a/hooks/use-auth.ts b/hooks/use-auth.ts index ba991d35..bbd9c3b4 100644 --- a/hooks/use-auth.ts +++ b/hooks/use-auth.ts @@ -105,14 +105,14 @@ export const useAuth = (): AuthContextType => { } // Validate user eligibility - if (!isUserEligible(profile)) { - clearAllCookies(); - warning( - "Akun Anda tidak dapat digunakan untuk masuk ke MediaHub Polri", - "/auth" - ); - return; - } + // if (!isUserEligible(profile)) { + // clearAllCookies(); + // warning( + // "Akun Anda tidak dapat digunakan untuk masuk ke MediaHub Polri", + // "/auth" + // ); + // return; + // } // Set profile cookies setProfileCookies(profile); diff --git a/lib/auth-utils.ts b/lib/auth-utils.ts index 788fb471..bcac0dd1 100644 --- a/lib/auth-utils.ts +++ b/lib/auth-utils.ts @@ -10,7 +10,6 @@ import { getCookiesDecrypt, setCookiesEncrypt } from "@/lib/utils"; // Navigation configuration based on user roles export const NAVIGATION_CONFIG: NavigationConfig[] = [ - { roleId: 18, path: "/in/dashboard/executive-data", label: "Executive Data Dashboard" }, { roleId: 2, path: "/in/dashboard/executive", label: "Executive Dashboard" }, { roleId: 3, path: "/in/dashboard", label: "Dashboard" }, { roleId: 4, path: "/in/dashboard", label: "Dashboard" }, @@ -18,6 +17,10 @@ export const NAVIGATION_CONFIG: NavigationConfig[] = [ { roleId: 10, path: "/in/dashboard", label: "Dashboard" }, { roleId: 11, path: "/in/dashboard", label: "Dashboard" }, { roleId: 12, path: "/in/dashboard", label: "Dashboard" }, + { roleId: 13, path: "/in/dashboard", label: "Dashboard" }, + { roleId: 14, path: "/in/dashboard", label: "Dashboard" }, + { roleId: 15, path: "/in/dashboard", label: "Dashboard" }, + { roleId: 18, path: "/in/dashboard/executive-data", label: "Executive Data Dashboard" }, { roleId: 19, path: "/in/dashboard", label: "Dashboard" }, ]; @@ -101,6 +104,8 @@ export const isSpecialLevel = (userLevelId: number, parentLevelId?: number): boo // Navigation utilities export const getNavigationPath = (roleId: number, userLevelId?: number, parentLevelId?: number): string => { const config = NAVIGATION_CONFIG.find(nav => nav.roleId === roleId); + + console.log("Navigation Config : ", config); if (config) { // Special handling for role 2 with specific level conditions diff --git a/public/assets/background-dark.jpg b/public/assets/background-dark.jpg new file mode 100644 index 00000000..083f5350 Binary files /dev/null and b/public/assets/background-dark.jpg differ diff --git a/public/assets/background-white.jpg b/public/assets/background-white.jpg new file mode 100644 index 00000000..6e0ed904 Binary files /dev/null and b/public/assets/background-white.jpg differ