update.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. var user_wbw_data_buffer=new Array();
  2. function user_wbw_push_paragraph(blockid){
  3. }
  4. function user_wbw_push_word_element(xWord){
  5. let wordid=getNodeText(xWord,"id");
  6. let wId = wordid.split("-")[2];
  7. let mWord = doc_word("#"+wordid);
  8. let blockid=mWord.block.info("id");
  9. user_wbw_push(blockid,wId,com_xmlToString(xWord));
  10. }
  11. function user_wbw_push_word(wordid){
  12. let xWord = doc_word("#"+wordid);
  13. let blockid=xWord.block.info("id");
  14. let book=xWord.block.info("book");
  15. let para = xWord.block.info("paragraph");
  16. let aWordid = wordid.split("-");
  17. aWordid.length=3;
  18. if(para!=aWordid[1]){
  19. alert("error:paragraph sn.");
  20. return;
  21. }
  22. let newWordid=aWordid.join("-");
  23. let wId = aWordid[2];
  24. let xAllWord = gXmlBookDataBody.getElementsByTagName("word");
  25. let index=getWordIndex(newWordid);
  26. let wordData = "";
  27. if(xAllWord[index]){
  28. for(let i=index;i<xAllWord.length;i++){
  29. if(getNodeText(xAllWord[i],"id").split("-")[2]!=wId){
  30. break;
  31. }
  32. wordData += com_xmlToString(xAllWord[i]);
  33. }
  34. user_wbw_push(blockid,wId,wordData);
  35. }
  36. }
  37. function user_wbw_push(block_id,wid,data){
  38. let d = new Date();
  39. let objData = new Object();
  40. objData.block_id=block_id;
  41. objData.word_id = wid;
  42. objData.data = data;
  43. objData.time = d.getTime();
  44. user_wbw_data_buffer.push(objData);
  45. }
  46. function user_wbw_commit(){
  47. if(user_wbw_data_buffer.length==0){
  48. return;
  49. }
  50. $.post("../uwbw/update.php",
  51. {
  52. data:JSON.stringify(user_wbw_data_buffer)
  53. },
  54. function(data,status){
  55. try{
  56. let result= JSON.parse(data);
  57. if(result.status==0){
  58. ntf_show("user wbw"+result.message);
  59. }
  60. else{
  61. ntf_show("user wbw error"+result.message);
  62. }
  63. }
  64. catch(e){
  65. console.error("user_wbw_update:"+e+" data:"+data);
  66. ntf_show("user wbw");
  67. }
  68. });
  69. user_wbw_data_buffer=new Array();
  70. }