X-Git-Url: http://git.cielonegro.org/gitweb.cgi?p=Rakka.git;a=blobdiff_plain;f=Rakka%2FSystemConfig.hs;h=aa1e5798d24ee387bac9582797fc97d492d79a17;hp=91d9ca4178ed4f6f7b0a597d41662d0bc9e1e6ec;hb=43113f26d3e61c96d896724c5509abe67b6a99e7;hpb=9c2fc861f3ed609ebb4d0f135aea38ca055bbea8 diff --git a/Rakka/SystemConfig.hs b/Rakka/SystemConfig.hs index 91d9ca4..aa1e579 100644 --- a/Rakka/SystemConfig.hs +++ b/Rakka/SystemConfig.hs @@ -72,7 +72,7 @@ class (Typeable a, Show a, Eq a) => SysConfValue a where mkSystemConfig :: LC.Config -> Repository -> IO SystemConfig mkSystemConfig lc repos = do cache <- newTVarIO M.empty - return $ SystemConfig { + return SystemConfig { scLucuConf = lc , scRepository = repos , scCache = cache @@ -192,7 +192,7 @@ serializeStringPairs = joinWith "\n" . map serializePair' deserializeStringPairs :: String -> Maybe [(String, String)] -deserializeStringPairs = sequence . map deserializePair' . lines +deserializeStringPairs = mapM deserializePair' . lines where deserializePair' :: String -> Maybe (String, String) deserializePair' s = case break (== ' ') s of @@ -207,7 +207,7 @@ newtype SiteName = SiteName String deriving (Show, Typeable, Eq) instance SysConfValue SiteName where confPath _ = "siteName" serialize (SiteName name) = name - deserialize name = Just (SiteName name) + deserialize = Just . SiteName defaultValue _ = SiteName "Rakka" @@ -241,7 +241,7 @@ newtype DefaultPage = DefaultPage String deriving (Show, Typeable, Eq) instance SysConfValue DefaultPage where confPath _ = "defaultPage" serialize (DefaultPage name) = name - deserialize name = Just (DefaultPage name) + deserialize = Just . DefaultPage defaultValue _ = DefaultPage "MainPage" @@ -249,7 +249,7 @@ newtype StyleSheet = StyleSheet String deriving (Show, Typeable, Eq) instance SysConfValue StyleSheet where confPath _ = "styleSheet" serialize (StyleSheet name) = name - deserialize name = Just (StyleSheet name) + deserialize = Just . StyleSheet defaultValue _ = StyleSheet "StyleSheet/Default" @@ -257,7 +257,7 @@ newtype Languages = Languages (Map LanguageTag LanguageName) deriving (Show, Typ instance SysConfValue Languages where confPath _ = "languages" serialize (Languages langs) = serializeStringPairs (M.toList langs) - deserialize langs = fmap (Languages . M.fromList) (deserializeStringPairs langs) + deserialize = fmap (Languages . M.fromList) . deserializeStringPairs defaultValue _ = Languages $ M.fromList [ ("en", "English" ) , ("es", "Español" )