feat(external-exams): add actions to EEUsers
This commit is contained in:
parent
5090cca98b
commit
2cf4895231
@ -1729,6 +1729,9 @@ ExamUserSyncLastChange: Zuletzt geändert
|
|||||||
ExamUserMarkSynchronised: Prüfungsleistung als synchronisiert markieren
|
ExamUserMarkSynchronised: Prüfungsleistung als synchronisiert markieren
|
||||||
ExternalExamUserMarkSynchronised: Prüfungsleistung als synchronisiert markieren
|
ExternalExamUserMarkSynchronised: Prüfungsleistung als synchronisiert markieren
|
||||||
ExternalExamUserMarkSynchronisedTip: Sollen beim CSV-Export automatisch alle heruntergeladenen Prüfungsleistungen als synchronisiert markiert werden? Diese Markierung dient als Hinweis an andere Prüfungsbeauftragte und die Kursverwalter, dass die Leistung an der korrekten Stelle vermerkt wurde und keiner weiteren Handlung bedarf.
|
ExternalExamUserMarkSynchronisedTip: Sollen beim CSV-Export automatisch alle heruntergeladenen Prüfungsleistungen als synchronisiert markiert werden? Diese Markierung dient als Hinweis an andere Prüfungsbeauftragte und die Kursverwalter, dass die Leistung an der korrekten Stelle vermerkt wurde und keiner weiteren Handlung bedarf.
|
||||||
|
ExternalExamUserEditOccurrence: Termin ändern
|
||||||
|
ExternalExamUserEditResult: Prüfungsergebnis ändern
|
||||||
|
ExternalExamUserDelete: Prüfungsteilnehmer entfernen
|
||||||
|
|
||||||
ExamUserMarkSynchronisedCsv: Prüfungsleistungen beim Export als synchronisiert markieren
|
ExamUserMarkSynchronisedCsv: Prüfungsleistungen beim Export als synchronisiert markieren
|
||||||
ExamUserMarkSynchronisedCsvTip: Sollen beim CSV-Export automatisch alle heruntergeladenen Prüfungsleistungen als synchronisiert markiert werden? Diese Markierung dient als Hinweis an andere Prüfungsbeauftragte und die Kursverwalter, dass die Leistung an der korrekten Stelle vermerkt wurde und keiner weiteren Handlung bedarf.
|
ExamUserMarkSynchronisedCsvTip: Sollen beim CSV-Export automatisch alle heruntergeladenen Prüfungsleistungen als synchronisiert markiert werden? Diese Markierung dient als Hinweis an andere Prüfungsbeauftragte und die Kursverwalter, dass die Leistung an der korrekten Stelle vermerkt wurde und keiner weiteren Handlung bedarf.
|
||||||
|
|||||||
@ -1721,6 +1721,9 @@ ExamUserSyncLastChange: Last changed
|
|||||||
ExamUserMarkSynchronised: Mark exam achievements as synchronised
|
ExamUserMarkSynchronised: Mark exam achievements as synchronised
|
||||||
ExternalExamUserMarkSynchronised: Mark exam achievements as synchronised
|
ExternalExamUserMarkSynchronised: Mark exam achievements as synchronised
|
||||||
ExternalExamUserMarkSynchronisedTip: Should all exam achievements, that are included in the download, be marked as synchronised? Marking exam achievemnts as synchronised serves as a notice to other exam offices and course administrators, that the exam achievement has been dealt with properly such that no further action is required.
|
ExternalExamUserMarkSynchronisedTip: Should all exam achievements, that are included in the download, be marked as synchronised? Marking exam achievemnts as synchronised serves as a notice to other exam offices and course administrators, that the exam achievement has been dealt with properly such that no further action is required.
|
||||||
|
ExternalExamUserEditOccurrence: Edit occurrence
|
||||||
|
ExternalExamUserEditResult: Edit exam result
|
||||||
|
ExternalExamUserDelete: Delete exam participant
|
||||||
|
|
||||||
ExamUserMarkSynchronisedCsv: Mark exam achievements as synchronised while exporting
|
ExamUserMarkSynchronisedCsv: Mark exam achievements as synchronised while exporting
|
||||||
ExamUserMarkSynchronisedCsvTip: Should all exam achievements, that are included in the download, be marked as synchronised? Marking exam achievemnts as synchronised serves as a notice to other exam offices and course administrators, that the exam achievement has been dealt with properly such that no further action is required.
|
ExamUserMarkSynchronisedCsvTip: Should all exam achievements, that are included in the download, be marked as synchronised? Marking exam achievemnts as synchronised serves as a notice to other exam offices and course administrators, that the exam achievement has been dealt with properly such that no further action is required.
|
||||||
|
|||||||
@ -21,6 +21,9 @@ postEEGradesR tid ssh coursen examn = do
|
|||||||
return . Just $ do
|
return . Just $ do
|
||||||
addMessageI Success $ MsgExamUserMarkedSynchronised (length selectedResults)
|
addMessageI Success $ MsgExamUserMarkedSynchronised (length selectedResults)
|
||||||
redirect $ EExamR tid ssh coursen examn EEGradesR
|
redirect $ EExamR tid ssh coursen examn EEGradesR
|
||||||
|
(ExternalExamUserEditOccurrenceData _, _) -> error "EditOccurrence not implemented"
|
||||||
|
(ExternalExamUserEditResultData _, _) -> error "EditResult not implemented"
|
||||||
|
(ExternalExamUserDeleteData, _) -> error "Delete not implemented"
|
||||||
|
|
||||||
return (usersResult', examUsersTable)
|
return (usersResult', examUsersTable)
|
||||||
|
|
||||||
|
|||||||
@ -107,6 +107,9 @@ instance CsvColumnsExplained ExternalExamUserTableCsv where
|
|||||||
|
|
||||||
data ExternalExamUserAction
|
data ExternalExamUserAction
|
||||||
= ExternalExamUserMarkSynchronised
|
= ExternalExamUserMarkSynchronised
|
||||||
|
| ExternalExamUserEditOccurrence
|
||||||
|
| ExternalExamUserEditResult
|
||||||
|
| ExternalExamUserDelete
|
||||||
deriving (Eq, Ord, Enum, Bounded, Read, Show, Generic, Typeable)
|
deriving (Eq, Ord, Enum, Bounded, Read, Show, Generic, Typeable)
|
||||||
instance Universe ExternalExamUserAction
|
instance Universe ExternalExamUserAction
|
||||||
instance Finite ExternalExamUserAction
|
instance Finite ExternalExamUserAction
|
||||||
@ -115,6 +118,9 @@ embedRenderMessage ''UniWorX ''ExternalExamUserAction id
|
|||||||
|
|
||||||
data ExternalExamUserActionData
|
data ExternalExamUserActionData
|
||||||
= ExternalExamUserMarkSynchronisedData
|
= ExternalExamUserMarkSynchronisedData
|
||||||
|
| ExternalExamUserEditOccurrenceData UTCTime
|
||||||
|
| ExternalExamUserEditResultData ExamResultPassedGrade
|
||||||
|
| ExternalExamUserDeleteData
|
||||||
|
|
||||||
newtype ExternalExamUserCsvExportDataGrades = ExternalExamUserCsvExportDataGrades
|
newtype ExternalExamUserCsvExportDataGrades = ExternalExamUserCsvExportDataGrades
|
||||||
{ csvEEUserMarkSynchronised :: Bool
|
{ csvEEUserMarkSynchronised :: Bool
|
||||||
@ -303,7 +309,14 @@ makeExternalExamUsersTable mode (Entity eeId ExternalExam{..}) = do
|
|||||||
(res, formWgt) <- multiActionM actionMap (fslI MsgAction) Nothing csrf
|
(res, formWgt) <- multiActionM actionMap (fslI MsgAction) Nothing csrf
|
||||||
let formRes = (, mempty) . First . Just <$> res
|
let formRes = (, mempty) . First . Just <$> res
|
||||||
return (formRes, formWgt)
|
return (formRes, formWgt)
|
||||||
_other -> \csrf -> return (FormMissing, toWidget csrf)
|
EEUMUsers -> \csrf -> do
|
||||||
|
let
|
||||||
|
actionMap :: Map ExternalExamUserAction (AForm Handler ExternalExamUserActionData)
|
||||||
|
actionMap = Map.fromList
|
||||||
|
[]
|
||||||
|
(res, formWgt) <- multiActionM actionMap (fslI MsgAction) Nothing csrf
|
||||||
|
let formRes = (, mempty) . First . Just <$> res
|
||||||
|
return (formRes, formWgt)
|
||||||
, dbParamsFormEvaluate = liftHandler . runFormPost
|
, dbParamsFormEvaluate = liftHandler . runFormPost
|
||||||
, dbParamsFormResult = id
|
, dbParamsFormResult = id
|
||||||
, dbParamsFormIdent = def
|
, dbParamsFormIdent = def
|
||||||
|
|||||||
Reference in New Issue
Block a user