[ul items, page names with space or plus get underscores, /index.cgi url fixes jupdike@gmail.com**20080223190535] { hunk ./Doc2Html.lhs 60 -> ulNone = elm "ul" ["style"-->"list-style-type: none;"] +> ulNone = elm "ul" ["style"-->"list-style-type: none; list-style-image: none;"] hunk ./Template.hs 67 ---makeFlipper name target = elm "a" ["href"-->target] [txt name] -makeFlipper name target = elm "a" ["href"-->target] [imgSrcAlt ("/images/"++name++".png") name] +makeFlipper name target = elm "a" ["href"-->target] [txt name] +--makeFlipper name target = elm "a" ["href"-->target] [imgSrcAlt ("/images/"++name++".png") name] hunk ./Template.hs 71 -logoutBtn p = makeFlipper "logout2" ("/index.cgi?action=logout&page=" ++ p) -newBtn p = makeFlipper "add2" ("/index.cgi?action=add&page=" ++ p) +logoutBtn p = makeFlipper "logout" ("/index.cgi?action=logout&page=" ++ p) +newBtn p = makeFlipper "add" ("/index.cgi?action=add&page=" ++ p) hunk ./Template.hs 74 -editBtn p = makeFlipper "edit2" ("/index.cgi?action=edit&page=" ++ p ++ "#Bottom") +editBtn p = makeFlipper "edit" ("/index.cgi?action=edit&page=" ++ p ++ "#Top") hunk ./Template.hs 82 -buttons loggedin p = - [elm "p" ["class"-->"goright"] (intersperse spacePad2 buttons)] +buttons loggedin p = intersperse spacePad2 (if loggedin then loggedinBtns p else loggedoutBtns p) + +-- [elm "p" ["class"-->"goright"] (intersperse spacePad2 buttons)] hunk ./Template.hs 86 - where buttons = (if loggedin then loggedinBtns p else loggedoutBtns p) ++ [banner] +-- where buttons = (if loggedin then loggedinBtns p else loggedoutBtns p) -- ++ [banner] hunk ./Template.hs 90 -fig8 = elm "a" ["href"-->"index.cgi?Fig8"] [imgSrcAlt "/images/fig8-small.png" "Hypnotic Figure Eight Klein Bottle Emblem"] +fig8 = elm "a" ["href"-->"/index.cgi?Fig8"] [imgSrcAlt "/images/fig8-small.png" "Hypnotic Figure Eight Klein Bottle Emblem"] hunk ./Template.hs 118 - "action"-->("index.cgi?action=validate&page="++pageName), "onsubmit"-->"scramble();"] + "action"-->("/index.cgi?action=validate&page="++pageName), "onsubmit"-->"scramble();"] hunk ./Template.hs 238 - [lnk ("index.cgi?action=edit&page=links/"++link) [bullet], txt "   ", elemToXML $ head ls, br] + [lnk ("/index.cgi?action=edit&page=links/"++link) [bullet], txt "   ", elemToXML $ head ls, br] hunk ./Template.hs 256 -getXmlEnv pageName root newPage isLogin = do +getXmlEnv pageName root newPage isLogin loggedin = do hunk ./Template.hs 279 + ,("buttons", pp (buttons loggedin pageName)) hunk ./Template.hs 306 - "action"-->("index.cgi?action=movepage&page="++oldpagename)] + "action"-->("/index.cgi?action=movepage&page="++oldpagename)] hunk ./Template.hs 313 +-- ==> ["a" `with` ["name"-->"Top"] ] + hunk ./Template.hs 320 - "href"-->("index.cgi?action=rename&page="++page)] [txt "(Rename)"] ] + "href"-->("/index.cgi?action=rename&page="++page)] [txt "(Rename)"] ] hunk ./Template.hs 325 - "action"-->("index.cgi?action=modify")] --, "onsubmit"-->"scramble();"] + "action"-->("/index.cgi?action=modify")] hunk ./Template.hs 336 - aa ("index.cgi?"++page) "Cancel"] ] + aa ("/index.cgi?"++page) "Cancel"] ] hunk ./Template.hs 350 - -- "onClick"-->("index.cgi?"++page)] + -- "onClick"-->("/index.cgi?"++page)] hunk ./Template.hs 352 - hiddeninput "page" page, - "a" `with` ["name"-->"Bottom"] ] + hiddeninput "page" page ] hunk ./Template.hs 432 - xmlEnv <- getXmlEnv pageName root newPage isLogin + xmlEnv <- getXmlEnv pageName root newPage isLogin loggedin hunk ./Template.hs 445 - let title = if title_maybe == [] then "Untitled - add a title" else head title_maybe + let title = if title_maybe == [] then pageName else head title_maybe hunk ./Template.hs 449 - putStrLn $ templateReplace mytemplate [ ("@buttons", buttonstr) - , ("@content", messagefinal ++ xmlString) + putStrLn $ templateReplace mytemplate -- ("@buttons", buttonstr) + [ ("@content", messagefinal ++ xmlString) hunk ./clean 5 -rm index.cgi +rm blogg.cgi hunk ./g 3 -ghc --make index -o index.cgi +ghc --make index -o blogg.cgi hunk ./g 5 -chown :web index.cgi -cp index.cgi /home/htdocs +chown :web blogg.cgi +cp blogg.cgi /home/htdocs/index.cgi hunk ./index.hs 9 -import List (unionBy, union, sortBy, sort) +import List (unionBy, union, sortBy, sort, nubBy, intersperse) hunk ./index.hs 150 - let hidden = or $ map (=="hidden") $ lines tagstr + let hidden = (or $ map (=="toberemoved") $ lines tagstr) || (or $ map (=="hidden") $ lines tagstr) hunk ./index.hs 220 +lowEq x y = map toLower x == map toLower y hunk ./index.hs 229 + removeOldTags root + +removeOldTags root = do + pairs <- getAllFilesTags + let alltags = nubBy lowEq $ sortBy lowCmp $ concat [sortBy lowCmp xs | (_,xs) <- pairs] + --mywriteFile (root++"tags.allnew") $ unlines alltags + mywriteFile (root++"tags.tmp") $ unlines alltags + removeFile (root++"tags.txt") + renameFile (root++"tags.tmp") (root++"tags.txt") hunk ./index.hs 247 - let pageraw = unEscapeString $ dlookup "Home" "page" env + -- TODO make " " or "+" change automatically as if user type _ instead + let pageraw = replace "+" "_" $ replace " " "_" $ unEscapeString $ dlookup "Home" "page" env hunk ./index.hs 303 - let boolop = And (let hide = (if loggedin then [] else [Not (Has "hidden"), Not (Has "system")]) + let boolop = And (let hide = (if loggedin then [Not (Has "toberemoved")] else [Not (Has "toberemoved"), Not (Has "hidden"), Not (Has "system")]) hunk ./index.hs 309 - let files = [filename | (filename, tags) <- allFilesTags, tagsPred tags] + let filterFilesTags = [(filename, tags) | (filename, tags) <- allFilesTags, tagsPred tags] hunk ./index.hs 312 - concatMap (\file->"- [[lnk:/articles/"++file++" "++(tagdecode file)++"]]\n") files - template loggedin "" "Home" root ('-':result) -- ("-==== "++page++"\n") --(root++"Home.txt") - - --- template loggedin "" page root (root++"Home.txt") -- ('-':result) -- (root++"Home.txt") --- putStrLn $ show files --- + concatMap entry filterFilesTags + where entry (file, tags) = + "- [[lnk:/articles/"++file++" "++(tagdecode file)++"]] "++ + " ~~~~~~~~ "++ linkize tags ++ + "\n" + linkize tags = concat $ intersperse ", " $ map (\tag-> "[["++tag++" lnk:/tags/"++tag++"]]") tags + template loggedin "" "Home" root ('-':result) }