ソースを参照

消息列表保存在浏览器

visuddhinanda 5 年 前
コミット
14e2257364

+ 1 - 1
app/dict/index.php

@@ -294,7 +294,7 @@ function GetPageScroll()
             border-bottom: 2px solid var(--link-hover-color);
         }
     </style>
-	<script language="javascript" src="dict.js"></script>
+	<script language="javascript" src="./dict.js"></script>
 
 	<div id="dict_search_result" style="background-color:white;color:black;">
 	</div>

ファイルの差分が大きいため隠しています
+ 6 - 0
app/public/js/localforage.min.js


+ 1 - 0
app/studio/editor.php

@@ -48,6 +48,7 @@ else{$currDevice="computer";}
 	<script language="javascript" src="sent/sent.js"></script>
 	<script language="javascript" src="../public/js/notify.js"></script>
 	<script language="javascript" src="../public/js/comm.js"></script>
+	<script language="javascript" src="../public/js/localforage.min.js"></script>
 	<script language="javascript" src="../public/script/my.js"></script>
 	
 	<script language="javascript" src="module/editor/language/default.js"></script>	

+ 17 - 11
app/studio/js/data.js

@@ -360,17 +360,13 @@ function doc_head(key, value = null) {
 function doc_msg_push(msgobj) {
 
 	gDocMsgList.push(msgobj);
-	if (gXmlBookDataMsg) {
-		var newNode = gXmlBookData.createElement("msg");
-		setNodeText(newNode, "id", msgobj.id);
-		setNodeText(newNode, "sender", msgobj.sender);
-		setNodeText(newNode, "type", msgobj.type);
-		setNodeText(newNode, "docid", msgobj.docid);
-		setNodeText(newNode, "time", msgobj.time);
-		setNodeText(newNode, "read", msgobj.read);
-		setNodeText(newNode, "data", msgobj.data);
-		gXmlBookDataMsg.appendChild(newNode);
-	}
+	localforage.setItem(g_docid, gDocMsgList).then(function (value) {
+		// This will output `1`.
+		console.log(value.length);
+	}).catch(function (err) {
+		// This code runs if there were any errors
+		console.log(err);
+	});
 }
 
 function doc_block(strSelector = "") {
@@ -625,6 +621,16 @@ function projectDataParse(xmlBookData) {
 		gXmlBookDataMsg = null;
 	}
 	//解析消息队列
+	localforage.getItem(g_docid).then(function (value) {
+		// This code runs once the value has been loaded
+		// from the offline store.
+		gDocMsgList = value;
+		console.log(value.length);
+	}).catch(function (err) {
+		// This code runs if there were any errors
+		console.log(err);
+	});
+
 	if (gXmlBookDataMsg) {
 		var msgElements = gXmlBookDataMsg.getElementsByTagName("msg");
 		for (var iMsg = 0; iMsg < msgElements.length; iMsg++) {

+ 1 - 1
app/studio/js/message.js

@@ -140,7 +140,7 @@ function msg_send() {
 								case "2":
 									break;
 							}
-							gXmlBookDataMsg.appendChild(arrMsg[x].cloneNode(true));
+							//gXmlBookDataMsg.appendChild(arrMsg[x].cloneNode(true));
 						}
 						break;
 				}

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません