From 3e727dad9b4bf90440a851f77733c718f3c30a25 Mon Sep 17 00:00:00 2001 From: amd123 Date: Wed, 20 Mar 2024 10:14:01 +0700 Subject: [PATCH] feat: dynamic ppid satker --- .../informasi-berkala/page.tsx | 7 + .../informasi-dikecualikan/page.tsx | 7 + .../informasi-serta-merta/page.tsx | 8 + .../informasi-setiap-saat/page.tsx | 8 + .../{ => informasi-publik}/layout.tsx | 0 .../penerangan-satuan/page.tsx | 8 + .../uu-dan-peraturan/page.tsx | 8 + .../satuan-kerja/[satker-name]/page.tsx | 4 + .../[satker-name]/profile/layout.tsx | 19 + components/Portal PPID/PPIDMainSatker.tsx | 1 - components/Portal PPID/PPIDPolda.tsx | 10 +- components/Portal PPID/PPIDSatker.tsx | 380 ++++-------------- components/Portal PPID/PublicInformation.tsx | 18 +- components/Portal PPID/Statistics.tsx | 8 +- components/Portal PPID/ppid-banner.tsx | 1 - components/navbar/FooterSatker.tsx | 2 +- components/navbar/NavbarSatker.tsx | 16 +- .../{polda-jabar.svg => polda-jawa-barat.svg} | 0 ...lda-sulut.svg => polda-sulawesi-utara.svg} | 0 .../satker/{humas.svg => div-humas.svg} | 0 .../satker/{pusdokes.svg => pusdokkes.svg} | 0 21 files changed, 193 insertions(+), 312 deletions(-) create mode 100644 app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-berkala/page.tsx create mode 100644 app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-dikecualikan/page.tsx create mode 100644 app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-serta-merta/page.tsx create mode 100644 app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-setiap-saat/page.tsx rename app/portal-ppid/satuan-kerja/[satker-name]/{ => informasi-publik}/layout.tsx (100%) create mode 100644 app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/penerangan-satuan/page.tsx create mode 100644 app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/uu-dan-peraturan/page.tsx create mode 100644 app/portal-ppid/satuan-kerja/[satker-name]/profile/layout.tsx rename public/assets/polda/{polda-jabar.svg => polda-jawa-barat.svg} (100%) rename public/assets/polda/{polda-sulut.svg => polda-sulawesi-utara.svg} (100%) rename public/assets/satker/{humas.svg => div-humas.svg} (100%) rename public/assets/satker/{pusdokes.svg => pusdokkes.svg} (100%) diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-berkala/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-berkala/page.tsx new file mode 100644 index 0000000..3d60269 --- /dev/null +++ b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-berkala/page.tsx @@ -0,0 +1,7 @@ +import InformasiBerkala from '@/components/table/informasi-berkala' + +export default function InformasiSMPage() { + return ( + + ) +} diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-dikecualikan/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-dikecualikan/page.tsx new file mode 100644 index 0000000..f7ad79d --- /dev/null +++ b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-dikecualikan/page.tsx @@ -0,0 +1,7 @@ +import InformasiDikecualikan from '@/components/table/informasi-dikecualikan' + +export default function InfromationExcluded() { + return ( + + ) +} diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-serta-merta/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-serta-merta/page.tsx new file mode 100644 index 0000000..748acb3 --- /dev/null +++ b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-serta-merta/page.tsx @@ -0,0 +1,8 @@ +import InformasiSertaMerta from '@/components/table/informasi-sertamerta' +import React from 'react' + +export default function InformasiSMPage() { + return ( + + ) +} diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-setiap-saat/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-setiap-saat/page.tsx new file mode 100644 index 0000000..f8c585c --- /dev/null +++ b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/informasi-setiap-saat/page.tsx @@ -0,0 +1,8 @@ +import InformasiSetiapSaat from '@/components/table/informasi-setiap-saat' +import React from 'react' + +export default function InformasiSSPage() { + return ( + + ) +} diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/layout.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/layout.tsx similarity index 100% rename from app/portal-ppid/satuan-kerja/[satker-name]/layout.tsx rename to app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/layout.tsx diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/penerangan-satuan/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/penerangan-satuan/page.tsx new file mode 100644 index 0000000..f96f194 --- /dev/null +++ b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/penerangan-satuan/page.tsx @@ -0,0 +1,8 @@ +import PeneranganSatuan from '@/components/table/penerangan-satuan' +import React from 'react' + +export default function UnitIlumintaion() { + return ( + + ) +} diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/uu-dan-peraturan/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/uu-dan-peraturan/page.tsx new file mode 100644 index 0000000..fe0c764 --- /dev/null +++ b/app/portal-ppid/satuan-kerja/[satker-name]/informasi-publik/uu-dan-peraturan/page.tsx @@ -0,0 +1,8 @@ +import UUPeraturan from '@/components/table/uu-peraturan' +import React from 'react' + +export default function LawsRegulation() { + return ( + + ) +} diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/page.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/page.tsx index fe24701..7d6e5ce 100644 --- a/app/portal-ppid/satuan-kerja/[satker-name]/page.tsx +++ b/app/portal-ppid/satuan-kerja/[satker-name]/page.tsx @@ -1,6 +1,8 @@ 'use client' import PPIDSatkerMain from '@/components/Portal PPID/PPIDMainSatker'; import PPIDBanner from '@/components/Portal PPID/ppid-banner'; +import FooterSatker from '@/components/navbar/FooterSatker'; +import NavbarSatker from '@/components/navbar/NavbarSatker'; import { usePathname } from 'next/navigation'; export default function SatkerPage() { @@ -9,8 +11,10 @@ export default function SatkerPage() { return (
+ +
) } diff --git a/app/portal-ppid/satuan-kerja/[satker-name]/profile/layout.tsx b/app/portal-ppid/satuan-kerja/[satker-name]/profile/layout.tsx new file mode 100644 index 0000000..36d5457 --- /dev/null +++ b/app/portal-ppid/satuan-kerja/[satker-name]/profile/layout.tsx @@ -0,0 +1,19 @@ +'use client' +import { SatkerLayout } from '@/components/layout/SatKerLayout'; +import { usePathname } from 'next/navigation'; +import React from 'react'; + +export default function DinamicSatkerLayout({ + children, +}: { + children: React.ReactNode +}) { + // const pathname = usePathname(); + // console.log(pathname) + + return ( + + {children} + + ) +} diff --git a/components/Portal PPID/PPIDMainSatker.tsx b/components/Portal PPID/PPIDMainSatker.tsx index 48be944..74a0b39 100644 --- a/components/Portal PPID/PPIDMainSatker.tsx +++ b/components/Portal PPID/PPIDMainSatker.tsx @@ -2,7 +2,6 @@ import LatestNews from './LatestNews' import MediaUpdate from './MediaUpdate' import PPIDSatkerSidebar from './PPIDSatkerSidebar' -import PPIDSidebar from './PPIDSidebar' import PublicInformation from './PublicInformation' import Statistics from './Statistics' diff --git a/components/Portal PPID/PPIDPolda.tsx b/components/Portal PPID/PPIDPolda.tsx index 70f031d..89655fd 100644 --- a/components/Portal PPID/PPIDPolda.tsx +++ b/components/Portal PPID/PPIDPolda.tsx @@ -1,8 +1,8 @@ 'use client' -import { BreadcrumbItem, Breadcrumbs, Button, Image, Input, Select, SelectItem, SelectSection, Table, TableBody, TableCell, TableColumn, TableHeader, TableRow } from "@nextui-org/react"; -import PPIDSidebar from '../Portal PPID/PPIDSidebar'; -import { EyeFilledIcon, SearchIcon } from '../icons'; +import { BreadcrumbItem, Breadcrumbs, Button, Image, Input } from "@nextui-org/react"; import Link from "next/link"; +import PPIDSidebar from '../Portal PPID/PPIDSidebar'; +import { SearchIcon } from '../icons'; export default function PPIDPolda() { @@ -16,7 +16,7 @@ export default function PPIDPolda() { }, { id: 2, - img: "/assets/polda/polda-jabar.svg", + img: "/assets/polda/polda-jawa-barat.svg", title: "Polda Jawa Barat", path: 'polda/polda-jawa-barat' }, @@ -172,7 +172,7 @@ export default function PPIDPolda() { }, { id: 28, - img: "/assets/polda/polda-sulut.svg", + img: "/assets/polda/polda-sulawesi-utara.svg", title: "Polda Sulawesi Utara", path: 'polda/polda-sulawesi-utara' }, diff --git a/components/Portal PPID/PPIDSatker.tsx b/components/Portal PPID/PPIDSatker.tsx index a5ab716..25aa5d1 100644 --- a/components/Portal PPID/PPIDSatker.tsx +++ b/components/Portal PPID/PPIDSatker.tsx @@ -7,223 +7,195 @@ import { SearchIcon } from '../icons'; export default function PPIDSatker() { + const listSatkerAll = [ { id: 1, - img: "/assets/polda/polda-metro.svg", - title: "Polda Metro Jaya", - path: 'polda/polda-metro-jaya' + img: "/assets/satker/siber.svg", + path: 'satuan-kerja/siber' }, { id: 2, - img: "/assets/polda/polda-jabar.svg", - title: "Polda Jawa Barat", - path: 'polda/polda-jawa-barat' + img: "/assets/satker/divkum.svg", + path: 'satuan-kerja/divkum' }, { id: 3, - img: "/assets/polda/polda-banten.svg", - title: "Polda Banten", - path: 'polda/polda-banten' + img: "/assets/satker/puskeu.svg", + path: 'satuan-kerja/puskeu' }, { id: 4, - img: "/assets/polda/polda-jateng.svg", - title: "Polda Jawa Tengah", - path: 'polda/polda-jateng' + img: "/assets/satker/ssdm.svg", + path: 'satuan-kerja/ssdm' }, { id: 5, - img: "/assets/polda/polda-diy.svg", - title: "Polda D.I Yogyakarta", - path: 'polda/polda-daerah-istimewa-yogyakarta' + img: "/assets/satker/itwasum.svg", + path: 'satuan-kerja/itwasum' }, { id: 6, - img: "/assets/polda/polda-jatim.svg", - title: "Polda Jawa Timur", - path: 'polda/polda-jawa-timur' + img: "/assets/satker/stik-ptik.svg", + path: 'satuan-kerja/stik-ptik' }, { id: 7, - img: "/assets/polda/polda-aceh.svg", - title: "Polda Aceh", - path: 'polda/polda-aceh' + img: "/assets/satker/brimob.svg", + path: 'satuan-kerja/brimob' }, { id: 8, - img: "/assets/polda/polda-sumut.svg", - title: "Polda Sumatra Utara", - path: 'polda/polda-sumatra-utara' + img: "/assets/satker/div-humas.svg", + path: 'satuan-kerja/div-humas' }, { id: 9, - img: "/assets/polda/polda-sumbar.svg", - title: "Polda Sumatra Barat", - path: 'polda/polda-sumatra-barat' + img: "/assets/satker/puslitbang.svg", + path: 'satuan-kerja/puslitbang' }, { id: 10, - img: "/assets/polda/polda-riau.svg", - title: "Polda Riau", - path: 'polda/polda-riau' + img: "/assets/satker/binmas.svg", + path: 'satuan-kerja/binmas' }, { id: 11, - img: "/assets/polda/polda-kepri.svg", - title: "Polda Kep.Riau", - path: 'polda/polda-kepulauan-riau' + img: "/assets/satker/divtik.svg", + path: 'satuan-kerja/divtik' }, { id: 12, - img: "/assets/polda/polda-jambi.svg", - title: "Polda Jambi", - path: 'polda/polda-jambi' + img: "/assets/satker/spripim.svg", + path: 'satuan-kerja/spripim' }, { id: 13, - img: "/assets/polda/polda-jambi.svg", - title: "Polda Jambi", - path: 'polda/polda-jambi' + img: "/assets/satker/propam.svg", + path: 'satuan-kerja/propam' }, { id: 14, - img: "/assets/polda/polda-sumsel.svg", - title: "Polda Sumatra Selatan", - path: 'polda/polda-sumatra-selatan' + img: "/assets/satker/baharkam.svg", + path: 'satuan-kerja/sabhara-baharkam' }, { id: 15, - img: "/assets/polda/polda-sumsel.svg", - title: "Polda Kep.Bangka Belitung", - path: 'polda/polda-bangka-belitung' + img: "/assets/satker/pusdokkes.svg", + path: 'satuan-kerja/pusdokkes' }, { id: 16, - img: "/assets/polda/polda-bengkulu.svg", - title: "Polda Bengkulu", - path: 'polda/polda-bengkulu' + img: "/assets/satker/baharkam2.svg", + path: 'satuan-kerja/baharkam' }, { id: 17, - img: "/assets/polda/polda-lampung.svg", - title: "Polda Lampung", - path: 'polda/polda-lampung' + img: "/assets/satker/polairud.svg", + path: 'satuan-kerja/polairud' }, { id: 18, - img: "/assets/polda/polda-ntb.svg", - title: "Polda Nusa Tenggara Barat", - path: 'polda/polda-ntb' + img: "/assets/satker/polair.svg", + path: 'satuan-kerja/polair' }, { id: 19, - img: "/assets/polda/polda-ntb.svg", - title: "Polda Nusa Tenggara Barat", - path: 'polda/polda-ntb' + img: "/assets/satker/poludara.svg", + path: 'satuan-kerja/poludara' }, { id: 20, - img: "/assets/polda/polda-ntt.svg", - title: "Polda Nusa Tenggara Timur", - path: 'polda/polda-ntt' + img: "/assets/satker/lemdiklat.svg", + path: 'satuan-kerja/lemdiklat' }, { id: 21, - img: "/assets/polda/polda-bali.svg", - title: "Polda Bali", - path: 'polda/polda-bali' + img: "/assets/satker/akpol.svg", + path: 'satuan-kerja/akpol' }, { id: 22, - img: "/assets/polda/polda-kalbar.svg", - title: "Polda Kalimantan Barat", - path: 'polda/polda-kalimantan-barat' + img: "/assets/satker/korlantas.svg", + path: 'satuan-kerja/korlantas' }, { id: 23, - img: "/assets/polda/polda-kalteng.svg", - title: "Polda Kalimantan Tengah", - path: 'polda/polda-kalimantan-tengah' + img: "/assets/satker/pusinafis.svg", + path: 'satuan-kerja/pusinafis' }, { id: 24, - img: "/assets/polda/polda-kalsel.svg", - title: "Polda Kalimantan Selatan", - path: 'polda/polda-kalimantan-selatan' + img: "/assets/satker/pusjarah.svg", + path: 'satuan-kerja/pusjarah' }, { id: 25, - img: "/assets/polda/polda-kaltim.svg", - title: "Polda Kalimantan Timur", - path: 'polda/polda-kalimantan-timur' + img: "/assets/satker/pusiknas.svg", + path: 'satuan-kerja/pusiknas' }, { id: 26, - img: "/assets/polda/polda-kalut.svg", - title: "Polda Kalimantan Utara", - path: 'polda/polda-kalimantan-utara' + img: "/assets/satker/slog.svg", + path: 'satuan-kerja/slog' }, { id: 27, - img: "/assets/polda/polda-sulteng.svg", - title: "Polda Sulawesi Tengah", - path: 'polda/polda-sulawesi-tengah' + img: "/assets/satker/baintelkam.svg", + path: 'satuan-kerja/baintelkam' }, { id: 28, - img: "/assets/polda/polda-sulut.svg", - title: "Polda Sulawesi Utara", - path: 'polda/polda-sulawesi-utara' + img: "/assets/satker/bareskrim.svg", + path: 'satuan-kerja/bareskrim' }, { id: 29, - img: "/assets/polda/polda-gorontalo.svg", - title: "Polda Gorontalo", - path: 'polda/polda-gorontalo' + img: "/assets/satker/divhubinter.svg", + path: 'satuan-kerja/div-hubinter' }, { id: 30, - img: "/assets/polda/polda-sulbar.svg", - title: "Polda Sulawesi Barat", - path: 'polda/polda-sulawesi-barat' + img: "/assets/satker/setum.svg", + path: 'satuan-kerja/setum' }, { id: 31, - img: "/assets/polda/polda-sulsel.svg", - title: "Polda Sulawesi Selatan", - path: 'polda/polda-sulawesi-selatan' + img: "/assets/satker/puslabfor.svg", + path: 'satuan-kerja/puslabfor' }, { id: 32, - img: "/assets/polda/polda-sultenggara.svg", - title: "Polda Sulawesi Tenggara", - path: 'polda/polda-sulawesi-tenggara' + img: "/assets/satker/densus.svg", + path: 'satuan-kerja/densus88' }, { id: 33, - img: "/assets/polda/polda-malut.svg", - title: "Polda Maluku Utara", - path: 'polda/polda-maluku-utara' + img: "/assets/satker/sahli-kapolri.svg", + path: 'satuan-kerja/sahli-kapolri' }, { id: 34, - img: "/assets/polda/polda-maluku.svg", - title: "Polda Maluku", - path: 'polda/polda-maluku' + img: "/assets/satker/sops.svg", + path: 'satuan-kerja/sops' }, { id: 35, - img: "/assets/polda/polda-papuabarat.svg", - title: "Polda Papua Barat", - path: 'polda/polda-papua-barat' + img: "/assets/satker/srena.svg", + path: 'satuan-kerja/srena' }, { id: 36, - img: "/assets/polda/polda-papua.svg", - title: "Polda Papua", - path: 'polda/polda-papua' + img: "/assets/satker/sespim.svg", + path: 'satuan-kerja/sespim' }, + { + id: 37, + img: "/assets/satker/setupa.svg", + path: 'satuan-kerja/setupa' + }, + + ]; @@ -267,191 +239,13 @@ export default function PPIDSatker() {
Satuan Kerja
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
-
- - logo - -
+ {listSatkerAll.map((data) => ( +
+ + logo + +
+ ))}
diff --git a/components/Portal PPID/PublicInformation.tsx b/components/Portal PPID/PublicInformation.tsx index 45a334d..166a883 100644 --- a/components/Portal PPID/PublicInformation.tsx +++ b/components/Portal PPID/PublicInformation.tsx @@ -1,10 +1,26 @@ +'use client' +import Link from 'next/link'; +import { usePathname } from 'next/navigation' import React from 'react' export default function PublicInformation() { + const pathname = usePathname() + const currentPath = pathname; + + let targetPath; + if (currentPath.includes('/satuan-kerja')) { + // Jika path adalah '/portal-ppid', arahkan ke '/portal-ppid/informasi-publik' + targetPath = '/portal-ppid/informasi-publik/informasi-serta-merta'; + } { + // Jika path adalah '/portal-ppid/satuan-kerja/div-humas', arahkan ke '/portal-ppid/satuan-kerja/div-humas/informasi-publik' + targetPath = '/portal-ppid/satuan-kerja/div-humas/informasi-publik/informasi-serta-merta'; + } + return (
- Informasi Publik + {targetPath}
+ {currentPath}
diff --git a/components/Portal PPID/Statistics.tsx b/components/Portal PPID/Statistics.tsx index e8c92f4..f4f103a 100644 --- a/components/Portal PPID/Statistics.tsx +++ b/components/Portal PPID/Statistics.tsx @@ -7,22 +7,22 @@ export default function Statistics() {

Statistik Pengunjung

-
laporan
+
laporan
5,000+
Pengaduan
-
laporan
+
laporan
97,439+
Permintaan Informasi
-
laporan
+
laporan
39+
Keberatan
-
laporan
+
laporan
16+
Lapor!
diff --git a/components/Portal PPID/ppid-banner.tsx b/components/Portal PPID/ppid-banner.tsx index 9f4a821..cb8aa05 100644 --- a/components/Portal PPID/ppid-banner.tsx +++ b/components/Portal PPID/ppid-banner.tsx @@ -6,7 +6,6 @@ interface PPIDBannerProps { url: string; } - export default function PPIDBanner({ url }: PPIDBannerProps) { return ( diff --git a/components/navbar/FooterSatker.tsx b/components/navbar/FooterSatker.tsx index 90150ba..2de5644 100644 --- a/components/navbar/FooterSatker.tsx +++ b/components/navbar/FooterSatker.tsx @@ -4,7 +4,7 @@ import { FbIcon, Hotline, IgIcon, Location, Mail, TtIcon, TwIcon, WorldIcon, YtI export default function FooterSatker() { return ( <> -
+