瀏覽代碼

update embed

SyuanYu 2 年之前
父節點
當前提交
2989acac0a
共有 4 個文件被更改,包括 56 次插入29 次删除
  1. 1 1
      backstage/blogs/routes.py
  2. 20 9
      backstage/static/js/editor.js
  3. 16 16
      backstage/static/js/yo.js
  4. 19 3
      models/contents/routes.py

+ 1 - 1
backstage/blogs/routes.py

@@ -309,7 +309,7 @@ col1: "{}"\n\
 col2: "{}"\n\
 introduction: "{}"\n\
 question_box_intro: "{}"\n\
-readmore_ttl: ["","","","",""]\n\
+# readmore_ttl: ["","","","",""]\n\
 readmore_lnk: ["","","","",""]\n\
 ---'''.format(form.title.data, "", form.title.data,
               get_now_time(),

+ 20 - 9
backstage/static/js/editor.js

@@ -1,6 +1,7 @@
 const contentDiv = document.getElementById("editor_block");
 const titleButton = document.getElementById("title_button");
 const submitButton = document.getElementById("submit_button");
+ 
 contentApiUrl = `${PORTAL_SERVER}contents?url=${
   JSON.parse(document.getElementById("url").textContent).url
 }`;
@@ -236,7 +237,16 @@ axios.get(contentApiUrl).then(({ data }) => {
       // },
       table: Table,
       delimiter: Delimiter,
-      embed: Embed,
+      embed: {
+        class: Embed,
+        inlineToolbar: true,
+        config: {
+          services: {
+            youtube: true,
+          coub: true
+          }
+        }
+      },
     },
     data: { blocks: editorBlocks },
   });
@@ -448,14 +458,15 @@ function editorSave() {
             // 放 <br> 會有跑版問題
             mdContent += "\n<span class='br-tag'></span>\n";
           } else if (block.type == "embed") {
-            mdContent +=
-              "\n<iframe src=" +
-              block.data.embed.replace("https://www.youtube.com/embed/", "") +
-              'layout="responsive" width="' +
-              block.data.width +
-              '" height="' +
-              block.data.height +
-              '"></iframe>\n\n';
+            mdContent += `\n\n<div class="video-box"><iframe src="https://www.youtube.com/embed/${block.data.embed.replace("https://www.youtube.com/embed/", "")}" width="${block.data.width}" height="${block.data.height}" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></div>\n\n`;
+            // mdContent +=
+            //   "\n<iframe src=" +
+            //   block.data.embed.replace("https://www.youtube.com/embed/", "") +
+            //   'layout="responsive" width="' +
+            //   block.data.width +
+            //   '" height="' +
+            //   block.data.height +
+            //   '"></iframe>\n\n';
           } else if (block.type == "table") {
             mdContent += "\n" + tableArrayToHtml(block.data.content) + "\n\n";
           }

+ 16 - 16
backstage/static/js/yo.js

@@ -432,21 +432,21 @@ function parseMd(content) {
         );
       }
 
-      if (line.includes("readmore_ttl: ")) {
-        var titles = line.replace("readmore_ttl: ", "").replaceAll('[', "").replaceAll(']', "").replaceAll('"', "").split(",");
-        try {
-          var inserted = 0;
-          $("#data00").val(titles[0]); inserted = 1;
-          $("#data10").val(titles[1]); inserted = 2;
-          $("#data20").val(titles[2]); inserted = 3;
-          $("#data30").val(titles[3]); inserted = 4;
-          $("#data40").val(titles[4]); inserted = 5;
-        }
-        catch (err) {
-          console.log("Less than 5 articles");
-        }
-        console.log("Total articles inserted: " + inserted);
-      }
+      // if (line.includes("readmore_ttl: ")) {
+      //   var titles = line.replace("readmore_ttl: ", "").replaceAll('[', "").replaceAll(']', "").replaceAll('"', "").split(",");
+      //   try {
+      //     var inserted = 0;
+      //     $("#data00").val(titles[0]); inserted = 1;
+      //     $("#data10").val(titles[1]); inserted = 2;
+      //     $("#data20").val(titles[2]); inserted = 3;
+      //     $("#data30").val(titles[3]); inserted = 4;
+      //     $("#data40").val(titles[4]); inserted = 5;
+      //   }
+      //   catch (err) {
+      //     console.log("Less than 5 articles");
+      //   }
+      //   console.log("Total articles inserted: " + inserted);
+      // }
 
       if (line.includes("readmore_lnk: ")) {
         var links = line.replace("readmore_lnk: ", "").replaceAll('[', "").replaceAll(']', "").replaceAll('"', "").split(",");
@@ -853,7 +853,7 @@ function GetMdHeader(result = []) {
       rContent += 'blog_tag: [' + tagVal.replaceAll(",", ",") + ']\n';
     }
 
-    rContent += 'readmore_ttl: ["' + $('#data00').val() + '","' + $('#data10').val() + '","' + $('#data20').val() + '","' + $('#data30').val() + '","' + $('#data40').val() + '"]\n';
+    // rContent += 'readmore_ttl: ["' + $('#data00').val() + '","' + $('#data10').val() + '","' + $('#data20').val() + '","' + $('#data30').val() + '","' + $('#data40').val() + '"]\n';
     rContent += 'readmore_lnk: ["' + $('#data01').val() + '","' + $('#data11').val() + '","' + $('#data21').val() + '","' + $('#data31').val() + '","' + $('#data41').val() + '"]\n';
 
     // axios.get('/backstage/edit_blog_editfurther?data01=' + $('#data01').val() + '&data11=' + $('#data11').val() + '&data21=' + $('#data21').val() + '&data31=' + $('#data31').val() + '&data41=' + $('#data41').val()).then(({ data }) => {

+ 19 - 3
models/contents/routes.py

@@ -57,9 +57,9 @@ def _get_data(file_dir):
         elif 'blog_tag: ' in line:
             s = line.replace('blog_tag: ', '').strip()
             result['blog_tag'] = s
-        elif 'readmore_ttl: ' in line:
-            s = line.replace('readmore_ttl: ', '').strip()
-            result['readmore_ttl'] = s
+        # elif 'readmore_ttl: ' in line:
+        #     s = line.replace('readmore_ttl: ', '').strip()
+        #     result['readmore_ttl'] = s
         elif 'readmore_lnk: ' in line:
             s = line.replace('readmore_lnk: ', '').strip()
             result['readmore_lnk'] = s
@@ -71,6 +71,22 @@ def _get_data(file_dir):
             s = line.replace('collection_description: ', '').strip()
             s = s.replace('"', '').strip()
             result['collection_description'] = s
+        elif 'banner_img_text: ' in line:
+            s = line.replace('banner_img_text: ', '').strip()
+            s = s.replace('"', '').strip()
+            result['banner_img_text'] = s
+        elif 'homeowner: ' in line:
+            s = line.replace('homeowner: ', '').strip()
+            s = s.replace('"', '').strip()
+            result['homeowner'] = s
+        elif 'room_count: ' in line:
+            s = line.replace('room_count: ', '').strip()
+            s = s.replace('"', '').strip()
+            result['room_count'] = s
+        elif 'house_size: ' in line:
+            s = line.replace('house_size: ', '').strip()
+            s = s.replace('"', '').strip()
+            result['house_size'] = s
         elif 'description: ' in line:
             s = line.replace('description: ', '').strip()
             s = s.replace('"', '').strip()