feat:cookies encrypt
This commit is contained in:
parent
07d6eb9fa6
commit
e18bbace7a
|
|
@ -1,6 +1,6 @@
|
||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function DocsLayout({
|
export default function DocsLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
import ListEnewsPolri from "@/components/table/tabel-emajalah-polri";
|
import ListEnewsPolri from "@/components/table/tabel-emajalah-polri";
|
||||||
|
|
||||||
export default function ListEnewsPage() {
|
export default function ListEnewsPage() {
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function DetailEMajalahLayout({
|
export default function DetailEMajalahLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
"use client";
|
"use client";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
import EMagazineDetail from "@/components/main/detail/e-magazine-detail";
|
import EMagazineDetail from "@/components/main/detail/e-magazine-detail";
|
||||||
import React, { Suspense, useEffect, useState } from "react";
|
import React, { Suspense, useEffect, useState } from "react";
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
"use client";
|
"use client";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function ApplicationLayout({
|
export default function ApplicationLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
"use client";
|
"use client";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function KontakLayout({
|
export default function KontakLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
"use client";
|
"use client";
|
||||||
import ListNews from "@/components/main/detail/list-news";
|
import ListNews from "@/components/main/detail/list-news";
|
||||||
import React, { useEffect, useState } from "react";
|
import React, { useEffect, useState } from "react";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function ListNewsPage() {
|
export default function ListNewsPage() {
|
||||||
const [hasMounted, setHasMounted] = useState(false);
|
const [hasMounted, setHasMounted] = useState(false);
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
"use server";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
|
||||||
import DetailPage from "@/components/main/detail/new-detail";
|
import DetailPage from "@/components/main/detail/new-detail";
|
||||||
import { getArticleById } from "@/services/article";
|
import { getArticleById } from "@/services/article";
|
||||||
import { Metadata } from "next";
|
import { Metadata } from "next";
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import ListNews from "@/components/main/detail/list-news";
|
import ListNews from "@/components/main/detail/list-news";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function PoldaNewsPage() {
|
export default function PoldaNewsPage() {
|
||||||
// return <ListNews />;
|
// return <ListNews />;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import ListNews from "@/components/main/detail/list-news";
|
import ListNews from "@/components/main/detail/list-news";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function PoldaNewsPage() {
|
export default function PoldaNewsPage() {
|
||||||
// return <ListNews />;
|
// return <ListNews />;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
"use client";
|
"use client";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function PropimLayout({
|
export default function PropimLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
import { getCustomStaticDetailBySlug } from "@/services/static-page-service";
|
import { getCustomStaticDetailBySlug } from "@/services/static-page-service";
|
||||||
import { Card, CircularProgress } from "@heroui/react";
|
import { Card, CircularProgress } from "@heroui/react";
|
||||||
import { useParams } from "next/navigation";
|
import { useParams } from "next/navigation";
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
"use client";
|
"use client";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function StrukturLayout({
|
export default function StrukturLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
"use client";
|
"use client";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function AboutLayout({
|
export default function AboutLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
"use client";
|
"use client";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function TaskLayout({
|
export default function TaskLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
"use client";
|
"use client";
|
||||||
import { HumasLayout } from "@/components/layout/humas-layout";
|
import HumasLayout from "@/components/layout/humas-layout";
|
||||||
|
|
||||||
export default function VisiMisiLayout({
|
export default function VisiMisiLayout({
|
||||||
children,
|
children,
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,11 @@ import Cookies from "js-cookie";
|
||||||
|
|
||||||
export default function FooterNew(props: { margin?: boolean }) {
|
export default function FooterNew(props: { margin?: boolean }) {
|
||||||
const [emailValue, setEmailValue] = useState("");
|
const [emailValue, setEmailValue] = useState("");
|
||||||
|
const [accessToken, setAccessToken] = useState<any>();
|
||||||
|
useEffect(() => {
|
||||||
const accessToken = Cookies.get("access_token");
|
const accessToken = Cookies.get("access_token");
|
||||||
|
setAccessToken(accessToken);
|
||||||
|
}, []);
|
||||||
|
|
||||||
const doSubscribe = async () => {
|
const doSubscribe = async () => {
|
||||||
const isValidEmail = (email: string): boolean => {
|
const isValidEmail = (email: string): boolean => {
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,7 @@ import FooterNew from "../landing/footer-new";
|
||||||
interface Props {
|
interface Props {
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
}
|
}
|
||||||
|
const HumasLayout = ({ children }: Props) => {
|
||||||
export const HumasLayout = ({ children }: Props) => {
|
|
||||||
const [hasMounted, setHasMounted] = useState(false);
|
const [hasMounted, setHasMounted] = useState(false);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
|
@ -32,3 +31,5 @@ export const HumasLayout = ({ children }: Props) => {
|
||||||
</section>
|
</section>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default HumasLayout;
|
||||||
|
|
|
||||||
|
|
@ -61,19 +61,16 @@ export default function NavbarHumas(props: { size: string }) {
|
||||||
const [isOpen, setIsOpen] = useState(false);
|
const [isOpen, setIsOpen] = useState(false);
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
// const t = useTranslations("Navbar");
|
// const t = useTranslations("Navbar");
|
||||||
const token = Cookies.get("access_token");
|
|
||||||
const isAuthenticated = Cookies.get("is_authenticated");
|
|
||||||
const [isScrolled, setIsScrolled] = useState(false);
|
const [isScrolled, setIsScrolled] = useState(false);
|
||||||
const [search, setSearch] = useState("");
|
const [search, setSearch] = useState("");
|
||||||
|
const [token, setToken] = useState<any>();
|
||||||
const language = storedLanguage((state) => state.locale);
|
const language = storedLanguage((state) => state.locale);
|
||||||
const setLanguage = storedLanguage((state) => state.setLocale);
|
const setLanguage = storedLanguage((state) => state.setLocale);
|
||||||
|
|
||||||
// useEffect(() => {
|
useEffect(() => {
|
||||||
// if (!isAuthenticated) {
|
const token = Cookies.get("access_token");
|
||||||
// onLogout();
|
setToken(token);
|
||||||
// }
|
}, []);
|
||||||
// }, [token]);
|
|
||||||
|
|
||||||
const onLogout = () => {
|
const onLogout = () => {
|
||||||
Object.keys(Cookies.get()).forEach((cookieName) => {
|
Object.keys(Cookies.get()).forEach((cookieName) => {
|
||||||
|
|
|
||||||
|
|
@ -23,9 +23,6 @@ import { SendIcon, TimesIcon } from "@/components/icons";
|
||||||
import { saveActivity } from "@/services/activity-log";
|
import { saveActivity } from "@/services/activity-log";
|
||||||
import { usePathname } from "next/navigation";
|
import { usePathname } from "next/navigation";
|
||||||
|
|
||||||
const userId = getCookiesDecrypt("uie");
|
|
||||||
const token = Cookies.get("access_token");
|
|
||||||
|
|
||||||
const commentSchema = z.object({
|
const commentSchema = z.object({
|
||||||
name: z.string().min(1, {
|
name: z.string().min(1, {
|
||||||
message: "Judul harus diisi",
|
message: "Judul harus diisi",
|
||||||
|
|
@ -54,6 +51,16 @@ export default function Comment(props: { id: string | null }) {
|
||||||
const [editCommentId, setEditCommentId] = useState(0);
|
const [editCommentId, setEditCommentId] = useState(0);
|
||||||
const [replyValue, setReplyValue] = useState("");
|
const [replyValue, setReplyValue] = useState("");
|
||||||
const [editValue, setEditValue] = useState("");
|
const [editValue, setEditValue] = useState("");
|
||||||
|
|
||||||
|
const [userId, setUserId] = useState<any>();
|
||||||
|
const [token, setToken] = useState<any>();
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const userId = getCookiesDecrypt("uie");
|
||||||
|
const token = Cookies.get("access_token");
|
||||||
|
setUserId(userId);
|
||||||
|
setToken(token);
|
||||||
|
}, []);
|
||||||
const formOptions = {
|
const formOptions = {
|
||||||
resolver: zodResolver(commentSchema),
|
resolver: zodResolver(commentSchema),
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -14,16 +14,18 @@ import Cookies from "js-cookie";
|
||||||
import Head from "next/head";
|
import Head from "next/head";
|
||||||
import { getCookiesDecrypt } from "@/utils/global";
|
import { getCookiesDecrypt } from "@/utils/global";
|
||||||
|
|
||||||
const token = Cookies.get("access_token");
|
|
||||||
const uid = getCookiesDecrypt("uie");
|
|
||||||
|
|
||||||
export default function NewsDetailPage(props: { datas: any }) {
|
export default function NewsDetailPage(props: { datas: any }) {
|
||||||
const params = useParams();
|
const params = useParams();
|
||||||
const id: any = params?.id;
|
const id: any = params?.id;
|
||||||
const pathname = usePathname();
|
const pathname = usePathname();
|
||||||
const [detailArticle, setDetailArticle] = useState<any>();
|
const [detailArticle, setDetailArticle] = useState<any>();
|
||||||
const [articles, setArticles] = useState<any>([]);
|
const [articles, setArticles] = useState<any>([]);
|
||||||
|
const [uid, setUid] = useState<any>("");
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const uid = getCookiesDecrypt("uie");
|
||||||
|
setUid(uid);
|
||||||
|
}, []);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
getArticles();
|
getArticles();
|
||||||
sendActivity();
|
sendActivity();
|
||||||
|
|
@ -43,6 +45,7 @@ export default function NewsDetailPage(props: { datas: any }) {
|
||||||
if (uid) {
|
if (uid) {
|
||||||
req.userId = Number(uid);
|
req.userId = Number(uid);
|
||||||
}
|
}
|
||||||
|
const token = Cookies.get("access_token");
|
||||||
|
|
||||||
const resActivity = await saveActivity(req, token);
|
const resActivity = await saveActivity(req, token);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -28,9 +28,6 @@ import Cookies from "js-cookie";
|
||||||
import { saveActivity } from "@/services/activity-log";
|
import { saveActivity } from "@/services/activity-log";
|
||||||
import { Accordion, AccordionItem, Image } from "@heroui/react";
|
import { Accordion, AccordionItem, Image } from "@heroui/react";
|
||||||
|
|
||||||
const token = Cookies.get("access_token");
|
|
||||||
const uid = getCookiesDecrypt("uie");
|
|
||||||
|
|
||||||
export default function DetailNews(props: { data: any; listArticle: any }) {
|
export default function DetailNews(props: { data: any; listArticle: any }) {
|
||||||
const { data, listArticle } = props;
|
const { data, listArticle } = props;
|
||||||
const [prevArticle, setPrevArticle] = useState("");
|
const [prevArticle, setPrevArticle] = useState("");
|
||||||
|
|
@ -40,6 +37,15 @@ export default function DetailNews(props: { data: any; listArticle: any }) {
|
||||||
const params = useParams();
|
const params = useParams();
|
||||||
const id: any = params?.id;
|
const id: any = params?.id;
|
||||||
const shareText = "Humas Polri";
|
const shareText = "Humas Polri";
|
||||||
|
const [uid, setUid] = useState<any>("");
|
||||||
|
const [token, setToken] = useState<any>("");
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const token = Cookies.get("access_token");
|
||||||
|
const uid = getCookiesDecrypt("uie");
|
||||||
|
setToken(token);
|
||||||
|
setUid(uid);
|
||||||
|
}, []);
|
||||||
|
|
||||||
const handleShare = async (platform: string) => {
|
const handleShare = async (platform: string) => {
|
||||||
let shareLink = "";
|
let shareLink = "";
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@ export default function RelatedNews(props: { categories: any }) {
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
async function getArticle() {
|
async function getArticle() {
|
||||||
console.log("categories", categories);
|
|
||||||
const idString = categories.map((item: any) => item.id).join(",");
|
const idString = categories.map((item: any) => item.id).join(",");
|
||||||
|
|
||||||
const req = {
|
const req = {
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,6 @@
|
||||||
"name": "next"
|
"name": "next"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"types": ["node", "minimatch"],
|
|
||||||
"paths": {
|
"paths": {
|
||||||
"@/*": ["./*"]
|
"@/*": ["./*"]
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue