diff --git a/frontend/components/Custom/EvaluationHeader.tsx b/frontend/components/Custom/EvaluationHeader.tsx
new file mode 100644
index 0000000..a2ec139
--- /dev/null
+++ b/frontend/components/Custom/EvaluationHeader.tsx
@@ -0,0 +1,14 @@
+import Container from '@mui/material/Container';
+import CardHeader from '@mui/material/CardHeader';
+
+interface EvaluationHeaderProps {
+ title: string;
+}
+
+const EvaluationHeader = ({ title }: EvaluationHeaderProps) => (
+
+
+
+);
+
+export default EvaluationHeader;
diff --git a/frontend/components/hooks/usePageTitle.tsx b/frontend/components/hooks/usePageTitle.tsx
new file mode 100644
index 0000000..b6bdbfb
--- /dev/null
+++ b/frontend/components/hooks/usePageTitle.tsx
@@ -0,0 +1,9 @@
+import { useEffect } from 'react';
+
+const usePageTitle = (title: string) => {
+ useEffect(() => {
+ document.title = title;
+ }, [title]);
+};
+
+export default usePageTitle;
diff --git a/frontend/pages/course-evaluation/[id]/index.tsx b/frontend/pages/course-evaluation/[id]/index.tsx
index f3eb03b..cf07601 100644
--- a/frontend/pages/course-evaluation/[id]/index.tsx
+++ b/frontend/pages/course-evaluation/[id]/index.tsx
@@ -1,10 +1,20 @@
import SectionTabs from '@/components/CourseEvaluation/SectionTabs';
import BodyCard from '@/components/utils/BodyCard';
+import useCourseEvaluation from '@/components/hooks/useCourseEvaluation';
+import usePageTitle from '@/components/hooks/usePageTitle';
+import EvaluationHeader from '@/components/Custom/EvaluationHeader';
-const Post = () => (
-
-
-
-);
+const Post = () => {
+ const { courseEvaluation } = useCourseEvaluation();
+
+ usePageTitle(`${courseEvaluation.unit_code} Manage`);
+
+ return (
+
+
+
+
+ );
+};
export default Post;
diff --git a/frontend/pages/course-evaluation/[id]/review/[reviewId].tsx b/frontend/pages/course-evaluation/[id]/review/[reviewId].tsx
index b0a345c..709e55a 100644
--- a/frontend/pages/course-evaluation/[id]/review/[reviewId].tsx
+++ b/frontend/pages/course-evaluation/[id]/review/[reviewId].tsx
@@ -7,12 +7,12 @@ import ReviewSummarySubmissionContent from '@/components/Reviewer/Submit/ReviewS
import { userDisplayName } from '@/components/utils/generic';
import Card from '@mui/material/Card';
import CardContent from '@mui/material/CardContent';
-import CardHeader from '@mui/material/CardHeader';
import Container from '@mui/material/Container';
import CardActions from '@mui/material/CardActions';
import Button from '@mui/material/Button';
import { useRouter } from 'next/router';
import NavigateBeforeIcon from '@mui/icons-material/NavigateBefore';
+import CardHeader from '@mui/material/CardHeader';
const Summary = () => {
const { courseReview } = useCourseReview(false);
diff --git a/frontend/pages/review/[reviewId]/1-overview-and-eoc.tsx b/frontend/pages/review/[reviewId]/1-overview-and-eoc.tsx
index c124a74..97b5a29 100644
--- a/frontend/pages/review/[reviewId]/1-overview-and-eoc.tsx
+++ b/frontend/pages/review/[reviewId]/1-overview-and-eoc.tsx
@@ -18,14 +18,17 @@ import EOCAccordionForRefresher from '@/components/Reviewer/OverviewAndEOC/EOCAc
import ReviewerBottomNavigation from '@/components/Reviewer/ReviewerBottomNavigation';
import { getReviewStepsWithState } from '@/components/utils/reviews';
import useAuthenticatedAPIClient from '@/components/hooks/useAuthenticatedAPIClient';
+import usePageTitle from '@/components/hooks/usePageTitle';
+import EvaluationHeader from '@/components/Custom/EvaluationHeader';
const OverviewAndEOC = () => {
const { courseReview } = useCourseReview();
const { courseEvaluation } = useCourseEvaluation(courseReview.course_evaluation.id);
+ usePageTitle(`${courseEvaluation.unit_code} Review`);
+
const STEP_INDEX = 0;
const stepDetails = getReviewStepsWithState(courseReview)[STEP_INDEX];
-
/**
* When we finish on this page, there should be an API interaction to update that the user has started the review
*/
@@ -48,6 +51,7 @@ const OverviewAndEOC = () => {
};
return (
+
diff --git a/frontend/pages/review/[reviewId]/2-documents.tsx b/frontend/pages/review/[reviewId]/2-documents.tsx
index 6588beb..d0c1b4b 100644
--- a/frontend/pages/review/[reviewId]/2-documents.tsx
+++ b/frontend/pages/review/[reviewId]/2-documents.tsx
@@ -1,3 +1,4 @@
+import React from 'react';
import Grid from '@mui/material/Grid';
import Container from '@mui/material/Container';
import useCourseReview from '@/components/hooks/useCourseReview';
@@ -8,16 +9,21 @@ import BodyCard from '@/components/utils/BodyCard';
import { getReviewStepsWithState } from '@/components/utils/reviews';
import DocumentCard from '@/components/CourseEvaluation/Documents/DocumentCard';
import useCourseEvaluation from '@/components/hooks/useCourseEvaluation';
+import usePageTitle from '@/components/hooks/usePageTitle';
+import EvaluationHeader from '@/components/Custom/EvaluationHeader';
const Documents = () => {
const { courseReview } = useCourseReview();
const { courseEvaluation } = useCourseEvaluation(courseReview.course_evaluation.id);
+ usePageTitle(`${courseEvaluation.unit_code} Review`);
+
const STEP_INDEX = 1;
const stepDetails = getReviewStepsWithState(courseReview)[STEP_INDEX];
return (
+
diff --git a/frontend/pages/review/[reviewId]/3-assessment.tsx b/frontend/pages/review/[reviewId]/3-assessment.tsx
index f3ca98f..17ae423 100644
--- a/frontend/pages/review/[reviewId]/3-assessment.tsx
+++ b/frontend/pages/review/[reviewId]/3-assessment.tsx
@@ -1,3 +1,4 @@
+import React from 'react';
import useCourseEvaluation from '@/components/hooks/useCourseEvaluation';
import useCourseReview from '@/components/hooks/useCourseReview';
import AboutStepCard from '@/components/Reviewer/AboutStepCard';
@@ -6,6 +7,8 @@ import ReviewProgress from '@/components/Reviewer/ReviewProgress';
import BodyCard from '@/components/utils/BodyCard';
import { getReviewStepsWithState } from '@/components/utils/reviews';
import EOCAccordionWithModal from '@/components/Reviewer/Assessment/EOCAccordionWithModal';
+import usePageTitle from '@/components/hooks/usePageTitle';
+import EvaluationHeader from '@/components/Custom/EvaluationHeader';
const Assessment = () => {
const { courseReview } = useCourseReview();
@@ -14,8 +17,11 @@ const Assessment = () => {
const STEP_INDEX = 2;
const stepDetails = getReviewStepsWithState(courseReview)[STEP_INDEX];
+ usePageTitle(`${courseEvaluation.unit_code} Review`);
+
return (
+
diff --git a/frontend/pages/review/[reviewId]/4-submit.tsx b/frontend/pages/review/[reviewId]/4-submit.tsx
index ddbc3a4..12bef18 100644
--- a/frontend/pages/review/[reviewId]/4-submit.tsx
+++ b/frontend/pages/review/[reviewId]/4-submit.tsx
@@ -15,9 +15,14 @@ import useCourseReview from '@/components/hooks/useCourseReview';
import useCourseEvaluation from '@/components/hooks/useCourseEvaluation';
import StepWrapper from '@/components/Reviewer/Submit/StepWrapper';
import ReviewSummarySubmissionContent from '@/components/Reviewer/Submit/ReviewSummarySubmissionContent';
+import usePageTitle from '@/components/hooks/usePageTitle';
+import EvaluationHeader from '@/components/Custom/EvaluationHeader';
const Submit = () => {
const { courseReview } = useCourseReview();
+
+ usePageTitle(`${courseReview.course_evaluation.unit_code} Review`);
+
const { courseEvaluation } = useCourseEvaluation(courseReview.course_evaluation.id);
const STEP_INDEX = 3;
@@ -75,6 +80,7 @@ const Submit = () => {
return (
+
{
const { courseReview } = useCourseReview(false);
const { courseEvaluation } = useCourseEvaluation(courseReview.course_evaluation.id);
+ usePageTitle(`${courseEvaluation.unit_code} Review`);
+
const allSteps = getReviewStepsWithState(courseReview);
return (
+