feat(exams): add basic schedule-opt routes and handler struc

This commit is contained in:
Sarah Vaupel 2020-11-07 15:52:58 +01:00
parent 7f48a2d693
commit cb3f74a2a9
4 changed files with 21 additions and 0 deletions

2
routes
View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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"