diff --git a/src/Handler/Home.hs b/src/Handler/Home.hs
index 80850f4..b2497e0 100644
--- a/src/Handler/Home.hs
+++ b/src/Handler/Home.hs
@@ -20,39 +20,44 @@ where
import Import hiding ((==.))
-import Database.Esqueleto
+import Database.Esqueleto hiding (isNothing)
import Git
getHomeR :: Handler Html
getHomeR = do
- rows <- do
- repos <- runDB $ select $ from $ \ (sharer, project, repo) -> do
- where_ $
- project ^. ProjectSharer ==. sharer ^. SharerId &&.
- repo ^. RepoProject ==. project ^. ProjectId
- orderBy
- [ asc $ sharer ^. SharerIdent
- , asc $ project ^. ProjectIdent
- , asc $ repo ^. RepoIdent
- ]
- return
- ( sharer ^. SharerIdent
- , project ^. ProjectIdent
- , repo ^. RepoIdent
- )
- liftIO $ forM repos $ \ (Value sharer, Value project, Value repo) -> do
- let path =
- unpack $
- intercalate "/"
- [ "state2"
- , sharer
- , project
- , repo
+ mpid <- maybeAuthId
+ if isNothing mpid
+ then do
+ rows <- do
+ repos <- runDB $ select $ from $ \ (sharer, project, repo) -> do
+ where_ $
+ project ^. ProjectSharer ==. sharer ^. SharerId &&.
+ repo ^. RepoProject ==. project ^. ProjectId
+ orderBy
+ [ asc $ sharer ^. SharerIdent
+ , asc $ project ^. ProjectIdent
+ , asc $ repo ^. RepoIdent
]
- dt <- lastChange path
- ago <- timeAgo dt
- return (sharer, project, repo, ago)
- mp <- maybeAuth
- defaultLayout $ do
- setTitle "Welcome to Vervis!"
- $(widgetFile "homepage")
+ return
+ ( sharer ^. SharerIdent
+ , project ^. ProjectIdent
+ , repo ^. RepoIdent
+ )
+ liftIO $ forM repos $ \ (Value sharer, Value project, Value repo) -> do
+ let path =
+ unpack $
+ intercalate "/"
+ [ "state2"
+ , sharer
+ , project
+ , repo
+ ]
+ dt <- lastChange path
+ ago <- timeAgo dt
+ return (sharer, project, repo, ago)
+ defaultLayout $ do
+ setTitle "Welcome to Vervis!"
+ $(widgetFile "homepage")
+ else defaultLayout $ do
+ setTitle "Vervis > Overview"
+ $(widgetFile "personal-overview")
diff --git a/templates/homepage.hamlet b/templates/homepage.hamlet
index f464b22..679a6e2 100644
--- a/templates/homepage.hamlet
+++ b/templates/homepage.hamlet
@@ -19,19 +19,8 @@ $#
- This page, the homepage, is currently planned to be an intro or global - overview page when not logged in, and be a user-specific overview page when - browsing to it while logged in. - -$maybe _ <- mp -
You're logged in, i.e. you should see a personal overview. -$nothing -
- You aren't logged in, i.e. you should see a global overview/intro. Also,
- perhaps you are interested in signing up.
+ Sign up
+ This is the homepage for logged-in users. You should eventually see a
+ personal overview here. Your projects, repos, news, notifications, settings
+ and so on.
Repos
diff --git a/templates/personal-overview.hamlet b/templates/personal-overview.hamlet
new file mode 100644
index 0000000..63c5dbd
--- /dev/null
+++ b/templates/personal-overview.hamlet
@@ -0,0 +1,18 @@
+$# This file is part of Vervis.
+$#
+$# Written in 2016 by fr33domlover