Browse Source

check objectId

itizawa 6 years ago
parent
commit
dfb5b2ebe5

+ 1 - 1
src/server/models/user.js

@@ -205,7 +205,7 @@ module.exports = function(crowi) {
       return true;
     }
     if (pageCompleteDeletionAuthority === 'adminAndAuthor') {
-      return (this.id === creatorId || false);
+      return (this._id.equals(creatorId));
     }
 
     return false;

+ 1 - 2
src/server/routes/page.js

@@ -939,8 +939,7 @@ module.exports = function(crowi, app) {
 
     try {
       if (isCompletely) {
-        const pageCompleteDeletionAuthority = crowi.configManager.getConfig('crowi', 'security:pageCompleteDeletionAuthority');
-        if (!req.user.admin && pageCompleteDeletionAuthority === 'adminOnly') {
+        if (!req.user.canDeleteCompletely(page.creator)) {
           return res.json(ApiResponse.error('You can not delete completely', 'user_not_admin'));
         }
         if (isRecursively) {

+ 2 - 2
src/server/views/modal/delete.html

@@ -30,10 +30,10 @@
           </div>
           {% if not page.isDeleted() %}
           <div class="checkbox checkbox-danger">
-          <input name="completely" id="cbDeleteCompletely" {% if !user.canDeleteCompletely(page.creator.id) %} disabled="disabled" {% endif %} value="1"  type="checkbox">
+          <input name="completely" id="cbDeleteCompletely" {% if !user.canDeleteCompletely(page.creator._id) %} disabled="disabled" {% endif %} value="1"  type="checkbox">
             <label for="cbDeleteCompletely" class="text-danger">{{ t('modal_delete.label.Delete completely') }}</label>
             <!-- GC-1755 Change Sentence -->
-            {% if !user.canDeleteCompletely(page.creator.id) %}
+            {% if !user.canDeleteCompletely(page.creator._id) %}
               <p class="bg-danger text-white p-2 mt-2"> <i class="icon-ban" ></i> 完全削除の権限がありません </p>
             {% else %}
             <p class="help-block"> {{ t('modal_delete.help.completely') }}</p>

+ 1 - 1
src/server/views/widget/page_alerts.html

@@ -27,7 +27,7 @@
           <button href="#" class="btn btn-default btn-rounded btn-sm" data-target="#putBackPage" data-toggle="modal"><i class="icon-action-undo" aria-hidden="true"></i> {{ t('Put Back') }}</button>
         </li>
         <li>
-            <button href="#" class="btn btn-danger btn-rounded btn-sm" {% if !user.canDeleteCompletely(page.creator.id) %} disabled="disabled" {% endif %} data-target="#deletePage" data-toggle="modal"><i class="icon-fire" aria-hidden="true"></i> {{ t('Delete Completely') }}</button>
+            <button href="#" class="btn btn-danger btn-rounded btn-sm" {% if !user.canDeleteCompletely(page.creator._id) %} disabled="disabled" {% endif %} data-target="#deletePage" data-toggle="modal"><i class="icon-fire" aria-hidden="true"></i> {{ t('Delete Completely') }}</button>
         </li>
       </ul>{# /.pull-right #}
       {% endif %}