+++ /dev/null
-<html>
-<script language="javascript1.2" src="whver.js"></script>
-<script language="javascript1.2" src="whmozemu.js"></script>
-<script language="javascript1.2" src="whutils.js"></script>
-<script language="javascript1.2">
-<!--
-if(gbIE4||gbNav61)
-{
- document.write("<body></body>");
-}
-else
-{
- document.write("<frameset rows=\"100%,*\"><frame name=\"data_frm\" src=\"about:blank\"><frame name=\"dumb_frm\" src=\"about:blank\"></frameset>");
-}
-var gCSHFileName="whcshdata.htm";
-
-var gHomePage="index.htm";
-var gaProj=new Array();
-gaProj[0]=new Object();
-gaProj[0].sProjPath=_replaceSlash(_getPath(document.location.href));
-gaProj[0].nLoadState=0;
-var gCurrent=0;
-
-var gsTopicURL="";
-var gnCurProj=0;
-var gnCommand=-1;
-var CMD_SHOWTOC=1;
-var CMD_SHOWINDEX=2;
-var CMD_SHOWSEARCH=3;
-var CMD_SHOWGLOSSARY=4;
-var CMD_SHOWNONE=0;
-
-var RHWO_LOCATION=0x01; /*need location bar?*/
-var RHWO_MENUBAR=0x02; /*need menubar?*/
-var RHWO_RESIZABLE=0x04; /*resizable window?*/
-var RHWO_TOOLBAR=0x08; /*need toolbar?*/
-var RHWO_STATUS=0x10; /*need statusbar?*/
-var RHWO_SCROLLBARS=0x20; /*need scrollbars?*/
-
-var gsStr="";
-var gnId=-1;
-var gsWindow="";
-var gsJava="false";
-var gbUseStr=false;
-var gbURLReady=false;
-var goWnd=new Object();
-goWnd.sName="whCshDefault";
-goWnd.nBOptions=RHWO_RESIZABLE|RHWO_SCROLLBARS;
-goWnd.sBLeft="49%";
-goWnd.sBTop="0";
-goWnd.sBWidth="49%";
-goWnd.sBHeight="49%";
-goWnd.nPanes=1;
-var goFullWnd=new Object();
-goFullWnd.sName="whDefault";
-goFullWnd.nBOptions=RHWO_RESIZABLE|RHWO_SCROLLBARS;
-goFullWnd.sBLeft="20%";
-goFullWnd.sBTop="0";
-goFullWnd.sBWidth="79%";
-goFullWnd.sBHeight="79%";
-goFullWnd.nPanes=2;
-
-var goNewWnd=null;
-var gbLoadWnd=false;
-var gsURL="";
-
-function showCSH(sParam)
-{
- //id=
- //str=
- //url=
- //cmd=
- //with the format #<a=xxx>>b=xxx>>c=xxx...
- parseParam(sParam);
- SwitchURL();
-}
-
-function IsWndReady()
-{
- if(gaProj[0].nLoadState==0)
- {
- var sCshFile=_getFullPath(gaProj[0].sProjPath,gCSHFileName);
- gaProj[0].nLoadState=1;
- setTimeout("loadFail("+0+");",3000);
- loadDataCsh(sCshFile);
- gbLoadWnd=true;
- return false;
- }
- else
- return true;
-}
-
-function SwitchURL()
-{
- if(gbURLReady)
- {
- var sURL="";
- var oWnd=null;
- if(gsTopicURL)
- {
- sURL=_getPath(document.location.href)+gHomePage+"#"+gsTopicURL;
- oWnd=goWnd;
- }
- else
- {
- if(gnCommand!=-1)
- sURL=_getPath(document.location.href)+gHomePage+"#>>cmd="+gnCommand;
- else
- sURL=_getPath(document.location.href)+gHomePage;
- oWnd=goFullWnd;
- }
- if(gsWindow)
- {
- if(!IsWndReady())
- return false;
- if(gaProj[gnCurProj].aWnd)
- {
- var aWnd=gaProj[gnCurProj].aWnd;
- var bFound=false;
- for(var i=0;i<aWnd.length;i++)
- {
- if(aWnd[i].sName.toLowerCase()==gsWindow.toLowerCase())
- {
- oWnd=aWnd[i];
- bFound=true;
- break;
- }
- }
- if(!bFound&&gnCurProj!=0)
- {
- var aWnd=gaProj[0].aWnd;
- for(var j=0;j<aWnd.length;j++)
- {
- if(aWnd[j].sName.toLowerCase()==gsWindow.toLowerCase())
- {
- oWnd=aWnd[j];
- break;
- }
- }
- }
- }
- }
-
- if(sURL&&oWnd)
- {
- strURLOpt="";
- if(oWnd.sCaption)
- strURLOpt+=">>cap="+oWnd.sCaption;
- if(oWnd.nPanes==1)
- strURLOpt+=">>pan="+oWnd.nPanes;
- else if(oWnd.nPanes==2)
- {
- strURLOpt+=">>pan="+oWnd.nPanes;
- if(oWnd.nPOptions)
- strURLOpt+=">>pot="+oWnd.nPOptions;
- if(oWnd.sPButtons)
- strURLOpt+=">>pbs="+oWnd.sPButtons;
- if(oWnd.sPDefBtn)
- strURLOpt+=">>pdb="+oWnd.sPDefBtn;
- }
- if(strURLOpt)
- {
- if(sURL.indexOf("#")==-1)
- sURL+="#";
- sURL+=strURLOpt;
- }
- if(gsJava=="false")
- {
- var strOpt=getBrowserOptionString(oWnd);
- var sNewName=convertWindowName(oWnd.sName);
- if(gbNav4)
- {
- if (gbNav6)
- {
- gsURL = sURL;
- goNewWnd=window.open("about:blank",sNewName,strOpt);
- setTimeout("postWindowNSOpen();",100);
- }
- else
- {
- window.open("about:blank",sNewName,strOpt);
- var oNewWnd=window.open(sURL,sNewName);
- window.close();
- oNewWnd.focus();
- }
- }
- else
- {
- if(gbIE5)
- {
- window.open("about:blank",sNewName,strOpt);
- goNewWnd=window.open(sURL,sNewName);
- }
- else
- {
- gsURL = sURL; // IE4 had hard time to handle bookmark.
- goNewWnd=window.open("about:blank",sNewName,strOpt);
- }
- setTimeout("postWindowOpen();",100);
- }
- }
- else
- document.location=sURL;
- }
- }
-}
-
-function convertWindowName(strName)
-{
- var strNewName = strName;
- var strResultName = "";
- var re=new RegExp("_","g");
- strNewName = strName.replace(re,"__");
- for (var i=0;i<strNewName.length;i++)
- if (!(strNewName[i] == '_' ||
- (strNewName[i] <= '9' && strNewName[i] >= '0') ||
- (strNewName[i] <= 'z' && strNewName[i] >= 'a') ||
- (strNewName[i] <= 'Z' && strNewName[i] >= 'A')))
- {
- strResultName += "_" + strNewName.charCodeAt(i);
- }
- else
- strResultName += strNewName[i];
- return strResultName;
-}
-
-function postWindowNSOpen()
-{
- if(goNewWnd)
- {
- if (gsURL)
- goNewWnd.document.location.href=gsURL;
- window.close();
- goNewWnd.focus();
- }
-}
-
-function postWindowOpen()
-{
- if(goNewWnd)
- {
- if (gsURL&&!gbIE5&&gbIE4)
- goNewWnd.document.location.href=gsURL;
- goNewWnd.focus();
- }
-}
-
-function parseParam(sParam)
-{
- if(sParam)
- {
- var nBPos=0;
- do
- {
- var nPos=sParam.indexOf(">>",nBPos);
- if(nPos!=-1)
- {
- if(nPos>0)
- {
- var sPart=sParam.substring(nBPos,nPos);
- parsePart(sPart);
- }
- nBPos=nPos+2;
- }
- else
- {
- var sPart=sParam.substring(nBPos);
- parsePart(sPart);
- break;
- }
- }while(nBPos<sParam.length);
- }
-}
-
-function parsePart(sPart)
-{
- if(sPart.toLowerCase().indexOf("id=")==0)
- {
- fetchURLById(sPart.substring(3));
- gbURLReady=false;
- }
- else if(sPart.toLowerCase().indexOf("str=")==0)
- {
- fetchURLByStr(sPart.substring(4));
- gbURLReady=false;
- }
- else if(sPart.toLowerCase().indexOf("url=")==0)
- {
- gsTopicURL=sPart.substring(4);
- gbURLReady=true;
- }
- else if(sPart.toLowerCase().indexOf("cmd=")==0)
- {
- var sCmd=sPart.substring(4);
- if(sCmd.toLowerCase()=="toc")
- {
- gnCommand=CMD_SHOWTOC;
- }
- else if(sCmd.toLowerCase()=="idx")
- {
- gnCommand=CMD_SHOWINDEX;
- }
- else if(sCmd.toLowerCase()=="fts")
- {
- gnCommand=CMD_SHOWSEARCH;
- }
- else if(sCmd.toLowerCase()=="glo")
- {
- gnCommand=CMD_SHOWGLOSSARY;
- }
- else if(sCmd.toLowerCase()=="none")
- {
- gnCommand=CMD_SHOWNONE;
- }
- gbURLReady=true;
- }
- else if(sPart.toLowerCase().indexOf("wnd=")==0)
- {
- gsWindow=_browserStringToText(sPart.substring(4));
- }
- else if(sPart.toLowerCase().indexOf("java=")==0)
- {
- gsJava=sPart.substring(5);
- }
-}
-
-function fetchURLById(sId)
-{
- var nId=parseInt(sId);
- gsTopicURL="";
- fetchURL("",nId,false);
-}
-
-function fetchURLByStr(sStr)
-{
- gsTopicURL="";
- fetchURL(sStr,0,true);
-}
-
-function fetchURL(sStr,nId,bUseStr)
-{
- var bNeedLoad=false;
- var bFound=false;
- for(var i=0;i<gaProj.length;i++)
- {
- if(gaProj[i].nLoadState==3)
- {
- if(gaProj[i].aCsh)
- {
- for(var j=0;j<gaProj[i].aCsh.length;j++)
- {
- var sTopicURL="";
- if(bUseStr)
- {
- if(gaProj[i].aCsh[j].strAliasId.toLowerCase()==sStr.toLowerCase())
- sTopicURL=gaProj[i].aCsh[j].strUrl;
- }
- else
- {
- if(gaProj[i].aCsh[j].nTopicNum==nId)
- sTopicURL=gaProj[i].aCsh[j].strUrl;
- }
- if(sTopicURL)
- {
- if(i!=0)
- {
- gnCurProj=i;
- if(gaProj[i].sProjPath.indexOf(gaProj[0].sProjPath)==0)
- {
- var sRelPath=gaProj[i].sProjPath.substring(gaProj[0].sProjPath.length);
- gsTopicURL=sRelPath+sTopicURL;
- }
- else
- gsTopicURL=gaProj[i].sProjPath+sTopicURL;
- }
- else
- gsTopicURL=sTopicURL;
- bFound=true;
- break;
- }
- }
- }
-
- }
- else if(gaProj[i].nLoadState==0)
- {
- gsStr=sStr;
- gnId=nId;
- gbUseStr=bUseStr;
- var sCshFile=_getFullPath(gaProj[i].sProjPath,gCSHFileName);
- gaProj[i].nLoadState=1;
- setTimeout("loadFail("+i+");",3000);
- loadDataCsh(sCshFile);
- bNeedLoad=true;
- }
- if(bFound||bNeedLoad)
- break;
- }
- if(!bNeedLoad)
- {
- gbURLReady=true;
- SwitchURL();
- }
-}
-
-function loadDataCsh(sFile)
-{
- if(gbIE4||gbNav61)
- loadData(sFile);
- else
- {
- window.frames[0].location=sFile;
- }
-}
-
-function loadFail(nProj)
-{
- if(gaProj[nProj].nLoadState==1)
- {
- gaProj[nProj].nLoadState=2;
- if(!gbLoadWnd)
- fetchURL(gsStr,gnId,gbUseStr);
- else
- SwitchURL();
- }
-}
-
-function putCshData(strProj,aCsh,aWnd,aRmtProj)
-{
- if(strProj)
- {
- strProj=_replaceSlash(strProj);
- if(strProj.lastIndexOf("/")!=strProj.length-1)
- strProj+="/";
- for(var i=0;i<gaProj.length;i++)
- {
- if(gaProj[i].sProjPath)
- {
- if(isSamePath(gaProj[i].sProjPath,strProj))
- {
- gaProj[i].nLoadState=3;
- gaProj[i].aCsh=aCsh;
- gaProj[i].aWnd=aWnd;
- break;
- }
- }
- }
- if(aRmtProj&&aRmtProj.length)
- {
- for(var j=0;j<aRmtProj.length;j++)
- {
- var strRPath=_getFullPath(strProj,aRmtProj[j]);
- var bFound=false;
- for (var k=0;k<gaProj.length;k++)
- {
- if(gaProj[k].sProjPath)
- {
- if(isSamePath(gaProj[k].sProjPath,strRPath))
- {
- bFound=true;
- break;
- }
- }
- }
- if(!bFound)
- {
- var len=gaProj.length;
- gaProj[len]=new Object();
- gaProj[len].sProjPath=strRPath;
- gaProj[len].nLoadState=0;
- }
- }
- }
- if(!gbLoadWnd)
- fetchURL(gsStr,gnId,gbUseStr);
- else
- SwitchURL();
-
- }
-}
-
-function isSamePath(strPath1,strPath2)
-{
- return strPath1.toLowerCase()==strPath2.toLowerCase();
-}
-
-function getRelHomePage(strLocation)
-{
- var strCurPPath=_getPath(strLocation);
- var strOriPPath=_getPath(getHomePage());
- var strRelPath=_getRelativeFileName(strOriPPath,strCurPPath);
- var strURL=getHomePage()+"#"+strRelPath;
- return strURL;
-}
-
-function getHomePage()
-{
- var strHomePage;
- var strTmp=location.toString();
- var nPos=strTmp.indexOf("#");
- if(nPos!=-1)
- {
- strHomePage=strTmp.substring(0,nPos);
- }
- else
- {
- strHomePage=strTmp;
- }
- return strHomePage;
-}
-
-function getBrowserOptionString(oWnd)
-{
- var strOpts="";
- if(oWnd.bUseDefault)
- return strOpts;
- if(oWnd.nBOptions&RHWO_LOCATION)
- strOpts+="location=yes";
- else
- strOpts+="location=no";
- if(oWnd.nBOptions&RHWO_TOOLBAR)
- strOpts+=",toolbar=yes";
- else
- strOpts+=",toolbar=no";
- if(oWnd.nBOptions&RHWO_MENUBAR)
- strOpts+=",menubar=yes";
- else
- strOpts+=",menubar=no";
- if(oWnd.nBOptions&RHWO_STATUS)
- strOpts+=",status=yes";
- else
- strOpts+=",status=no";
- if(oWnd.nBOptions&RHWO_SCROLLBARS)
- strOpts+=",scrollbars=yes";
- else
- strOpts+=",scrollbars=no";
- if(oWnd.nBOptions&RHWO_RESIZABLE)
- strOpts+=",resizable=yes";
- else
- strOpts+=",resizable=no";
- if(oWnd.sBTop)
- {
- var nTop=getSValue(oWnd.sBTop,screen.height);
- strOpts+=",top="+nTop;
- strOpts+=",screenY="+nTop;
- }
- if(oWnd.sBLeft)
- {
- var nLeft=getSValue(oWnd.sBLeft,screen.width);
- strOpts+=",left="+nLeft;
- strOpts+=",screenX="+nLeft;
- }
- if(oWnd.sBWidth)
- {
- var nWidth=getSValue(oWnd.sBWidth,screen.width);
- strOpts+=",width="+nWidth;
- strOpts+=",outerWidth="+nWidth;
- }
- if(oWnd.sBHeight)
- {
- var nHeight=getSValue(oWnd.sBHeight,screen.height);
- strOpts+=",height="+nHeight;
- strOpts+=",outerHeight="+nHeight;
- }
- return strOpts;
-}
-
-function getSValue(sValue,nLength)
-{
- var nValue=0;
- var nPos=sValue.indexOf("%");
- if(nPos!=-1)
- {
- if(nPos>0)
- {
- var nPart=parseInt(sValue.substring(0,nPos));
- nValue=nLength*nPart/100;
- }
- }
- else
- nValue=parseInt(sValue);
- return nValue;
-}
-
-
-window.onload=window_OnLoad;
-
-function window_OnLoad()
-{
- if(document.location.hash.length>0)
- {
- showCSH(document.location.hash.substring(1));
- }
-
- if(gsJava=="false")
- window.moveTo(screen.width,screen.height);
-}
-//-->
-</script>
-</html>