home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 2001 August / pcpro0801.iso / SrvPacks / NT4SP6A / DOCS / FILES / JSCRIPTS.JS < prev    next >
Encoding:
Text File  |  2001-04-19  |  9.8 KB  |  343 lines

  1. var lastButton = null;
  2. var lastButtonClass = null;
  3. var PrevButton;
  4. var PrevButtonID = "";
  5. var isMac = false;
  6. var ua = navigator.userAgent;
  7.  
  8. if ((ua.indexOf("Mac") != -1) || (ua.indexOf("Windows 3") != -1)) isMac = true;  
  9.  
  10. function Hilight(btn) {
  11.     cancelBubble;
  12.     if (btn.tagName != "DIV") return;
  13.     if(window.event.fromElement.tagName == "A") return;
  14.     DoButton(btn,"ldHover");
  15.     if(PrevButtonID != "") {
  16.         if(PrevButtonID != btn.id) {
  17.             DoButton(PrevButton, "ldNormal");
  18.         }
  19.     }
  20.     PrevButton = btn;
  21.     PrevButtonID = btn.id;
  22. }
  23. function UnHilight(btn) {
  24.     cancelBubble;
  25.     if (btn.tagName != "DIV") return;    
  26.     if(window.event.toElement.tagName == "A") return;
  27.     DoButton(btn,"ldNormal");
  28. }
  29.  
  30. function DoButton(TheObj,TheClass) {
  31.     TheObj.className = TheClass;
  32.     TheObj.children[0].className = TheClass;
  33. }
  34.  
  35. function setBackLast(){
  36.  
  37.     lastButton.className = lastButtonClass;
  38.     lastButton.children[0].className = "lmLink";
  39.     lastButton = null;
  40. }
  41. function setBackLastTopMenu(){
  42.     lastButton.className = "tmNormal";
  43.     lastButton.children[0].className = "tmLink";
  44.     lastButton = null;
  45. }
  46.  
  47. function callSetBackLast(){
  48.     if(lastButton != null && !ButtonTable.contains(window.event.toElement)){
  49.         setBackLast();
  50.     }
  51. }
  52.  
  53. function callSetBackLastTopMenu(){
  54.     if(lastButton != null && !topButtonTable.contains(window.event.toElement)){
  55.         setBackLastTopMenu();
  56.     }
  57. }
  58.  
  59. function Menu_mo(elem){
  60.     if (document.readyState != "complete" || isMac) return;
  61.     var child, bold, div, A;
  62.     if(lastButton != null){
  63.         setBackLast();
  64.     }
  65.     if (elem.children.length == 0) return;
  66.     div = elem.children[0];
  67.     if (div.className == "tmChosen" || div.className == "lmChosen" || elem.children.length == 0) {
  68.         cancelBubble;
  69.         return;
  70.     }
  71.     A = elem.children[0].children[0];
  72.     lastButton = elem.children[0];
  73.     lastButtonClass = elem.children[0].className;
  74.     if(LeftMenutable.contains(elem)){
  75.         div.className = "lmMouseover";
  76.         bold = A.style.fontWeight;
  77.         A.className = "lmLinkMo";
  78.         A.style.fontWeight = bold;
  79.     }else{
  80.         div.className = "tmMouseover";
  81.         A.className = "tmLinkMo";
  82.     }
  83.     cancelBubble;
  84. }
  85.  
  86.  
  87. function cancelBubble(){
  88.     window.event.cancelBubble = true;
  89. }
  90. //needed for legacy
  91. function mouseoverlink(link) {
  92. }
  93. function mouseoutlink(link) {
  94. }
  95.  
  96. ////////////////////////////////
  97. var oLastBtn=0;
  98.  
  99. window.onload = doOnload;
  100.  
  101.  
  102. function doOnload(){
  103. if (isMac){
  104. }else{
  105.     if (document.all){
  106.     if (document.readyState != "complete") return;
  107.     
  108.         if(document.images["homegif"]){
  109.             bIsMenu = true;
  110.             //write in WinFamilyMenu on div id=WinFamilyMenu
  111.             WinFamilyMenu.insertAdjacentHTML("AfterEnd", writeWinFamilyMenu());
  112.             //event binders necessary for menu to work
  113.             homegif.onmouseover = doMenu;
  114.             if(!window.document.onmouseover)
  115.                 window.document.onmouseover = hideMenu;
  116.         }
  117.     }
  118. }    
  119. }
  120.  
  121. function RaiseButton(){
  122.     
  123.     window.event.cancelBubble=true;
  124.     oBtn = window.event.srcElement;
  125.     if(oLastBtn && oLastBtn != oBtn){
  126.         HideButton();
  127.     }
  128.     if(oBtn.buttonType){
  129.         oBtn.className = oBtn.buttonType + "Up";
  130.         oLastBtn=oBtn;
  131.     }
  132.     else
  133.         oLastBtn = 0;
  134.     
  135.     //used to cancel the WindowsFamilyMenu
  136.     hideMenu();
  137. }
  138.  
  139.  
  140. function DepressButton(){
  141.     window.event.cancelBubble=true;
  142.     oBtn = window.event.srcElement;
  143.     if(oBtn.buttonType){
  144.         oBtn.className = oBtn.buttonType + "Down"; 
  145.     }
  146. }
  147.  
  148.  
  149. function HideButton(){
  150.     oLastBtn.className = oLastBtn.buttonType + "Off";
  151. }
  152.  
  153. function MakeBGBlue(oRegion) {
  154.     oRegion.style.backgroundColor="#99CCFF";    
  155.     oRegion.style.cursor="hand";        
  156. }
  157.  
  158. function MakeBGWhite(oRegion) {
  159.     var oToEl = window.event.toElement;
  160.     if ((oToEl && !oRegion.contains(oToEl))||!oToEl) {
  161.     oRegion.style.backgroundColor="#FFFFFF";    
  162.     }        
  163. }
  164.  
  165. function ToolbarRed() {
  166.     oSrcEl = window.event.srcElement;
  167.     if (oSrcEl.tagName == "IMG") {
  168.         oSrcEl.src = oSrcEl.src.substring(0,(oSrcEl.src.indexOf(".gif"))) + "-red.gif";
  169.         window.event.cancelBubble = true;
  170.     }
  171. }
  172. function ToolbarWhite() {
  173.     oSrcEl = window.event.srcElement
  174.     if (oSrcEl.tagName == "IMG") {
  175.         oSrcEl.src = oSrcEl.src.substring(0,(oSrcEl.src.indexOf("-red.gif"))) + ".gif";
  176.         window.event.cancelBubble = true;
  177.     }
  178. }
  179.  
  180. //*****************************************     
  181. //Global caps function.  Use g_bc in all pages
  182. //to access the browser info
  183. //*****************************************     
  184. function globalCaps(){
  185.     var A=navigator.userAgent, t=true, p="", v="";
  186.     p=A.indexOf("MSIE");
  187.     if (p!=-1){
  188.         this.ie=true;
  189.         v=A.charAt(p+5);
  190.         (v=="2")?this.ie2=true:this.ie2=false;
  191.         (v=="3")?this.ie3=true:this.ie3=false;
  192.         (v=="4")?this.ie4=true:this.ie4=false;
  193.         (v=="5")?this.ie5=true:this.ie5=false;
  194.     } else {
  195.         this.ie=false;
  196.         this.ie2=false;
  197.         this.ie3=false;
  198.         this.ie4=false;
  199.         this.ie5=false;    
  200.     }
  201.     (this.ie4||this.ie5)?this.IE4RelOrNewer=true:this.IE4RelOrNewer=false;
  202.     (A.indexOf("Mozilla") != -1 && A.indexOf("compatible")==-1)?this.nav=true:this.nav=false;
  203.     (A.indexOf("Windows 95")>0||A.indexOf("Win95")!=-1||A.indexOf("Win98")!=-1||A.indexOf("Windows 98")!=-1||A.indexOf("Windows NT")!=-1)?this.win32=true:this.win32=false;
  204.     (A.indexOf("Windows 3.1")!=-1||A.indexOf("Win16")!=-1)?this.win16=true:this.win16=false;
  205.     (A.indexOf("Mac")!=-1)?this.anymac=true:this.anymac=false;
  206.     (A.indexOf("SunOS")!=-1||A.indexOf("HP-UX")!=-1||A.indexOf("X11")!=-1)?this.unix=true:this.unix=false;
  207.     (A.indexOf("Windows CE")!=-1)?this.wince=true:this.wince=false;
  208. }
  209.  
  210. //*****************************************
  211. //Global browser info object
  212. //*****************************************
  213. var gbc=new globalCaps();
  214.  
  215.  
  216. //*****************************************     
  217. //functions to support WinFamilyMenu
  218. //*****************************************     
  219. function HideErrors(){
  220. return true;
  221. }
  222.  
  223. function doMenu() {
  224.     if (document.readyState != "complete") return;
  225.  
  226.         window.event.cancelBubble = true;
  227.         changeHome();
  228.         MenuBorder.style.top = homegif.height + ((hometable.offsetTop + 1) - 5);
  229.         MenuBorder.style.left = hometable.offsetLeft + 1;
  230.         WinHome.className = 'winFamilyMenuItem';
  231.         Win95.className = 'winFamilyMenuItem';
  232.         Win98.className = 'winFamilyMenuItem';
  233.         NTW.className = 'winFamilyMenuItem';
  234.         NTS.className = 'winFamilyMenuItem';
  235.         WinTech.className = 'winFamilyMenuItem';
  236.         MenuBorder.style.display = "block";
  237.         FamilyMenu.style.display = "block";
  238.  
  239. }
  240.  
  241.  
  242. function hideMenu(oItem){
  243.  
  244.     if (document.readyState != "complete") return;
  245.     if (document.readyState == "complete") {
  246.         var L_homegif_Address = '/ntserver/media/nt-hm-btn-up.gif';
  247.         FamilyMenu.style.display = "none";
  248.         MenuBorder.style.display = "none";
  249.         homegif.src = L_homegif_Address;
  250.         window.event.cancelBubble = true;
  251.     }
  252. }
  253.  
  254. function keepMenu(){
  255.     if (document.readyState != "complete") return;
  256.     window.event.cancelBubble = true;
  257. }
  258.  
  259. function doHighlight(oItem){
  260.     if (document.readyState != "complete") return;
  261.     var thisItem = document.all(oItem);    
  262.     thisItem.className = 'highlightItem';
  263.     window.event.cancelBubble = true;
  264. }
  265.  
  266. function doUnHighlight(oItem){
  267.     if (document.readyState != "complete") return;
  268.     var thisItem = document.all(oItem);    
  269.     thisItem.className = 'winFamilyMenuItem';
  270.     window.event.cancelBubble = true;
  271. }
  272.  
  273. function cancelBubble(){
  274.     window.event.cancelBubble = true;
  275. }
  276.  
  277. function doDepress(oItem){
  278.     if (document.readyState != "complete") return;
  279.     var thisItem = document.all(oItem);    
  280.     thisItem.className = 'depressItem';
  281.     window.event.cancelBubble = true;
  282. }
  283.  
  284. function changeHome(){
  285.     if (document.readyState != "complete") return;
  286.     var L_homegif_Address = '/ntserver/media/nt-hm-btn-dwn.gif';
  287.     homegif.src = L_homegif_Address;
  288.     window.event.cancelBubble = true;
  289. }
  290.  
  291. function writeWinFamilyMenu(){
  292.     var r;
  293.     var L_Win95_Address = '/windows95/';
  294.     var L_Win98_Address = '/windows98/';
  295.     var L_NTW_Address = '/ntworkstation/';
  296.     var L_NTS_Address = '/ntserver/';
  297.     var L_WinHome_Address = '/windows/';
  298.     var L_Win2000Server_Address = '/windows/server/';
  299.     var L_Win2000Pro_Address = '/windows/professional/';
  300.     var L_Tech_Address = '/windows/technologies/';
  301.     var L_WinHome_Text = 'Windows Home';
  302.     var L_Win98_Text = 'Windows 98';
  303.     var L_NTW_Text = 'Windows NT Workstation 4.0';
  304.     var L_NTS_Text = 'Windows NT Server 4.0';
  305.     var L_Win95_Text = 'Windows 95';
  306.     var L_Win2000Server_Text = 'Windows 2000 Server';
  307.     var L_Win2000Pro_Text = 'Windows 2000 Professional';
  308.     var L_Tech_Text = 'Windows Technologies';
  309.     
  310.     r="<DIV ID='MenuBorder' onMouseover='keepMenu();' STYLE='width:194;height:149;padding-left:0;padding-top:5;padding-bottom:35;padding-right:0;display:none;position:absolute;'>";
  311.     r+="<DIV ID='FamilyMenu' onMouseover='keepMenu();' STYLE='width:194;display:none;position:absolute;background-color:#0099ff;font-family:verdana'>";
  312.     r+=writeFamilyMenuItem("WinHome", L_WinHome_Address, L_WinHome_Text, true);
  313.     r+=writeFamilyMenuItem("Win98", L_Win98_Address, L_Win98_Text, true);
  314.     r+=writeFamilyMenuItem("NTW", L_NTW_Address, L_NTW_Text, true);
  315.     r+=writeFamilyMenuItem("NTS", L_NTS_Address, L_NTS_Text, true);
  316.     r+=writeFamilyMenuItem("Win95", L_Win95_Address, L_Win95_Text, true);
  317.     r+=writeFamilyMenuItem("Win2000Pro", L_Win2000Pro_Address, L_Win2000Pro_Text, true);
  318.     r+=writeFamilyMenuItem("Win2000Server", L_Win2000Server_Address, L_Win2000Server_Text, true);
  319.     r+=writeFamilyMenuItem("WinTech", L_Tech_Address, L_Tech_Text, false);
  320.     r+="</DIV></DIV>"
  321.     return r;
  322. }
  323.  
  324. function writeFamilyMenuItem(strID, strHREF, strText, bDash){
  325.     var r;
  326.     var L_DashLine_Text = '/ntserver/media/dash-line-blu.gif';
  327.  
  328.     r="<A target=_top HREF='" + strHREF + "'>";
  329.     r+="<DIV CLASS=winFamilyMenuItem ID=" + strID + " onmousedown='doDepress(\"" + strID + "\");' onmouseover='doHighlight(\"" + strID + "\");' onmouseout='doUnHighlight(\"" + strID + "\")'>";
  330.     r+=strText+"</DIV></A>";
  331.  
  332.     if (bDash){
  333.         r+="<img src=" + L_DashLine_Text + " align=center onmouseover='cancelBubble();'><br>";
  334.     }
  335.     return r;
  336. }
  337.  
  338. //*****************************************     
  339. //End of functions to support WinFamilyMenu
  340. //*****************************************     
  341.  
  342.  
  343.