-
Portal Admin Page
-
Manage Events
+
Admin Actions
+
+
Events
+
+ Manage Events
+
+
+
Store
+
+ Manage Store Merchandise
+ Manage Pickup Events
+
+
+
User Points
+
+ {PermissionService.canAwardPoints.includes(accessType) ? (
+ <>
+ Award Bonus Points
+ Grant Past Attendance
+ Create Portal Milestone
+ >
+ ) : (
+ 'Restricted Access'
+ )}
+
+
+
User Accounts
+
+ {PermissionService.canViewResumes.includes(accessType) ? (
+ View User Resumes
+ ) : (
+ 'Restricted Access'
+ )}
+
);
};
@@ -23,6 +84,6 @@ const getServerSidePropsFunc: GetServerSideProps = async () => {
export const getServerSideProps = withAccessType(
getServerSidePropsFunc,
- PermissionService.canViewAdminPage(),
+ PermissionService.canViewAdminPage,
config.homeRoute
);
diff --git a/src/pages/admin/milestone.tsx b/src/pages/admin/milestone.tsx
new file mode 100644
index 00000000..89e632cc
--- /dev/null
+++ b/src/pages/admin/milestone.tsx
@@ -0,0 +1,74 @@
+import { SignInButton, SignInFormItem, SignInTitle } from '@/components/auth';
+import { VerticalForm } from '@/components/common';
+import { config } from '@/lib';
+import withAccessType from '@/lib/hoc/withAccessType';
+import { PermissionService } from '@/lib/services';
+import type { GetServerSideProps, NextPage } from 'next';
+import { SubmitHandler, useForm } from 'react-hook-form';
+import { AiOutlineMail } from 'react-icons/ai';
+import { VscLock } from 'react-icons/vsc';
+
+interface FormValues {
+ name: string;
+ points: number;
+}
+const AwardPointsPage: NextPage = () => {
+ const {
+ register,
+ handleSubmit,
+ formState: { errors },
+ } = useForm