{-# LANGUAGE DeriveDataTypeable #-} module Builder.Config ( mkTime, UserInfo(..), mkUserInfo, Config(..) ) where import Builder.BuildSteps import Builder.Utils import Data.Time.LocalTime import Data.Typeable mkTime :: Int -> Int -> TimeOfDay mkTime hour mins = TimeOfDay { todHour = hour, todMin = mins, todSec = 0 } data UserInfo = UserInfo { ui_password :: String, ui_description :: String, ui_timezone :: String, ui_buildTime :: BuildTime, ui_buildInstructions :: [BuildStep] } deriving Typeable mkUserInfo :: String -> String -> String -> BuildTime -> [BuildStep] -> UserInfo mkUserInfo pass desc tz bt bis = UserInfo { ui_password = pass, ui_description = desc, ui_timezone = tz, ui_buildTime = bt, ui_buildInstructions = bis } data Config = Config { config_fromAddress :: String, config_emailAddresses :: [String], config_urlRoot :: String, config_clients :: [(String, UserInfo)] } deriving Typeable