Pārlūkot izejas kodu

文章支持注释 标签

visuddhinanda 5 gadi atpakaļ
vecāks
revīzija
d754844f16

+ 14 - 12
app/article/add_to_collect_dlg.js

@@ -56,19 +56,21 @@ function add_to_collect_dlg_init() {
           .first()
           .html(html_exist);
 
-        let html_others = "";
-        for (const iterator of collect_list.others) {
-          html_others +=
-            "<div><input type='checkbox' class='collect' collect_id='" +
-            iterator.id +
-            "' />";
-          html_others += iterator.title;
-          html_others += "</div>";
+        if (collect_list.others) {
+          let html_others = "";
+          for (const iterator of collect_list.others) {
+            html_others +=
+              "<div><input type='checkbox' class='collect' collect_id='" +
+              iterator.id +
+              "' />";
+            html_others += iterator.title;
+            html_others += "</div>";
+          }
+          $("#add_to_collect_dlg_" + id)
+            .find(".others")
+            .first()
+            .html(html_others);
         }
-        $("#add_to_collect_dlg_" + id)
-          .find(".others")
-          .first()
-          .html(html_others);
       }
     );
   });

+ 24 - 6
app/article/my_article.js

@@ -94,15 +94,17 @@ function my_article_edit(id) {
           let html = "";
           let result = JSON.parse(data);
           $("#article_collect").attr("a_id", result.id);
+
+          html += "<div style='display:flex;'>";
+          html += "<div style='flex:4;'>";
+
           html += '<div class="" style="padding:5px;">';
           html += '<div style="max-width:2em;flex:1;"></div>';
           html += "<input type='hidden' name='id' value='" + result.id + "'/>";
           html +=
             "<input type='hidden' name='tag' value='" + result.tag + "'/>";
           html +=
-            "<input type='hidden' name='summary' value='" +
-            result.summary +
-            "'/>";
+            "<textarea  name='summary' >" + result.summary + "</textarea>";
           html +=
             "<input type='hidden' name='status' value='" +
             result.status +
@@ -110,9 +112,16 @@ function my_article_edit(id) {
 
           html += "<button onclick='article_preview()'>Preview</button>";
           html += "<input type='checkbox' name='import' />Import Data";
+          html += "<div>";
+          html += "<div id='channal_selector' form_name='channal'></div>";
+          html +=
+            '<div>	<input id="article_lang_select" type="input" onchange="article_lang_change()"  title="type language name/code" code="' +
+            result.lang +
+            '" value="' +
+            result.lang +
+            '" > <input id="article_lang" type="hidden" name="lang" value=""></div>';
+          html += "</div>";
           html += "</div>";
-          html += "<div style='display:flex;'>";
-          html += "<div style='flex:4;'>";
 
           html +=
             "<textarea id='article_content' name='content' style='height:500px;'>" +
@@ -127,6 +136,8 @@ function my_article_edit(id) {
           html += "</div>";
 
           $("#article_list").html(html);
+          channal_select_init("channal_selector");
+          tran_lang_select_init("article_lang_select");
           $("#aritcle_status").html(render_status(result.status));
           let html_title =
             "<input id='input_article_title' type='input' name='title' value='" +
@@ -146,7 +157,14 @@ function my_article_edit(id) {
     }
   );
 }
-
+function article_lang_change() {
+  let lang = $("#article_lang_select").val();
+  if (lang.split("-").length == 3) {
+    $("#article_lang").val(lang.split("-")[2]);
+  } else {
+    $("#article_lang").val(lang);
+  }
+}
 function article_preview() {
   $("#preview_inner").html(note_init($("#article_content").val()));
   note_refresh_new();

+ 15 - 1
app/article/my_article_edit.php

@@ -8,6 +8,12 @@ require_once '../studio/index_head.php';
 	<script language="javascript" src="../term/term.js"></script>
 	<script language="javascript" src="../public/js/marked.js"></script>
 	<script language="javascript" src="../article/add_to_collect_dlg.js"></script>
+	<script language="javascript" src="../channal/channal_select.js"></script>
+	<script language="javascript" src="../channal/channal.js"></script>
+	<script src="../public/js/jquery-ui-1.12.1/jquery-ui.js"></script>
+	<link type="text/css" rel="stylesheet" href="../public/js/jquery-ui-1.12.1/jquery-ui.css"/>
+	<script language="javascript" src="../lang/tran_lang_select.js"></script>
+
 	<script >
 	var gCurrPage="article";
 	</script>
@@ -92,7 +98,15 @@ require_once '../studio/index_head.php';
 	</div>
 	
 <script>
-my_article_edit("<?php echo $_GET["id"] ?>");
+<?php
+if(isset($_POST["active"]) && $_POST["active"]=="new"){
+	echo "my_article_edit('{$_POST["content"]}');";
+}
+else if(isset($_GET["id"])){
+	echo "my_article_edit('{$_GET["id"]}');";
+}
+
+?>
 </script>
 <?php
 require_once '../studio/index_foot.php';

+ 4 - 2
app/article/my_article_post.php

@@ -43,7 +43,7 @@ if($_POST["import"]=='on'){
 
         /* 开始一个事务,关闭自动提交 */
         $PDO->beginTransaction();
-        $query="INSERT INTO sentence ('id','block_id','book','paragraph','begin','end','tag','author','editor','text','language','ver','status','strlen','modify_time','receive_time') VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
+        $query="INSERT INTO sentence ('id','block_id','channal','book','paragraph','begin','end','tag','author','editor','text','language','ver','status','strlen','create_time','modify_time','receive_time') VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? , ?, ?)";
         
         $sth = $PDO->prepare($query);
         
@@ -69,6 +69,7 @@ if($_POST["import"]=='on'){
                 $sth->execute(
                         array(UUID::v4(),
                                     "",
+                                    $_POST["channal"],
                                     $currBook,
                                     $para,
                                     $sentNum,
@@ -77,11 +78,12 @@ if($_POST["import"]=='on'){
                                     "[]",
                                     $_COOKIE["userid"],
                                     $data,
-                                    "my",
+                                    $_POST["lang"],
                                     1,
                                     1,
                                     mb_strlen($data,"UTF-8"),
                                     mTime(),
+                                    mTime(),
                                     mTime()
                                 ));                
             }

+ 13 - 0
app/channal/channal_select.js

@@ -0,0 +1,13 @@
+function channal_select_init(div_id) {
+  $.get("../channal/get.php", {}, function (data) {
+    let channal = JSON.parse(data);
+    let name = $("#" + div_id).attr("form_name");
+    let html = "Channal:<select name='" + name + "'>";
+    for (const iterator of channal) {
+      html +=
+        "<option value='" + iterator.id + "'>" + iterator.name + "</option>";
+    }
+    html += "</select>";
+    $("#" + div_id).html(html);
+  });
+}

+ 2 - 2
app/term/note.js

@@ -305,13 +305,13 @@ function render_channal_list(channalinfo) {
   //  output += "&channal=" + channalinfo.id + "' >";
   output += "<a onclick=\"set_channal('" + channalinfo.id + "')\">";
 
-  output += channalinfo["nickname"];
-  output += "/" + channalinfo["name"];
+  output += channalinfo["name"];
 
   output += "</a>";
   output += "</div>";
 
   output += "<div>";
+  output += channalinfo["nickname"] + "/";
   output += "@" + channalinfo["username"];
   output += "</div>";
   output += "<div style='background-color: #e0dfdffa;'>";

+ 7 - 0
app/term/term.css

@@ -56,3 +56,10 @@ para {
 para:hover {
   text-decoration: underline;
 }
+
+commentary {
+  margin-left: 1.5em;
+  display: block;
+  border-left: 3px solid gray;
+  padding-left: 5px;
+}