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

Fix: couldn't create page correctly when the file upload to the new page

Sotaro KARASAWA 10 лет назад
Родитель
Сommit
174655f34c
3 измененных файлов с 9 добавлено и 13 удалено
  1. 6 8
      lib/routes/attachment.js
  2. 2 4
      lib/routes/page.js
  3. 1 1
      resource/js/crowi-form.js

+ 6 - 8
lib/routes/attachment.js

@@ -52,14 +52,12 @@ module.exports = function(crowi, app) {
     new Promise(function(resolve, reject) {
       if (id == 0) {
         debug('Create page before file upload');
-        Page.create(path, '# '  + path, req.user, {grant: Page.GRANT_OWNER}, function(err, pageData) {
-          if (err) {
-            debug('Page create error', err);
-            return reject(err);
-          }
-          pageCreated = true;
-          return resolve(pageData);
-        });
+        Page.create(path, '# '  + path, req.user, {grant: Page.GRANT_OWNER})
+          .then(function(page) {
+            pageCreated = true;
+            resolve(page);
+          })
+          .catch(reject);
       } else {
         Page.findPageById(id).then(resolve).catch(reject);
       }

+ 2 - 4
lib/routes/page.js

@@ -227,14 +227,12 @@ module.exports = function(crowi, app) {
     Page.findPage(path, req.user, null, ignoreNotFound)
     .then(function(pageData) {
       if (!req.form.isValid) {
-        renderPage(pageData, req, res);
-        return Promise.reject(new Error('form error'));
+        return renderPage(pageData, req, res);
       }
 
       if (pageData && !pageData.isUpdatable(currentRevision)) {
         req.form.errors.push('すでに他の人がこのページを編集していたため保存できませんでした。ページを再読み込み後、自分の編集箇所のみ再度編集してください。');
-        renderPage(pageData, req, res);
-        return Promise.reject(new Error('form error'));
+        return renderPage(pageData, req, res);
       }
 
       if (pageData) {

+ 1 - 1
resource/js/crowi-form.js

@@ -270,7 +270,7 @@ $(function() {
             pageId = page._id;
 
         $('#content-main').data('page-id', page._id);
-        $('#page-form [name="pageForm[currentRevision]"]').val(page.revision)
+        $('#page-form [name="pageForm[currentRevision]"]').val(page.revision._id)
 
         unbindInlineAttachment($inputForm);