corebot-bliki-0.2.2.0: src/Yesod/CoreBot/Bliki/Widgets.hs
{- Widgets useful for building the wiki site.
- See DefaultMain.hs for an example of all of these in use at once.
-}
module Yesod.CoreBot.Bliki.Widgets where
import Yesod.CoreBot.Bliki.Prelude
import Yesod.CoreBot.Bliki.Base
import Yesod.CoreBot.Bliki.Config
import Yesod.CoreBot.Bliki.Resources.Base
data NavWidget master where
NavWidget :: forall master . Yesod master => Bliki_ master -> NavWidget master
instance ToWidget sub master ( NavWidget master ) where
toWidget (NavWidget bliki) = do
main_URL <- approot <$> ( lift $ getYesod )
let cfg = config $ data_res bliki
blog_update_log = blog_routes cfg BlogIndexR
wiki_index = wiki_routes cfg $ WikiIndexR []
[whamlet|
<ul .nav_sidebar>
<li>
<a href=#{main_URL}>Main
<li><a href=@{blog_update_log}>Blog
<li><a href=@{wiki_index}>Wiki
|]
toWidget $ [cassius|
.nav_sidebar li
font-size: large;
list-style: none;
.nav_sidebar
position: fixed;
margin: 0;
top: 0em;
left: 1em;
width: 9em;
height: 100%;
padding-top: 1em;
padding-right: 0.1em;
padding-left: 0.1em;
border-right: 0.3em solid #111111;
body
margin: 3em 12em;
padding: 0em 0.2em;
.wiki_index li
list-style: none
|]