Material Delete implemented
This commit is contained in:
parent
2aa73b7694
commit
f6e29a7fa7
@ -235,7 +235,9 @@ MaterialEditHeading materialName@MaterialName: Material "#{materialName}" editie
|
|||||||
MaterialEditTitle materialName@MaterialName: Material "#{materialName}" editieren
|
MaterialEditTitle materialName@MaterialName: Material "#{materialName}" editieren
|
||||||
MaterialSaveOk tid@TermId ssh@SchoolId csh@CourseShorthand materialName@MaterialName: Material "#{materialName}" erfolgreich gespeichert in Kurs #{display tid}-#{display ssh}-#{csh}
|
MaterialSaveOk tid@TermId ssh@SchoolId csh@CourseShorthand materialName@MaterialName: Material "#{materialName}" erfolgreich gespeichert in Kurs #{display tid}-#{display ssh}-#{csh}
|
||||||
MaterialNameDup tid@TermId ssh@SchoolId csh@CourseShorthand materialName@MaterialName: Es gibt bereits Material mit Namen "#{materialName}" in diesem Kurs #{display tid}-#{display ssh}-#{csh}
|
MaterialNameDup tid@TermId ssh@SchoolId csh@CourseShorthand materialName@MaterialName: Es gibt bereits Material mit Namen "#{materialName}" in diesem Kurs #{display tid}-#{display ssh}-#{csh}
|
||||||
MaterialDeleteQuestion: Wollen Sie das unten aufgeführte Material wirklich löschen?
|
MaterialDeleteCaption: Wollen Sie das unten aufgeführte Material wirklich löschen?
|
||||||
|
MaterialDelHasFiles count@Int64: inklusive #{tshow count} #{pluralDE count "Datei" "Dateien"}
|
||||||
|
MaterialIsVisible: Achtung, dieses Material wurde bereits veröffentlicht.
|
||||||
MaterialDeleted materialName@MaterialName: Material "#{materialName}" gelöscht
|
MaterialDeleted materialName@MaterialName: Material "#{materialName}" gelöscht
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -16,7 +16,7 @@ import Database.Esqueleto.Utils.TH
|
|||||||
import Utils.Lens
|
import Utils.Lens
|
||||||
import Utils.Form
|
import Utils.Form
|
||||||
import Handler.Utils
|
import Handler.Utils
|
||||||
-- import Handler.Utils.Delete
|
import Handler.Utils.Delete
|
||||||
import Handler.Utils.Table.Cells
|
import Handler.Utils.Table.Cells
|
||||||
import Handler.Utils.Table.Columns
|
import Handler.Utils.Table.Columns
|
||||||
|
|
||||||
@ -309,18 +309,31 @@ handleMaterialEdit tid ssh csh cid template dbMaterial = do
|
|||||||
getMDelR, postMDelR :: TermId -> SchoolId -> CourseShorthand -> MaterialName -> Handler Html
|
getMDelR, postMDelR :: TermId -> SchoolId -> CourseShorthand -> MaterialName -> Handler Html
|
||||||
getMDelR = postMDelR
|
getMDelR = postMDelR
|
||||||
postMDelR tid ssh csh mnm = do
|
postMDelR tid ssh csh mnm = do
|
||||||
_matEnt <- runDB $ fetchMaterial tid ssh csh mnm
|
matEnt <- runDB $ fetchMaterial tid ssh csh mnm
|
||||||
error "todo" -- CONTINUE HERE
|
|
||||||
{-
|
|
||||||
deleteR DeleteRoute
|
deleteR DeleteRoute
|
||||||
{ drRecords = Set.singleton $ entityKey matEnt
|
{ drRecords = Set.singleton $ entityKey matEnt
|
||||||
, drGetInfo = error "todo"
|
, drGetInfo = \(material `E.InnerJoin` course) -> do
|
||||||
, drUnjoin = error "todo"
|
E.on $ material E.^. MaterialCourse E.==. course E.^. CourseId
|
||||||
, drRenderRecord = error "todo"
|
let filecount = E.sub_select . E.from $ \matfile -> do
|
||||||
, drRecordConfirmString = error "todo"
|
E.where_ $ matfile E.^. MaterialFileMaterial E.==. material E.^. MaterialId
|
||||||
, drCaption = SomeMessage MsgMaterialDeleteQuestion
|
return (E.countRows :: E.SqlExpr (E.Value Int64))
|
||||||
|
return (material,course,filecount)
|
||||||
|
, drUnjoin = \(material `E.InnerJoin` _course) -> material
|
||||||
|
, drRenderRecord = \(Entity _ Material{..}, Entity _ Course{..}, E.Value fileCount) -> do
|
||||||
|
now <- liftIO getCurrentTime
|
||||||
|
let isPublished = NTop (Just now) >= NTop materialVisibleFrom
|
||||||
|
pCT = prependCourseTitle courseTerm courseSchool courseShorthand
|
||||||
|
return [whamlet|
|
||||||
|
_{SomeMessage $ pCT $ MsgMaterialHeading materialName}
|
||||||
|
$if fileCount /= 0
|
||||||
|
<i>_{SomeMessage $ MsgMaterialDelHasFiles fileCount}
|
||||||
|
$if isPublished
|
||||||
|
_{SomeMessage $ MsgMaterialIsVisible}
|
||||||
|
|]
|
||||||
|
, drRecordConfirmString = \(Entity _ Material{..}, Entity _ Course{..}, E.Value fileCount) ->
|
||||||
|
return $ [st|#{termToText (unTermKey courseTerm)}/#{unSchoolKey courseSchool}/#{courseShorthand}/#{materialName}|] <> bool mempty [st| + #{tshow fileCount} Files|] (fileCount /= 0)
|
||||||
|
, drCaption = SomeMessage MsgMaterialDeleteCaption
|
||||||
, drSuccessMessage = SomeMessage $ MsgMaterialDeleted mnm
|
, drSuccessMessage = SomeMessage $ MsgMaterialDeleted mnm
|
||||||
, drSuccess = SomeRoute $ CourseR tid ssh csh MaterialListR
|
, drSuccess = SomeRoute $ CourseR tid ssh csh MaterialListR
|
||||||
, drAbort = SomeRoute $ CourseR tid ssh csh $ MaterialR mnm MShowR
|
, drAbort = SomeRoute $ CourseR tid ssh csh $ MaterialR mnm MShowR
|
||||||
}
|
}
|
||||||
-}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user