📄 whfhost.js
字号:
// WebHelp 5.10.003var gsSK2=null;var gsSK=null;var gsFtsBreakChars="\t\r\n\"\\ .,!@#$%^&*()~'`:;<>?/{}[]|+-=\x85\x92\x93\x94\x95\x96\x97\x99\xA9\xAE\xB7";var gnCLF=0;var gsHelpCannotSearch="Cannot search for that phrase.";var gsNoTopics="No Topics Found.";var gsLoadingDivID="LoadingDiv";var gsLoadingMsg="Loading data, please wait...";var gsSearchMsg="Searching...";var gsResultDivID="ResultDiv";var gaaFCD=new Array();var gaaFTCD=new Array();var goCF=null;var goCTF=null;var gaTI=null;var gnCurrentOp=0;var gbNot=false;var gbReady=false;var gnLoadFts=1;var gnCacheLimits=5;var gaCCD=new Array();var gbXML=false;var gaData=new Array();var gsBgColor="#ffffff";var gsBgImage="";var gsMargin="0pt";var gsIndent="0pt";var gsCheckKey=null;var gnIndexNum=0;var gaFtsContentsCon=null;var gaTopicCheckInfo=null;var gnTopicCheck=0;var goFont=null;var goErrFont=null;var goHoverFont=null;var gsABgColor="#cccccc";var gbWhFHost=false;var gbFirst=false;function setBackground(sBgImage){ gsBgImage=sBgImage;}function setBackgroundcolor(sBgColor){ gsBgColor=sBgColor;}function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration){ var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration); if(sType=="Normal") goFont=vFont; else if(sType=="Error") goErrFont=vFont; else if(sType=="Hover") goHoverFont=vFont;}function setActiveBgColor(sBgColor){ gsABgColor=sBgColor;}function setMargin(sMargin){ gsMargin=sMargin;}function setIndent(sIndent){ gsIndent=sIndent;}function updateCache(oCF){ var len=gaCCD.length; if(len<gnCacheLimits*gnCLF) gaCCD[len]=oCF; else{ gaCCD[0].aTopics=null; gaCCD[0].aFtsKeys=null; removeItemFromArray(gaCCD,0); gaCCD[len-1]=oCF; }}function addFtsInfo(sPPath,sDPath,sFtsFile){ gaData[gaData.length]=new ftsInfo(sPPath,sDPath,sFtsFile);}function onLoadXMLError(){ if(gnLoadFts==1) { var aFCD=new Array(); var aFTCD=new Array(); ftsReady(aFCD,aFTCD); } else if(gnLoadFts==3) { var aTopics=new Array(); putFtsTData(aTopics); } else if(gnLoadFts==2) { putFtsWData(aFtsContents); var aFtsContents=new Array(); }}function putDataXML(xmlDoc,sDocPath){ if(gnLoadFts==1) { var node=xmlDoc.lastChild; if(node) { var oChild=node.firstChild; var aFCD=new Array(); var aFTCD=new Array(); while(oChild) { if(oChild.nodeName=="chunkinfo") { var sURL=oChild.getAttribute("url"); var sFirst=oChild.getAttribute("first"); var sLast=oChild.getAttribute("last"); if(sURL&&sFirst&&sLast) { item=new Object(); item.sStartKey=sFirst; item.sEndKey=sLast; item.sFileName=sURL; aFCD[aFCD.length]=item; } } else if(oChild.nodeName=="tchunkinfo") { var sURL=oChild.getAttribute("url"); var nB=parseInt(oChild.getAttribute("first")); var nE=parseInt(oChild.getAttribute("last")); if(sURL&&sFirst&&sLast) { item=new Object(); item.nBegin=nB; item.nEnd=nE; item.sFileName=sURL; aFTCD[aFTCD.length]=item; } } oChild=oChild.nextSibling; } ftsReady(aFCD,aFTCD); } } else if(gnLoadFts==3) { var node=xmlDoc.lastChild; if(node) { var oChild=node.firstChild; var aTopics=new Array(); while(oChild) { if(oChild.nodeName=="topic") { var name=oChild.getAttribute("name"); var sURL=oChild.getAttribute("url"); if(name&&name.length>0&&sURL) { var topic=new Object(); topic.sTopicTitle=name; topic.sTopicURL=sURL; aTopics[aTopics.length]=topic; } } oChild=oChild.nextSibling; } putFtsTData(aTopics); } } else if(gnLoadFts==2) { var node=xmlDoc.lastChild; if(node) { var oChild=node.firstChild; var aFtsContents=new Array(); while(oChild) { if(oChild.nodeName=="key") { var name=oChild.getAttribute("name"); if(name&&name.length>0) { var item=new Object(); item.sItemName=name; aFtsContents[aFtsContents.length]=item; var oChildChild=oChild.firstChild; while(oChildChild) { if(oChildChild.nodeName=="#text") { var sIDs=oChildChild.nodeValue; if(sIDs) { var nBPos=0; do { var nPos=sIDs.indexOf(",",nBPos); var sID=null; if(nPos!=-1) sID=sIDs.substring(nBPos,nPos); else sID=sIDs.substring(nBPos); if(sID) { var id=parseInt(sID); if(!isNaN(id)) { if(!item.aTopics) item.aTopics=new Array(); item.aTopics[item.aTopics.length]=id; } } nBPos=nPos+1; }while(nBPos!=0&&nBPos<sIDs.length); } } oChildChild=oChildChild.nextSibling; } } } oChild=oChild.nextSibling; } putFtsWData(aFtsContents); } }}function ftsInfo(sPPath,sDPath,sFtsFile){ this.sPPath=sPPath; this.sDPath=sDPath; this.sFtsFile=sFtsFile;}function window_OnLoad(){ if(gsBgImage&&gsBgImage.length>0) { document.body.background=gsBgImage; } if(gsBgColor&&gsBgColor.length>0) { document.body.bgColor=gsBgColor; } writeResultDiv(); loadFts(); var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null) SendMessage(oMsg);}function writeResultDiv(){ var sHTML="<div id=\""+gsResultDivID+"\" style=\"POSITION:absolute;\"></div>"; document.body.insertAdjacentHTML("beforeEnd",sHTML);}function loadFts(){ if(!gbReady) { var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null); if(SendMessage(oResMsg)&&oResMsg.oParam) { gbReady=true; var oProj=oResMsg.oParam; var aProj=oProj.aProj; gbXML=oProj.bXML; if(aProj.length>0) { var sLangId=aProj[0].sLangId; for(var i=0;i<aProj.length;i++) { if(aProj[i].sFts&&aProj[i].sLangId==sLangId) { addFtsInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sFts); } } } loadFD(); } }}function loadFD(){ if(gnCLF<gaData.length) { gnLoadFts=1; loadData2(gaData[gnCLF].sPPath+gaData[gnCLF].sDPath+gaData[gnCLF].sFtsFile); } else { var oMsg = new whMessage(WH_MSG_BACKUPSEARCH, this, 1, null); if (SendMessage(oMsg)) { if (oMsg.oParam) { gsSK=oMsg.oParam.toLowerCase(); findFTSKey(); } } RegisterListener2(this, WH_MSG_SEARCHFTSKEY); }}function loadData2(sFile){ if(gbXML) loadDataXML(sFile); else loadData(sFile);}function findFTSKey(){ gaTI=new Array(); gnCurrentOp=1; gbNot=false; displayMsg(gsSearchMsg); if(gsSK!="") { gbFirst=true; findOneKey(); }}function findOneKey(){ if(gsSK && gsSK!="") { var sInput=gsSK; var sCW=""; var nS=-1; var nSep=-1; for(var nChar=0;nChar<gsFtsBreakChars.length;nChar++){ var nFound=sInput.indexOf(gsFtsBreakChars.charAt(nChar)); if((nFound!=-1)&&((nS==-1)||(nFound<nS))){ nS=nFound; nSep=nChar; } } if(nS==-1){ sCW=sInput; sInput=""; }else{ sCW=sInput.substring(0,nS); sInput=sInput.substring(nS+1); } gsSK=sInput; if((sCW=="or")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="|"))){ gnCurrentOp=0; gbNot=false; }else if((sCW=="and")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="&"))){ gnCurrentOp=1; gbNot=false; }else if((sCW=="not")|| ((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="~"))){ gbNot=!gbNot; }else if(sCW!=""&&!IsStopWord(sCW,gaFtsStop)){ var sCurrentStem=GetStem(sCW); gsCW=sCurrentStem; ftsFindKeyword(); return; } findOneKey(); } else{ displayTopics(); checkAgain(); }}function checkAgain(){ gsCheckKey = ""; gnIndexNum = 0; gsSK=gsSK2; gsSK2=null; if(gsSK!=null) setTimeout("findFTSKey();",1);}function displayTopics(){ var sHTML=""; var sLine=""; for(var i=0;i<gaTI.length;i++){ sLine+="<dt><nobr><a href='"+gaTI[i].sTopicURL+"'>"+_textToHtml(gaTI[i].sTopicTitle)+"</a></nobr></dt>"; if(i>>4<<4==i) { sHTML+=sLine; sLine=""; } } if(sLine.length>0) sHTML+=sLine; if(sHTML.length==0) sHTML="<P>"+gsNoTopics+"</P>" else sHTML="<dl>"+sHTML+"</dl>"; var resultDiv=getElement(gsResultDivID); if(resultDiv) resultDiv.innerHTML=sHTML;}function displayMsg(sErrorMsg){ var sHTML="<P>"+sErrorMsg+"</P>"; var resultDiv=getElement(gsResultDivID); if(resultDiv) resultDiv.innerHTML=sHTML;}function ftsFindKeyword(){ var sKey=gsCW; var bNeedLoad=false; var aFtsContentsCon=null; var s=0; if(sKey==null) return; if(!gsCheckKey||sKey!=gsCheckKey||gnIndexNum==0) { aFtsContentsCon=new Array(); gnCheck=0; gsCheckKey=sKey; gnTopicCheck=0; gaTopicCheckInfo=null; } else{ s=gnIndexNum; aFtsContentsCon=gaFtsContentsCon; } for(var i=gnCheck;i<gaaFCD.length;i++) { var oCF=getChunkedFts(i,sKey); if(oCF) { if(!oCF.aFtsKeys&&oCF.sFileName!=null) { bNeedLoad=true; oCF.nProjId=i; goCF=oCF; gnIndexNum=s; gnCheck=i; gaFtsContentsCon=aFtsContentsCon; gnLoadFts=2; beginLoading(); loadData2(gaData[i].sPPath+gaData[i].sDPath+oCF.sFileName);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -