home *** CD-ROM | disk | FTP | other *** search
/ Sybex Virtual Trainer CCNP Switching / Sybex_Virtual_Trainer_CCNP_Switching.iso / data1.cab / Program_Files / media / html / custom.js < prev    next >
Encoding:
Text File  |  2001-04-04  |  9.4 KB  |  266 lines

  1.  
  2. var multiplicity = itemData.length;
  3.  
  4. var itemDataStatus = new Array();
  5. if (multiplicity > 1)
  6. {
  7.     itemDataStatus[0] = new Array();
  8.     for (var rrr=0; rrr < itemData[0].length; rrr++)
  9.     {
  10.         itemDataStatus[0][rrr] = false;
  11.     }
  12.     if (multiplicity > 2)
  13.     {
  14.         itemDataStatus[1] = new Array();
  15.         for (var rrr=0; rrr < itemData[1].length; rrr++)
  16.         {
  17.             itemDataStatus[1][rrr] = new Array();
  18.             for (var rrrr=0; rrrr < itemData[1][rrr].length; rrrr++)
  19.             {
  20.                 itemDataStatus[1][rrr][rrrr] = false;
  21.             }
  22.         }    
  23.     }
  24.     if (multiplicity > 3)
  25.     {
  26.         itemDataStatus[2] = new Array();
  27.         for (var rrr=0; rrr < itemData[2].length; rrr++)
  28.         {
  29.             itemDataStatus[2][rrr] = new Array();
  30.             for (var rrrr=0; rrrr < itemData[2][rrr].length; rrrr++)
  31.             {
  32.                 itemDataStatus[2][rrr][rrrr] = new Array();
  33.                 for (var rrrrr=0; rrrrr < itemData[2][rrr][rrrr].length; rrrrr++)
  34.                 {
  35.                     itemDataStatus[2][rrr][rrrr][rrrrr] = false;
  36.                 }
  37.             }
  38.         }    
  39.     }
  40. }
  41. function selectallpress(stateSelectall)
  42. {
  43.     for (var rrr=0; rrr < itemData[0].length; rrr++)
  44.     {
  45.         itemDataState[0][rrr] = stateSelectall;
  46.         if (itemDataState[1])
  47.         {
  48.             for (var rrrr=0; rrrr < itemData[1][rrr].length; rrrr++)
  49.             {
  50.                 itemDataState[1][rrr][rrrr] = stateSelectall;
  51.                 if (itemDataState[2])
  52.                 {
  53.                     for (var rrrrr=0; rrrrr < itemData[2][rrr][rrrr].length; rrrrr++)
  54.                     {
  55.                         itemDataState[2][rrr][rrrr][rrrrr] = stateSelectall;
  56.                         if (itemDataState[3])
  57.                         {
  58.                             for (var rrrrr=0; rrrrr < itemData[3][rrr][rrrr][rrrrr].length; rrrrr++)
  59.                             {
  60.                                 itemDataState[3][rrr][rrrr][rrrrr][rrrrrr] = stateSelectall;
  61.                             }    
  62.                         }
  63.                     }
  64.                 }
  65.             }
  66.         }
  67.     }
  68.     //recSel(0,itemDataState,stateSelectall)
  69. }
  70. function returnCheck()
  71. {
  72.     var returnCheckText = "";
  73.     for (var rrr=0; rrr < itemDataState[0].length; rrr++)
  74.     {
  75.         if (rrr == (itemDataState[0].length - 1))
  76.         {
  77.             if (itemDataState[0][rrr]) returnCheckText += "1;";
  78.             else returnCheckText += "0;";
  79.         }
  80.         else
  81.         {
  82.             if (itemDataState[0][rrr]) returnCheckText += "1,";
  83.             else returnCheckText += "0,";
  84.         }
  85.     }
  86.     if (itemDataState[1])
  87.     {
  88.         for (var rrr=0; rrr < itemDataState[1].length; rrr++)
  89.         {
  90.             for (var rrrr=0; rrrr < itemDataState[1][rrr].length; rrrr++)
  91.             {
  92.                 if (rrrr == (itemDataState[1][rrr].length - 1) && rrr == (itemDataState[1].length - 1))
  93.                 {
  94.                     if (itemDataState[1][rrr][rrrr]) returnCheckText += "1;";
  95.                     else returnCheckText += "0;";
  96.                 }
  97.                 else
  98.                 {
  99.                     if (itemDataState[1][rrr][rrrr]) returnCheckText += "1,";
  100.                     else returnCheckText += "0,";
  101.                 }
  102.             }
  103.         }
  104.     }
  105.     if (itemDataState[2])
  106.     {
  107.         for (var rrr=0; rrr < itemDataState[2].length; rrr++)
  108.         {
  109.             for (var rrrr=0; rrrr < itemDataState[2][rrr].length; rrrr++)
  110.             {
  111.                 for (var rrrrr=0; rrrrr < itemDataState[2][rrr][rrrr].length; rrrrr++)
  112.                 {
  113.                     if (rrrrr == (itemDataState[2][rrr][rrrr] - 1) && rrrr == (itemDataState[2][rrr].length - 1) && rrr == (itemDataState[2].length - 1))
  114.                     {
  115.                         if (itemDataState[2][rrr][rrrr][rrrrr]) returnCheckText += "1;";
  116.                         else returnCheckText += "0;";
  117.                     }
  118.                     else
  119.                     {
  120.                         if (itemDataState[2][rrr][rrrr][rrrrr]) returnCheckText += "1,";
  121.                         else returnCheckText += "0,";
  122.                     }
  123.                 }
  124.             }
  125.         }
  126.     }
  127.     if (itemDataState[3])
  128.     {
  129.         for (var rrr=0; rrr < itemDataState[3].length; rrr++)
  130.         {
  131.             for (var rrrr=0; rrrr < itemDataState[3][rrr].length; rrrr++)
  132.             {
  133.                 for (var rrrrr=0; rrrrr < itemDataState[3][rrr][rrrr].length; rrrrr++)
  134.                 {
  135.                     for (var rrrrrr=0; rrrrrr < itemDataState[3][rrr][rrrr][rrrrr].length; rrrrrr++)
  136.                     {
  137.                         if (rrrrrr == (itemDataState[3][rrr][rrrr][rrrrr].length - 1) && rrrrr == (itemDataState[3][rrr][rrrr] - 1) && rrrr == (itemDataState[3][rrr].length - 1) && rrr == (itemDataState[3].length - 1))
  138.                         {
  139.                             if (itemDataState[3][rrr][rrrr][rrrrr][rrrrrr]) returnCheckText += "1;";
  140.                             else returnCheckText += "0;";
  141.                         }
  142.                         else
  143.                         {
  144.                             if (itemDataState[3][rrr][rrrr][rrrrr][rrrrrr]) returnCheckText += "1,";
  145.                             else returnCheckText += "0,";
  146.                         }
  147.                     }
  148.                 }
  149.             }
  150.         }
  151.     }
  152.     return returnCheckText.substring(0,returnCheckText.length-1);
  153. }
  154. function recSel(level,submas,stateSelectall)
  155. {
  156.     if(itemDataState[level])
  157.     {
  158.         for (var rrrr=0; rrrr < submas[level].length; rrrr++)
  159.         {
  160.             submas[level][rrrr] = stateSelectall;
  161.             recSel(level+1,submas[level],stateSelectall);
  162.         }
  163.     }
  164. }
  165. var tableWidth = 500;
  166. var shiftWidth = 20;
  167. var shablonText = "<TD CLASS=text WIDTH="+shiftWidth+" HEIGHT="+shiftWidth+"> </TD>";
  168. var scrollValue = 0;
  169. function onSubmitFunktion(f)
  170. {return false;}
  171. function printFunction()
  172. {
  173.     //self.frames[1].document.write("HI");
  174.     if (document.all) scrollValue = self.frames[1].document.body.scrollTop;
  175.     //alert(scrollValue);
  176.     var items = -1;
  177.     var middleText1 = "<HTML><HEAD><link rel='STYLESHEET' type='text/css' href='"+stuleSRC+"'></HEAD><BODY leftmargin=0 topmargin=0 marginwidth=0 marginheight=0 bgcolor='#FFFFFF'><TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0 ALIGN=CENTER WIDTH='+tableWidth+'><FORM onSubmit='parent.onSubmitFunktion(this);'>";
  178.     //alert(111);
  179.     middleText2="";
  180.     for (var iii=0; iii < itemData[0].length; iii++)
  181.     {
  182.         items++;
  183.         if (multiplicity > 1) folderStatus = true;
  184.         else folderStatus = false;
  185.         middleText2 += printItemFunction(folderStatus, 0, itemData[0][iii], itemDataState[0][iii], -1, -1, "[0]["+iii+"]", "[1]["+iii+"]", items);
  186.         if (itemDataStatus.length!=0)
  187.         {
  188.         if (itemDataStatus[0][iii])
  189.         {
  190.             for (var iiii=0; iiii < itemData[1][iii].length; iiii++)
  191.             {
  192.                 items++;
  193.                 if (multiplicity > 2) folderStatus = true;
  194.                 else folderStatus = false;
  195.                 middleText2 += printItemFunction(folderStatus, 1, itemData[1][iii][iiii], itemDataState[1][iii][iiii], "[0]["+iii+"]","[1]["+iii+"]", "[1]["+iii+"]["+iiii+"]","[2]["+iii+"]["+iiii+"]", items);
  196.                 /*if (itemDataStatus[1][iii][iiii])
  197.                 {
  198.                     for (var iiiii=0; iiiii < itemData[2][iii][iiii].length; iiiii++)
  199.                     {
  200.                         items++;
  201.                         if (multiplicity > 3) folderStatus = true;
  202.                         else folderStatus = false;
  203.                         middleText += printItemFunction(folderStatus, 2, itemData[2][iii][iiii][iiiii], itemDataState[2][iii][iiii][iiiii], '[2]['+iii+']['+iiii+']['+iiiii+']','[3]['+iii+']['+iiii+']['+iiiii+']', items);
  204.                     }
  205.                 }*/
  206.             }
  207.         }
  208.         }
  209.     }
  210.     middleText3 = "</FORM></TABLE></BODY></HTML>";
  211.     self.frames[1].document.open();
  212.     self.frames[1].document.writeln(middleText1);
  213.     self.frames[1].document.writeln(middleText2);
  214.     self.frames[1].document.writeln(middleText3);
  215.     self.frames[1].document.close();
  216.     //self.frames[1].location.reload();
  217.     self.frames[1].scrollBy(0, scrollValue);
  218. }
  219. function printItemFunction(folderStatus, levelItem, textItem, chackedItem, indexPrevItem1, indexPrevItem, indexCurrentItem, indexNextItem, items)
  220. {
  221.     var prevText = "";
  222.     if (chackedItem) chackedItemText = " CHECKED";
  223.     else chackedItemText = "";
  224.     for (var kkk = 0; kkk < levelItem; kkk++)
  225.     {
  226.         prevText += shablonText;
  227.     }
  228.     //alert(prevText);
  229.     if (folderStatus)
  230.         return "<TR>"+prevText+"<TD CLASS=text WIDTH="+shiftWidth+" HEIGHT="+shiftWidth+"><INPUT TYPE=CHECKBOX VALUE='' onClick='if (parent.itemDataState"+indexCurrentItem+") parent.itemDataState"+indexCurrentItem+"=false; else parent.itemDataState"+indexCurrentItem+"=true; parent.checkChildren(\""+indexCurrentItem+"\", \""+indexNextItem+"\", "+items+",parent.itemDataState"+indexNextItem+".length, this.checked);' "+chackedItemText+"></TD><TD COLSPAN=2 CLASS=text WIDTH="+(tableWidth - shiftWidth - shiftWidth * levelItem)+" HEIGHT="+shiftWidth+"><A HREF='javascript:if (parent.ns) parent.scrollValue = self.pageYOffset; if (parent.itemDataStatus"+indexCurrentItem+") parent.itemDataStatus"+indexCurrentItem+"=false; else parent.itemDataStatus"+indexCurrentItem+"=true; parent.printFunction();' CLASS=linkez><FONT COLOR=Black><B>" + textItem + "</B></FONT></A></TD></TR>";
  231.     else
  232.         return "<TR>"+prevText+"<TD WIDTH="+shiftWidth+" HEIGHT="+shiftWidth+"><INPUT TYPE=CHECKBOX VALUE='' onClick='parent.clickChildren(\""+indexPrevItem1+"\", \""+indexCurrentItem+"\", \""+indexPrevItem+"\", "+items+", parent.itemDataState"+indexCurrentItem+".length, "+levelItem+", this.checked); if (parent.itemDataState"+indexCurrentItem+") parent.itemDataState"+indexCurrentItem+"=false; else parent.itemDataState"+indexCurrentItem+"=true;' "+chackedItemText+"></TD><TD CLASS=text WIDTH="+(tableWidth - shiftWidth - shiftWidth * levelItem)+" HEIGHT="+shiftWidth+">" + textItem + "</TD></TR>";
  233. }
  234.  
  235. function checkChildren(data1,data2,numThis,numChild, thisStatus)
  236. {
  237.     if (eval("itemDataStatus"+data1))
  238.     {
  239.         for (var www = numThis+1; www <= numThis+numChild; www++)
  240.         {
  241.             self.frames[1].document.forms[0].elements[www].checked=thisStatus;
  242.         }
  243.     }
  244.     for (var www = 0; www < eval("itemDataState"+data2+".length"); www++)
  245.     {
  246.         eval("itemDataState"+data2+"["+www+"] = "+thisStatus);
  247.     }
  248. }
  249. function clickChildren(data0,data1,data2,numThis,numChild,levelItem, thisStatus)
  250. {
  251.     //alert(1);
  252.     if (levelItem!=0)
  253.     {
  254.         var foldersItemsStatus = thisStatus;
  255.         for (var www = 0; www < eval("itemDataState"+data2+".length"); www++)
  256.         {
  257.             if (eval("itemDataState"+data2+"["+www+"]") != thisStatus) {foldersItemsStatus = eval("itemDataState"+data2+"["+www+"]"); break;}
  258.         }
  259.         if (foldersItemsStatus == thisStatus || (thisStatus == true && eval("itemDataState"+data0) == false))
  260.         {
  261.             self.frames[1].document.forms[0].elements[numThis - 1 - data1.substring(data1.lastIndexOf("[")+1,data1.lastIndexOf("]"))].checked = thisStatus;
  262.             eval("itemDataState"+data0+" = "+thisStatus);
  263.         }
  264.     }
  265. }
  266.