var arrTerm = new Array(); var arrTerm2 = new Array(); var arrMyTerm = new Array(); var arrAllMean = new Array(); var arrTermAllPali = new Array(); var arrWordIdTermId = new Array(); var strTermTanslationTmp="[%mean%](%pali% %mean2% %mymean%)"; var strTermTanslationTmp2="[%mean%]"; var termCounter=new Array(); var noteCounter=0; //正文内注释计数器 function note(noteId,strDef="unkow"){ document.write("haha"); } function note_replace(strIn){ /* */ var output = strIn.replace("/*",""); return(output); } function term_init(){ } var str_term_fun_word_link="term_show_win"; function term_word_link_fun(fun_name){ str_term_fun_word_link = fun_name; } //将存储状态的字符串转换为预显示字符串 //设置状态为 0:未处理的原始状态 function term_std_str_to_tran(strIn){ return(strIn.replace(/\[\[/g,"").replace(/\]\]/g,"")); } function term_std_str_to_edit(strIn){ var arrText = strIn.split("/"); for(var i in arrText){ //头尾是* if(arrText[i].substring(0,1)=="*" && arrText[i].substring(arrText[i].length-1)=="*"){ var arrOneTermWord=arrText[i].split("@"); if(arrOneTermWord.length==2){ arrText[i]="*"+arrOneTermWord[1]; } } } return(arrText.join("/")); } function term_tran_edit_replace(strIn){ var strEdit=strIn; for(var x=0;x"; html += "
"+result.meaning+"
"; html += "
"+note_init(result.note)+"
"; html += ""; $("#"+showto).html(html); note_refresh_new(); } catch(e){ console.error("note_lookup_guid_json:"+e+" data:"+data); } } }); } var term_get_word_to_div_callback=null; function term_get_word_to_div(strWord,div,callback){ term_get_word_to_div_callback=callback; $.get("../term/term.php", { op:"get", word:strWord, format:"json" }, function(data,status){ let html=""; if(status=="success"){ try{ let result= JSON.parse(data); let html=""; if(result.length>0){ let type=new Array(); let authors=new Array(); for(x in result){ if(result[x].tag==""){ result[x].tag="_null_"; } if(type[result[x].tag]==null){ type[result[x].tag]=new Array(); } type[result[x].tag].push(result[x].meaning); authors[result[x].owner]=1; } html += "
"; html += "
"; html += result[0].word; html += "
"; for(y in type){ html += "
"; if(y!="_null_"){ html += y+":"; } for(k in type[y]){ html += type[y][k]; } html += "
"; } html += "
贡献者:"; for(y in authors){ html += ""+y+" " } html += "
"; html += "
"; for(x in result){ html += "
"; html += "
"; html += "
"; html += "
"; html += result[x].owner.slice(0,1); html += "
"; html += "
"; html += "
"+result[x].meaning; if(result[x].tag!="_null_"){ html += ""+result[x].tag+""; } html += "
"; html += "
"+result[x].owner+"
"; html += "
"; html += "
"; html += "
"; html += "[编辑][赞][收藏]"; html += "
"; html += "
"; //html += "
"+result[x].other_meaning+"
"; html += "
"+note_init(result[x].note)+"
"; html += "
"; } } else{ html += "
词条尚未创建
"; html += "
"; html += "
"; html += "
"; html += "
"; html += "
"; html += "
"; } $("#"+div).html(html); note_refresh_new(); if(term_get_word_to_div_callback!=null){ term_get_word_to_div_callback(result); } } catch(e){ console.error("term_get_word_to_div:"+e+" data:"+data); } } }); } function term_get_guid_to_html(strGuid){ } function term_apply(guid){ if(g_eCurrWord){ setNodeText(g_eCurrWord,"note","=term("+guid+")"); term_array_updata(); } } function term_data_copy_to_me(guid){ $("#term_dict").load("term.php?op=copy&wordid="+guid); } //我的术语字典进入编辑模式 function term_edit(guid){ $("#term_edit_btn1_"+guid).hide(); $("#term_edit_btn2_"+guid).show(); document.getElementById("term_dict_my_"+guid).style.display="none"; document.getElementById("term_dict_my_edit_"+guid).style.display="block"; } //我的术语字典退出编辑模式 function term_data_esc_edit(guid){ $("#term_edit_btn1_"+guid).show(); $("#term_edit_btn2_"+guid).hide(); document.getElementById("term_dict_my_"+guid).style.display="block"; document.getElementById("term_dict_my_edit_"+guid).style.display="none"; } //我的术语字典 编辑模式 保存 function term_data_save(guid){ if(guid==""){ var strWord=$("#term_new_word").val(); var strMean=$("#term_new_mean").val(); var strMean2=$("#term_new_mean2").val(); var strNote=$("#term_new_note").val(); var strTag=$("#term_new_tag").val(); let newTerm = new Object(); newTerm.guid=com_guid(); newTerm.word=strWord; newTerm.meaning = strMean; newTerm.other_meaning = strMean2; arrMyTerm.push(newTerm); } else{ var strWord=$("#term_edit_word_"+guid).val(); var strMean=$("#term_edit_mean_"+guid).val(); var strMean2=$("#term_edit_mean2_"+guid).val(); var strTag=$("#term_edit_tag_"+guid).val(); var strNote=$("#term_edit_note_"+guid).val(); } $.get("../term/term.php", { op:"save", guid:guid, word:strWord, mean:strMean, mean2:strMean2, tag:strTag, note:strNote, username:getCookie("username") }, function(data,status){ try{ let result= JSON.parse(data); if(result.status==0){ note_lookup(result.message,"term_dict"); } else{ ntf_show("term error"+result.message); } } catch(e){ console.error("term_get_all_pali:"+e+" data:"+data); ntf_show("term error"); } }); } function term_get_all_pali(){ $.get("term.php", { op:"allpali" }, function(data,status){ if(data.length>0){ try{ arrTermAllPali = JSON.parse(data); } catch(e){ console.error("term_get_all_pali:"+e+" data:"+data); } } }); } function term_lookup_all(pali){ for(var x in arrTermAllPali){ if(arrTermAllPali[x].word==pali){ return(arrTermAllPali[x]); } } return(null); } function term_get_my(){ $.get("term.php", { op:"my" }, function(data,status){ if(data.length>0){ try{ arrMyTerm = JSON.parse(data); } catch(e){ console.error(e.error+" data:"+data); } } }); } //在我的术语字典里查询 function term_lookup_my(pali){ for(var x in arrMyTerm){ if(arrMyTerm[x].meaning==pali){ return(arrMyTerm[x]); } if(arrMyTerm[x].word==pali){ return(arrMyTerm[x]); } } return(null); } function term_lookup_my_id(id){ for(var x in arrMyTerm){ if(arrMyTerm[x].guid==id){ return(arrMyTerm[x]); } } return(null); } function term_get_all_meaning(word){ $.get("term.php", { op:"allmean", word:word }, function(data,status){ $("#term_win_other_mean").html(data); }); } //刷新文档正在使用的术语数据 function term_array_updata(){ arrTerm2=new Array(); var arrTermDownLoadList=new Array(); var arrWordIdTermId=new Array(); var xAllWord = gXmlBookDataBody.getElementsByTagName("word"); for(var x=0;x0){ var idlist=arrTermDownLoadList.join(); idlist = idlist.replace(/,/g,"','"); idlist = "'"+ idlist + "'"; $.get("term.php", { op:"extract", list:idlist }, function(data,status){ var obj = JSON.parse(data); for(var x in obj){ arrTerm[obj[x].guid]=obj[x]; arrTerm2.push(obj[x]); } if(g_eCurrWord){ updataWordHeadById(getNodeText(g_eCurrWord,"id")); refreshWordNote(g_eCurrWord.parentNode.parentNode); } for(var i=0;i["+noteCounter+"]"); noteCounter++; } else{ if(status==0 || status==2){ let myterm=term_lookup_my(termText);//我的术语字典 if(myterm){ $(this).attr("status","1"); $(this).attr("type","0"); $(this).attr("guid",myterm.guid); $(this).attr("pali",myterm.word); $(this).attr("mean",myterm.meaning); $(this).attr("mean2",myterm.other_meaning); $(this).attr("replace",myterm.meaning); } else{ $(this).attr("status","2"); $(this).attr("pali",termText); } } let guid=$(this).attr("guid"); let pali=$(this).attr("pali"); let mean=$(this).attr("mean"); let mean2=$(this).attr("mean2"); var renderTo=$(this).attr("pos"); var noteText=""; if(termCounter[guid]){ termCounter[guid]=2; } else{ termCounter[guid]=1; } var myterm=term_lookup_my(pali);//我的术语字典 let linkclass=""; if(myterm){ linkclass="term_link"; } else{ linkclass="term_link_new"; } if(guid){ if(renderTo=="wbw"){ noteText="%note%"; } else{ if(termCounter[guid]==1){ noteText=strTermTanslationTmp; } else{ noteText=strTermTanslationTmp2; } } noteText=noteText.replace("[",""); noteText=noteText.replace("]",""); noteText=noteText.replace("%mean%",""+mean+""); noteText=noteText.replace("%pali%",""+pali+""); noteText=noteText.replace("%mean2%",""+mean2+""); noteText=noteText.replace("%note%",""+""+""); if(myterm){ if(myterm.meaning!=mean){ noteText=noteText.replace("%mymean%",""+myterm.meaning+""); } else{ noteText=noteText.replace("%mymean%",""); } } else{ noteText=noteText.replace("%mymean%",""); } } else{ noteText=""+termText+""; } $(this).html(noteText); } }); } function term_show_win(guid,keyWord=""){ if(guid==""){ $(term_body).html("当前词条未创建。
现在创建"); } else{ let currWord = term_lookup_my_id(guid); if(currWord){ let termString=""; let pali=currWord.word; let pali_1= pali.substring(0,1).toUpperCase(); pali=pali_1+pali.substring(1); let mean=currWord.meaning; let myterm=term_lookup_my(currWord.word);//我的术语字典 termString+="
"+pali+"
"; termString+="
意思:"+currWord.meaning+"
"; termString+="
其他意思:"+currWord.other_meaning+"
"; termString+="
我的词库:"; if(myterm){ termString+=""+myterm.meaning+" "; } else{ termString+=""; } termString+="其他:"; termString+="
"; if(currWord.note){ termString+="
"+currWord.note+"
"; } else{ termString+="
Loading
"; } $(term_body).html(termString); term_get_all_meaning(currWord.word); if(!currWord.note){ $.get("term.php", { op:"load_id", id:currWord.guid }, function(data,status,xhr){ switch(status){ case "success": try{ let loadWord = JSON.parse(data); $("#term_win_note").html(loadWord[0].note); //修改内存数据 for(let x in arrMyTerm){ if(arrMyTerm[x].guid==loadWord[0].guid){ arrMyTerm[x].note=loadWord[0].note; return; } } } catch(e){ console.error(e+" data:"+data); } break; case "error": console.error("Error: "+xhr.status+": "+xhr.statusText); break; } }); } } else{ $(term_body).html("undefined guid"); } } document.getElementById("term_win").style.display="flex"; } function term_tmp(type,tmp){ if(tmp=="new"){ switch(type){ case "a": strTermTanslationTmp=$("#term_my_tmp").val(); break; case "a2": strTermTanslationTmp2=$("#term_my_tmp").val(); break; } } else{ switch(type){ case "a": strTermTanslationTmp=tmp; break; case "a2": strTermTanslationTmp2=tmp; break; } } term_updata_translation(); } function term_add_new(keyword){ document.getElementById("term_win").style.display="none"; tab_click_b('sys_term','tab_rb_sys_term',right_panal_slide_toggle,'tab_rb_sys_term'); editor_show_right_tool_bar(true); note_lookup(keyword,"term_dict"); } function term_show_new(){ $("#term_new_recorder").slideToggle(); }