Browse Source

Merge pull request #305 from weseek/fix/303-template-langprocessor

fix #303: Template LangProcessor doesn't work
Yuki Takei 8 years ago
parent
commit
cae9d85017

+ 6 - 0
resource/js/app.js

@@ -82,6 +82,12 @@ if (isEnabledPlugins) {
 // configure renderer
 crowiRenderer.setup(crowi.config);
 
+// restore draft when the first time to edit
+const draft = crowi.findDraft(pagePath);
+if (!pageRevisionId && draft != null) {
+  markdown = draft;
+}
+
 /**
  * define components
  *  key: id of element

+ 0 - 12
resource/js/components/PageEditor.js

@@ -60,8 +60,6 @@ export default class PageEditor extends React.Component {
   }
 
   componentWillMount() {
-    // restore draft
-    this.restoreDraft();
     // initial rendering
     this.renderPreview(this.state.markdown);
   }
@@ -284,16 +282,6 @@ export default class PageEditor extends React.Component {
     scrollSyncHelper.scrollEditor(this.refs.editor, this.previewElement, offset);
   }
 
-  /*
-   * methods for draft
-   */
-  restoreDraft() {
-    // restore draft when the first time to edit
-    const draft = this.props.crowi.findDraft(this.props.pagePath);
-    if (!this.props.revisionId && draft != null) {
-      this.setState({markdown: draft});
-    }
-  }
   saveDraft() {
     // only when the first time to edit
     if (!this.state.revisionId) {

+ 12 - 0
resource/js/legacy/crowi.js

@@ -472,6 +472,16 @@ $(function() {
 
   if (pageId) {
 
+    // for Crowi Template LangProcessor
+    $('.template-create-button', $('#revision-body')).on('click', function() {
+      var path = $(this).data('path');
+      var templateId = $(this).data('template');
+      var template = $('#' + templateId).html();
+
+      crowi.saveDraft(path, template);
+      top.location.href = `${path}#edit-form`;
+    });
+
     /*
      * transplanted to React components -- 2018.02.04 Yuki Takei
      *
@@ -806,6 +816,7 @@ $(function() {
   });
 });
 
+/*
 Crowi.getRevisionBodyContent = function() {
   return $('#revision-body-content').html();
 }
@@ -813,6 +824,7 @@ Crowi.getRevisionBodyContent = function() {
 Crowi.replaceRevisionBodyContent = function(html) {
   $('#revision-body-content').html(html);
 }
+*/
 
 Crowi.findHashFromUrl = function(url)
 {

+ 1 - 1
resource/js/util/LangProcessor/Template.js

@@ -59,7 +59,7 @@ export default class Template {
 
     const content = `
       <div class="page-template-builder">
-        <button class="template-create-button btn btn-default" data-template="${templateId}" data-path="${pageName}#edit-form">
+        <button class="template-create-button btn btn-default" data-template="${templateId}" data-path="${pageName}">
           <i class="fa fa-pencil"></i> ${pageName}
         </button>
         <pre><code id="${templateId}" class="lang-${lang}">${code}\n</code></pre>