2015-08-09 19:16:33 +00:00
|
|
|
-- yammat - Yet Another MateMAT
|
|
|
|
-- Copyright (C) 2015 Amedeo Molnár
|
|
|
|
--
|
|
|
|
-- This program is free software: you can redistribute it and/or modify
|
|
|
|
-- it under the terms of the GNU Affero General Public License as published
|
|
|
|
-- by the Free Software Foundation, either version 3 of the License, or
|
|
|
|
-- (at your option) any later version.
|
|
|
|
--
|
|
|
|
-- This program is distributed in the hope that it will be useful,
|
|
|
|
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
-- GNU Affero General Public License for more details.
|
|
|
|
--
|
|
|
|
-- You should have received a copy of the GNU Affero General Public License
|
|
|
|
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
|
2015-04-04 04:46:33 +00:00
|
|
|
module Handler.Home where
|
|
|
|
|
|
|
|
import Import
|
2015-04-16 00:51:08 +00:00
|
|
|
import Data.Maybe
|
2016-03-17 22:59:52 +00:00
|
|
|
import Data.Time.Calendar (addDays)
|
2015-04-04 04:46:33 +00:00
|
|
|
|
|
|
|
-- This is a handler function for the GET request method on the HomeR
|
|
|
|
-- resource pattern. All of your resource patterns are defined in
|
|
|
|
-- config/routes
|
|
|
|
--
|
|
|
|
-- The majority of the code you will write in Yesod lives in these handler
|
|
|
|
-- functions. You can spread them across multiple files if you are so
|
|
|
|
-- inclined, or create a single monolithic file.
|
|
|
|
getHomeR :: Handler Html
|
|
|
|
getHomeR = do
|
2018-10-02 19:05:31 +00:00
|
|
|
deleteSession "pinentry"
|
2017-06-03 01:00:04 +00:00
|
|
|
settings <- getsYesod appSettings
|
2015-04-04 04:46:33 +00:00
|
|
|
beverages <- runDB $ selectList [BeverageAmount !=. 0] [Desc BeverageIdent]
|
2017-01-21 17:02:29 +00:00
|
|
|
today <- liftIO $ utctDay <$> getCurrentTime
|
2016-03-17 22:59:52 +00:00
|
|
|
users <- runDB $ selectList [UserTimestamp >=. addDays (-30) today] [Asc UserIdent]
|
2017-05-15 22:25:33 +00:00
|
|
|
ousers <- runDB $ selectList [UserTimestamp <. addDays (-30) today] [Asc UserIdent]
|
2017-02-12 10:58:54 +00:00
|
|
|
defaultLayout $ do
|
|
|
|
addScript $ StaticR js_barcode_js
|
2018-09-04 16:06:12 +00:00
|
|
|
setTitleI MsgMainPage
|
2015-04-04 04:46:33 +00:00
|
|
|
$(widgetFile "home")
|
|
|
|
|
|
|
|
getReactivateR :: Handler Html
|
|
|
|
getReactivateR = do
|
2016-03-17 22:59:52 +00:00
|
|
|
today <- liftIO $ return . utctDay =<< getCurrentTime
|
|
|
|
users <- runDB $ selectList [UserTimestamp <. addDays (-30) today] [Asc UserIdent]
|
2017-02-12 10:58:54 +00:00
|
|
|
defaultLayout $ do
|
|
|
|
addScript $ StaticR js_barcode_js
|
2018-09-04 16:12:46 +00:00
|
|
|
setTitleI MsgReactivateOldUser
|
2015-04-04 04:46:33 +00:00
|
|
|
$(widgetFile "reactivate")
|
|
|
|
|
|
|
|
getUserReactivateR :: UserId -> Handler Html
|
|
|
|
getUserReactivateR uId = do
|
|
|
|
mUser <- runDB $ get uId
|
|
|
|
case mUser of
|
2015-12-06 20:14:58 +00:00
|
|
|
Just _ -> do
|
2016-03-17 22:59:52 +00:00
|
|
|
today <- liftIO $ return . utctDay =<< getCurrentTime
|
|
|
|
runDB $ update uId [UserTimestamp =. today]
|
2015-04-09 22:40:58 +00:00
|
|
|
setMessageI MsgUserReactivated
|
2015-09-14 22:49:13 +00:00
|
|
|
redirect HomeR
|
2015-04-04 04:46:33 +00:00
|
|
|
Nothing -> do
|
2015-04-09 22:40:58 +00:00
|
|
|
setMessageI MsgUserUnknown
|
2015-09-14 22:49:13 +00:00
|
|
|
redirect HomeR
|