/*全文搜索引擎*/ var g_pali_word_item_hide_id = new Array(); var search_text_pre_searching = false; var search_text_pre_search_curr_word = ""; var search_text_search_xml_http = null; function search_text_search(word) { if (window.XMLHttpRequest) {// code for IE7, Firefox, Opera, etc. search_text_search_xml_http = new XMLHttpRequest(); } else if (window.ActiveXObject) {// code for IE6, IE5 search_text_search_xml_http = new ActiveXObject("Microsoft.XMLHTTP"); } if (search_text_search_xml_http != null) { search_text_search_xml_http.onreadystatechange = search_text_search_serverResponse; search_text_search_xml_http.open("GET", "./search_text.php?op=search&word=" + word, true); search_text_search_xml_http.send(); } else { alert("Your browser does not support XMLHTTP."); } } function search_text_search_serverResponse() { if (search_text_search_xml_http.readyState == 4)// 4 = "loaded" { //debugOutput("server response.",0); if (search_text_search_xml_http.status == 200) {// 200 = "OK" var serverText = search_text_search_xml_http.responseText; search_text_result = document.getElementById("search_text_result"); if (search_text_result) { search_text_result.innerHTML = serverText; } } else { //debugOutput(search_text_pre_search_xml_http.statusText,0); } } path_name_upgrade(); } var search_text_pre_search_xml_http = null; function search_text_pre_search(word) { if (search_text_pre_searching == true) { return; } search_text_pre_searching = true; search_text_pre_search_curr_word = word; if (window.XMLHttpRequest) {// code for IE7, Firefox, Opera, etc. search_text_pre_search_xml_http = new XMLHttpRequest(); } else if (window.ActiveXObject) {// code for IE6, IE5 search_text_pre_search_xml_http = new ActiveXObject("Microsoft.XMLHTTP"); } if (search_text_pre_search_xml_http != null) { search_text_pre_search_xml_http.onreadystatechange = search_text_pre_search_serverResponse; search_text_pre_search_xml_http.open("GET", "./search_text.php?op=pre&word=" + word, true); search_text_pre_search_xml_http.send(); } else { alert("Your browser does not support XMLHTTP."); } } function search_text_pre_search_serverResponse() { if (search_text_pre_search_xml_http.readyState == 4)// 4 = "loaded" { //debugOutput("server response.",0); if (search_text_pre_search_xml_http.status == 200) {// 200 = "OK" var serverText = search_text_pre_search_xml_http.responseText; if (window.DOMParser) { var parser = new DOMParser(); var wordData = parser.parseFromString(serverText, "text/xml"); } else { // Internet Explorer var wordData = new ActiveXObject("Microsoft.XMLDOM"); wordData.async = "false"; wordData.loadXML(serverText); } if (wordData) { var wordlist = wordData.getElementsByTagName("word") //var obj = JSON.parse(serverText); var search_text_word = ""; for (var iword = 0; iword < wordlist.length; iword++) { search_text_word += "
  • " + getNodeText(wordlist[iword], "pali") + "-" + getNodeText(wordlist[iword], "count") + "
  • " } search_text_result = document.getElementById("search_word_prev"); if (search_text_result) { search_text_result.innerHTML = search_text_word; } } } else { //debugOutput(search_text_pre_search_xml_http.statusText,0); } search_text_pre_searching = false; var newword = document.getElementById("search_text_input").value; if (newword != search_text_pre_search_curr_word) { search_text_pre_search(newword); } } } function search_text_pre_word_click(word) { //document.getElementById("dict_ref_search_input").value=word; search_text_search(word); } function search_text_input_change(obj) { search_text_pre_search(obj.value); } function search_text_input_keypress(e, obj) { var keynum var keychar var numcheck if (window.event) // IE { keynum = e.keyCode } else if (e.which) // Netscape/Firefox/Opera { keynum = e.which } var keychar = String.fromCharCode(keynum) if (keynum == 13) { } } function search_text_input_keyup(e, obj) { var keynum var keychar var numcheck if (window.event) // IE { keynum = e.keyCode } else if (e.which) // Netscape/Firefox/Opera { keynum = e.which } var keychar = String.fromCharCode(keynum) if (keynum == 13) { search_text_search(obj.value); } else { search_text_pre_search(obj.value); } } function search_text_input_split(word) { if (word.indexOf("+") >= 0) { var wordParts = word.split("+"); var strParts = ""; for (var i in wordParts) { strParts += "" + wordParts[i] + ""; } document.getElementById("input_parts").innerHTML = strParts; } else { document.getElementById("input_parts").innerHTML = ""; } } var search_text_key_word = new Array(); var index_count = 0; function search_text_add_key_word(str, count, obj) { var objWord = new Object(); objWord.pali = str; objWord.count = count; objWord.index = index_count; index_count++; obj.style = "max-height: 0px; padding: 0px; opacity: 0;"; obj.id = "pali_book_item_hide_" + com_guid(); objWord.idstr = obj.id; g_pali_word_item_hide_id.push(obj.id); //obj.style.display="none"; search_text_key_word.push(objWord); search_text_refresh_key_word(); } function search_text_remove_key_word(word_index, obj) { obj.style = "max-width: 0px; padding: 0px; opacity: 0;"; for (var iword = 0; iword < search_text_key_word.length; iword++) { if (search_text_key_word[iword].index == word_index) { if (document.getElementById(search_text_key_word[iword].idstr) != null) { document.getElementById(search_text_key_word[iword].idstr).style = ""; } search_text_key_word.splice(iword, 1); break; } } search_text_refresh_key_word(); } function search_text_remove_all_key_word() { var search_text_array = document.getElementById("search_word_key_word").getElementsByClassName("pali_book_item"); for (var i_search = 0; i_search < search_text_array.length; i_search++) { search_text_array[i_search].style = "max-width: 0px; padding: 0px; opacity: 0;" } for (var iword = 0; iword < search_text_key_word.length; iword++) { if (document.getElementById(search_text_key_word[iword] != null)) { document.getElementById(search_text_key_word[iword].idstr).style = ""; } } search_text_key_word = new Array(); search_text_refresh_key_word(); //var pali_book_item_hide_array=document.getElementsByClassName("pali_book_item_hide"); //for(i_pali_book_item_hide in pali_book_item_hide_array){ // pali_book_item_hide_array[i_pali_book_item_hide].className="pali_book_item"; //} } function search_text_refresh_key_word() { var html_key_list = ""; for (var iword = 0; iword < search_text_key_word.length; iword++) { html_key_list += "
  • " + (search_text_key_word[iword].pali) + "-" + (search_text_key_word[iword].count) + "
  • " } var search_text_ctl_key_word = document.getElementById("search_word_key_word"); if (search_text_ctl_key_word) { search_text_ctl_key_word.innerHTML = html_key_list; } } function search_text_advance_search() { var key_word = ""; for (var iword = 0; iword < search_text_key_word.length; iword++) { key_word += search_text_key_word[iword].pali + ","; } search_text_search(key_word); } function path_name_upgrade() { var path_array = document.getElementsByClassName('book_path'); for (var i_path = 0; i_path < path_array.length; i_path++) { var path_str = path_array[i_path].innerHTML.split('#'); for (j_path in local_palicannon_index) { if (local_palicannon_index[j_path].id == path_str[0]) { path_str[0] = local_palicannon_index[j_path].c1 + ">"; path_str[0] += local_palicannon_index[j_path].c2 + ">"; if (local_palicannon_index[j_path].c3 != "") { path_str[0] += local_palicannon_index[j_path].c3 + ">"; if (local_palicannon_index[j_path].c4 != "") { path_str[0] += local_palicannon_index[j_path].c4 + ">"; } } path_str[0] += "《" + local_palicannon_index[j_path].title + "》"; } } path_array[i_path].innerHTML = path_str[0] + path_str[1]; } } function search_edit(bookid, par) { var newRes = new Object() newRes.res = "wbw"; newRes.book = bookid; newRes.parNum = par; newRes.parEnd = par; newRes.language = "pali"; newRes.author = "templet"; newRes.editor = "pcds"; newRes.revision = 1; newRes.edition = 1; newRes.subver = 1; var arrRes = new Array(); arrRes.push(newRes); window.open("./project.php?op=create&data=" + JSON.stringify(arrRes)); }