Browse Source

:bug: 句子协作消息列表和内容显示不出来,不能自动采纳,存储数据库缺少状态代码。

visuddhinanda 5 years ago
parent
commit
19f64572a6
6 changed files with 68 additions and 57 deletions
  1. 1 1
      app/studio/editor.php
  2. 4 1
      app/studio/js/data.js
  3. 2 1
      app/studio/js/editor.js
  4. 8 3
      app/studio/js/message.js
  5. 2 2
      app/usent/update.php
  6. 51 49
      app/usent/usent.js

+ 1 - 1
app/studio/editor.php

@@ -267,7 +267,7 @@ foreach($plugin_list as $info){
 		<!--左侧的区块-->
 		<div>
 
-			<svg class="icon" style="fill: #f1ca23;height: 2em;width: 8.5em;margin-top: 0.5em;margin-left: -0.5em;">
+			<svg class="icon" style="height: 2.7em; width: 12em; margin-top: 0.5em; ">
 				<use xlink:href="../public/images/svg/wikipali_banner.svg#wikipali_banner"></use>
 			</svg>
 

+ 4 - 1
app/studio/js/data.js

@@ -523,12 +523,15 @@ function _doc_tran_sent(begin, end, key, value = null) {
 					if (key == "text") {
 						ntf_show("修改:" + key + "=" + value);
 						let blockId;
+						/*
 						if (this.info("parent").length > 0) {
 							blockId = this.info("parent");
 						}
 						else {
 							blockId = this.info("id");
 						}
+						*/
+						blockId = this.info("id");
 						let book = this.info("book");
 						let para = this.info("paragraph");
 						update_tran_block_text(blockId);
@@ -590,7 +593,7 @@ function _doc_tran_info(key, value = null) {
 			setNodeText(this._info, key, value);
 		}
 		else {
-			var output = getNodeText(this._info, key);
+			let output = getNodeText(this._info, key);
 			return (output);
 		}
 	}

+ 2 - 1
app/studio/js/editor.js

@@ -4923,8 +4923,9 @@ function tran_sen_save(blockid, senBegin, senEnd, input) {
 
 function tran_text_onchange(blockid, senBegin, senEnd, obj) {
 	let newText = obj.value;
-	sen_save(blockid, senBegin, senEnd, newText);
 	tran_sen_save(blockid, senBegin, senEnd, newText);
+	//保存到数据库
+	sen_save(blockid, senBegin, senEnd, newText);
 }
 
 /*

+ 8 - 3
app/studio/js/message.js

@@ -318,7 +318,7 @@ function msg_apply_data(obj) {
 						console.log("句子 自动采纳");
 						tranBlock.text(obj.data.begin, obj.data.end, "text", obj.data.text);
 						tranBlock.text(obj.data.begin, obj.data.end, "status", 5);
-						sen_save(obj.data.id, obj.data.begin, obj.data.end, obj.data.text);
+						sen_save(tranBlock.info("id"), obj.data.begin, obj.data.end, obj.data.text);
 					}
 				}
 
@@ -381,12 +381,14 @@ function msg_show_content(type, id) {
 	let arrid;
 	let sen_begin, sen_end;
 	type = parseInt(type);
+
 	if (type == 2) {
-		arrid = id.split("-");
+		arrid = id.split("#");
 		id = arrid[0];
 		sen_begin = arrid[1];
 		sen_end = arrid[2];
 	}
+
 	msg_curr_show_content_id = id;
 	msg_curr_show_content_type = type;
 	var iMsg = 0;
@@ -542,6 +544,7 @@ function msg_update_msg_list() {
 				else {
 					objMsg = new Object();
 					objMsg.id = gDocMsgList[i].data.id;
+					objMsg.data = gDocMsgList[i].data;
 					objMsg.type = gDocMsgList[i].type;
 					if (gDocMsgList[i].read == 0) {
 						objMsg.unread = 1;
@@ -593,7 +596,9 @@ function msg_update_msg_list() {
 						strHtml += "<span>" + d.toLocaleString() + "</span>";
 						break;
 					case "2":
-						strHtml += "<a onclick=\"msg_show_msg_content('2','" + msgList[i].id + "')\">" + msgList[i].id + "</a></span>";
+						let sent_id = msgList[i].id + "#" + msgList[i].data.begin + "#" + msgList[i].data.end;
+						let sent_msg_title = msgList[i].data.begin + "-" + msgList[i].data.end + "-" + msgList[i].data.text.slice(0, 5);
+						strHtml += "<a onclick=\"msg_show_msg_content('2','" + sent_id + "')\">" + sent_msg_title + "</a></span>";
 						strHtml += "<span>" + d.toLocaleString() + "</span>";
 						break;
 				}

+ 2 - 2
app/usent/update.php

@@ -13,11 +13,11 @@ PDO_Connect("sqlite:"._FILE_DB_SENTENCE_);
 
 /* 开始一个事务,关闭自动提交 */
 $PDO->beginTransaction();
-$query="UPDATE sentence SET text= ?  , receive_time= ?  , modify_time= ?   where  id= ?  ";
+$query="UPDATE sentence SET text= ?  , status = ? , receive_time= ?  , modify_time= ?   where  id= ?  ";
 $sth = $PDO->prepare($query);
 
 foreach ($aData as $data) {
-    $sth->execute(array($data->text,mTime(),$data->time,$data->id));
+    $sth->execute(array($data->text, $data->status, mTime(),$data->time,$data->id));
 }
 $PDO->commit();
 

+ 51 - 49
app/usent/usent.js

@@ -1,10 +1,10 @@
-var user_sentence_create_buffer=new Array();
-var user_sentence_update_buffer=new Array();
+var user_sentence_create_buffer = new Array();
+var user_sentence_update_buffer = new Array();
 
-var user_sentence_block_create_buffer=new Array();
-var user_sentence_block_update_buffer=new Array();
+var user_sentence_block_create_buffer = new Array();
+var user_sentence_block_update_buffer = new Array();
 
-function usent_block_create(blockid,book,paragraph,lang,author,editor,tag){
+function usent_block_create(blockid, book, paragraph, lang, author, editor, tag) {
 	var d = new Date();
 	let newBlock = new Object();
 	newBlock.id = blockid;
@@ -17,49 +17,51 @@ function usent_block_create(blockid,book,paragraph,lang,author,editor,tag){
 	newBlock.time = d.getTime();
 	user_sentence_block_create_buffer.push(newBlock);
 }
-function usent_block_commit(){
+function usent_block_commit() {
 
-	if(user_sentence_block_create_buffer.length>0){
+	if (user_sentence_block_create_buffer.length > 0) {
 		$.post("../usent/new_block.php",
-		{
-			data:JSON.stringify(user_sentence_block_create_buffer)
-		},
-		usent_server_responce);
-		user_sentence_block_create_buffer=new Array();
+			{
+				data: JSON.stringify(user_sentence_block_create_buffer)
+			},
+			usent_server_responce);
+		user_sentence_block_create_buffer = new Array();
 	}
 
-	if(user_sentence_block_update_buffer.length>0){
+	if (user_sentence_block_update_buffer.length > 0) {
 		$.post("../usent/updata.php",
-		{
-			data:JSON.stringify(user_sentence_block_update_buffer)
-		},
-		usent_server_responce);
-		user_sentence_block_update_buffer=new Array();
+			{
+				data: JSON.stringify(user_sentence_block_update_buffer)
+			},
+			usent_server_responce);
+		user_sentence_block_update_buffer = new Array();
 	}
 }
 
-function usent_block_fork(blockid,newBlockId){
+function usent_block_fork(blockid, newBlockId) {
 
 }
 
-function usent_change(blockid,begin,end,text){
-	
+function usent_change(blockid, begin, end, text) {
+
 }
 
 
-function usent_update(blockid,begin,end,text){
+function usent_update(blockid, begin, end, text) {
 	var d = new Date();
-	let mBlock = doc_tran("#"+blockid);
-	let dbId=mBlock.text(begin,end,"id");
+	let mBlock = doc_tran("#" + blockid);
+	let dbId = mBlock.text(begin, end, "id");
+	let sent_status = mBlock.text(begin, end, "status");
 	let newData = new Object();
 	newData.id = dbId;
 	newData.text = text;
+	newData.status = sent_status;
 	newData.time = d.getTime();
 	user_sentence_update_buffer.push(newData);
 }
 
 
-function usent_create(blockid,id,book,paragraph,begin,end,text,tag,lang,author,editor){
+function usent_create(blockid, id, book, paragraph, begin, end, text, tag, lang, author, editor) {
 	let newData = new Object();
 	newData.blockid = blockid;
 	newData.id = id;
@@ -75,41 +77,41 @@ function usent_create(blockid,id,book,paragraph,begin,end,text,tag,lang,author,e
 	user_sentence_create_buffer.push(newData);
 }
 
-function usent_commit(){
+function usent_commit() {
 
-	if(user_sentence_create_buffer.length>0){
+	if (user_sentence_create_buffer.length > 0) {
 		$.post("../usent/new.php",
-		{
-			data:JSON.stringify(user_sentence_create_buffer)
-		},
-		usent_server_responce);
-		user_sentence_create_buffer=new Array();
+			{
+				data: JSON.stringify(user_sentence_create_buffer)
+			},
+			usent_server_responce);
+		user_sentence_create_buffer = new Array();
 	}
 
-	if(user_sentence_update_buffer.length>0){
+	if (user_sentence_update_buffer.length > 0) {
 		$.post("../usent/update.php",
-		{
-			data:JSON.stringify(user_sentence_update_buffer)
-		},
-		usent_server_responce);
-		user_sentence_update_buffer=new Array();
+			{
+				data: JSON.stringify(user_sentence_update_buffer)
+			},
+			usent_server_responce);
+		user_sentence_update_buffer = new Array();
 	}
 }
 
-function usent_server_responce(data,status){
-	try{
-		let result= JSON.parse(data);
-		if(result.status==0){
-			ntf_show("user sentence"+result.message);
-			return("user sentence"+result.message);
+function usent_server_responce(data, status) {
+	try {
+		let result = JSON.parse(data);
+		if (result.status == 0) {
+			ntf_show("user sentence" + result.message);
+			return ("user sentence" + result.message);
 		}
-		else{
-			ntf_show("user sentence error"+result.message);
-			return("user sentence error"+result.message);
+		else {
+			ntf_show("user sentence error" + result.message);
+			return ("user sentence error" + result.message);
 		}
 	}
-	catch(e){
-		console.error("user_sentence_update:"+e+" data:"+data);
+	catch (e) {
+		console.error("user_sentence_update:" + e + " data:" + data);
 		ntf_show("user sentence error");
 	}
 }