{-# LANGUAGE OverloadedStrings #-} module Model.Conf ( getConf , Conf(..) ) where import Data.Text (Text) import qualified Data.ConfigManager as Conf data Conf = Conf { mailTo :: Text , mailFrom :: Text , dayForNextWeekNotification :: Text } deriving (Read, Eq, Show) getConf :: FilePath -> IO (Either Text Conf) getConf path = (flip fmap) (Conf.readConfig path) (\configOrError -> do conf <- configOrError Conf <$> Conf.lookup "mailTo" conf <*> Conf.lookup "mailFrom" conf <*> Conf.lookup "dayForNextWeekNotification" conf )