about summary refs log tree commit diff
path: root/src/Main.hs
diff options
context:
space:
mode:
author"Vincent Ambo ext:(%22) <tazjin@me.com>2012-03-07T12·40+0100
committer"Vincent Ambo ext:(%22) <tazjin@me.com>2012-03-07T12·40+0100
commitb2bb90beff55d1aae2026f66840e6331734512d8 (patch)
tree99113fe730bb037579c225032f565abf974f1106 /src/Main.hs
parentbc25b9d1e05ed7c73dd30ae7df10836c894bd855 (diff)
* comment adding fixed
* JSON Encoding is broken in the current Hackage version of CouchDB, thus it is necessary to build it manually and to apply this fix:
https://github.com/tbh/haskell-couchdb/commit/fafd63a43607ab8d6306fa46a264f93d4921a26c
Diffstat (limited to 'src/Main.hs')
-rw-r--r--src/Main.hs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Main.hs b/src/Main.hs
index 769e2180a3aa..d84e1d5332d0 100644
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -40,6 +40,7 @@ tazBlog = do
          , do dir " " $ nullDir
               seeOther ("https://plus.google.com/115916629925754851590" :: String) (toResponse ())
          , path $ \(id_ :: Int) -> getEntryLink id_
+         , path $ \(year :: Int) -> path $ \(month :: Int) -> path $ \(id_ :: String) -> formatOldLink year month id_
          , dir "res" $ serveDirectory DisableBrowsing [] "../res"
          , dir "notice" $ ok $ toResponse showSiteNotice
          , serveDirectory DisableBrowsing [] "../res"
@@ -57,6 +58,11 @@ blogHandler lang =
               showIndex lang
          ]
 
+formatOldLink :: Int -> Int -> String -> ServerPart Response
+formatOldLink y m id_ = 
+  flip seeOther (toResponse ()) $ 
+    concat $ intersperse' "/"  ["de", show y, show m, replace '.' '/' id_]
+
 showEntry :: BlogLang -> String -> ServerPart Response
 showEntry lang id_ = do
     entryJS <- liftIO $ runCouchDB' $ getDoc (db "tazblog") (doc id_)