diff options
Diffstat (limited to 'tools/fixcomments.hs')
-rw-r--r-- | tools/fixcomments.hs | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/tools/fixcomments.hs b/tools/fixcomments.hs deleted file mode 100644 index dc89dbdd647f..000000000000 --- a/tools/fixcomments.hs +++ /dev/null @@ -1,21 +0,0 @@ - -fixComments :: AcidState Blog -> IO () -fixComments acid = do - entriesDE <- query' acid $ LatestEntries DE - entriesEN <- query' acid $ LatestEntries EN - filterComments entriesDE - filterComments entriesEN - where - (cDate :: UTCTime) = fromJust $ parseTime defaultTimeLocale "%d.%m.%Y %T" "22.04.2012 21:57:35" - foldOp :: [(EntryId, [UTCTime])] -> Entry -> [(EntryId, [UTCTime])] - foldOp l e = let c = map cdate $ filter (\c1 -> cdate c1 > cDate) $ comments e - in if null c then l - else (entryId e, c) : l - pred :: Entry -> Bool - pred e = let f eId [] = False - f eId (c:r) = if (cdate c > cDate) then True - else f eId r - in f (entryId e) (comments e) - filterComments entries = mapM_ removeComments $ foldl foldOp [] $ filter pred entries - removeComments :: (EntryId, [UTCTime]) -> IO () - removeComments (eId, comments) = mapM_ (\c -> update' acid $ DeleteComment eId c) comments \ No newline at end of file |