From b95bf9e42bc473c92585caa428bc4a5d2430103e Mon Sep 17 00:00:00 2001 From: fr33domlover Date: Tue, 23 Feb 2016 03:19:55 +0000 Subject: [PATCH] Create personal overview page, still blank --- src/Handler/Home.hs | 67 ++++++++++++++++-------------- templates/homepage.hamlet | 13 +----- templates/personal-overview.hamlet | 18 ++++++++ 3 files changed, 55 insertions(+), 43 deletions(-) create mode 100644 templates/personal-overview.hamlet 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 @@ $# . platform. It's still in early development, but hopefully making progress fast. -

Intended Content -

- 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

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 . +$# +$# ♡ Copying is an act of love. Please copy, reuse and share. +$# +$# The author(s) have dedicated all copyright and related and neighboring +$# rights to this software to the public domain worldwide. This software is +$# distributed without any warranty. +$# +$# You should have received a copy of the CC0 Public Domain Dedication along +$# with this software. If not, see +$# . + +

+ 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.