diff --git a/public/user-card/edit-icon.svg b/public/user-card/edit-icon.svg new file mode 100644 index 00000000..7a4c631f --- /dev/null +++ b/public/user-card/edit-icon.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/user-card/tv.png b/public/user-card/tv.png new file mode 100644 index 00000000..cb7c5469 Binary files /dev/null and b/public/user-card/tv.png differ diff --git a/src/app/dev/page.tsx b/src/app/dev/page.tsx new file mode 100644 index 00000000..7aeb2c12 --- /dev/null +++ b/src/app/dev/page.tsx @@ -0,0 +1,31 @@ +'use client'; + +import Border from '@/components/Border'; +import { Suspense } from 'react'; +import UserCard from '@/components/UserCard'; + +// For dev (delete soon) +export default function page() { + return ( + + + + ); +} + +function Login() { + return ( + + + +
+ +
+ + {/* Break if the size is too small because the texts' sizes */} +
+ +
+
+ ); +} diff --git a/src/components/UserCard.tsx b/src/components/UserCard.tsx new file mode 100644 index 00000000..e0726aa7 --- /dev/null +++ b/src/components/UserCard.tsx @@ -0,0 +1,50 @@ +import React from 'react'; +import TV from '@public/user-card/tv.png'; +import EditIcon from '@public/user-card/edit-icon.svg'; +import Image from 'next/image'; +import { useAuth } from '@/context/AuthContext'; +import { useRouter } from 'next/navigation'; + +const UserCard = () => { + const router = useRouter(); + const { user } = useAuth(); + const name = `${user?.firstname} ${user?.lastname}`; + const studentId = user?.email.split('@')[0]; + const photo_url = user?.photo_url; + + return ( +
+ tv +
+
+ {photo_url && ( + user-picture + )} +
+
+

{name}

+

รหัสนิสิต {studentId}

+
+
+
router.push('/edit')} + > + edit-icon +
+
+ ); +}; + +export default UserCard;