#style: Tampilan home

Deskripsi:
- Tampilan tamplate layout positionnya di ganti fixed ( tidak bisa di tarik ke bawah jika sudah menjadi aplikasi )
- UI Home selesai
- UI User search selesai
- UI Notifikasi selesai
## No issuee
This commit is contained in:
2024-07-09 10:25:18 +08:00
parent cbe4a7b2c0
commit 9068631c33
61 changed files with 1390 additions and 1156 deletions

View File

@@ -0,0 +1,66 @@
"use client"
import { Stack, Paper, Text, List, Box } from "@mantine/core";
import { useState } from "react";
import { MODEL_FORUM_KOMENTAR } from "../../model/interface";
import { AccentColor, MainColor } from "@/app_modules/component_global/color/color_pallet";
export function ComponentForum_UiDetailReportKomentar({
dataKomentar,
}: {
dataKomentar: any;
}) {
const [data, setData] = useState<MODEL_FORUM_KOMENTAR>(dataKomentar.data);
const [list, setList] = useState<any[]>(dataKomentar.list);
return (
<>
<Box
p={"md"}
style={{
backgroundColor: MainColor.darkblue,
border: `2px solid ${AccentColor.blue}`,
borderRadius: "10px 10px 10px 10px",
}}
>
<Stack c="white">
<Text fw={"bold"} align="center" mb={"lg"}>
Komentar anda telah dihapus dari sebuah postingan oleh ADMIN, karena
memiliki beberapa laporan dari pengguna lain !
</Text>
<Stack spacing={"xs"}>
<Text fw={"bold"}>Komentar anda</Text>
<Paper withBorder p={"sm"}>
<Text>
<div dangerouslySetInnerHTML={{ __html: data.komentar }} />
</Text>
</Paper>
</Stack>
<Stack spacing={"xs"}>
<Text fw={"bold"}>
Pada postingan : {data.Forum_Posting.Author.username}
</Text>
<Paper withBorder p={"sm"}>
<Text>
<div
dangerouslySetInnerHTML={{
__html: data.Forum_Posting.diskusi,
}}
/>
</Text>
</Paper>
</Stack>
<Stack spacing={"xs"}>
<Text fw={"bold"}>Laporan yang diterima :</Text>
<List withPadding>
{list.map((x, i) => (
<List.Item c={"white"} key={i}>{x}</List.Item>
))}
</List>
</Stack>
</Stack>
</Box>
</>
);
}

View File

@@ -0,0 +1,61 @@
"use client";
import { Stack, Paper, Text, List, Box } from "@mantine/core";
import { useState } from "react";
import { MODEL_FORUM_POSTING } from "../../model/interface";
import {
AccentColor,
MainColor,
} from "@/app_modules/component_global/color/color_pallet";
export function ComponentForum_UiDetailReportPosting({
dataPosting,
}: {
dataPosting: any;
}) {
const [data, setData] = useState<MODEL_FORUM_POSTING>(dataPosting.data);
const [list, setList] = useState<any[]>(dataPosting.list);
return (
<>
<Box
p={"md"}
style={{
backgroundColor: MainColor.darkblue,
border: `2px solid ${AccentColor.blue}`,
borderRadius: "10px 10px 10px 10px",
}}
>
<Stack c="white">
<Text fw={"bold"} align="center" mb={"lg"}>
Postingan anda telah dihapus dari beranda oleh ADMIN, karena
memiliki beberapa laporan dari pengguna lain !
</Text>
<Stack spacing={"xs"}>
<Text fw={"bold"}>Pada postingan</Text>
<Paper withBorder p={"sm"}>
<Text>
<div
dangerouslySetInnerHTML={{
__html: data.diskusi,
}}
/>
</Text>
</Paper>
</Stack>
<Stack spacing={"xs"}>
<Text fw={"bold"}>Laporan yang diterima :</Text>
<List withPadding>
{list.map((x, i) => (
<List.Item c={"white"} key={i}>
{x}
</List.Item>
))}
</List>
</Stack>
</Stack>
</Box>
</>
);
}

View File

@@ -4,8 +4,8 @@ import { AppShell } from "@mantine/core";
import React from "react";
import ComponentForum_HeaderTamplate from "../component/header/header_tamplate";
import AppComponentGlobal_LayoutTamplate from "@/app_modules/component_global/component_layout_tamplate";
import ComponentGlobal_UI_LayoutTamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import ComponentGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
export default function LayoutForum_Create({
children,
@@ -14,11 +14,11 @@ export default function LayoutForum_Create({
}) {
return (
<>
<ComponentGlobal_UI_LayoutTamplate
header={<ComponentGlobal_UI_HeaderTamplate title="Tambah Postingan"/>}
<LayoutGlobal_UI_Tamplate
header={<LayoutGlobal_UI_HeaderTamplate title="Tambah Postingan"/>}
>
{children}
</ComponentGlobal_UI_LayoutTamplate>
</LayoutGlobal_UI_Tamplate>
{/* <AppComponentGlobal_LayoutTamplate header={<ComponentForum_HeaderTamplate title="Tambah Postingan" />}>

View File

@@ -1,19 +1,7 @@
"use client";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import { ComponentForum_UiDetailReportKomentar } from "../component/detail_component/ui_report_komentar";
import AppComponentGlobal_LayoutTamplate from "@/app_modules/component_global/component_layout_tamplate";
import ComponentForum_HeaderTamplate from "../component/header/header_tamplate";
import {
Box,
Center,
Group,
List,
Paper,
Stack,
Text,
Title,
} from "@mantine/core";
import { MODEL_FORUM_KOMENTAR, MODEL_FORUM_POSTING } from "../model/interface";
import { useState } from "react";
export default function Forum_DetailReportKomentar({
dataKomentar,
@@ -22,58 +10,13 @@ export default function Forum_DetailReportKomentar({
}) {
return (
<>
<AppComponentGlobal_LayoutTamplate
header={<ComponentForum_HeaderTamplate title="Report Komentar" />}
<LayoutGlobal_UI_Tamplate
header={<LayoutGlobal_UI_HeaderTamplate title="Report Komentar" />}
>
{<View dataKomentar={dataKomentar} />}
</AppComponentGlobal_LayoutTamplate>
{<ComponentForum_UiDetailReportKomentar dataKomentar={dataKomentar} />}
</LayoutGlobal_UI_Tamplate>
</>
);
}
function View({ dataKomentar }: { dataKomentar: any }) {
const [data, setData] = useState<MODEL_FORUM_KOMENTAR>(dataKomentar.data);
const [list, setList] = useState<any[]>(dataKomentar.list);
return (
<>
<Stack>
<Text fw={"bold"} align="center" mb={"lg"}>
Komentar anda telah dihapus dari sebuah postingan oleh ADMIN, karena
memiliki beberapa laporan dari pengguna lain !
</Text>
<Stack spacing={"xs"}>
<Text fw={"bold"}>Komentar anda</Text>
<Paper withBorder p={"sm"}>
<Text>
<div dangerouslySetInnerHTML={{ __html: data.komentar }} />
</Text>
</Paper>
</Stack>
<Stack spacing={"xs"}>
<Text fw={"bold"}>
Pada postingan : {data.Forum_Posting.Author.username}
</Text>
<Paper withBorder p={"sm"}>
<Text>
<div
dangerouslySetInnerHTML={{
__html: data.Forum_Posting.diskusi,
}}
/>
</Text>
</Paper>
</Stack>
<Stack spacing={"xs"}>
<Text fw={"bold"}>Laporan yang diterima :</Text>
<List withPadding>
{list.map((x, i) => (
<List.Item key={i}>{x}</List.Item>
))}
</List>
</Stack>
</Stack>
</>
);
}

View File

@@ -1,10 +1,7 @@
"use client";
import AppComponentGlobal_LayoutTamplate from "@/app_modules/component_global/component_layout_tamplate";
import ComponentForum_HeaderTamplate from "../component/header/header_tamplate";
import { List, Paper, Stack, Text } from "@mantine/core";
import { MODEL_FORUM_POSTING } from "../model/interface";
import { useState } from "react";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import { Stack, Text } from "@mantine/core";
import { ComponentForum_UiDetailReportPosting } from "../component/detail_component/ui_report_posting";
export default function Forum_DetailReportPosting({
dataPosting,
@@ -13,49 +10,11 @@ export default function Forum_DetailReportPosting({
}) {
return (
<>
<AppComponentGlobal_LayoutTamplate
header={<ComponentForum_HeaderTamplate title="Report Posting" />}
<LayoutGlobal_UI_Tamplate
header={<LayoutGlobal_UI_HeaderTamplate title="Report Posting" />}
>
<View dataPosting={dataPosting} />
</AppComponentGlobal_LayoutTamplate>
</>
);
}
function View({ dataPosting }: { dataPosting: any }) {
const [data, setData] = useState<MODEL_FORUM_POSTING>(dataPosting.data);
const [list, setList] = useState<any[]>(dataPosting.list);
return (
<>
<Stack>
<Text fw={"bold"} align="center" mb={"lg"}>
Postingan anda telah dihapus dari beranda oleh ADMIN, karena memiliki
beberapa laporan dari pengguna lain !
</Text>
<Stack spacing={"xs"}>
<Text fw={"bold"}>Pada postingan</Text>
<Paper withBorder p={"sm"}>
<Text>
<div
dangerouslySetInnerHTML={{
__html: data.diskusi,
}}
/>
</Text>
</Paper>
</Stack>
<Stack spacing={"xs"}>
<Text fw={"bold"}>Laporan yang diterima :</Text>
<List withPadding>
{list.map((x, i) => (
<List.Item key={i}>{x}</List.Item>
))}
</List>
</Stack>
</Stack>
<ComponentForum_UiDetailReportPosting dataPosting={dataPosting} />
</LayoutGlobal_UI_Tamplate>
</>
);
}

View File

@@ -8,8 +8,8 @@ import { IconChevronLeft } from "@tabler/icons-react";
import ComponentGlobal_V2_LoadingPage from "@/app_modules/component_global/loading_page_v2";
import { revalidatePath } from "next/cache";
import AppComponentGlobal_LayoutTamplate from "@/app_modules/component_global/component_layout_tamplate";
import ComponentGlobal_UI_LayoutTamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import ComponentGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
export const dynamic = "force-dynamic";
export default function LayoutForum_Detail({
@@ -24,11 +24,11 @@ export default function LayoutForum_Detail({
return (
<>
<ComponentGlobal_UI_LayoutTamplate
header={<ComponentGlobal_UI_HeaderTamplate title="Postingan" posotion={"left"} />}
<LayoutGlobal_UI_Tamplate
header={<LayoutGlobal_UI_HeaderTamplate title="Postingan" posotion={"left"} />}
>
{children}
</ComponentGlobal_UI_LayoutTamplate>
</LayoutGlobal_UI_Tamplate>
{/* <AppComponentGlobal_LayoutTamplate
header={

View File

@@ -4,8 +4,8 @@ import { AppShell } from "@mantine/core";
import React from "react";
import ComponentForum_HeaderTamplate from "../../component/header/header_tamplate";
import AppComponentGlobal_LayoutTamplate from "@/app_modules/component_global/component_layout_tamplate";
import ComponentGlobal_UI_LayoutTamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import ComponentGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
export default function LayoutForum_EditPosting({
children,
@@ -14,11 +14,11 @@ export default function LayoutForum_EditPosting({
}) {
return (
<>
<ComponentGlobal_UI_LayoutTamplate
header={<ComponentGlobal_UI_HeaderTamplate title="Edit Postingan" />}
<LayoutGlobal_UI_Tamplate
header={<LayoutGlobal_UI_HeaderTamplate title="Edit Postingan" />}
>
{children}
</ComponentGlobal_UI_LayoutTamplate>
</LayoutGlobal_UI_Tamplate>
{/* <AppComponentGlobal_LayoutTamplate
header={<ComponentForum_HeaderTamplate title="Edit Postingan" />}

View File

@@ -6,8 +6,8 @@ import ComponentForum_HeaderTamplate from "../component/header/header_tamplate";
import { MODEL_USER } from "@/app_modules/home/model/interface";
import { IconX } from "@tabler/icons-react";
import AppComponentGlobal_LayoutTamplate from "@/app_modules/component_global/component_layout_tamplate";
import ComponentGlobal_UI_LayoutTamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import ComponentGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
export default function LayoutForum_Forumku({
children,
@@ -18,16 +18,16 @@ export default function LayoutForum_Forumku({
}) {
return (
<>
<ComponentGlobal_UI_LayoutTamplate
<LayoutGlobal_UI_Tamplate
header={
<ComponentGlobal_UI_HeaderTamplate
<LayoutGlobal_UI_HeaderTamplate
title={`${username}`}
iconLeft={<IconX />}
/>
}
>
{children}
</ComponentGlobal_UI_LayoutTamplate>
</LayoutGlobal_UI_Tamplate>
{/* <AppComponentGlobal_LayoutTamplate
header={

View File

@@ -158,7 +158,7 @@ export default function Forum_Beranda({
</ActionIcon>
</Affix>
<Stack spacing={"xl"}>
<Stack spacing={"xl"} >
<TextInput
radius={"xl"}
placeholder="Topik forum apa yang anda cari hari ini ?"
@@ -179,7 +179,7 @@ export default function Forum_Beranda({
) : (
// --- Main component --- //
<ScrollOnly
height="83vh"
height="85vh"
renderLoading={() => (
<Center mt={"lg"}>
<Loader color={"yellow"} />

View File

@@ -26,8 +26,8 @@ import { MODEL_USER } from "@/app_modules/home/model/interface";
import { RouterProfile } from "@/app/lib/router_hipmi/router_katalog";
import ComponentGlobal_V2_LoadingPage from "@/app_modules/component_global/loading_page_v2";
import AppComponentGlobal_LayoutTamplate from "@/app_modules/component_global/component_layout_tamplate";
import ComponentGlobal_UI_LayoutTamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import ComponentGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
export default function LayoutForum_Main({
children,
@@ -43,9 +43,9 @@ export default function LayoutForum_Main({
return (
<>
<ComponentGlobal_UI_LayoutTamplate
<LayoutGlobal_UI_Tamplate
header={
<ComponentGlobal_UI_HeaderTamplate
<LayoutGlobal_UI_HeaderTamplate
title="FORUM"
iconRight={
<ActionIcon
@@ -80,7 +80,7 @@ export default function LayoutForum_Main({
}
>
{children}
</ComponentGlobal_UI_LayoutTamplate>
</LayoutGlobal_UI_Tamplate>
{/* <AppComponentGlobal_LayoutTamplate
header={

View File

@@ -3,8 +3,8 @@
import AppComponentGlobal_LayoutTamplate from "@/app_modules/component_global/component_layout_tamplate";
import React from "react";
import ComponentForum_HeaderRataKiri from "../../component/header/header_rata_kiri";
import ComponentGlobal_UI_LayoutTamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import ComponentGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
export default function LayoutForum_ReportKomentar({
children,
@@ -13,13 +13,13 @@ export default function LayoutForum_ReportKomentar({
}) {
return (
<>
<ComponentGlobal_UI_LayoutTamplate
<LayoutGlobal_UI_Tamplate
header={
<ComponentGlobal_UI_HeaderTamplate title="Mengumpulkan Informasi Komentar" />
<LayoutGlobal_UI_HeaderTamplate title="Mengumpulkan Informasi Komentar" />
}
>
{children}
</ComponentGlobal_UI_LayoutTamplate>
</LayoutGlobal_UI_Tamplate>
{/* <AppComponentGlobal_LayoutTamplate
header={
<ComponentForum_HeaderRataKiri title="Mengumpulkan Informasi Komentar"/>

View File

@@ -1,7 +1,7 @@
"use client";
import ComponentGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import ComponentGlobal_UI_LayoutTamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import LayoutGlobal_UI_HeaderTamplate from "@/app_modules/component_global/ui/ui_header_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import React from "react";
export default function LayoutForum_ReportPosting({
@@ -11,13 +11,13 @@ export default function LayoutForum_ReportPosting({
}) {
return (
<>
<ComponentGlobal_UI_LayoutTamplate
<LayoutGlobal_UI_Tamplate
header={
<ComponentGlobal_UI_HeaderTamplate title="Mengumpulkan Informasi Posting" />
<LayoutGlobal_UI_HeaderTamplate title="Mengumpulkan Informasi Posting" />
}
>
{children}
</ComponentGlobal_UI_LayoutTamplate>
</LayoutGlobal_UI_Tamplate>
</>

View File

@@ -2,7 +2,7 @@
import { RouterForum } from "@/app/lib/router_hipmi/router_forum";
import ComponentGlobal_SplashScreen from "@/app_modules/component_global/splash/splash_global";
import ComponentGlobal_UI_LayoutTamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import LayoutGlobal_UI_Tamplate from "@/app_modules/component_global/ui/ui_layout_tamplate";
import {
Avatar,
Center,
@@ -20,7 +20,7 @@ export default function Forum_Splash() {
const router = useRouter();
useShallowEffect(() => {
setTimeout(() => {
router.replace(RouterForum.beranda);
router.replace(RouterForum.beranda, { scroll: false });
}, 1000);
}, []);