From c0605024c963079fa3ef89499b20337afd395ee4 Mon Sep 17 00:00:00 2001 From: SJost Date: Thu, 24 Jan 2019 18:41:58 +0100 Subject: [PATCH] Handler.Utils.Table.cellTell added, but does not work as intended. --- src/Handler/Sheet.hs | 4 ++-- src/Handler/Utils/Table/Cells.hs | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/Handler/Sheet.hs b/src/Handler/Sheet.hs index 7baf5243f..abf2d9a35 100644 --- a/src/Handler/Sheet.hs +++ b/src/Handler/Sheet.hs @@ -221,12 +221,12 @@ getSheetListR tid ssh csh = do $ \DBRow{dbrOutput=(Entity _ Sheet{..}, _, mbSub)} -> case mbSub of Nothing -> mempty (Just (Entity sid Submission{..})) -> - let _stats = sheetTypeSum sheetType submissionRatingPoints -- for statistics over all shown rows + let stats = sheetTypeSum sheetType submissionRatingPoints -- for statistics over all shown rows mkCid = encrypt sid mkRoute = do cid' <- mkCid return $ CSubmissionR tid ssh csh sheetName cid' CorrectionR - in anchorCellM mkRoute $(widgetFile "widgets/rating") + in cellTell' stats $ anchorCellM mkRoute $(widgetFile "widgets/rating") , sortable Nothing -- (Just "percent") (i18nCell MsgRatingPercent) diff --git a/src/Handler/Utils/Table/Cells.hs b/src/Handler/Utils/Table/Cells.hs index 85d8571f7..a58bafff7 100644 --- a/src/Handler/Utils/Table/Cells.hs +++ b/src/Handler/Utils/Table/Cells.hs @@ -14,6 +14,15 @@ type CourseLink = (TermId, SchoolId, CourseShorthand) -- TODO: Refactor with Wit -------------------- -- Special cells +cellTell :: (Monoid a, IsDBTable m a) => a -> DBCell m a -> DBCell m a +cellTell x c = c & cellContents %~ (tell x *>) + +cellTell' :: Monoid w => w -> DBCell (HandlerT UniWorX IO) w -> DBCell (HandlerT UniWorX IO) w +cellTell' x c = c { wgtCellContents = tell x >> oldContent } + where + oldContent = wgtCellContents c + + indicatorCell :: IsDBTable m Any => DBCell m Any -- For dbTables that return a Bool to indicate content indicatorCell = mempty & cellContents %~ (tell (Any True) *>)