OSDN Git Service

template: fix to work submission editor correctly
authorhylom <hylom@users.sourceforge.jp>
Mon, 5 Dec 2016 11:10:29 +0000 (20:10 +0900)
committerhylom <hylom@users.sourceforge.jp>
Mon, 5 Dec 2016 11:10:43 +0000 (20:10 +0900)
src/newslash_web/public/js/editor.js
src/newslash_web/templates/common/article.html.tt2
src/newslash_web/templates/components/article_item.html.tt2
src/newslash_web/templates/components/journal_editor.html.tt2 [new file with mode: 0644]
src/newslash_web/templates/components/story_editor.html.tt2 [new file with mode: 0644]
src/newslash_web/templates/components/submission_editor.html.tt2 [new file with mode: 0644]
src/newslash_web/templates/journal/create.html.tt2
src/newslash_web/templates/journal/editor.html.tt2
src/newslash_web/templates/submission/create.html.tt2
src/newslash_web/templates/submission/editor.html.tt2 [new file with mode: 0644]

index 5c02ac8..7c28fad 100644 (file)
@@ -2,6 +2,7 @@ var editor = {};
 var vm;
 
 editor.run = function run(params) {
+  const type = params.type || 'submission';
   var data = {
     item: {
       title: "",
@@ -18,7 +19,7 @@ editor.run = function run(params) {
       commentstatus: "enabled",
       display: 1,
       submissioncopy: 0,
-      content_type: '',
+      content_type: type,
       editing: true,
     },
   }
index d40c44f..bbc492b 100644 (file)
@@ -20,6 +20,7 @@ IF story.content_type == 'submission'; content_id = story.subid; END;
       <span class="content-type">
         [%- IF story.content_type == 'story' -%]ストーリー[%- END -%]
         [%- IF story.content_type == 'journal' -%]日記[%- END -%]
+        [%- IF story.content_type == 'submission' -%]タレコミ[%- END -%]
       </span>
       by <span v-text="item.author">[% story.author %]</span>
       <span v-text="item.time">[% story.time %]</span>
index 8609f2a..598ef59 100644 (file)
@@ -1,5 +1,5 @@
 <script type="text/x-template" id="article-item">
-  [% INCLUDE common/article story={content_type => "journal", vue_template => 1} hide_more_link = 0 %]
+  [% INCLUDE common/article story={content_type => type, vue_template => 1} hide_more_link = 0 %]
 </script>
 <script src="/js/article-item.js" ></script>
 <script>
diff --git a/src/newslash_web/templates/components/journal_editor.html.tt2 b/src/newslash_web/templates/components/journal_editor.html.tt2
new file mode 100644 (file)
index 0000000..1c81a04
--- /dev/null
@@ -0,0 +1,8 @@
+<script type="text/x-template" id="content-editor">
+[% INCLUDE journal/editor %]
+</script>
+<script src="/js/content-editor.js" ></script>
+<script>
+  const editorConfig = [% Editor.json %];
+  contentEditor.run({config: editorConfig});
+</script>
diff --git a/src/newslash_web/templates/components/story_editor.html.tt2 b/src/newslash_web/templates/components/story_editor.html.tt2
new file mode 100644 (file)
index 0000000..1c81a04
--- /dev/null
@@ -0,0 +1,8 @@
+<script type="text/x-template" id="content-editor">
+[% INCLUDE journal/editor %]
+</script>
+<script src="/js/content-editor.js" ></script>
+<script>
+  const editorConfig = [% Editor.json %];
+  contentEditor.run({config: editorConfig});
+</script>
diff --git a/src/newslash_web/templates/components/submission_editor.html.tt2 b/src/newslash_web/templates/components/submission_editor.html.tt2
new file mode 100644 (file)
index 0000000..cff69a0
--- /dev/null
@@ -0,0 +1,8 @@
+<script type="text/x-template" id="content-editor">
+[% INCLUDE submission/editor %]
+</script>
+<script src="/js/content-editor.js" ></script>
+<script>
+  const editorConfig = [% Editor.json %];
+  contentEditor.run({config: editorConfig});
+</script>
index 1b073bb..fc6bfc5 100644 (file)
@@ -1,6 +1,6 @@
 [% WRAPPER common/layout sidebar=1 vue=1%]
-[% INCLUDE components/article_item %]
-[% INCLUDE components/content_editor %]
+[% INCLUDE components/article_item type="journal" %]
+[% INCLUDE components/journal_editor %]
 
 <div class="main-column">
   <div class="post submission main-contents" id="journal-editor">
index ca1a1e9..bafeac2 100644 (file)
@@ -1,3 +1,4 @@
+<div class="alert alert-info" v-html="message" v-show="message"></div>
 <div class="journal-editor" v-if="item.editing">
   <form id="post-submission" v-show="showForm">
     <p class="form-group">
index d908ef9..7ae340e 100644 (file)
@@ -1,62 +1,17 @@
 [% WRAPPER common/layout sidebar=1 vue=1%]
-<div class="main-column">
-  <div class="post submission main-contents">
-    <div id="post-editor">
-      <h2>タレコミの編集</h2>
-      <div id="post-preview">
-        <div v-html="message" class="message"></div>
-        <h3>プレビュー:</h3>
-        [%-
-        story.title = "";
-        story.content_type = "submission";
-        story.author = "";
-        story.time = "";
-        story.introtext = "";
-        story.preview = 1;
-        -%]
-        [%- INCLUDE common/article -%]
-      </div>
-
-      <form id="post-submission" v-show="show_form">
-        <p class="form-group">
-          <label for="post-title">タイトル:</label>
-          <input id="post-title" type="text" class="form-control" name="title" v-model="title" placeholder="タイトル" />
-        </p>
-        <p class="form-group">
-          <label for="post-url" >URL:</label>
-          <input id="post-url" type="text" class="form-control" name="url" v-model="url" placeholder="重要なURLを1つ(任意)" />
-        </p>
-        <p class="form-group">
-          <label for="post-email">あなたのメールアドレスかURL:</label>
-          <input id="post-email" type="text" class="form-control" name="email" v-model="email" placeholder="メールアドレス/URL(任意)" />
-        </p>
-        <p class="form-group">
-          <label for="post-introtext">本文:</label>
-          <textarea id="post-introtext" name="introtext" class="form-control" v-model="introtext" placeholder="本文をここに記述してください" ></textarea>
-        </p>
-        <p>
-          <button type="submit" class="btn btn-default" v-on:click.prevent="show_preview">投稿確認</button>
-          <button type="reset" class="btn">リセット</button>
-        </p>
-      </form>
-
-      <form id="post-submit" v-show="show_submit">
-        <p>
-          <button type="submit" class="btn btn-default" v-on:click.prevent="post_submission">投稿</button>
-          <button type="button" class="btn" v-on:click="leave_preview">戻る</button>
-        </p>
-      </form>
-      
-      <div class="alert alert-danger" role="alert">
-        <ul>
-          <li class="strong">タレコミはログイン/非ログインを問わず、すべて一般公開されます。公開されたくない情報は書き込まないでください。</li>
-          <li>投稿されている<a href="/submissions" target="_blank">タレコミ一覧はこちら</a>で確認できます。</li>
-          <li>タレコミする際の注意点などは<a href="/faq/editorial" target="_blank">FAQ</a>をご確認ください。</li>
-        </ul>
-      </div>
-
-    </div><!-- #post-form -->
+[% INCLUDE components/article_item type="submission" %]
+[% INCLUDE components/submission_editor %]
 
+<div class="main-column">
+  <div class="post submission main-contents" id="submission-editor">
+    <h2>タレコミの編集</h2>
+    <div id="post-preview">
+      <div v-html="message" class="message"></div>
+      <h3>プレビュー:</h3>
+      <article-item :item="item"></article-item>
+      <content-editor :item="item"></content-editor>
+      [%#- INCLUDE common/article -%]
+    </div>
   </div>
 </div>
 [%- INCLUDE common/sidebar -%]
@@ -64,7 +19,7 @@
 <script src="/js/editor.js" ></script>
 <script>
   $(document).ready(function () {
-    editor.run({ type: 'submission', el: '#post-editor' });
+    editor.run({ type: 'submission', el: '#submission-editor', user: user, });
   });
 </script>
 
diff --git a/src/newslash_web/templates/submission/editor.html.tt2 b/src/newslash_web/templates/submission/editor.html.tt2
new file mode 100644 (file)
index 0000000..d709f5f
--- /dev/null
@@ -0,0 +1,41 @@
+<div class="alert alert-info" v-html="message" v-show="message"></div>
+<div class="submission-editor" v-if="item.editing">
+  <form id="post-submission" v-show="showForm">
+    <p class="form-group">
+      <label for="post-title">タイトル:</label>
+      <input id="post-title" type="text" class="form-control" name="title" v-model="title" placeholder="タイトル" />
+    </p>
+    <p class="form-group">
+      <label for="post-url" >URL:</label>
+      <input id="post-url" type="text" class="form-control" name="url" v-model="url" placeholder="重要なURLを1つ(任意)" />
+    </p>
+    <p class="form-group">
+      <label for="post-email">あなたのメールアドレスかURL:</label>
+      <input id="post-email" type="text" class="form-control" name="email" v-model="email" placeholder="メールアドレス/URL(任意)" />
+    </p>
+    <p class="form-group">
+      <label for="post-introtext">本文:</label>
+      <textarea id="post-introtext" name="introtext" class="form-control" v-model="introtext" placeholder="本文をここに記述してください" ></textarea>
+    </p>
+    <p>
+      <button type="submit" class="btn btn-primary" v-on:click.prevent="showPreview">投稿確認</button>
+    </p>
+  </form>
+
+  <form id="post-submit" v-show="showSubmit">
+    <p>
+      <button type="submit" class="btn btn-primary" v-on:click.prevent="postSubmission">投稿</button>
+      <button type="button" class="btn btn-default" v-on:click="leavePreview">戻る</button>
+    </p>
+  </form>
+  
+  <div class="alert alert-danger" role="alert">
+    <ul>
+      <li class="strong">タレコミはログイン/非ログインを問わず、すべて一般公開されます。公開されたくない情報は書き込まないでください。</li>
+      <li>投稿されている<a href="/submissions" target="_blank">タレコミ一覧はこちら</a>で確認できます。</li>
+      <li>タレコミする際の注意点などは<a href="/faq/editorial" target="_blank">FAQ</a>をご確認ください。</li>
+    </ul>
+  </div>
+
+</div><!-- submission-editor -->
+