Răsfoiți Sursa

Imprv/121 Add option for recursive move

ttaka66 8 ani în urmă
părinte
comite
e2a728f2c2
3 a modificat fișierele cu 19 adăugiri și 2 ștergeri
  1. 4 1
      lib/locales/ja/translation.json
  2. 8 1
      lib/routes/page.js
  3. 7 0
      lib/views/modal/rename.html

+ 4 - 1
lib/locales/ja/translation.json

@@ -150,9 +150,12 @@
   "New page name": "移動先のページ名",
   "Current page name": "現在のページ名",
   "Redirect": "リダイレクトする",
+  "Move recursively": "再帰的に移動する",
   "modal_rename": {
     "help": {
-      "redirect": "チェックを入れると、<code>%s</code>にアクセスされた際に自動的に新しいページにジャンプします。"
+      "redirect": "チェックを入れると、<code>%s</code>にアクセスされた際に自動的に新しいページにジャンプします。",
+      "recursive": "チェックを入れると、<code>%s</code>配下のページも移動します。"
+
     }
   },
 

+ 8 - 1
lib/routes/page.js

@@ -1074,6 +1074,7 @@ module.exports = function(crowi, app) {
       createRedirectPage: req.body.create_redirect || 0,
       moveUnderTrees: req.body.move_trees || 0,
     };
+    var isRecursiveMove = req.body.move_recursively || 0;
     var page = {};
 
     if (!Page.isCreatableName(newPagePath)) {
@@ -1093,7 +1094,13 @@ module.exports = function(crowi, app) {
           throw new Error('Someone could update this page, so couldn\'t delete.');
         }
 
-        return Page.renameRecursively(pageData, newPagePath, req.user, options);
+        if (isRecursiveMove) {
+          return Page.renameRecursively(pageData, newPagePath, req.user, options);
+        }
+        else {
+          return Page.rename(pageData, newPagePath, req.user, options);
+        }
+
       }).then(function() {
         var result = {};
         result.page = page;

+ 7 - 0
lib/views/modal/rename.html

@@ -20,6 +20,13 @@
                 <input type="text" class="form-control" name="new_path" id="newPageName" value="{{ page.path }}">
               </div>
             </div>
+            <div class="checkbox">
+              <label>
+                <input name="move_recursively" value="1" type="checkbox" checked> {{ t('Move recursively') }}
+              </label>
+              <p class="help-block"> {{ t('modal_rename.help.recursive', page.path) }}
+              </p>
+            </div>
             <div class="checkbox">
                <label>
                  <input name="create_redirect" value="1"  type="checkbox"> {{ t('Redirect') }}