DateTimeLocale added and used

This commit is contained in:
SJost 2017-10-06 23:19:54 +02:00
parent 6bdde9ae4f
commit a71c7326a8
3 changed files with 67 additions and 4 deletions

View File

@ -33,8 +33,8 @@ getShowTermsR = do
<li>
<a href=@{EditTermExistR $ termName term}>
#{termToText $ termName term}
from #{formatTime defaultTimeLocale "%d.%m.%Y" $ termStart term}
to: #{formatTime defaultTimeLocale "%d.%m.%Y" $ termEnd term}
von #{formatTimeGerWD $ termStart term}
bis #{formatTimeGerWD $ termEnd term}
$if termActive term
(Semester ist aktiv)
$with holidays <- termHolidays term
@ -42,21 +42,25 @@ getShowTermsR = do
Feiertage im Semester: #{show holidays}
|]
getNewTermR :: Handler Html
getNewTermR = do
-- TODO: Defaults für Semester hier ermitteln und übergeben
getEditTermMaybeR Nothing
getEditTermR :: Handler Html
getEditTermR = do
-- TODO: Defaults für Semester hier ermitteln und übergeben
getEditTermMaybeR Nothing
getEditTermExistR :: TermIdentifier -> Handler Html
getEditTermExistR tid = do
term <- runDB $ get $ TermKey tid
getEditTermMaybeR term
getEditTermMaybeR :: Maybe Term -> Handler Html
getEditTermMaybeR mbTerm= do
aid <- requireAuthId
@ -65,6 +69,7 @@ getEditTermMaybeR mbTerm= do
setTitle "Semester editieren/anlegen"
$(widgetFile "editTerm")
postEditTermR :: Handler Html
postEditTermR = do
aid <- requireAuthId
@ -75,8 +80,7 @@ postEditTermR = do
runDB $ repsert (TermKey $ termName res) res
let tid = termToText $ termName res
let msg = "Semester " `T.append` tid `T.append` " wurde editiert!"
-- setMessage $ toHtml msg -- FIXME
setMessage "Semester gespeichert"
setMessage [shamlet| #{msg}|]
redirect ShowTermsR
FormMissing -> defaultLayout $ do
setMessage "Keine Formulardaten erhalten."
@ -89,6 +93,7 @@ postEditTermR = do
|]
$(widgetFile "editTerm")
newTermForm :: Maybe Term -> Form Term
newTermForm template =
renderBootstrap3 BootstrapBasicForm $ Term

View File

@ -2,4 +2,5 @@ module Handler.Utils
( module Handler.Utils
) where
import Handler.Utils.DateTime as Handler.Utils
import Handler.Utils.Term as Handler.Utils

View File

@ -0,0 +1,57 @@
module Handler.Utils.DateTime where
import Data.Time
germanTimeLocale :: TimeLocale
germanTimeLocale = TimeLocale
{ wDays = [("Montag" ,"Mo")
,("Dienstag" ,"Di")
,("Mittwoch" ,"Mi")
,("Donnerstag" ,"Do")
,("Freitag" ,"Fr")
,("Samstag" ,"Sa")
,("Sonntag" ,"So")
]
, months = [("Januar" ,"Jan")
,("Februar" ,"Feb")
,("März" ,"Mär")
,("April" ,"Apr")
,("Mai" ,"Mai")
,("Juni" ,"Jun")
,("Juli" ,"Jul")
,("August" ,"Aug")
,("September" ,"Sep")
,("Oktober" ,"Okt")
,("November" ,"Nov")
,("Dezember" ,"Dez")
]
, amPm = ("am","pm")
, dateTimeFmt = "%a %e.%m.%y %k:%M"
, dateFmt = "%e.%m.%y"
, timeFmt = "%k:%M"
, time12Fmt = "%H:%M"
, knownTimeZones = [] -- TODO?
}
formatTimeGer :: FormatTime t => String -> t -> String
formatTimeGer = formatTime germanTimeLocale
formatTimeGerDTlong :: FormatTime t => t -> String
formatTimeGerDTlong = formatTimeGer "%A, %e. %B %Y, %k:%M:%S"
formatTimeGerWDT :: FormatTime t => t -> String
formatTimeGerWDT = formatTimeGer $ dateTimeFmt germanTimeLocale
formatTimeGerDT :: FormatTime t => t -> String
formatTimeGerDT = formatTimeGer "%e.%m.%y %k:%M"
formatTimeGerWD :: FormatTime t => t -> String
formatTimeGerWD = formatTimeGer "%a %e.%m.%y"
formatTimeGerD :: FormatTime t => t -> String
formatTimeGerD = formatTimeGer $ dateFmt germanTimeLocale
formatTimeGerT :: FormatTime t => t -> String
formatTimeGerT = formatTimeGer $ timeFmt germanTimeLocale