data SysConfValue
= SiteName String
| BaseURI URI
+ | DefaultPage String
| StyleSheet String
{- paths -}
sysConfPath :: SysConfValue -> FilePath
-sysConfPath (SiteName _) = "/siteName"
-sysConfPath (BaseURI _) = "/baseURI"
-sysConfPath (StyleSheet _) = "/styleSheet"
+sysConfPath (SiteName _) = "/siteName"
+sysConfPath (BaseURI _) = "/baseURI"
+sysConfPath (DefaultPage _) = "/defaultPage"
+sysConfPath (StyleSheet _) = "/styleSheet"
{- marshalling -}
marshalSysConf :: SysConfValue -> String
-marshalSysConf (SiteName name) = name
-marshalSysConf (BaseURI uri ) = uriToString id uri ""
-marshalSysConf (StyleSheet name) = name
+marshalSysConf (SiteName name) = name
+marshalSysConf (BaseURI uri ) = uriToString id uri ""
+marshalSysConf (DefaultPage name) = name
+marshalSysConf (StyleSheet name) = name
{- unmarshalling -}
unmarshalSysConf :: SysConfValue -> String -> SysConfValue
-unmarshalSysConf (SiteName _) name = SiteName name
-unmarshalSysConf (BaseURI _) uri = BaseURI $ fromJust $ parseURI uri
-unmarshalSysConf (StyleSheet _) name = StyleSheet name
+unmarshalSysConf (SiteName _) name = SiteName name
+unmarshalSysConf (BaseURI _) uri = BaseURI $ fromJust $ parseURI uri
+unmarshalSysConf (DefaultPage _) name = DefaultPage name
+unmarshalSysConf (StyleSheet _) name = StyleSheet name
{- getting default value -}
return $ BaseURI $ fromJust $ parseURI defaultURI
+sysConfDefault _ (DefaultPage _)
+ = return $ DefaultPage "MainPage"
+
sysConfDefault _ (StyleSheet _)
= return $ StyleSheet "StyleSheet/Default"