{-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeFamilies #-} module Main where import Control.Monad.Logger (runStderrLoggingT) import Data.ByteString.Lazy as BS import Data.List as List import Database.Persist.Postgresql (ConnectionString, runMigration, runSqlPersistMPool, withPostgresqlPool) import Debug.Trace (traceShow) import Store (migrateAll, save) import Track (parseBS, parseFile) import Yesod.Core import Yesod.Form.Fields import Yesod.Form.Functions import Yesod.Form.Types -- https://github.com/yesodweb/yesod-cookbook/blob/master/cookbook/Static-file-subsite-Hello-World.md import Yesod.Static staticFiles "frontend" -- this param appears to be a pathname data Souplesse = Souplesse { getStatic :: Static } -- ref https://www.yesodweb.com/book/routing-and-handlers -- for adding params (start/end) to the timeline route mkYesod "Souplesse" [parseRoutes| / CalendarR GET /timeline TimelineR GET /upload UploadR POST /static StaticR Static getStatic |] instance Yesod Souplesse getCalendarR :: Handler Html getCalendarR = do (formWidget, _) <- generateFormPost uploadForm defaultLayout [whamlet|
A calendar view goes here