Fix tests & restore Common handlers

This commit is contained in:
Gregor Kleen 2019-05-01 19:14:08 +02:00
parent c10dcde04a
commit d2e10b8306
2 changed files with 22 additions and 8 deletions

View File

@ -1,10 +1,26 @@
-- | Common handler functions.
module Handler.Common where
import Import
import Data.FileEmbed (embedFile)
import Import hiding (embedFile)
getFaviconR :: Handler ()
getFaviconR = redirectWith movedPermanently301 $ StaticR favicon_ico
-- These handlers embed files in the executable at compile time to avoid a
-- runtime dependency, and for efficiency.
getRobotsR :: Handler ()
getRobotsR = redirectWith movedPermanently301 $ StaticR robots_txt
getFaviconR :: Handler TypedContent
getFaviconR = do
let content = $(embedFile "static/favicon.ico")
setEtagHashable content
return $ TypedContent "image/x-icon"
$ toContent content
getRobotsR :: Handler TypedContent
getRobotsR = do
let content = $(embedFile "static/robots.txt")
setEtagHashable content
return $ TypedContent typePlain
$ toContent content

View File

@ -73,8 +73,6 @@ import Data.Ratio ((%))
import qualified Data.Binary as Binary
import qualified Data.ByteString.Base64.URL as Base64 (encode)
import Network.Wai (requestMethod)
import Data.Time.Clock
@ -778,7 +776,7 @@ setLastModified lastModified = do
when (rMethod `elem` safeMethods) $ do
ifModifiedSince <- (=<<) (parseTimeM True defaultTimeLocale "%a, %d %b %Y %X %Z" . unpack <=< either (const Nothing) Just . Text.decodeUtf8') <$> lookupHeader "If-Modified-Since"
$logDebugS "LastModified" $ tshow (lastModified, ifModifiedSince)
when (maybe False ((lastModified <=) . addUTCTime precision) ifModifiedSince) $
when (maybe False ((lastModified <=) . addUTCTime precision) ifModifiedSince)
notModified
addHeader "Last-Modified" $ formatRFC1123 lastModified