chore(lms): activate filters, add examples
This commit is contained in:
parent
6772290044
commit
9e80a2e5e9
@ -11,7 +11,7 @@ CsvColumnLmsPin: PIN des E-Lernen Zugangs
|
|||||||
CsvColumnLmsResetPin: Wird die PIN bei der nächsten Synchronisation zurückgesetzt?
|
CsvColumnLmsResetPin: Wird die PIN bei der nächsten Synchronisation zurückgesetzt?
|
||||||
CsvColumnLmsDelete: Wird der Identifikator in der E-Lernen Plattform bei der nächsten Synchronisation gelöscht?
|
CsvColumnLmsDelete: Wird der Identifikator in der E-Lernen Plattform bei der nächsten Synchronisation gelöscht?
|
||||||
CsvColumnLmsStaff: Handelt es sich um einen internen Mitarbeiter? (Aus historischen Gründen, wird momentan ignoriert.)
|
CsvColumnLmsStaff: Handelt es sich um einen internen Mitarbeiter? (Aus historischen Gründen, wird momentan ignoriert.)
|
||||||
CsvColumnLmsSuccess: Zeitstempel der erfolgreichen Teilnahme
|
CsvColumnLmsSuccess: Zeitstempel der erfolgreichen Teilnahme (UTC)
|
||||||
CsvColumnLmsFailed: User was blocked by LMS, usually due to too many attempts
|
CsvColumnLmsFailed: User was blocked by LMS, usually due to too many attempts
|
||||||
LmsUserlistInsert: Neuer LMS User
|
LmsUserlistInsert: Neuer LMS User
|
||||||
LmsUserlistUpdate: LMS User aktualisierung
|
LmsUserlistUpdate: LMS User aktualisierung
|
||||||
|
|||||||
@ -11,7 +11,7 @@ CsvColumnLmsPin: PIN for E-learning access
|
|||||||
CsvColumnLmsResetPin: Will the E-learning PIN be reset upon next synchronisation?
|
CsvColumnLmsResetPin: Will the E-learning PIN be reset upon next synchronisation?
|
||||||
CsvColumnLmsDelete: Will the identifier be deleted from the E-learning platfrom upon next synchronisation?
|
CsvColumnLmsDelete: Will the identifier be deleted from the E-learning platfrom upon next synchronisation?
|
||||||
CsvColumnLmsStaff: Is the user an internal staff member? (Legacy, currently ignored)
|
CsvColumnLmsStaff: Is the user an internal staff member? (Legacy, currently ignored)
|
||||||
CsvColumnLmsSuccess: Timestamp of successful completion
|
CsvColumnLmsSuccess: Timestamp of successful completion (UTC)
|
||||||
CsvColumnLmsFailed: Blockier durch LMS, üblicherweise wegen zu vieler Fehlversuche
|
CsvColumnLmsFailed: Blockier durch LMS, üblicherweise wegen zu vieler Fehlversuche
|
||||||
LmsUserlistInsert: New LMS User
|
LmsUserlistInsert: New LMS User
|
||||||
LmsUserlistUpdate: Update of LMS User
|
LmsUserlistUpdate: Update of LMS User
|
||||||
|
|||||||
@ -265,7 +265,7 @@ mkLmsTable sid qsh qid = do
|
|||||||
[ prismAForm (singletonFilter csvLmsIdent . maybePrism _PathPiece) mPrev $ aopt (hoistField lift textField) (fslI MsgTableLmsIdent)
|
[ prismAForm (singletonFilter csvLmsIdent . maybePrism _PathPiece) mPrev $ aopt (hoistField lift textField) (fslI MsgTableLmsIdent)
|
||||||
, prismAForm (singletonFilter csvLmsSuccess . maybePrism _PathPiece) mPrev $ aopt (hoistField lift checkBoxField) (fslI MsgTableLmsSuccess)
|
, prismAForm (singletonFilter csvLmsSuccess . maybePrism _PathPiece) mPrev $ aopt (hoistField lift checkBoxField) (fslI MsgTableLmsSuccess)
|
||||||
]
|
]
|
||||||
dbtStyle = def
|
dbtStyle = def { dbsFilterLayout = defaultDBSFilterLayout }
|
||||||
dbtParams = def
|
dbtParams = def
|
||||||
dbtIdent :: Text
|
dbtIdent :: Text
|
||||||
dbtIdent = "lms-result"
|
dbtIdent = "lms-result"
|
||||||
|
|||||||
@ -78,6 +78,7 @@ embedRenderMessage ''UniWorX ''LmsResultCsvException id
|
|||||||
|
|
||||||
mkResultTable :: SchoolId -> QualificationShorthand -> QualificationId -> DB (Any, Widget)
|
mkResultTable :: SchoolId -> QualificationShorthand -> QualificationId -> DB (Any, Widget)
|
||||||
mkResultTable sid qsh qid = do
|
mkResultTable sid qsh qid = do
|
||||||
|
now_day <- utctDay <$> liftIO getCurrentTime
|
||||||
dbtCsvName <- csvFilenameLmsResult qsh
|
dbtCsvName <- csvFilenameLmsResult qsh
|
||||||
let dbtCsvSheetName = dbtCsvName
|
let dbtCsvSheetName = dbtCsvName
|
||||||
let
|
let
|
||||||
@ -107,7 +108,7 @@ mkResultTable sid qsh qid = do
|
|||||||
[ prismAForm (singletonFilter csvLmsIdent . maybePrism _PathPiece) mPrev $ aopt (hoistField lift textField) (fslI MsgTableLmsIdent)
|
[ prismAForm (singletonFilter csvLmsIdent . maybePrism _PathPiece) mPrev $ aopt (hoistField lift textField) (fslI MsgTableLmsIdent)
|
||||||
, prismAForm (singletonFilter csvLmsSuccess . maybePrism _PathPiece) mPrev $ aopt (hoistField lift dayField) (fslI MsgTableLmsSuccess)
|
, prismAForm (singletonFilter csvLmsSuccess . maybePrism _PathPiece) mPrev $ aopt (hoistField lift dayField) (fslI MsgTableLmsSuccess)
|
||||||
]
|
]
|
||||||
dbtStyle = def
|
dbtStyle = def { dbsFilterLayout = defaultDBSFilterLayout }
|
||||||
dbtParams = def
|
dbtParams = def
|
||||||
dbtIdent :: Text
|
dbtIdent :: Text
|
||||||
dbtIdent = "lms-result"
|
dbtIdent = "lms-result"
|
||||||
@ -118,7 +119,10 @@ mkResultTable sid qsh qid = do
|
|||||||
, dbtCsvSheetName
|
, dbtCsvSheetName
|
||||||
, dbtCsvNoExportData = Just id
|
, dbtCsvNoExportData = Just id
|
||||||
, dbtCsvHeader = const $ return lmsResultTableCsvHeader
|
, dbtCsvHeader = const $ return lmsResultTableCsvHeader
|
||||||
, dbtCsvExampleData = Nothing
|
, dbtCsvExampleData = Just
|
||||||
|
[ LmsResultTableCsv{csvLRTident = LmsIdent lid, csvLRTsuccess = addDays (-dos) now_day }
|
||||||
|
| (lid,dos) <- zip ["abcdefgh", "12345678", "ident8ch"] [1..]
|
||||||
|
]
|
||||||
}
|
}
|
||||||
where
|
where
|
||||||
doEncode' = LmsResultTableCsv
|
doEncode' = LmsResultTableCsv
|
||||||
|
|||||||
@ -30,8 +30,8 @@ makeLenses_ ''LmsUserlistTableCsv
|
|||||||
--instance Csv.FromRecord LmsUserlistTableCsv
|
--instance Csv.FromRecord LmsUserlistTableCsv
|
||||||
|
|
||||||
-- csv with headers
|
-- csv with headers
|
||||||
lmsUserlistTableCsvHeader :: Csv.Header
|
instance DefaultOrdered LmsUserlistTableCsv where
|
||||||
lmsUserlistTableCsvHeader = Csv.header [ csvLmsIdent, csvLmsBlocked ]
|
headerOrder = const $ Csv.header [ csvLmsIdent, csvLmsBlocked ]
|
||||||
|
|
||||||
instance ToNamedRecord LmsUserlistTableCsv where
|
instance ToNamedRecord LmsUserlistTableCsv where
|
||||||
toNamedRecord LmsUserlistTableCsv{..} = Csv.namedRecord
|
toNamedRecord LmsUserlistTableCsv{..} = Csv.namedRecord
|
||||||
@ -106,17 +106,17 @@ mkUserlistTable sid qsh qid = do
|
|||||||
[ prismAForm (singletonFilter csvLmsIdent . maybePrism _PathPiece) mPrev $ aopt (hoistField lift textField) (fslI MsgTableLmsIdent)
|
[ prismAForm (singletonFilter csvLmsIdent . maybePrism _PathPiece) mPrev $ aopt (hoistField lift textField) (fslI MsgTableLmsIdent)
|
||||||
, prismAForm (singletonFilter csvLmsBlocked . maybePrism _PathPiece) mPrev $ aopt (hoistField lift checkBoxField) (fslI MsgTableLmsFailed)
|
, prismAForm (singletonFilter csvLmsBlocked . maybePrism _PathPiece) mPrev $ aopt (hoistField lift checkBoxField) (fslI MsgTableLmsFailed)
|
||||||
]
|
]
|
||||||
dbtStyle = def
|
dbtStyle = def { dbsFilterLayout = defaultDBSFilterLayout }
|
||||||
dbtParams = def
|
dbtParams = def
|
||||||
dbtIdent :: Text
|
dbtIdent :: Text
|
||||||
dbtIdent = "lms-userlist"
|
dbtIdent = "lms-userlist"
|
||||||
dbtCsvEncode = Just DBTCsvEncode {..}
|
dbtCsvEncode = simpleCsvEncode dbtCsvName dbtCsvSheetName doEncode' <&> addExample
|
||||||
where
|
where
|
||||||
dbtCsvExportForm = pure ()
|
addExample dce = dce{ dbtCsvExampleData = csvExample }
|
||||||
dbtCsvNoExportData = Just id
|
csvExample = Just
|
||||||
dbtCsvExampleData = Nothing
|
[ LmsUserlistTableCsv{csvLULident = LmsIdent lid, csvLULfailed = LmsBool ufl}
|
||||||
dbtCsvHeader = const $ return lmsUserlistTableCsvHeader
|
| (lid,ufl) <- zip ["abcdefgh", "12345678", "ident8ch"] [False,True,False]
|
||||||
dbtCsvDoEncode = \() -> C.map (doEncode' . view _2)
|
]
|
||||||
doEncode' = LmsUserlistTableCsv
|
doEncode' = LmsUserlistTableCsv
|
||||||
<$> view (_dbrOutput . _entityVal . _lmsUserlistIdent)
|
<$> view (_dbrOutput . _entityVal . _lmsUserlistIdent)
|
||||||
<*> view (_dbrOutput . _entityVal . _lmsUserlistFailed . _lmsBool)
|
<*> view (_dbrOutput . _entityVal . _lmsUserlistFailed . _lmsBool)
|
||||||
|
|||||||
@ -98,7 +98,7 @@ mkUserTable _sid qsh qid = do
|
|||||||
[ prismAForm (singletonFilter csvLmsIdent . maybePrism _PathPiece) mPrev $ aopt (hoistField lift textField) (fslI MsgTableLmsIdent)
|
[ prismAForm (singletonFilter csvLmsIdent . maybePrism _PathPiece) mPrev $ aopt (hoistField lift textField) (fslI MsgTableLmsIdent)
|
||||||
, prismAForm (singletonFilter csvLmsResetPin . maybePrism _PathPiece) mPrev $ aopt (hoistField lift checkBoxField) (fslI MsgTableLmsResetPin)
|
, prismAForm (singletonFilter csvLmsResetPin . maybePrism _PathPiece) mPrev $ aopt (hoistField lift checkBoxField) (fslI MsgTableLmsResetPin)
|
||||||
]
|
]
|
||||||
dbtStyle = def
|
dbtStyle = def { dbsFilterLayout = defaultDBSFilterLayout }
|
||||||
dbtParams = def
|
dbtParams = def
|
||||||
dbtIdent :: Text
|
dbtIdent :: Text
|
||||||
dbtIdent = "lms-user"
|
dbtIdent = "lms-user"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user