Admin Forum
Add: - admin/forum/ Admin Job Fix: Delete page & fix delete - admin/_layout. - admin/job : publish, reject, review ### No Issue
This commit is contained in:
@@ -66,9 +66,9 @@ export default function AdminLayout() {
|
|||||||
|
|
||||||
{/* ================== Job Start ================== */}
|
{/* ================== Job Start ================== */}
|
||||||
<Stack.Screen name="job/index" />
|
<Stack.Screen name="job/index" />
|
||||||
<Stack.Screen name="job/publish" />
|
{/* <Stack.Screen name="job/publish" />
|
||||||
<Stack.Screen name="job/review" />
|
<Stack.Screen name="job/review" />
|
||||||
<Stack.Screen name="job/reject" />
|
<Stack.Screen name="job/reject" /> */}
|
||||||
<Stack.Screen name="job/[status]/status" />
|
<Stack.Screen name="job/[status]/status" />
|
||||||
<Stack.Screen name="job/[id]/[status]/index" />
|
<Stack.Screen name="job/[id]/[status]/index" />
|
||||||
|
|
||||||
@@ -80,6 +80,10 @@ export default function AdminLayout() {
|
|||||||
<Stack.Screen name="collaboration/[id]/[status]"/>
|
<Stack.Screen name="collaboration/[id]/[status]"/>
|
||||||
<Stack.Screen name="collaboration/[id]/group"/>
|
<Stack.Screen name="collaboration/[id]/group"/>
|
||||||
{/* ================== Collaboration End ================== */}
|
{/* ================== Collaboration End ================== */}
|
||||||
|
|
||||||
|
{/* ================== Forum Start ================== */}
|
||||||
|
<Stack.Screen name="forum/index" />
|
||||||
|
{/* ================== Forum End ================== */}
|
||||||
</Stack>
|
</Stack>
|
||||||
|
|
||||||
<DrawerAdmin
|
<DrawerAdmin
|
||||||
|
|||||||
42
app/(application)/admin/forum/index.tsx
Normal file
42
app/(application)/admin/forum/index.tsx
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
import { Spacing, StackCustom, ViewWrapper } from "@/components";
|
||||||
|
import {
|
||||||
|
IconPublish,
|
||||||
|
IconReport,
|
||||||
|
} from "@/components/_Icon/IconComponent";
|
||||||
|
import AdminComp_BoxDashboard from "@/components/_ShareComponent/Admin/BoxDashboard";
|
||||||
|
import AdminTitlePage from "@/components/_ShareComponent/Admin/TitlePage";
|
||||||
|
import { MainColor } from "@/constants/color-palet";
|
||||||
|
|
||||||
|
export default function AdminForum() {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<ViewWrapper>
|
||||||
|
<AdminTitlePage title="Forum" />
|
||||||
|
<Spacing />
|
||||||
|
<StackCustom gap={"xs"}>
|
||||||
|
{listData.map((item, i) => (
|
||||||
|
<AdminComp_BoxDashboard key={i} item={item} />
|
||||||
|
))}
|
||||||
|
</StackCustom>
|
||||||
|
</ViewWrapper>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
const listData = [
|
||||||
|
{
|
||||||
|
label: "Posting",
|
||||||
|
value: 4,
|
||||||
|
icon: <IconPublish size={25} color={MainColor.green} />,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "Report Posting",
|
||||||
|
value: 7,
|
||||||
|
icon: <IconReport size={25} color={MainColor.orange} />,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "Report Comment",
|
||||||
|
value: 5,
|
||||||
|
icon: <IconReport size={25} color={MainColor.red} />,
|
||||||
|
},
|
||||||
|
];
|
||||||
@@ -1,8 +1,12 @@
|
|||||||
import { Spacing, StackCustom, ViewWrapper } from "@/components";
|
import { Spacing, StackCustom, ViewWrapper } from "@/components";
|
||||||
|
import {
|
||||||
|
IconPublish,
|
||||||
|
IconReject,
|
||||||
|
IconReview,
|
||||||
|
} from "@/components/_Icon/IconComponent";
|
||||||
import AdminComp_BoxDashboard from "@/components/_ShareComponent/Admin/BoxDashboard";
|
import AdminComp_BoxDashboard from "@/components/_ShareComponent/Admin/BoxDashboard";
|
||||||
import AdminTitlePage from "@/components/_ShareComponent/Admin/TitlePage";
|
import AdminTitlePage from "@/components/_ShareComponent/Admin/TitlePage";
|
||||||
import { MainColor } from "@/constants/color-palet";
|
import { MainColor } from "@/constants/color-palet";
|
||||||
import { Entypo, FontAwesome, FontAwesome6 } from "@expo/vector-icons";
|
|
||||||
|
|
||||||
export default function AdminJob() {
|
export default function AdminJob() {
|
||||||
return (
|
return (
|
||||||
@@ -24,22 +28,16 @@ const listData = [
|
|||||||
{
|
{
|
||||||
label: "Publish",
|
label: "Publish",
|
||||||
value: 4,
|
value: 4,
|
||||||
icon: <Entypo name="publish" size={25} color={MainColor.green} />,
|
icon: <IconPublish size={25} color={MainColor.green} />,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "Review",
|
label: "Review",
|
||||||
value: 7,
|
value: 7,
|
||||||
icon: (
|
icon: <IconReview size={25} color={MainColor.orange} />,
|
||||||
<FontAwesome6
|
|
||||||
name="person-circle-check"
|
|
||||||
size={25}
|
|
||||||
color={MainColor.orange}
|
|
||||||
/>
|
|
||||||
),
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "Reject",
|
label: "Reject",
|
||||||
value: 5,
|
value: 5,
|
||||||
icon: <FontAwesome name="warning" size={25} color={MainColor.red} />,
|
icon: <IconReject size={25} color={MainColor.red} />,
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
import { TextCustom, ViewWrapper } from "@/components";
|
|
||||||
|
|
||||||
export default function AdminJobPublish() {
|
|
||||||
return (
|
|
||||||
<>
|
|
||||||
<ViewWrapper>
|
|
||||||
<TextCustom>Admin Job Publish</TextCustom>
|
|
||||||
</ViewWrapper>
|
|
||||||
</>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
import { TextCustom, ViewWrapper } from "@/components";
|
|
||||||
|
|
||||||
export default function AdminJobReject() {
|
|
||||||
return (
|
|
||||||
<>
|
|
||||||
<ViewWrapper>
|
|
||||||
<TextCustom>Admin Job Reject</TextCustom>
|
|
||||||
</ViewWrapper>
|
|
||||||
</>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
import { TextCustom, ViewWrapper } from "@/components";
|
|
||||||
|
|
||||||
export default function AdminJobReview() {
|
|
||||||
return (
|
|
||||||
<>
|
|
||||||
<ViewWrapper>
|
|
||||||
<TextCustom>Admin Job Review</TextCustom>
|
|
||||||
</ViewWrapper>
|
|
||||||
</>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
75
components/_Icon/IconComponent.tsx
Normal file
75
components/_Icon/IconComponent.tsx
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
import { MainColor } from "@/constants/color-palet";
|
||||||
|
import { ICON_SIZE_MEDIUM } from "@/constants/constans-value";
|
||||||
|
import { Entypo, FontAwesome, FontAwesome6, Octicons } from "@expo/vector-icons";
|
||||||
|
|
||||||
|
export const IconPublish = ({
|
||||||
|
size,
|
||||||
|
color,
|
||||||
|
}: {
|
||||||
|
size?: number;
|
||||||
|
color?: string;
|
||||||
|
}) => {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Entypo
|
||||||
|
name="publish"
|
||||||
|
size={size || ICON_SIZE_MEDIUM}
|
||||||
|
color={color || MainColor.white}
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export const IconReview = ({
|
||||||
|
size,
|
||||||
|
color,
|
||||||
|
}: {
|
||||||
|
size?: number;
|
||||||
|
color?: string;
|
||||||
|
}) => {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<FontAwesome6
|
||||||
|
name="person-circle-check"
|
||||||
|
size={size || ICON_SIZE_MEDIUM}
|
||||||
|
color={color || MainColor.white}
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export const IconReject = ({
|
||||||
|
size,
|
||||||
|
color,
|
||||||
|
}: {
|
||||||
|
size?: number;
|
||||||
|
color?: string;
|
||||||
|
}) => {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<FontAwesome
|
||||||
|
name="warning"
|
||||||
|
size={size || ICON_SIZE_MEDIUM}
|
||||||
|
color={color || MainColor.white}
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export const IconReport = ({
|
||||||
|
size,
|
||||||
|
color,
|
||||||
|
}: {
|
||||||
|
size?: number;
|
||||||
|
color?: string;
|
||||||
|
}) => {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Octicons
|
||||||
|
name="report"
|
||||||
|
size={size || ICON_SIZE_MEDIUM}
|
||||||
|
color={color || MainColor.white}
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
};
|
||||||
@@ -84,9 +84,9 @@ export default function LoginView() {
|
|||||||
|
|
||||||
<Spacing />
|
<Spacing />
|
||||||
|
|
||||||
{/* <ButtonCustom onPress={() => router.navigate("/admin/job")}>
|
<ButtonCustom onPress={() => router.navigate("/admin/forum")}>
|
||||||
Admin ( Delete Soon )
|
Admin ( Delete Soon )
|
||||||
</ButtonCustom> */}
|
</ButtonCustom>
|
||||||
</View>
|
</View>
|
||||||
</ViewWrapper>
|
</ViewWrapper>
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user