diff --git a/routes b/routes index 73998e05b..58d937c10 100644 --- a/routes +++ b/routes @@ -201,6 +201,8 @@ /users/invite EInviteR GET POST /register ERegisterR POST !timeANDcourse-registeredAND¬exam-registered !timeANDexam-registeredAND¬exam-result /register/#ExamOccurrenceName ERegisterOccR POST !exam-occurrence-registrationANDtimeANDcapacityANDcourse-registeredAND¬exam-occurrence-registered !exam-occurrence-registrationANDtimeANDexam-occurrence-registeredAND¬exam-result + /schedule-opt/#ExamOccurrenceName/set/#Bool EScheduleOptSetR GET POST !free -- TODO: restrict to !timeANDcourse-registered !lecturer !tutor !corrector + /schedule-opt/#ExamOccurrenceName/del EScheduleOptDelR GET POST !free -- TODO: see above /grades EGradesR GET POST !exam-office /assign-occurrences EAutoOccurrenceR POST /correct ECorrectR GET POST !exam-correctorANDtime diff --git a/src/Foundation/Navigation.hs b/src/Foundation/Navigation.hs index 6543fca02..ac8558f59 100644 --- a/src/Foundation/Navigation.hs +++ b/src/Foundation/Navigation.hs @@ -240,6 +240,8 @@ instance BearerAuthSite UniWorX => YesodBreadcrumbs UniWorX where ERegisterOccR _occn -> i18nCrumb MsgBreadcrumbExamRegister . Just $ CExamR tid ssh csh examn EShowR EAutoOccurrenceR -> i18nCrumb MsgBreadcrumbExamAutoOccurrence . Just $ CExamR tid ssh csh examn EUsersR ECorrectR -> i18nCrumb MsgMenuExamCorrect . Just $ CExamR tid ssh csh examn EShowR + EScheduleOptSetR _eoname _opt -> i18nCrumb MsgBreadcrumbScheduleOpt . Just $ CourseR tid ssh csh CShowR + EScheduleOptDelR _eoname -> i18nCrumb MsgBreadcrumbScheduleOpt . Just $ CourseR tid ssh csh CShowR breadcrumb (CourseR tid ssh csh (TutorialR tutn sRoute)) = case sRoute of TUsersR -> maybeT (i18nCrumb MsgBreadcrumbTutorial . Just $ CourseR tid ssh csh CTutorialListR) $ do diff --git a/src/Handler/Exam.hs b/src/Handler/Exam.hs index 0e3c209dd..1282c3325 100644 --- a/src/Handler/Exam.hs +++ b/src/Handler/Exam.hs @@ -9,6 +9,7 @@ import Handler.Exam.RegistrationInvite as Handler.Exam import Handler.Exam.New as Handler.Exam import Handler.Exam.Edit as Handler.Exam import Handler.Exam.Show as Handler.Exam +import Handler.Exam.Schedule as Handler.Exam import Handler.Exam.Users as Handler.Exam import Handler.Exam.AddUser as Handler.Exam import Handler.Exam.AutoOccurrence as Handler.Exam diff --git a/src/Handler/Exam/Schedule.hs b/src/Handler/Exam/Schedule.hs new file mode 100644 index 000000000..b33cc01ad --- /dev/null +++ b/src/Handler/Exam/Schedule.hs @@ -0,0 +1,16 @@ +module Handler.Exam.Schedule + ( getEScheduleOptSetR, postEScheduleOptSetR + , getEScheduleOptDelR, postEScheduleOptDelR + ) where + +import Import + + +getEScheduleOptSetR, postEScheduleOptSetR :: TermId -> SchoolId -> CourseShorthand -> ExamName -> ExamOccurrenceName -> Bool -> Handler Html +getEScheduleOptSetR = postEScheduleOptSetR +postEScheduleOptSetR _tid _ssh _csh _ename _eoname _opt = error "WIP" + + +getEScheduleOptDelR, postEScheduleOptDelR :: TermId -> SchoolId -> CourseShorthand -> ExamName -> ExamOccurrenceName -> Handler Html +getEScheduleOptDelR = postEScheduleOptDelR +postEScheduleOptDelR _tid _ssh _csh _ename _eoname = error "WIP"