Просмотр исходного кода

Merge pull request #911 from weseek/fix/update-ES-documents-when-delete-or-duplicate-pages

add socketClientId to send data
Yuki Takei 7 лет назад
Родитель
Сommit
7529bfd50f
2 измененных файлов с 13 добавлено и 9 удалено
  1. 12 5
      src/client/js/legacy/crowi.js
  2. 1 4
      src/server/models/page.js

+ 12 - 5
src/client/js/legacy/crowi.js

@@ -357,13 +357,12 @@ $(() => {
     $(this).serializeArray().forEach((obj) => {
       nameValueMap[obj.name] = obj.value; // nameValueMap.new_path is renamed page path
     });
-
-    const data = `${$(this).serialize()}&socketClientId=${crowi.getSocketClientId()}`;
+    nameValueMap.socketClientId = crowi.getSocketClientId();
 
     $.ajax({
       type: 'POST',
       url: '/_api/pages.rename',
-      data,
+      data: nameValueMap,
       dataType: 'json',
     })
       .done((res) => {
@@ -396,11 +395,12 @@ $(() => {
     $(this).serializeArray().forEach((obj) => {
       nameValueMap[obj.name] = obj.value; // nameValueMap.new_path is duplicated page path
     });
+    nameValueMap.socketClientId = crowi.getSocketClientId();
 
     $.ajax({
       type: 'POST',
       url: '/_api/pages.duplicate',
-      data: $(this).serialize(),
+      data: nameValueMap,
       dataType: 'json',
     }).done((res) => {
       // error
@@ -426,10 +426,17 @@ $(() => {
     $('#deletePage .msg').hide();
   });
   $('#delete-page-form').submit((e) => {
+    // create name-value map
+    const nameValueMap = {};
+    $('#delete-page-form').serializeArray().forEach((obj) => {
+      nameValueMap[obj.name] = obj.value;
+    });
+    nameValueMap.socketClientId = crowi.getSocketClientId();
+
     $.ajax({
       type: 'POST',
       url: '/_api/pages.remove',
-      data: $('#delete-page-form').serialize(),
+      data: nameValueMap,
       dataType: 'json',
     }).done((res) => {
       // error

+ 1 - 4
src/server/models/page.js

@@ -1098,11 +1098,8 @@ module.exports = function(crowi) {
       }
 
       pageData.status = STATUS_DELETED;
-      const updatedPageData = await this.rename(pageData, newPath, user, { createRedirectPage: true });
+      const updatedPageData = await this.rename(pageData, newPath, user, { socketClientId, createRedirectPage: true });
 
-      if (socketClientId != null) {
-        pageEvent.emit('delete', updatedPageData, user, socketClientId);
-      }
       return updatedPageData;
     }