Bladeren bron

add route

itizawa 6 jaren geleden
bovenliggende
commit
82d95f4875
3 gewijzigde bestanden met toevoegingen van 31 en 1 verwijderingen
  1. 23 1
      src/client/js/legacy/crowi.js
  2. 1 0
      src/server/routes/index.js
  3. 7 0
      src/server/routes/page.js

+ 23 - 1
src/client/js/legacy/crowi.js

@@ -361,7 +361,29 @@ $(() => {
 
   // empty trash
   $('#empty-trash-form').submit((e) => {
-    // TODO GW-2060 create api
+    // create name-value map
+    const nameValueMap = {};
+    $('#empty-trash-form').serializeArray().forEach((obj) => {
+      nameValueMap[obj.name] = obj.value;
+    });
+    $.ajax({
+      type: 'POST',
+      url: '/_api/empty-trash',
+      dataType: 'json',
+    }).done((res) => {
+      console.log(res);
+      // error
+      // if (!res.ok) {
+      //   $('#deletePage .msg').hide();
+      //   $(`#deletePage .msg-${res.code}`).show();
+      // }
+      // else {
+      //   const page = res.page;
+      //   window.location.href = page.path;
+      // }
+    });
+
+    return false;
   });
   // delete
   $('#deletePage').on('shown.bs.modal', (e) => {

+ 1 - 0
src/server/routes/index.js

@@ -149,6 +149,7 @@ module.exports = function(crowi, app) {
   app.post('/_api/pages.seen'         , accessTokenParser , loginRequired , page.api.seen);
   app.post('/_api/pages.rename'       , accessTokenParser , loginRequiredStrictly , csrf, page.api.rename);
   app.post('/_api/pages.remove'       , loginRequiredStrictly , csrf, page.api.remove); // (Avoid from API Token)
+  app.post('/_api/empty-trash'       , loginRequiredStrictly , adminRequired, csrf, page.api.emptyTrash); // (Avoid from API Token)
   app.post('/_api/pages.revertRemove' , loginRequiredStrictly , csrf, page.api.revertRemove); // (Avoid from API Token)
   app.post('/_api/pages.unlink'       , loginRequiredStrictly , csrf, page.api.unlink); // (Avoid from API Token)
   app.post('/_api/pages.duplicate'    , accessTokenParser, loginRequiredStrictly, csrf, page.api.duplicate);

+ 7 - 0
src/server/routes/page.js

@@ -1508,6 +1508,13 @@ module.exports = function(crowi, app) {
     }
   };
 
+  // TODO jsDoc
+  api.emptyTrash = async function(req, res) {
+    console.log('here is api');
+
+    res.json(ApiResponse.success());
+  };
+
   /**
    * @api {post} /pages.revertRemove Revert removed page
    * @apiName RevertRemovePage