[copy in required modules from happstack-extra, and drop happstack-extra dependency
Jeremy Shaw
the body
+tag +-- See also: addAnalytics +analytics :: (XMLGenerator m) => UACCT -> GenXMLList m +-- analytics :: (Monad m) => UACCT -> HSPT m [XML] +analytics (UACCT uacct) = + do a <- + b <- + return [a,b] +{- +-- |automatically add the google analytics scipt tags immediately before the element +-- NOTE: this function is not idepotent +addAnalytics :: ( AppendChild m XML + , EmbedAsChild m XML + , EmbedAsAttr m Attribute + , XMLGenerator m) + => UACCT + -> XMLGenT m XML + -> GenXML m +-- addAnalytics :: (Monad m) => UACCT -> HSPT m XML -> HSPT m XML +addAnalytics uacct pg = + do page <- pg + a <- analytics uacct + case page of + <[ head, body ]> -> + + <% head %> + <% body <: a %> + + o -> error ("Failed to add analytics." ++ show o) +-} +-- import Happstack.Template.HSP + +{- Example Analytics Code from Google: + + +-} + +-- * Test +{- +testXML' :: Web XML -> IO XML +testXML' xml = evalHSP (runWebXML undefined xml) + +testXML :: Web XML -> IO () +testXML xml = evalHSP (runWebXML undefined xml) >>= putStrLn . renderAsHTML + + +-- dummy :: (Monad m) => HSPT m HSP.XML +-- dummy :: Web HSP.XML +dummy :: (EmbedAsChild m [Char]) => GenXML m +dummy = + +
+
+ +
+