home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 October / CHIP1002.ISO / exe / COMPUGUI.exe / whstart.js < prev    next >
Encoding:
Text File  |  2002-04-23  |  5.4 KB  |  244 lines

  1. RegisterListener2(this, WH_MSG_GETSTARTFRAME);
  2. RegisterListener2(this, WH_MSG_GETDEFAULTTOPIC);
  3. RegisterListener2(this, WH_MSG_MINIBARORDER);
  4. RegisterListener2(this, WH_MSG_TOOLBARORDER);
  5. RegisterListener2(this, WH_MSG_ISSEARCHSUPPORT);
  6. RegisterListener2(this, WH_MSG_ISSYNCSSUPPORT);
  7. RegisterListener2(this, WH_MSG_ISAVENUESUPPORT);
  8. RegisterListener2(this, WH_MSG_GETPANETYPE);
  9. RegisterListener2(this, WH_MSG_GETPANES);
  10. RegisterListener2(this, WH_MSG_RELOADNS6);
  11.  
  12. if (gbNav6)
  13. {
  14.     var gnReload=0;
  15.     setTimeout("delayReload();",5000);
  16. }
  17.  
  18. function delayReload()
  19. {
  20.     if(!gnReload)
  21.     {
  22.         if(nViewFrameType&&nViewFrameType==1)
  23.             document.location=document.location;
  24.     }
  25. }
  26.  
  27. var gsToolbarOrder = "toc|idx|fts|blankblock|searchform|banner";
  28. var gsMinibarOrder = "blankblock|hide2|";
  29.  
  30. var gsTopic = "willkommen.htm";
  31.  
  32. if (location.hash.length > 1)
  33.     gsTopic = location.hash.substring(1);
  34.  
  35. function setToolbarOrder(sOrder)
  36. {
  37.     gsToolbarOrder = sOrder;
  38. }
  39.  
  40. function setMinibarOrder(sOrder)
  41. {
  42.     gsMinibarOrder = sOrder;
  43. }
  44.  
  45. function onSendMessageX(oMsg)
  46. {
  47.     var nMsgId = oMsg.nMessageId;
  48.     if (nMsgId == WH_MSG_GETSTARTFRAME)
  49.     {
  50.         oMsg.oParam.oFrame = this;
  51.         return false;
  52.     }
  53.     else if (nMsgId == WH_MSG_GETDEFAULTTOPIC)
  54.     {
  55.         if (this.cMRServer && cMRServer.m_strVersion)
  56.         {
  57.             if (cMRServer.m_strURLTopic);
  58.             {
  59.                 oMsg.oParam.sTopic = cMRServer.m_strURLTopic;
  60.                 return false;
  61.             }
  62.  
  63.         }
  64.         oMsg.oParam.sTopic = gsTopic;
  65.         return false;
  66.     }
  67.     else if (nMsgId == WH_MSG_TOOLBARORDER)
  68.     {
  69.         var oMsg1 = new whMessage(WH_MSG_GETPANES, this, 1, null);
  70.         if (SendMessage(oMsg1))
  71.         {
  72.             if (oMsg1.oParam)
  73.             {
  74.                 if (this.cMRServer && cMRServer.m_strVersion)
  75.                 {
  76.                     var aToolbarOrder=cMRServer.m_strAgentList.split(";");
  77.                     var i=0;
  78.                     for (i=0;i<aToolbarOrder.length;i++)
  79.                         aToolbarOrder[i]=transferANToPN2(aToolbarOrder[i]);
  80.                     aToolbarOrder[aToolbarOrder.length] = "blankblock";
  81.                     if (cMRServer.m_bShowSearchInput)
  82.                     {
  83.                         aToolbarOrder[aToolbarOrder.length] = "searchform";
  84.                     }
  85.                     aToolbarOrder[aToolbarOrder.length] = "banner";
  86.                     var aToolbarOrderNew = new Array();
  87.                     for (i=0;i<aToolbarOrder.length;i++)
  88.                     {
  89.                         if (isAPane(aToolbarOrder[i]))
  90.                         {
  91.                             if (oMsg1.oParam.aPanes && oMsg1.oParam.aPanes.length)
  92.                             {
  93.                                 for (var j=0;j<oMsg1.oParam.aPanes.length;j++)
  94.                                 {
  95.                                     if (aToolbarOrder[i] == oMsg1.oParam.aPanes[j].sPaneName)
  96.                                     {
  97.                                         aToolbarOrderNew[aToolbarOrderNew.length] = aToolbarOrder[i];
  98.                                         break;
  99.                                     }
  100.                                 }
  101.                             }
  102.                         }
  103.                         else
  104.                             aToolbarOrderNew[aToolbarOrderNew.length] = aToolbarOrder[i];
  105.                     }
  106.                     oMsg.oParam = aToolbarOrderNew.join("|");
  107.                     return false;
  108.                 }
  109.             }
  110.         }
  111.         oMsg.oParam = gsToolbarOrder;
  112.         return false;
  113.     }
  114.     else if (nMsgId == WH_MSG_MINIBARORDER)
  115.     {
  116.         oMsg.oParam = gsMinibarOrder;
  117.         return false;
  118.     }
  119.     else if (nMsgId == WH_MSG_ISSYNCSSUPPORT)
  120.     {
  121.         if (this.cMRServer && cMRServer.m_strVersion)
  122.         {
  123.             if (cMRServer.m_bShowSync)
  124.                 oMsg.oParam=true;
  125.             else
  126.                 oMsg.oParam=false;
  127.             return false;
  128.         }
  129.         else
  130.         {
  131.             if(nViewFrameType)
  132.             {
  133.                 oMsg.oParam= (nViewFrameType < 3);
  134.                 return false;
  135.             }
  136.         }
  137.     }
  138.     else if (nMsgId == WH_MSG_ISAVENUESUPPORT)
  139.     {
  140.         if (this.cMRServer && cMRServer.m_strVersion)
  141.         {
  142.             if (cMRServer.m_bShowBrowseSequences)
  143.                 oMsg.oParam=true;
  144.             else
  145.                 oMsg.oParam=false;
  146.         }
  147.         else
  148.         {
  149.             oMsg.oParam=true;
  150.         }
  151.         return false;
  152.     }
  153.     else if (nMsgId == WH_MSG_ISSEARCHSUPPORT)
  154.     {
  155.         if(nViewFrameType)
  156.         {
  157.             oMsg.oParam= (nViewFrameType < 3);
  158.             return false;
  159.         }
  160.     }
  161.     else if (nMsgId == WH_MSG_GETPANETYPE)
  162.     {
  163.         if(nViewFrameType)
  164.         {
  165.             var oPaneInfo = new Object();
  166.             oPaneInfo.nType = nViewFrameType;
  167.             oPaneInfo.sPaneURL = strPane;
  168.             oMsg.oParam = oPaneInfo;
  169.             return false;
  170.         }
  171.     }
  172.     else if (nMsgId == WH_MSG_GETPANES)
  173.     {
  174.         if (this.cMRServer && cMRServer.m_strVersion)
  175.         {
  176.             var oPanes = new Object();
  177.             var aAgentNames = null;
  178.             if (cMRServer.m_strDefAgent)
  179.                 oPanes.sDefault = transferAgentNameToPaneName(cMRServer.m_strDefAgent);
  180.  
  181.             aPanes = new Array();
  182.             for(var i=0; i< cMRServer.m_cAgents.length; i++)
  183.             {
  184.                 var nCur = aPanes.length;
  185.                 aPanes[nCur] = new Object();
  186.                 aPanes[nCur].sPaneName = transferAgentNameToPaneName(cMRServer.m_cAgents[i].m_strID);
  187.                 aPanes[nCur].sPaneURL = cMRServer.m_cAgents[i].m_strURL;
  188.             }
  189.             oPanes.aPanes = aPanes;
  190.             oMsg.oParam = oPanes;
  191.             return false;
  192.         }
  193.         else
  194.         {
  195.             oMsg.oParam = null;
  196.             return false;
  197.         }
  198.     }
  199.     else if(nMsgId==WH_MSG_RELOADNS6)
  200.     {
  201.         if(gbNav6)
  202.             gnReload=1;
  203.         return false;
  204.     }
  205.     return true;
  206. }
  207.  
  208. function transferANToPN2(sAN)
  209. {
  210.     if (sAN =="toc")
  211.         return "toc";
  212.     else if    (sAN =="ndx")
  213.         return "idx";
  214.     else if    (sAN =="nls")
  215.         return "fts";
  216.     else if    (sAN =="Glossary")
  217.         return "glo";
  218.     else if    (sAN =="WebSearch")
  219.         return "websearch";
  220.     else if (sAN.indexOf("custom_")==0);
  221.         return "custom" + sAN.substring(7);
  222.     return sAN;
  223. }
  224.  
  225. function transferAgentNameToPaneName(sAgentName)
  226. {
  227.     if (sAgentName =="toc")
  228.         return "toc";
  229.     else if    (sAgentName =="ndx")
  230.         return "idx";
  231.     else if    (sAgentName =="nls")
  232.         return "fts";
  233.     else if    (sAgentName =="gls")
  234.         return "glo";
  235.     return "";
  236. }
  237.  
  238. function isAPane(sPaneName)
  239. {
  240.     if (sPaneName == "toc" || sPaneName == "idx" || sPaneName == "fts" || sPaneName == "glo")
  241.         return true;
  242.     else
  243.         return false;
  244. }