Luke Plant avatar Luke Plant committed 7086193

Added comment deletion.

Comments (0)

Files changed (4)

src/Blog/Model.hs

                   , deleteCategory
                   , addPostCategory
                   , addComment
+                  , deleteComment
                   , createUser
                   , getPostBySlug
                   , getPostById
   newid <- getDbId cn
   return cm { Cm.uid = newid }
 
+deleteComment cn uid = do
+  DB.doDelete cn "comments" "WHERE id = ?" [toSql uid]
+
 -- user table
 userColumnNames = [ "username"
                   , "password"

src/Blog/Routes.hs

          , "admin/post/edit/" <+/> anyParam           //-> adminEditPost          $ [adminRequired]
          , "admin/ajax/commentvisible/" <+/> empty    //-> adminCommentVisible    $ [adminRequired]
          , "admin/ajax/commentresponse/" <+/> empty   //-> adminCommentResponse   $ [adminRequired]
+         , "admin/ajax/commentdelete/" <+/> empty     //-> adminCommentDelete     $ [adminRequired]
          , "debug/" <+/> anyParam                     //-> debug                  $ []
          ]

src/Blog/Views.hs

   return $ Just $ simpleMessage formattedResponse
   -- TODO - proper error handling
 
+adminCommentDelete req = do
+  withValidComment req deleteComment
+
 -- Utility that pulls out common functionality of adminComment*
 withValidComment req action = do
   let commentId = getPOST req "id" `captureOrDefault` 0 :: Int

src/templates/pagestart.st

 }
 
 function deleteComment(cid, event) {
-
+    \$.post("/blog/admin/ajax/commentdelete/", { id: cid },
+                    function(data) {
+                      \$("#commentdiv" + cid.toString()).remove();
+                    });
 }
 
 function addCommentModeration() {
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.