diff --git a/app/(authenticated)/(admin)/admin/(admin components)/generateKeychip/action.ts b/app/(authenticated)/(admin)/admin/(admin components)/generateKeychip/action.ts new file mode 100644 index 0000000..e69de29 diff --git a/app/(authenticated)/(admin)/admin/(admin components)/generateKeychip/generateKeychip.tsx b/app/(authenticated)/(admin)/admin/(admin components)/generateKeychip/generateKeychip.tsx new file mode 100644 index 0000000..80b312a --- /dev/null +++ b/app/(authenticated)/(admin)/admin/(admin components)/generateKeychip/generateKeychip.tsx @@ -0,0 +1,74 @@ +"use client"; + +import { Button } from "@/components/ui/button"; +import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; +import { Input } from "@/components/ui/input"; +import { Label } from "@radix-ui/react-dropdown-menu"; +import React, { useState } from "react"; + +const GenerateKeychip = () => { + const [serial, setSerial] = useState(""); + + const generateRandomSerial = () => { + let uniqueNumbers = ""; + while (uniqueNumbers.length < 4) { + const digit = Math.floor(Math.random() * 10); + if (!uniqueNumbers.includes(digit.toString())) { + uniqueNumbers += digit; + } + } + const randomNumbers = Math.floor(1000 + Math.random() * 9000); + const randomSerial = `A69E01A${uniqueNumbers}${randomNumbers}`; + setSerial(randomSerial); + }; + + return ( + + + Create Keychip + + + +
Current Access Code:
+
+
+ + +
+
+ + +
+ +
+ + +
+ + + +
+
+
+ ); +}; + +export default GenerateKeychip; diff --git a/app/(authenticated)/(admin)/admin/(admin components)/generateKeychip/page.tsx b/app/(authenticated)/(admin)/admin/(admin components)/generateKeychip/page.tsx new file mode 100644 index 0000000..6fb9362 --- /dev/null +++ b/app/(authenticated)/(admin)/admin/(admin components)/generateKeychip/page.tsx @@ -0,0 +1,6 @@ +import GenerateKeychip from "./generateKeychip"; + +const GenerateKeychipPage = async () => { + return ; +}; +export default GenerateKeychipPage; diff --git a/app/(authenticated)/(admin)/admin/(admin components)/unlock/page.tsx b/app/(authenticated)/(admin)/admin/(admin components)/unlockUser/page.tsx similarity index 100% rename from app/(authenticated)/(admin)/admin/(admin components)/unlock/page.tsx rename to app/(authenticated)/(admin)/admin/(admin components)/unlockUser/page.tsx diff --git a/app/(authenticated)/(admin)/admin/(admin components)/unlock/unlock.tsx b/app/(authenticated)/(admin)/admin/(admin components)/unlockUser/unlock.tsx similarity index 86% rename from app/(authenticated)/(admin)/admin/(admin components)/unlock/unlock.tsx rename to app/(authenticated)/(admin)/admin/(admin components)/unlockUser/unlock.tsx index c68bf03..f6bf32c 100644 --- a/app/(authenticated)/(admin)/admin/(admin components)/unlock/unlock.tsx +++ b/app/(authenticated)/(admin)/admin/(admin components)/unlockUser/unlock.tsx @@ -4,7 +4,7 @@ import { Input } from "@/components/ui/input"; import { Label } from "@radix-ui/react-dropdown-menu"; import React from "react"; -const UnlockUser = () => { +const GenerateKeychip = () => { return ( @@ -12,7 +12,7 @@ const UnlockUser = () => { -
Current Access Code:
+
Current Access Code:
@@ -31,4 +31,4 @@ const UnlockUser = () => { ); }; -export default UnlockUser; +export default GenerateKeychip; diff --git a/components/navigationbar/adminnavigation.tsx b/components/navigationbar/adminnavigation.tsx index 0ecf215..4838db7 100644 --- a/components/navigationbar/adminnavigation.tsx +++ b/components/navigationbar/adminnavigation.tsx @@ -5,7 +5,9 @@ import { usePathname } from "next/navigation"; const NAV_ITEMS = [ { href: "/admin/home", label: "Home" }, - { href: "/admin/unlock", label: "Unlock User" }, + { href: "/admin/generateKeychip", label: "Generate Keychip" }, + + { href: "/admin/unlockUser", label: "Unlock User" }, { href: "/admin/extraction", label: "Extract Game Files" }, { href: "/admin/gameversions", label: "Edit Game Version" }, ];