stephaniesb
asked on
HTML code that enforces authentication
I want to download (for offline browsing) a GUI configuration. Â IE is used to view the config. Â If I save the page and view it offline, the html code reflects the page that makes me authenticate. Â I would like to take out the code that tells it to force authentication. Â
Here's the html code from a page:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
      <META HTTP-EQUIV="Expires" CONTENT="-1">
      <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
      <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
      <meta name="SonicWALL Administrator" content="Copyright 2003 (c) SonicWALL, Inc. All rights reserved.">
      <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
      <script type="text/javascript" src="utilityFunctions.js"> </script>
      <script type="text/javascript" src="netObj.js"></script>
      <script type="text/javascript" src="netAddrObj.js"></scri pt>
      <script type="text/javascript" src="serviceObj.js"></scri pt>
      <script type="text/javascript" src="schedObj.js"></script >
      <script type="text/javascript" src="popups.js"></script>
      <script type="text/javascript" src="wizards.js"></script>
      <script type="text/javascript" src="ruleTbl.js"></script>
      <script type="text/javascript" src="zoneObj.js"></script>
      <script type="text/javascript" src="cookies.js"></script>
      <script type="text/JavaScript">
      <!--
      var bGroupRule = false;
      var strGroupTitle1;
      var strGroupTitle2;
      var toZone = "WAN";
      var fromZone = "LAN";
      var srcZoneHandle = 1;
      var dstZoneHandle = 2;
      var pageStartItem = 0;
var tableSortCol = 3;
var tableSortInverted = 0;
var pageSize = 50;
var tableSize = 1;
      var zoneObjArray = new Array(6);
zoneObjArray[0] = new zoneObj("LAN", '18205','1', '1', '1', '0', '0', 1, '1', 'X0');
zoneObjArray[1] = new zoneObj("WAN", '18205','0', '0', '0', '0', '0', 1, '1', 'X1');
zoneObjArray[2] = new zoneObj("DMZ", '18189','1', '2', '1', '0', '0', 0, '0', 'N/A');
zoneObjArray[3] = new zoneObj("VPN", '26397','0', '5', '0', '0', '0', 0, '1', 'N/A');
zoneObjArray[4] = new zoneObj("MULTICAST", '26397','0', '6', '0', '0', '0', 0, '0', 'N/A');
zoneObjArray[5] = new zoneObj("WLAN", '18205','0', '4', '0', '0', '0', 0, '0', 'N/A');
zoneObjArray[5].wlan = new wlanZoneCfg(1,1,'SonicPoin t',1,1);
zoneObjArray[5].guestServi ces = new guestServicesCfg(0,0,0,10, 0);
zoneObjArray[5].guestServi ces.smtpRe direct = new gsSmtpRedirectCfg(0,'');
zoneObjArray[5].guestServi ces.custom AuthPage = new gsCustomAuthPageCfg(0,0,'' ,0,'');
zoneObjArray[5].guestServi ces.postAu thPage = new gsPostAuthPageCfg(0,'');
zoneObjArray[5].guestServi ces.deny = new gsDenyCfg(0,'');
zoneObjArray[5].guestServi ces.pass = new gsPassCfg(0,'');
zoneObjArray[5].guestServi ces.bypass = new gsBypassAuthCfg(0,'');
      var serviceObjArray = new Array(138);
serviceObjArray[0] = new serviceObj('BearShare',1,3 101,6,6346 ,6349,0);
serviceObjArray[1] = new serviceObj('Citrix',2,3101 ,0,0,0,0);
serviceObjArray[1].childre n[0] = 'Citrix TCP';
serviceObjArray[1].childre n[1] = 'Citrix UDP';
serviceObjArray[2] = new serviceObj('Citrix TCP',1,3101,6,1494,1494,0) ;
serviceObjArray[3] = new serviceObj('Citrix UDP',1,3101,17,1604,1604,0 );
serviceObjArray[4] = new serviceObj('DNS (Name Service)',2,3101,0,0,0,0);
serviceObjArray[4].childre n[0] = 'DNS (Name Service) TCP';
serviceObjArray[4].childre n[1] = 'DNS (Name Service) UDP';
serviceObjArray[5] = new serviceObj('DNS (Name Service) TCP',1,3101,6,53,53,0);
serviceObjArray[6] = new serviceObj('DNS (Name Service) UDP',1,3101,17,53,53,0);
serviceObjArray[7] = new serviceObj('Destination Unreachable',1,3101,1,3,3, 0);
serviceObjArray[8] = new serviceObj('Direct Connect',1,3101,6,411,412, 0);
serviceObjArray[9] = new serviceObj('ESP (IPSec)',1,3101,50,0,0,0);
serviceObjArray[10] = new serviceObj('Echo',1,3101,1 ,8,8,0);
serviceObjArray[11] = new serviceObj('Echo Reply',1,3101,1,0,0,0);
serviceObjArray[12] = new serviceObj('Edonkey',2,310 1,0,0,0,0) ;
serviceObjArray[12].childr en[0] = 'Edonkey TCP';
serviceObjArray[12].childr en[1] = 'Edonkey UDP';
serviceObjArray[13] = new serviceObj('Edonkey TCP',1,3101,6,4661,4662,0) ;
serviceObjArray[14] = new serviceObj('Edonkey UDP',1,3101,17,4665,4665,0 );
serviceObjArray[15] = new serviceObj('Enhanced TV',1,3101,6,9000,9000,0);
serviceObjArray[16] = new serviceObj('FTP',2,3101,0, 0,0,0);
serviceObjArray[16].childr en[0] = 'FTP Data';
serviceObjArray[16].childr en[1] = 'FTP Control';
serviceObjArray[17] = new serviceObj('FTP Control',1,3101,6,21,21,0) ;
serviceObjArray[18] = new serviceObj('FTP Data',1,3101,6,20,20,0);
serviceObjArray[19] = new serviceObj('Filemaker',2,3 101,0,0,0, 0);
serviceObjArray[19].childr en[0] = 'Filemaker TCP';
serviceObjArray[19].childr en[1] = 'Filemaker UDP';
serviceObjArray[20] = new serviceObj('Filemaker TCP',1,3101,6,5003,5003,0) ;
serviceObjArray[21] = new serviceObj('Filemaker UDP',1,3101,17,5003,5003,0 );
serviceObjArray[22] = new serviceObj('GMS HTTPS',1,3101,6,3003,3003, 0);
serviceObjArray[23] = new serviceObj('Gopher',1,3101 ,6,70,70,0 );
serviceObjArray[24] = new serviceObj('H323 Call Signaling',1,3101,6,1720,1 720,0);
serviceObjArray[25] = new serviceObj('H323 Gatekeeper Discovery',1,3101,17,1718, 1718,0);
serviceObjArray[26] = new serviceObj('H323 Gatekeeper RAS',1,3101,17,1719,1719,0 );
serviceObjArray[27] = new serviceObj('HTTP',1,3613,6 ,80,80,1);
serviceObjArray[28] = new serviceObj('HTTP Management',1,3613,6,80,80 ,1);
serviceObjArray[29] = new serviceObj('HTTPS',1,3613, 6,443,443, 1);
serviceObjArray[30] = new serviceObj('HTTPS Management',1,3613,6,443,4 43,1);
serviceObjArray[31] = new serviceObj('ICMP',2,3101,0 ,0,0,0);
serviceObjArray[31].childr en[0] = 'Echo Reply';
serviceObjArray[31].childr en[1] = 'Destination Unreachable';
serviceObjArray[31].childr en[2] = 'Source Quench';
serviceObjArray[31].childr en[3] = 'Redirect';
serviceObjArray[31].childr en[4] = 'Echo';
serviceObjArray[31].childr en[5] = 'Router Advertisement';
serviceObjArray[31].childr en[6] = 'Router Solicitation';
serviceObjArray[31].childr en[7] = 'Time Exceeded';
serviceObjArray[32] = new serviceObj('IDENT',1,3101, 6,113,113, 0);
serviceObjArray[33] = new serviceObj('IGMP',2,3101,0 ,0,0,0);
serviceObjArray[33].childr en[0] = 'Membership Query';
serviceObjArray[33].childr en[1] = 'V2 Membership Report';
serviceObjArray[33].childr en[2] = 'Leave Group';
serviceObjArray[33].childr en[3] = 'V3 Membership Report';
serviceObjArray[34] = new serviceObj('IKE',2,3101,0, 0,0,0);
serviceObjArray[34].childr en[0] = 'IKE (Key Exchange)';
serviceObjArray[34].childr en[1] = 'IKE (Traversal)';
serviceObjArray[35] = new serviceObj('IKE (Key Exchange)',1,3101,17,500,5 00,0);
serviceObjArray[36] = new serviceObj('IKE (Traversal)',1,3101,17,450 0,4500,0);
serviceObjArray[37] = new serviceObj('IMAP3',1,3101, 6,220,220, 0);
serviceObjArray[38] = new serviceObj('IMAP4',1,3101, 6,143,143, 0);
serviceObjArray[39] = new serviceObj('IRC (Chat)',2,3101,0,0,0,0);
serviceObjArray[39].childr en[0] = 'IRC (Chat) 194';
serviceObjArray[39].childr en[1] = 'IRC (Chat) 6666-6670';
serviceObjArray[39].childr en[2] = 'IRC (Chat) 7000';
serviceObjArray[40] = new serviceObj('IRC (Chat) 194',1,3101,6,194,194,0);
serviceObjArray[41] = new serviceObj('IRC (Chat) 6666-6670',1,3101,6,6666,6 670,0);
serviceObjArray[42] = new serviceObj('IRC (Chat) 7000',1,3101,6,7000,7000,0 );
serviceObjArray[43] = new serviceObj('ISAKMP',1,3101 ,17,500,50 0,0);
serviceObjArray[44] = new serviceObj('Idle HF',2,3101,0,0,0,0);
serviceObjArray[44].childr en[0] = 'HTTP';
serviceObjArray[44].childr en[1] = 'HTTPS';
serviceObjArray[44].childr en[2] = 'NTP';
serviceObjArray[44].childr en[3] = 'DNS (Name Service) TCP';
serviceObjArray[44].childr en[4] = 'DNS (Name Service) UDP';
serviceObjArray[44].childr en[5] = 'Echo Reply';
serviceObjArray[44].childr en[6] = 'Destination Unreachable';
serviceObjArray[44].childr en[7] = 'Source Quench';
serviceObjArray[44].childr en[8] = 'Redirect';
serviceObjArray[44].childr en[9] = 'Echo';
serviceObjArray[44].childr en[10] = 'Router Advertisement';
serviceObjArray[44].childr en[11] = 'Router Solicitation';
serviceObjArray[44].childr en[12] = 'Time Exceeded';
serviceObjArray[45] = new serviceObj('Kazaa / FastTrack',1,3101,6,1214,1 214,0);
serviceObjArray[46] = new serviceObj('Kerberos',2,31 01,0,0,0,0 );
serviceObjArray[46].childr en[0] = 'Kerberos TCP';
serviceObjArray[46].childr en[1] = 'Kerberos UDP';
serviceObjArray[47] = new serviceObj('Kerberos TCP',1,3101,6,88,88,0);
serviceObjArray[48] = new serviceObj('Kerberos UDP',1,3101,17,88,88,0);
serviceObjArray[49] = new serviceObj('LDAP',1,3101,6 ,389,389,0 );
serviceObjArray[50] = new serviceObj('LPR (Unix Printer)',1,3101,6,515,515 ,0);
serviceObjArray[51] = new serviceObj('Leave Group',1,3101,2,23,23,0);
serviceObjArray[52] = new serviceObj('Lotus Notes',1,3101,6,1352,1352, 0);
serviceObjArray[53] = new serviceObj('MGCP TCP',1,3101,6,2428,2428,0) ;
serviceObjArray[54] = new serviceObj('MGCP UDP',1,3101,17,2427,2427,0 );
serviceObjArray[55] = new serviceObj('MMS',2,3101,0, 0,0,0);
serviceObjArray[55].childr en[0] = 'MMS TCP';
serviceObjArray[55].childr en[1] = 'MMS UDP';
serviceObjArray[56] = new serviceObj('MMS TCP',1,3101,6,1755,1755,0) ;
serviceObjArray[57] = new serviceObj('MMS UDP',1,3101,17,1755,1755,0 );
serviceObjArray[58] = new serviceObj('MS SQL',1,3101,6,1433,1433,0) ;
serviceObjArray[59] = new serviceObj('MSN',2,3101,0, 0,0,0);
serviceObjArray[59].childr en[0] = 'MSN TCP';
serviceObjArray[59].childr en[1] = 'MSN UDP';
serviceObjArray[60] = new serviceObj('MSN TCP',1,3101,6,1863,1863,0) ;
serviceObjArray[61] = new serviceObj('MSN UDP',1,3101,17,1863,1863,0 );
serviceObjArray[62] = new serviceObj('Membership Query',1,3101,2,17,17,0);
serviceObjArray[63] = new serviceObj('Multicast RTP',2,3101,0,0,0,0);
serviceObjArray[64] = new serviceObj('NFS',2,3101,0, 0,0,0);
serviceObjArray[64].childr en[0] = 'NFS TCP';
serviceObjArray[64].childr en[1] = 'NFS UDP';
serviceObjArray[65] = new serviceObj('NFS TCP',1,3101,6,2049,2049,0) ;
serviceObjArray[66] = new serviceObj('NFS UDP',1,3101,17,2049,2049,0 );
serviceObjArray[67] = new serviceObj('NNTP (News)',1,3101,6,119,119,0 );
serviceObjArray[68] = new serviceObj('NTP',1,3101,17 ,123,123,0 );
serviceObjArray[69] = new serviceObj('NetBios',2,310 1,0,0,0,0) ;
serviceObjArray[69].childr en[0] = 'NetBios NS TCP';
serviceObjArray[69].childr en[1] = 'NetBios NS UDP';
serviceObjArray[69].childr en[2] = 'NetBios DGM TCP';
serviceObjArray[69].childr en[3] = 'NetBios DGM UDP';
serviceObjArray[69].childr en[4] = 'NetBios SSN TCP';
serviceObjArray[69].childr en[5] = 'NetBios SSN UDP';
serviceObjArray[69].childr en[6] = 'SMB';
serviceObjArray[70] = new serviceObj('NetBios DGM TCP',1,3101,6,138,138,0);
serviceObjArray[71] = new serviceObj('NetBios DGM UDP',1,3101,17,138,138,0);
serviceObjArray[72] = new serviceObj('NetBios NS TCP',1,3101,6,137,137,0);
serviceObjArray[73] = new serviceObj('NetBios NS UDP',1,3101,17,137,137,0);
serviceObjArray[74] = new serviceObj('NetBios SSN TCP',1,3101,6,139,139,0);
serviceObjArray[75] = new serviceObj('NetBios SSN UDP',1,3101,17,139,139,0);
serviceObjArray[76] = new serviceObj('P2P Services',2,3101,0,0,0,0);
serviceObjArray[76].childr en[0] = 'Edonkey';
serviceObjArray[76].childr en[1] = 'WinMX';
serviceObjArray[76].childr en[2] = 'Kazaa / FastTrack';
serviceObjArray[76].childr en[3] = 'iMesh';
serviceObjArray[76].childr en[4] = 'Direct Connect';
serviceObjArray[76].childr en[5] = 'BearShare';
serviceObjArray[77] = new serviceObj('PC Anywhere',2,3101,0,0,0,0);
serviceObjArray[77].childr en[0] = 'PC Anywhere TCP';
serviceObjArray[77].childr en[1] = 'PC Anywhere UDP';
serviceObjArray[78] = new serviceObj('PC Anywhere TCP',1,3101,6,5631,5631,0) ;
serviceObjArray[79] = new serviceObj('PC Anywhere UDP',1,3101,17,5632,5632,0 );
serviceObjArray[80] = new serviceObj('PNA',1,3101,6, 7070,7070, 0);
serviceObjArray[81] = new serviceObj('POP3 (Retrieve E-Mail)',1,3101,6,110,110, 0);
serviceObjArray[82] = new serviceObj('PPTP',1,3101,6 ,1723,1723 ,0);
serviceObjArray[83] = new serviceObj('Ping',2,3101,0 ,0,0,0);
serviceObjArray[83].childr en[0] = 'Ping 0';
serviceObjArray[83].childr en[1] = 'Ping 8';
serviceObjArray[84] = new serviceObj('Ping 0',1,3101,1,0,0,0);
serviceObjArray[85] = new serviceObj('Ping 8',1,3101,1,8,8,0);
serviceObjArray[86] = new serviceObj('Quake',1,3101, 17,27910,2 7910,0);
serviceObjArray[87] = new serviceObj('RTSP',2,3101,0 ,0,0,0);
serviceObjArray[87].childr en[0] = 'RTSP TCP';
serviceObjArray[87].childr en[1] = 'RTSP UDP';
serviceObjArray[88] = new serviceObj('RTSP TCP',1,3101,6,554,554,0);
serviceObjArray[89] = new serviceObj('RTSP UDP',1,3101,17,554,554,0);
serviceObjArray[90] = new serviceObj('Radius',1,3101 ,17,1812,1 812,0);
serviceObjArray[91] = new serviceObj('Redirect',1,31 01,1,5,5,0 );
serviceObjArray[92] = new serviceObj('Remotely Anywhere',1,3101,6,2000,20 00,0);
serviceObjArray[93] = new serviceObj('Remotely Possible',1,3101,6,799,799 ,0);
serviceObjArray[94] = new serviceObj('Router Advertisement',1,3101,1,9, 9,0);
serviceObjArray[95] = new serviceObj('Router Solicitation',1,3101,1,10, 10,0);
serviceObjArray[96] = new serviceObj('SIP',1,3101,17 ,5060,5061 ,0);
serviceObjArray[97] = new serviceObj('SMB',1,3101,6, 445,445,0) ;
serviceObjArray[98] = new serviceObj('SMTP (Send E-Mail)',1,3101,6,25,25,0) ;
serviceObjArray[99] = new serviceObj('SNMP',1,3101,1 7,161,162, 0);
serviceObjArray[100] = new serviceObj('SQL*Net ',1,3101,6,1521,1521,0);
serviceObjArray[101] = new serviceObj('SSH',1,3101,6, 22,22,0);
serviceObjArray[102] = new serviceObj('Skinny',1,3101 ,6,2000,20 00,0);
serviceObjArray[103] = new serviceObj('Source Quench',1,3101,1,4,4,0);
serviceObjArray[104] = new serviceObj('Squid',1,3101, 6,3128,312 8,0);
serviceObjArray[105] = new serviceObj('Streaming media',2,3101,0,0,0,0);
serviceObjArray[105].child ren[0] = 'RTSP';
serviceObjArray[105].child ren[1] = 'PNA';
serviceObjArray[105].child ren[2] = 'MMS';
serviceObjArray[105].child ren[3] = 'MSN';
serviceObjArray[106] = new serviceObj('Syslog',2,3101 ,0,0,0,0);
serviceObjArray[106].child ren[0] = 'Syslog TCP';
serviceObjArray[106].child ren[1] = 'Syslog UDP';
serviceObjArray[107] = new serviceObj('Syslog TCP',1,3101,6,514,514,0);
serviceObjArray[108] = new serviceObj('Syslog UDP',1,3101,17,514,514,0);
serviceObjArray[109] = new serviceObj('T120 (Whiteboard+A43)',1,3101,6 ,1503,1503 ,0);
serviceObjArray[110] = new serviceObj('TFTP',1,3101,1 7,69,69,0) ;
serviceObjArray[111] = new serviceObj('Telnet',1,3101 ,6,23,23,0 );
serviceObjArray[112] = new serviceObj('Terminal Services',2,3101,0,0,0,0);
serviceObjArray[112].child ren[0] = 'Terminal Services TCP';
serviceObjArray[112].child ren[1] = 'Terminal Services UDP';
serviceObjArray[113] = new serviceObj('Terminal Services TCP',1,3101,6,3389,3389,0) ;
serviceObjArray[114] = new serviceObj('Terminal Services UDP',1,3101,17,3389,3389,0 );
serviceObjArray[115] = new serviceObj('Timbuktu',2,31 01,0,0,0,0 );
serviceObjArray[115].child ren[0] = 'Timbuktu TCP 407';
serviceObjArray[115].child ren[1] = 'Timbuktu UDP 407';
serviceObjArray[115].child ren[2] = 'Timbuktu TCP 1417-1420';
serviceObjArray[115].child ren[3] = 'Timbuktu UDP 1419';
serviceObjArray[116] = new serviceObj('Timbuktu TCP 1417-1420',1,3101,6,1417,1 420,0);
serviceObjArray[117] = new serviceObj('Timbuktu TCP 407',1,3101,6,407,407,0);
serviceObjArray[118] = new serviceObj('Timbuktu UDP 1419',1,3101,17,1419,1419, 0);
serviceObjArray[119] = new serviceObj('Timbuktu UDP 407',1,3101,17,407,407,0);
serviceObjArray[120] = new serviceObj('Time Exceeded',1,3101,1,11,11,0 );
serviceObjArray[121] = new serviceObj('V2 Membership Report',1,3101,2,22,22,0);
serviceObjArray[122] = new serviceObj('V3 Membership Report',1,3101,2,34,34,0);
serviceObjArray[123] = new serviceObj('VNC',2,3101,0, 0,0,0);
serviceObjArray[123].child ren[0] = 'VNC 5500';
serviceObjArray[123].child ren[1] = 'VNC 5800';
serviceObjArray[123].child ren[2] = 'VNC 5900';
serviceObjArray[124] = new serviceObj('VNC 5500',1,3101,6,5500,5500,0 );
serviceObjArray[125] = new serviceObj('VNC 5800',1,3101,6,5800,5800,0 );
serviceObjArray[126] = new serviceObj('VNC 5900',1,3101,6,5900,5900,0 );
serviceObjArray[127] = new serviceObj('VOIP',2,3101,0 ,0,0,0);
serviceObjArray[127].child ren[0] = 'H323 Call Signaling';
serviceObjArray[127].child ren[1] = 'H323 Gatekeeper Discovery';
serviceObjArray[127].child ren[2] = 'H323 Gatekeeper RAS';
serviceObjArray[127].child ren[3] = 'MGCP TCP';
serviceObjArray[127].child ren[4] = 'MGCP UDP';
serviceObjArray[127].child ren[5] = 'SIP';
serviceObjArray[127].child ren[6] = 'Skinny';
serviceObjArray[127].child ren[7] = 'T120 (Whiteboard+A43)';
serviceObjArray[128] = new serviceObj('WinMX',2,3101, 0,0,0,0);
serviceObjArray[128].child ren[0] = 'WinMX TCP 6699';
serviceObjArray[128].child ren[1] = 'WinMX TCP 7729-7735';
serviceObjArray[128].child ren[2] = 'WinMX UDP 6257';
serviceObjArray[129] = new serviceObj('WinMX TCP 6699',1,3101,6,6699,6699,0 );
serviceObjArray[130] = new serviceObj('WinMX TCP 7729-7735',1,3101,6,7729,7 735,0);
serviceObjArray[131] = new serviceObj('WinMX UDP 6257',1,3101,17,6257,6257, 0);
serviceObjArray[132] = new serviceObj('Yahoo Messenger',2,3101,0,0,0,0) ;
serviceObjArray[132].child ren[0] = 'Yahoo Messenger TCP';
serviceObjArray[132].child ren[1] = 'Yahoo Messenger UDP';
serviceObjArray[133] = new serviceObj('Yahoo Messenger TCP',1,3101,6,5050,5050,0) ;
serviceObjArray[134] = new serviceObj('Yahoo Messenger UDP',1,3101,17,5050,5050,0 );
serviceObjArray[135] = new serviceObj('ZebTelnet',1,3 101,6,2601 ,2620,0);
serviceObjArray[136] = new serviceObj('cu-seeme',1,31 01,17,2403 2,24032,0) ;
serviceObjArray[137] = new serviceObj('iMesh',1,3101, 6,4000,500 0,0);
      var addrObjArray = new Array();
addrObjArray[0] = new addrObj('All Authorized Access Points','8','','29','0.0.0 .0', '0.0.0.0', '');
addrObjArray[0].children[0 ] = 'All SonicPoints';
addrObjArray[1] = new addrObj('All HF X0 IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[1].children[0 ] = 'HF Primary X0 IP';
addrObjArray[1].children[1 ] = 'HF Backup X0 IP';
addrObjArray[2] = new addrObj('All HF X1 IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[2].children[0 ] = 'HF Primary X1 IP';
addrObjArray[2].children[1 ] = 'HF Backup X1 IP';
addrObjArray[3] = new addrObj('All Interface IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[3].children[0 ] = 'LAN Primary IP';
addrObjArray[3].children[1 ] = 'WAN Primary IP';
addrObjArray[3].children[2 ] = 'X2 IP';
addrObjArray[3].children[3 ] = 'X3 IP';
addrObjArray[4] = new addrObj('All SonicPoints','8','','793', '0.0.0.0', '0.0.0.0', '');
addrObjArray[5] = new addrObj('All WAN IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[5].children[0 ] = 'WAN Primary IP';
addrObjArray[6] = new addrObj('All X0 Management IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[6].children[0 ] = 'LAN Primary IP';
addrObjArray[6].children[1 ] = 'HF Primary X0 IP';
addrObjArray[6].children[2 ] = 'HF Backup X0 IP';
addrObjArray[7] = new addrObj('All X1 Management IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[7].children[0 ] = 'WAN Primary IP';
addrObjArray[7].children[1 ] = 'HF Primary X1 IP';
addrObjArray[7].children[2 ] = 'HF Backup X1 IP';
addrObjArray[8] = new addrObj('DMZ Interface IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[9] = new addrObj('DMZ Subnets','8','','793','0.0 .0.0', '0.0.0.0', '');
addrObjArray[10] = new addrObj('Firewalled Subnets','8','','793','0.0 .0.0', '0.0.0.0', '');
addrObjArray[10].children[ 0] = 'LAN Subnets';
addrObjArray[10].children[ 1] = 'DMZ Subnets';
addrObjArray[10].children[ 2] = 'WLAN Subnets';
addrObjArray[11] = new addrObj('LAN Interface IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[11].children[ 0] = 'LAN Primary IP';
addrObjArray[12] = new addrObj('LAN Subnets','8','','793','0.0 .0.0', '0.0.0.0', '');
addrObjArray[12].children[ 0] = 'LAN Primary Subnet';
addrObjArray[13] = new addrObj('WAN Interface IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[13].children[ 0] = 'WAN Primary IP';
addrObjArray[14] = new addrObj('WAN Subnets','8','','793','0.0 .0.0', '0.0.0.0', '');
addrObjArray[14].children[ 0] = 'WAN Primary Subnet';
addrObjArray[15] = new addrObj('WLAN Interface IP','8','','793','0.0.0.0' , '0.0.0.0', '');
addrObjArray[16] = new addrObj('WLAN Subnets','8','','793','0.0 .0.0', '0.0.0.0', '');
addrObjArray[17] = new addrObj('Default Gateway','1','WAN','793',' 8.1.1.1', '255.255.255.255', '');
addrObjArray[18] = new addrObj('HF Backup X0 IP','1','LAN','793','192.1 68.168.4', '255.255.255.255', '');
addrObjArray[19] = new addrObj('HF Backup X1 IP','1','WAN','793','8.1.1 .4', '255.255.255.255', '');
addrObjArray[20] = new addrObj('HF Primary X0 IP','1','LAN','793','192.1 68.168.3', '255.255.255.255', '');
addrObjArray[21] = new addrObj('HF Primary X1 IP','1','WAN','793','8.1.1 .3', '255.255.255.255', '');
addrObjArray[22] = new addrObj('LAN Primary IP','1','LAN','793','192.1 68.168.1', '255.255.255.255', '');
addrObjArray[23] = new addrObj('LAN Primary Subnet','4','LAN','793','1 92.168.168 .0', '255.255.255.0', '');
addrObjArray[24] = new addrObj('Secondary Default Gateway','1','','793','0.0 .0.0', '255.255.255.255', '');
addrObjArray[25] = new addrObj('WAN Primary IP','1','WAN','793','8.1.1 .2', '255.255.255.255', '');
addrObjArray[26] = new addrObj('WAN Primary Subnet','4','WAN','793','8 .1.1.0', '255.255.255.0', '');
addrObjArray[27] = new addrObj('X2 IP','1','','793','0.0.0.0' , '255.255.255.255', '');
addrObjArray[28] = new addrObj('X2 Subnet','4','','793','0.0. 0.0', '255.255.255.0', '');
addrObjArray[29] = new addrObj('X3 IP','1','','793','0.0.0.0' , '255.255.255.255', '');
addrObjArray[30] = new addrObj('X3 Subnet','4','','793','0.0. 0.0', '255.255.255.0', '');
      function displayHelp() {
           showHelp('ruletable');
      }
      function shouldUseWizard(page) {
           var entryType;
           if ("" == "checked") {
                 entryType = 'wizard';
           } else {
                 entryType = 'dialog';
           }
           openPage(entryType, page);
      }
      function addGenericRule(){
           bGroupRule = false;
           shouldUseWizard('addRuleDl g.html');
      }
      function addGroupRule(groupTitle1, groupTitle2){
           bGroupRule = true;
           strGroupTitle1 = groupTitle1;
           strGroupTitle2 = groupTitle2;
           shouldUseWizard('addRuleDl g.html?obj Types='+(A DDROAT_ALL &~ADDROAT_ MAC));
      }
      var ruleArray = new Array();
ruleArray.push(new ruleElem('2','1','','','', '','5','1' ,'0','','' ,'1','1',' 0','0.000' ,'0.000',' 0','0','0. 000','0.00 0','0','0' ,'0','0', 'LAN', 'WAN'));
      function addRuleCgiToForm(index, rule) {
           var form = document.getElementById("t hisForm");
           var nameId = "policyAction_" + index;
           addRuleTagToForm(nameId, rule.action);
           nameId = "policyEnabled_" + index;
           addRuleTagToForm(nameId, rule.enable);
           nameId = "policyDstSvc_" + index;
           addRuleTagToForm(nameId, rule.svc);
           nameId = "policySrcZone_" + index;
           addRuleTagToForm(nameId, rule.fromZone);
           nameId = "policyDstZone_" + index;
           addRuleTagToForm(nameId, rule.toZone);
           nameId = "policySrcNet_" + index;
           addRuleTagToForm(nameId, rule.src);
           nameId = "policyDstNet_" + index;
           addRuleTagToForm(nameId, rule.dst);
           nameId = "policyTime_" + index;
           addRuleTagToForm(nameId, rule.tod);
           nameId = "policyInactivity_" + index;
           addRuleTagToForm(nameId, rule.tim);
           nameId = "policyFrag_" + index;
           addRuleTagToForm(nameId, rule.frag);
           nameId = "policyWhom_" + index;
           if (rule.wtype == '4' || rule.wtype == '5') { /* User or User group */
                 var value = rule.wtype + ',' + rule.wstr;
                 addRuleTagToForm(nameId, value);
           }
           else { addRuleTagToForm(nameId, rule.wtype); }
           nameId = "policyComment_" + index;
           addRuleTagToForm(nameId, rule.cmt);
           nameId = "policyLog_" + index;
           addRuleTagToForm(nameId, rule.log);
           nameId = "policyPriType_" + index;
           addRuleTagToForm(nameId, rule.pri);
           nameId = "policyProps_" + index;
           addRuleTagToForm(nameId, rule.prop);
           nameId = "policyManagement_" + index;
           addRuleTagToForm(nameId, rule.man);
           nameId = "policyBwEnabled_" + index;
           addRuleTagToForm(nameId, rule.bwon);
           nameId = "policyBwGuar_" + index;
           addRuleTagToForm(nameId, rule.bwg);
           nameId = "policyBwMax_" + index;
           addRuleTagToForm(nameId, rule.bwm);
           nameId = "policyBwPri_" + index;
           addRuleTagToForm(nameId, rule.bwp);
           nameId = "policyIbwEnabled_" + index;
           addRuleTagToForm(nameId, rule.ibwon);
           nameId = "policyIbwGuar_" + index;
           addRuleTagToForm(nameId, rule.ibwg);
           nameId = "policyIbwMax_" + index;
           addRuleTagToForm(nameId, rule.ibwm);
           nameId = "policyIbwPri_" + index;
           addRuleTagToForm(nameId, rule.ibwp);
      }
      function addNewRule(rule) {
           addRuleCgiToForm(-1, rule);
      }
      function editCurrentRule(rule) {
           addRuleCgiToForm(-2, ruleArray[parent.frames["d ataFrame"] .currentIn dex]);
           addRuleCgiToForm(1, rule);
      }
      function ruleEnable(rule) {
           var modRule = ruleArray[rule];
           addRuleCgiToForm(-2, modRule);
           if (modRule.enable == '0') {
                 modRule.enable = '1';
           }
           else  {
                 modRule.enable = '0';
           }
           addRuleCgiToForm(1, modRule);
           ruleSubmit("none");
      }
      function ruleAllEnable(tableNum, enable) {
           if (confirm('Are you sure you wish to '+(0==enable?'disable':'en able')+' these entries?')) {
                 var checkBox;
                 for (i = 0; i < ruleArray.length; i++) {
                      checkBox = document.forms["thisForm"] .elements[ "enableRul e_" + tableNum + "_" + i];
                      if (checkBox) {
                            var modRule = ruleArray[i];
                            addRuleCgiToForm(-2, modRule);
                            modRule.enable = (0==enable?'0':'1');
                            addRuleCgiToForm(1, modRule);
                      }
                 }
                 ruleSubmit("none");
           }
      }
      function changeLogging(rule) {
           var modRule = ruleArray[rule];
           parent.frames["dataFrame"] .zeroRuleV ars();
           addRuleCgiToForm(-2, modRule);
           if (modRule.log == '0') {
                 modRule.log = '1';
           }
           else  {
                 modRule.log = '0';
           }
           addRuleCgiToForm(1, modRule);
           ruleSubmit("none");
      }
      function editRulePopup(arrayIndex) {
           parent.frames["dataFrame"] .zeroRuleV ars();
           parent.frames["dataFrame"] .currentIn dex = arrayIndex;
           popupRuleDlg('addRuleDlg.h tml?objTyp es='+(ADDR OAT_ALL&~A DDROAT_MAC ));
      }
      function delCurrentRule(index) {
           if (window.confirm("Do you want to delete this rule?") == true) {
                 parent.frames["dataFrame"] .zeroRuleV ars();
                 addRuleCgiToForm(-3, ruleArray[index]);
                 ruleSubmit("none");
           }
      }
      function openPage(type, page) {
           parent.frames["dataFrame"] .zeroRuleV ars();
           parent.frames["dataFrame"] .currentIn dex = -1;
           if (type == 'wizard') {
                 accessRulesWizard(false);
           } else if (type == 'dialog') {
                 popupRuleDlg(page);
           }
      }
      function popupRuleDlg(page) {
           var x = 0;
           var y = 0;
           if (screen) {
                 y = (screen.availHeight - 600)/2;
                 x = (screen.availWidth - 530)/2;
           }
           closeWindow = true;
           if (getWindowHandle() != 0)
           {
                 closeActivePopup();
           }
           setWindowHandle(window.ope n(page,'Pr operties', 'width=600 ,height=53 0,top=' + y + ',left=' + x + ',screenX=' + x + ',screenY=' + y));
      }
      function delSTMarkedRules(tableNum) {
           var imgDel = document.images["delImg"+t ableNum];
           if (imgDel){
                 if (imgDel.className=="imgGra y")
                      return;
           }
                     Â
           if (confirm("Are you sure you wish to delete the selected entries?")) {
                 var checkBox;
                 currentIndex = -3;
                 for (i = 0; i < ruleArray.length; i++) {
                      checkBox = document.forms["thisForm"] .elements[ "delRule_" + tableNum + "_" + i];
                      if (checkBox && checkBox.checked) {
                            addRuleCgiToForm(currentIn dex, ruleArray[i]);
                            currentIndex--;
                      }
                 }
                 ruleSubmit("none");
           }
      }
      function delMarkedRules() {
           if (confirm("Are you sure you wish to delete the selected entries?")) {
                 var checkBox;
                 currentIndex = -3;
                 for (i = 0; i < ruleArray.length; i++) {
                      checkBox = document.forms["thisForm"] .elements[ "delRule_" + ruleArray[i].tableNum + "_" + i];
                      if (checkBox && checkBox.checked) {
                            addRuleCgiToForm(currentIn dex, ruleArray[i]);
                            currentIndex--;
                      }
                 }
                 ruleSubmit("none");
           }
      }
      function enableDeleteMarkedBtn() {
           var checkAllRules = document.thisForm.elements ["checkAll Tables"];
           var delMarkedRulesBtn = document.thisForm.elements ["delMarke dRulesBtn" ];
           if (!ruleArray || !ruleArray.length) {
                 if (delMarkedRulesBtn) delMarkedRulesBtn.disabled = 1;
                 if (checkAllRules) checkAllRules.disabled = 1;
           } else {
                 var selTotalCount = 0;
                 var objTotalCouunt = 0;           Â
                 var selCount = 0;
                 var objCount = 0;
                 var checkBox;
                 var imgDel;
                 var curTableNum = ruleArray[0].tableNum;
                 var checkSubTable = document.thisForm.elements ["checkAll Rules"+cur TableNum];
                 for (var i = 0; i < ruleArray.length; i++) {
                      if (curTableNum != ruleArray[i].tableNum){
                            //refresh subtable buttons
                            imgDel = document.images["delImg"+c urTableNum ];
                            if (imgDel){
                                 if ((objCount == 0) || (selCount == 0)){
                                       imgDel.src="trashx.gif";
                                       imgDel.className="imgGray" ;
                                 }
                                 else{
                                       imgDel.src="trash.gif";
                                       imgDel.className="imgActiv e";
                                 }
                            }
                            if (checkSubTable) {
                                 checkSubTable.disabled = (objCount == 0);
                                 if (!checkSubTable.disabled) {
                                       if (checkSubTable.checked){
                                            checkSubTable.checked = (selCount > 0);
                                       }
                                 }
                            }
                            curTableNum = ruleArray[i].tableNum;
                            checkSubTable = document.thisForm.elements ["checkAll Rules"+cur TableNum];
                            selCount = 0;
                            objCount = 0;
                      }
                      checkBox = document.forms["thisForm"] .elements[ "delRule_" + curTableNum + "_" + i];
                      if (checkBox) {
                            checkBox.disabled = (ruleArray[i].prop & POL_NO_DELETE);
                            if (!checkBox.disabled) {
                                 objCount++;
                                 objTotalCouunt++;
                                 if (checkBox.checked){
                                       selCount++;
                                       selTotalCount++;
                                 }
                            }
                      }
                 }
                 //refresh last subtable buttons
                 imgDel = document.images["delImg"+r uleArray[r uleArray.l ength-1].t ableNum];
                 if (imgDel){
                      if ((objCount == 0) || (selCount == 0)){
                            imgDel.src="trashx.gif";
                            imgDel.className="imgGray" ;
                      }
                      else{
                            imgDel.src="trash.gif";
                            imgDel.className="imgActiv e";
                      }
                 }
                 if (checkSubTable) {
                      checkSubTable.disabled = (objCount == 0);
                      if (!checkSubTable.disabled) {
                            if (checkSubTable.checked){
                                 checkSubTable.checked = (selCount > 0);
                            }
                      }
                 }
                 //refresh the rule table buttons
                 if (delMarkedRulesBtn) delMarkedRulesBtn.disabled = ((objTotalCouunt == 0) || (selTotalCount == 0));
                 if (checkAllRules) {
                      checkAllRules.disabled = (objTotalCouunt == 0);
                      if (checkAllRules.checked)
                            checkAllRules.checked = (selTotalCount > 0);
                 }
           }
      }
      function doCheckAllRules(tableNum) {
           if (ruleArray && ruleArray.length) {
                 var checkBox;
                 var checkAllRules = document.thisForm.elements ["checkAll Rules"+tab leNum];
                 for (i = 0; i < ruleArray.length; i++) {
                      checkBox = document.forms["thisForm"] .elements[ "delRule_" + tableNum + "_" + i];
                      if (checkBox && !checkBox.disabled) {
                            if (checkAllRules)
                                 checkBox.checked = checkAllRules.checked;
                      }
                 }
                 enableDeleteMarkedBtn();
           }
      }
      function doCheckAllTables()
      {
           if (ruleArray && ruleArray.length) {
                 var checkBox;
                 var checkAllRules = document.thisForm.elements ["checkAll Tables"];
                 for (i = 0; i < ruleArray.length; i++) {
                      var checkSubTable = document.thisForm.elements ["checkAll Rules"+rul eArray[i]. tableNum];
                      checkBox = document.forms["thisForm"] .elements[ "delRule_" + ruleArray[i].tableNum + "_" + i];
                      if (checkBox && !checkBox.disabled) {
                            if (checkAllRules)
                            {
                                 checkBox.checked = checkAllRules.checked;
                                 if (checkSubTable&&!checkSubT able.disab led)
                                       checkSubTable.checked = checkAllRules.checked;
                            }
                      }
                 }
                 enableDeleteMarkedBtn();
           }
      }
      function prevNextLink(str) {
           parent.frames["tabFrame"]. location.h ref  = str;
      }
      function priorityPopup(index) {
           parent.frames["dataFrame"] .zeroRuleV ars();
           parent.frames["dataFrame"] .currentIn dex = index;
           popup('chgPriorityDlg.html ', 'dialog', '280', '120');
      }
      function changePriority(d) {
           var modRule = ruleArray[parent.frames["d ataFrame"] .currentIn dex];
           addRuleCgiToForm(-2, modRule);
           modRule.pri = d;
           addRuleCgiToForm(1, modRule);
           ruleSubmit("none");
      }
      function ruleSubmit(str) {
           document.thisForm.cgiactio n.value = str;
           parent.frames["statusFrame _0006B1116 3AC"].loca tion.href= "/wait.htm l";
      }
      var addedRuleCgiTags = new Array();
      function addRuleTagToForm(name, val) {
           var form = document.getElementById("t hisForm");
           addCgiTagToForm(document, form, "hidden", name, val, addedRuleCgiTags);
      }
      function advancedRules() {
           popup("advRuleOptionsDlg.h tml", 'dialog', '500', '620');
      }
      function defaultRules(srcZone,dstZo ne) {
           var strMsg;
           strMsg =  "Are you sure you want to reset the\n";
           strMsg += "Network Access Rules to their default values?\n";
           strMsg += "All rules you have added will be erased";
           if (window.confirm(strMsg) == true) {
                 document.thisForm.cgiactio n.value = "rulesWipe_"+srcZone+"_"+d stZone;
                 parent.frames["statusFrame _0006B1116 3AC"].loca tion.href= "/wait.htm l"
           }
      }
      function jumpToMatrix(view) {
           var ruleView = getCookie(RULE_VIEW);
           if (view != ruleView) {
                 setCookie(RULE_VIEW, view);
           }
           document.location.href = "/rulesMatrixView.html";
      }
      function cleanForm() {
           var form = document.getElementById("t hisForm");
           removeAddedCgiTagsFromForm (form, addedRuleCgiTags);
      }
      function clearRuleStats() {
           var f = document.thisForm;
           f.cgiaction.value = "clearRuleStats";
           parent.frames["statusFrame _0006B1116 3AC"].loca tion.href= "/wait.htm l";
      }
      function onLoadFunc() {
           // Enable/Disable the add/delete buttons for all tables listed on this page
            var ruleView = getCookie(RULE_VIEW);
           enableDeleteMarkedBtn();
           if (ruleView == null) {
                 ruleView = 0;
           }
           //no options view any more
           if (ruleView == 3) {
                 ruleView = 2;
           }
           document.forms["thisForm"] .knobPageV iew[ruleVi ew].checke d = 1;
           InitPagableButtons();
      }
      function getPageEndItem(){
           var endItem = pageStartItem+pageSize;
           if (endItem > tableSize)
                 endItem = tableSize;
           return endItem;
      }
      function getPrevPageStartItem(){
           var startItem = pageStartItem-pageSize;
           if (startItem < 0)
                 startItem = 0;
           return      startItem;
      }
      function getNextPageStartItem(){
           var startItem = pageStartItem+pageSize;
           if (startItem >= tableSize)
                 startItem = pageStartItem;
           return      startItem;
      }
      function getLastPageStartItem(){
           var startItem = (tableSize - ((tableSize-pageStartItem) %pageSize) );
           if (startItem == tableSize)
                 startItem = tableSize - pageSize;
           return startItem;
      }
      function setPagingButtons(){
           var href_firstPage;
           var href_lastPage;
           var href_prevPage;
           var href_nextPage;
           var prevId = getPrevPageStartItem();
           var nextId = getNextPageStartItem();
           var lastId = getLastPageStartItem();
           if (0 >= pageStartItem){
                 document.write('<img border=\"0\" src=\"firstPage.gif\" width=\"16\" height=\"16\">');
                 document.write('<img border=\"0\" src=\"prevPage.gif\" width=\"16\" height=\"16\">');
           }else{
                 href_firstPage = "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=0";
                 href_prevPage = "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=" + prevId;
                 document.write('<a name=\"firstPage\" title=\"First page\" href=\"' + href_firstPage + '\"><img border=\"0\" src=\"firstPage.gif\" width=\"16\" height=\"16\"></a>');
                 document.write('<a name=\"prevPage\" title=\"Prev page\" href=\"'+ href_prevPage + '\"><img border=\"0\" src=\"prevPage.gif\" width=\"16\" height=\"16\"></a>');
           }
           if (tableSize <= (pageStartItem+pageSize)){
                 document.write('<img border=\"0\" src=\"nextPage.gif\" width=\"16\" height=\"16\">');
                 document.write('<img border=\"0\" src=\"lastPage.gif\" width=\"16\" height=\"16\">');
           }else{
                 href_nextPage= "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=" + nextId;
                 href_lastPage = "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=" + lastId;
                 document.write('<a name=\"nextPage\" title=\"Next page\" href=\"'+ href_nextPage + '\"><img border=\"0\" src=\"nextPage.gif\" width=\"16\" height=\"16\"></a>');
                 document.write('<a name=\"lastPage\" title=\"Last page\" href=\"' + href_lastPage +'\"><img border=\"0\" src=\"lastPage.gif\" width=\"16\" height=\"16\"></a>');
           }
      }
      function InitPagableButtons(){
           var f = document.thisForm;
          Â
           if (0 >= tableSize){
                 f.iSTStartItem.value = 0;
                 f.iSTStartItem.disabled = true;
           }else      f.iSTStartItem.value = pageStartItem+1;
      }
      function onChangeStartItem(e){
           var Key;
           var f = document.thisForm;
          Â
           if (navigator.appName == 'Netscape')
             Key = e.which;
           else
             Key = e.keyCode;
            Â
           if (Key == 13)
           {
                 var startItem = parseInt(f.iSTStartItem.va lue, 10);
                 if(isNaN(startItem)){
                      alert("The item you have input is invalid, it must be an integer between 1 ~ " + tableSize + ".");
                      f.iSTStartItem.value = pageStartItem+1;
                      f.iSTStartItem.focus();
                      return;
                 }
                 startItem--;
                 if (startItem == pageStartItem){
                      return;
                 }
                 if ((startItem >= tableSize)||(startItem < 0)){
                      alert("The item you have input is invalid, it must be an integer between 1 ~ " + tableSize + ".");
                      f.iSTStartItem.value = pageStartItem+1;
                      f.iSTStartItem.focus();
                      return;
                 }
                 parent.frames.tabFrame.loc ation.href = "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=" + startItem;
           }
      }
      function getSortedHref(col){
           var      bInverted;
           if (col == tableSortCol)
                 bInverted = (tableSortInverted?0:1);
           else bInverted = 0;
          Â
           return ("/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?sortCol=" + col + "&sortInverted=" + bInverted);
      }
      function setColHead(col, title, tip){
           var upArrow = "<img src=\"upArrow.gif\" border=0 width=16 height=16>";
           var downArrow = "<img src=\"downArrow.gif\" border=0 width=16 height=16>";
          Â
           document.write('<a class=\"tableLink\" href=\"' + getSortedHref(col) + '\" onMouseOver=\"dlc(\'' + tip + '\', \'Click to sort by\')\" onMouseOut=\"nd();\" >' + title);
           if (col == tableSortCol){
                 if (0 != tableSortInverted)
                      document.write(upArrow);
                 else
                      document.write(downArrow);
           }
           document.write('</a>');
      }
      // -->
      </script>
      <LINK REL=STYLESHEET HREF="wndStyle.css" TYPE="text/css">
      <style type="text/css" title="supplement">@import "overlib.css";</style>
      <title>Access Rules View</title>
</head>
<body onLoad="onLoadFunc()">
<div id="overDiv" style="position:absolute; visibility:hide;"></div>
<script language="JavaScript" src="overlib.js"></script>
<div id="tabData" align="left">
      <form name="thisForm" id="thisForm" action="main.cgi" method="POST" enctype="x-www-form-encode d" target="statusFrame_0006B1 1163AC">
           <table class="toolBar" border="0" cellspacing="0" cellpadding="0" width="100%" >
                 <tr>
                      <td class="toolBarText" height="35" nowrap> Firewall > Access Rules > LAN > WAN</td>
                      <td align="right" height="35" nowrap>
                      <input type="button" class="applyButton" style="width:170px;" value="Public Server Wizard..."  title="Launch the Public Server Wizard" onClick="publicServerWizar d(false);" >
                     Â
                      <input type=button class=applyButton style="width:110" value="Clear Statistics" title="Clear All Access Rule Statistics..." onClick="clearRuleStats(); ">
                      <input type="button" class="applyButton" style="width:132;right:10p x;" name="defaultButt" value="Restore Defaults..." title="Restore all rule tables to defaults..."  onClick="defaultRules('-1' ,'-1');">
                      <input type="button" class="applyButton" style="width:20;right:10px ;" name="helpButt" value="?" title="Get help on this page..." onclick="displayHelp();">
                     Â
                      </td>
                 </tr>
           </table>
           <br>
           <table nowrap border="0" cellspacing="0" cellpadding="0" width="100%">
                 <tr>
                      <td class="groupLabel" valign=bottom nowrap>                Â
                            <script type="text/JavaScript">
                            <!--
                                 document.write('Access Rules (' + fromZone + ' > ' + toZone + ')');
                            // -->
                            </script>
                      </td>
                      <td align=right width=100%>
                            <table border="0" cellspacing="0" cellpadding="1" width="100%">
                                 <tr nowrap style="Height:26;">
                                       <td nowrap align="right">
                                            <table border="0" cellspacing="0" cellpadding="2" width="100%">
                                                  <tr>
                                                       <td class="label" nowrap align="right" valign="bottom" width=100%>Items
                                                             <input name="iSTStartItem" type="text" class="sortBox" style="width:36;height:22; font-size: x-small;" onKeyPress="onChangeStartI tem(event) ;" size="20">
                                                             <script type="text/JavaScript">
                                                             <!--
                                                                  document.write(' to '+ getPageEndItem() +' (of '+ tableSize + ')');
                                                             // -->
                                                             </script>
                                                       </td>
                                                       <td valign=bottom>
                                                             <script type="text/JavaScript">
                                                             <!--
                                                                  setPagingButtons();
                                                             // -->
                                                             </script>
                                                       </td>
                                                  </tr>
                                            </table>
                                       </td>
                                 </tr>
                            </table>
                      </td>
                 </tr>
           </table>
          Â
           <table border="0" cellspacing="0" cellpadding="0" width="100%">
                 <tr>
                      <td class=line3Ddark width="100%" height="1"><img src="clear.gif" height="1"></td>
                 </tr>
                 <tr>
                      <td class=line3Dlite width="100%" height="1"><img src="clear.gif" height="1"></td>
                 </tr>
           </table>
           <br>
          Â
           <table BORDER=0 CELLSPACING="0" CELLPADDING="0"  WIDTH="100%">
                 <tr>
                      <td class="label">
                            View Style:
                            <input name="knobPageView" id="knobView0" onClick="{ jumpToMatrix(0); }" type="radio"><label id="labelView0" for="knobView0">Matrix</la bel>
                            <input name="knobPageView" id="knobView1" onClick="{ jumpToMatrix(1); }" type="radio"><label id="labelView1" for="knobView1">Drop-down Boxes</label>
<!--
                            <input name="knobPageView" id="knobView2" onClick="{ jumpToMatrix(2); }" type="radio"><label id="labelView2" for="knobView2">Option Buttons</label>
-->
                            <input name="knobPageView" id="knobView2" onClick="{ jumpToMatrix(2); }" type="radio"><label id="labelView2" for="knobView2">All Rules</label>
                      </td>
                 </tr>
           </table>
           <br>
           <table class="ruleTable" valign="middle" border="0" width="100%" cellspacing="0" cellpadding="4" nowrap>
                 <tr>
                      <td class="tableHeader" width="3%" nowrap>
        <input type="checkbox" name="checkAllTables" onclick="doCheckAllTables( );" onfocus="if (this.disabled) { this.blur(); }" value="ON"> #</td>
                      <script type="text/JavaScript">
                      <!--
                            if ((-1 == srcZoneHandle)&&(-1 == dstZoneHandle)){
                                 document.write('<td class=\"tableHeader\">');
                                 setColHead(1, 'Zone', 'From Zone');
                                 document.write('</td>');
                                 document.write('<td class=\"tableHeader\" nowrap>></td>');
                                 document.write('<td class=\"tableHeader\">');
                                 setColHead(2, 'Zone', 'To Zone');
                                 document.write('</td>');
                            }
                            else{
                                 if (-1 == srcZoneHandle){
                                       document.write('<td class=\"tableHeader\" nowrap>');
                                       setColHead(1, 'From Zone', 'From Zone');
                                       document.write('</td>');
                                 }
                                 if (-1 == dstZoneHandle){
                                       document.write('<td class=\"tableHeader\" nowrap>');
                                       setColHead(2, 'To Zone', 'To Zone');
                                       document.write('</td>');
                                 }
                            }
                      // -->
                      </script>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(3, 'Priority', 'Priority');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(4, 'Source', 'Source network object');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(5, 'Destination', 'Destination network object');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(6, 'Service', 'Service object');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(7, 'Action', 'Action');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(8, 'Users', 'Allowed users');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(9, 'Comment', 'Comment');
                            // -->
                            </script>
                      </td>
                      <!-- get rid of the log column to save space in rule table
                      <td class="tableHeader" nowrap>Logging</td>
                       -->
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(10, 'Enable', 'Enable');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>Configure </td>
                 </tr>
                 <tr class="tableLineContrast"> <td nowrap width=5>
       <input type="checkbox" name="delRule_0_0" onfocus="if (this.disabled) { this.blur(); }" onclick="enableDeleteMarke dBtn()" value="ON"> 1</td><td nowrap valign=top>1  <img src=priority.gif alt="Change priority?" title="Change priority?" border=0 height=20 width=20 style="cursor:pointer;curs or:hand;" onClick="priorityPopup(0); "></td><td align=left>Any</td><td align=left>Any</td><td align=left>Any</td><td class="allowRule">Allow</t d><td>All< /td><td align=left> </td><td>
       <input type="checkbox" NAME="enableRule_0_0" onClick="ruleEnable(0);" CHECKED value="ON"></td><td><img src=stat.gif border=0 height=20 width=20 onMouseOver="dlc('<table cellpadding=1 cellspacing=0 border=0><tr class=ttSmall><td nowrap><b>Rx Bytes:</b></td><td nowrap>0</td></tr><tr class=ttSmall><td nowrap><b>Rx Packets:</b></td><td nowrap>0</td></tr><tr class=ttSmall><td nowrap><b>Tx Bytes:</b></td><td nowrap>0</td></tr><tr class=ttSmall><td nowrap><b>Tx Packets:</b></td><td nowrap>0</td></tr></table> ','Access Rule #1 - Traffic Statistics'); return true;" onMouseOut="nd(); return true;" style="cursor:hand"> <img src=edit.gif alt="Edit this entry" title="Edit this entry" border=0 height=20 width=20 style="cursor:pointer;curs or:hand;" onClick="editRulePopup(0); "> <i mg src=trash.gif alt="Delete this entry" title="Delete this entry" border=0 height=20 width=20 style="cursor:pointer;curs or:hand;" onclick="delCurrentRule(0) ;"></td></ tr>
                 <tr>
                      <td class="tableHeader" colspan=8 nowrap>
                            <input type="button" class="button"  title="Add a new entry" style="width: 100px;" value=" Add... " onclick="addGenericRule(); ">
                            <input name= "delMarkedRulesBtn" type="button" class="button"  style="width: 100px;" title="Delete marked entries" value="  Delete " onclick="delMarkedRules(); ">
                      </td>
                      <script type="text/JavaScript">
                      <!--
                            if (-1 == srcZoneHandle)
                                 document.write('<td class=\"tableHeader\" nowrap> </td>');
                            if (-1 == dstZoneHandle)
                                 document.write('<td class=\"tableHeader\" nowrap> </td>');
                            if ((-1 == srcZoneHandle)&&(-1 == dstZoneHandle))
                                 document.write('<td class=\"tableHeader\" nowrap> </td>');
                      // -->
                      </script>
                      <td class="tableHeader" colspan=2 align="right" nowrap>
                            <input type="button" class="button" name="defaultBtn" style="width: 140px;" value="Restore Defaults..." title="Restore rule tables to defaults..."  onClick="defaultRules(srcZ oneHandle, dstZoneHan dle);">
                      </td>
                 </tr>
           </table>
           <input type="hidden" name="cgiaction" value="">
           <input type="hidden" name="error_page" value="ruleTable_1_2.html" >
           <input type="hidden" name="refresh_page" value="ruleTable_1_2.html" >
      </form>
     Â
</div>
</body>
</html>
What in this code tells the page to make sure the user has authenticated, and can I remove it? Â If I don't authenticate (enter username &Â password on main page), the code for this page shows the code for the 'authenticate page'. Â If I remove the code, can I view the page offline without having to enter username &Â password?
Thanks
Here's the html code from a page:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
      <META HTTP-EQUIV="Expires" CONTENT="-1">
      <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
      <META HTTP-EQUIV="Cache-Control"
      <meta name="SonicWALL Administrator" content="Copyright 2003 (c) SonicWALL, Inc. All rights reserved.">
      <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
      <script type="text/javascript" src="utilityFunctions.js">
      <script type="text/javascript" src="netObj.js"></script>
      <script type="text/javascript" src="netAddrObj.js"></scri
      <script type="text/javascript" src="serviceObj.js"></scri
      <script type="text/javascript" src="schedObj.js"></script
      <script type="text/javascript" src="popups.js"></script>
      <script type="text/javascript" src="wizards.js"></script>
      <script type="text/javascript" src="ruleTbl.js"></script>
      <script type="text/javascript" src="zoneObj.js"></script>
      <script type="text/javascript" src="cookies.js"></script>
      <script type="text/JavaScript">
      <!--
      var bGroupRule = false;
      var strGroupTitle1;
      var strGroupTitle2;
      var toZone = "WAN";
      var fromZone = "LAN";
      var srcZoneHandle = 1;
      var dstZoneHandle = 2;
      var pageStartItem = 0;
var tableSortCol = 3;
var tableSortInverted = 0;
var pageSize = 50;
var tableSize = 1;
      var zoneObjArray = new Array(6);
zoneObjArray[0] = new zoneObj("LAN", '18205','1', '1', '1', '0', '0', 1, '1', 'X0');
zoneObjArray[1] = new zoneObj("WAN", '18205','0', '0', '0', '0', '0', 1, '1', 'X1');
zoneObjArray[2] = new zoneObj("DMZ", '18189','1', '2', '1', '0', '0', 0, '0', 'N/A');
zoneObjArray[3] = new zoneObj("VPN", '26397','0', '5', '0', '0', '0', 0, '1', 'N/A');
zoneObjArray[4] = new zoneObj("MULTICAST", '26397','0', '6', '0', '0', '0', 0, '0', 'N/A');
zoneObjArray[5] = new zoneObj("WLAN", '18205','0', '4', '0', '0', '0', 0, '0', 'N/A');
zoneObjArray[5].wlan = new wlanZoneCfg(1,1,'SonicPoin
zoneObjArray[5].guestServi
zoneObjArray[5].guestServi
zoneObjArray[5].guestServi
zoneObjArray[5].guestServi
zoneObjArray[5].guestServi
zoneObjArray[5].guestServi
zoneObjArray[5].guestServi
      var serviceObjArray = new Array(138);
serviceObjArray[0] = new serviceObj('BearShare',1,3
serviceObjArray[1] = new serviceObj('Citrix',2,3101
serviceObjArray[1].childre
serviceObjArray[1].childre
serviceObjArray[2] = new serviceObj('Citrix TCP',1,3101,6,1494,1494,0)
serviceObjArray[3] = new serviceObj('Citrix UDP',1,3101,17,1604,1604,0
serviceObjArray[4] = new serviceObj('DNS (Name Service)',2,3101,0,0,0,0);
serviceObjArray[4].childre
serviceObjArray[4].childre
serviceObjArray[5] = new serviceObj('DNS (Name Service) TCP',1,3101,6,53,53,0);
serviceObjArray[6] = new serviceObj('DNS (Name Service) UDP',1,3101,17,53,53,0);
serviceObjArray[7] = new serviceObj('Destination Unreachable',1,3101,1,3,3,
serviceObjArray[8] = new serviceObj('Direct Connect',1,3101,6,411,412,
serviceObjArray[9] = new serviceObj('ESP (IPSec)',1,3101,50,0,0,0);
serviceObjArray[10] = new serviceObj('Echo',1,3101,1
serviceObjArray[11] = new serviceObj('Echo Reply',1,3101,1,0,0,0);
serviceObjArray[12] = new serviceObj('Edonkey',2,310
serviceObjArray[12].childr
serviceObjArray[12].childr
serviceObjArray[13] = new serviceObj('Edonkey TCP',1,3101,6,4661,4662,0)
serviceObjArray[14] = new serviceObj('Edonkey UDP',1,3101,17,4665,4665,0
serviceObjArray[15] = new serviceObj('Enhanced TV',1,3101,6,9000,9000,0);
serviceObjArray[16] = new serviceObj('FTP',2,3101,0,
serviceObjArray[16].childr
serviceObjArray[16].childr
serviceObjArray[17] = new serviceObj('FTP Control',1,3101,6,21,21,0)
serviceObjArray[18] = new serviceObj('FTP Data',1,3101,6,20,20,0);
serviceObjArray[19] = new serviceObj('Filemaker',2,3
serviceObjArray[19].childr
serviceObjArray[19].childr
serviceObjArray[20] = new serviceObj('Filemaker TCP',1,3101,6,5003,5003,0)
serviceObjArray[21] = new serviceObj('Filemaker UDP',1,3101,17,5003,5003,0
serviceObjArray[22] = new serviceObj('GMS HTTPS',1,3101,6,3003,3003,
serviceObjArray[23] = new serviceObj('Gopher',1,3101
serviceObjArray[24] = new serviceObj('H323 Call Signaling',1,3101,6,1720,1
serviceObjArray[25] = new serviceObj('H323 Gatekeeper Discovery',1,3101,17,1718,
serviceObjArray[26] = new serviceObj('H323 Gatekeeper RAS',1,3101,17,1719,1719,0
serviceObjArray[27] = new serviceObj('HTTP',1,3613,6
serviceObjArray[28] = new serviceObj('HTTP Management',1,3613,6,80,80
serviceObjArray[29] = new serviceObj('HTTPS',1,3613,
serviceObjArray[30] = new serviceObj('HTTPS Management',1,3613,6,443,4
serviceObjArray[31] = new serviceObj('ICMP',2,3101,0
serviceObjArray[31].childr
serviceObjArray[31].childr
serviceObjArray[31].childr
serviceObjArray[31].childr
serviceObjArray[31].childr
serviceObjArray[31].childr
serviceObjArray[31].childr
serviceObjArray[31].childr
serviceObjArray[32] = new serviceObj('IDENT',1,3101,
serviceObjArray[33] = new serviceObj('IGMP',2,3101,0
serviceObjArray[33].childr
serviceObjArray[33].childr
serviceObjArray[33].childr
serviceObjArray[33].childr
serviceObjArray[34] = new serviceObj('IKE',2,3101,0,
serviceObjArray[34].childr
serviceObjArray[34].childr
serviceObjArray[35] = new serviceObj('IKE (Key Exchange)',1,3101,17,500,5
serviceObjArray[36] = new serviceObj('IKE (Traversal)',1,3101,17,450
serviceObjArray[37] = new serviceObj('IMAP3',1,3101,
serviceObjArray[38] = new serviceObj('IMAP4',1,3101,
serviceObjArray[39] = new serviceObj('IRC (Chat)',2,3101,0,0,0,0);
serviceObjArray[39].childr
serviceObjArray[39].childr
serviceObjArray[39].childr
serviceObjArray[40] = new serviceObj('IRC (Chat) 194',1,3101,6,194,194,0);
serviceObjArray[41] = new serviceObj('IRC (Chat) 6666-6670',1,3101,6,6666,6
serviceObjArray[42] = new serviceObj('IRC (Chat) 7000',1,3101,6,7000,7000,0
serviceObjArray[43] = new serviceObj('ISAKMP',1,3101
serviceObjArray[44] = new serviceObj('Idle HF',2,3101,0,0,0,0);
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[44].childr
serviceObjArray[45] = new serviceObj('Kazaa / FastTrack',1,3101,6,1214,1
serviceObjArray[46] = new serviceObj('Kerberos',2,31
serviceObjArray[46].childr
serviceObjArray[46].childr
serviceObjArray[47] = new serviceObj('Kerberos TCP',1,3101,6,88,88,0);
serviceObjArray[48] = new serviceObj('Kerberos UDP',1,3101,17,88,88,0);
serviceObjArray[49] = new serviceObj('LDAP',1,3101,6
serviceObjArray[50] = new serviceObj('LPR (Unix Printer)',1,3101,6,515,515
serviceObjArray[51] = new serviceObj('Leave Group',1,3101,2,23,23,0);
serviceObjArray[52] = new serviceObj('Lotus Notes',1,3101,6,1352,1352,
serviceObjArray[53] = new serviceObj('MGCP TCP',1,3101,6,2428,2428,0)
serviceObjArray[54] = new serviceObj('MGCP UDP',1,3101,17,2427,2427,0
serviceObjArray[55] = new serviceObj('MMS',2,3101,0,
serviceObjArray[55].childr
serviceObjArray[55].childr
serviceObjArray[56] = new serviceObj('MMS TCP',1,3101,6,1755,1755,0)
serviceObjArray[57] = new serviceObj('MMS UDP',1,3101,17,1755,1755,0
serviceObjArray[58] = new serviceObj('MS SQL',1,3101,6,1433,1433,0)
serviceObjArray[59] = new serviceObj('MSN',2,3101,0,
serviceObjArray[59].childr
serviceObjArray[59].childr
serviceObjArray[60] = new serviceObj('MSN TCP',1,3101,6,1863,1863,0)
serviceObjArray[61] = new serviceObj('MSN UDP',1,3101,17,1863,1863,0
serviceObjArray[62] = new serviceObj('Membership Query',1,3101,2,17,17,0);
serviceObjArray[63] = new serviceObj('Multicast RTP',2,3101,0,0,0,0);
serviceObjArray[64] = new serviceObj('NFS',2,3101,0,
serviceObjArray[64].childr
serviceObjArray[64].childr
serviceObjArray[65] = new serviceObj('NFS TCP',1,3101,6,2049,2049,0)
serviceObjArray[66] = new serviceObj('NFS UDP',1,3101,17,2049,2049,0
serviceObjArray[67] = new serviceObj('NNTP (News)',1,3101,6,119,119,0
serviceObjArray[68] = new serviceObj('NTP',1,3101,17
serviceObjArray[69] = new serviceObj('NetBios',2,310
serviceObjArray[69].childr
serviceObjArray[69].childr
serviceObjArray[69].childr
serviceObjArray[69].childr
serviceObjArray[69].childr
serviceObjArray[69].childr
serviceObjArray[69].childr
serviceObjArray[70] = new serviceObj('NetBios DGM TCP',1,3101,6,138,138,0);
serviceObjArray[71] = new serviceObj('NetBios DGM UDP',1,3101,17,138,138,0);
serviceObjArray[72] = new serviceObj('NetBios NS TCP',1,3101,6,137,137,0);
serviceObjArray[73] = new serviceObj('NetBios NS UDP',1,3101,17,137,137,0);
serviceObjArray[74] = new serviceObj('NetBios SSN TCP',1,3101,6,139,139,0);
serviceObjArray[75] = new serviceObj('NetBios SSN UDP',1,3101,17,139,139,0);
serviceObjArray[76] = new serviceObj('P2P Services',2,3101,0,0,0,0);
serviceObjArray[76].childr
serviceObjArray[76].childr
serviceObjArray[76].childr
serviceObjArray[76].childr
serviceObjArray[76].childr
serviceObjArray[76].childr
serviceObjArray[77] = new serviceObj('PC Anywhere',2,3101,0,0,0,0);
serviceObjArray[77].childr
serviceObjArray[77].childr
serviceObjArray[78] = new serviceObj('PC Anywhere TCP',1,3101,6,5631,5631,0)
serviceObjArray[79] = new serviceObj('PC Anywhere UDP',1,3101,17,5632,5632,0
serviceObjArray[80] = new serviceObj('PNA',1,3101,6,
serviceObjArray[81] = new serviceObj('POP3 (Retrieve E-Mail)',1,3101,6,110,110,
serviceObjArray[82] = new serviceObj('PPTP',1,3101,6
serviceObjArray[83] = new serviceObj('Ping',2,3101,0
serviceObjArray[83].childr
serviceObjArray[83].childr
serviceObjArray[84] = new serviceObj('Ping 0',1,3101,1,0,0,0);
serviceObjArray[85] = new serviceObj('Ping 8',1,3101,1,8,8,0);
serviceObjArray[86] = new serviceObj('Quake',1,3101,
serviceObjArray[87] = new serviceObj('RTSP',2,3101,0
serviceObjArray[87].childr
serviceObjArray[87].childr
serviceObjArray[88] = new serviceObj('RTSP TCP',1,3101,6,554,554,0);
serviceObjArray[89] = new serviceObj('RTSP UDP',1,3101,17,554,554,0);
serviceObjArray[90] = new serviceObj('Radius',1,3101
serviceObjArray[91] = new serviceObj('Redirect',1,31
serviceObjArray[92] = new serviceObj('Remotely Anywhere',1,3101,6,2000,20
serviceObjArray[93] = new serviceObj('Remotely Possible',1,3101,6,799,799
serviceObjArray[94] = new serviceObj('Router Advertisement',1,3101,1,9,
serviceObjArray[95] = new serviceObj('Router Solicitation',1,3101,1,10,
serviceObjArray[96] = new serviceObj('SIP',1,3101,17
serviceObjArray[97] = new serviceObj('SMB',1,3101,6,
serviceObjArray[98] = new serviceObj('SMTP (Send E-Mail)',1,3101,6,25,25,0)
serviceObjArray[99] = new serviceObj('SNMP',1,3101,1
serviceObjArray[100] = new serviceObj('SQL*Net ',1,3101,6,1521,1521,0);
serviceObjArray[101] = new serviceObj('SSH',1,3101,6,
serviceObjArray[102] = new serviceObj('Skinny',1,3101
serviceObjArray[103] = new serviceObj('Source Quench',1,3101,1,4,4,0);
serviceObjArray[104] = new serviceObj('Squid',1,3101,
serviceObjArray[105] = new serviceObj('Streaming media',2,3101,0,0,0,0);
serviceObjArray[105].child
serviceObjArray[105].child
serviceObjArray[105].child
serviceObjArray[105].child
serviceObjArray[106] = new serviceObj('Syslog',2,3101
serviceObjArray[106].child
serviceObjArray[106].child
serviceObjArray[107] = new serviceObj('Syslog TCP',1,3101,6,514,514,0);
serviceObjArray[108] = new serviceObj('Syslog UDP',1,3101,17,514,514,0);
serviceObjArray[109] = new serviceObj('T120 (Whiteboard+A43)',1,3101,6
serviceObjArray[110] = new serviceObj('TFTP',1,3101,1
serviceObjArray[111] = new serviceObj('Telnet',1,3101
serviceObjArray[112] = new serviceObj('Terminal Services',2,3101,0,0,0,0);
serviceObjArray[112].child
serviceObjArray[112].child
serviceObjArray[113] = new serviceObj('Terminal Services TCP',1,3101,6,3389,3389,0)
serviceObjArray[114] = new serviceObj('Terminal Services UDP',1,3101,17,3389,3389,0
serviceObjArray[115] = new serviceObj('Timbuktu',2,31
serviceObjArray[115].child
serviceObjArray[115].child
serviceObjArray[115].child
serviceObjArray[115].child
serviceObjArray[116] = new serviceObj('Timbuktu TCP 1417-1420',1,3101,6,1417,1
serviceObjArray[117] = new serviceObj('Timbuktu TCP 407',1,3101,6,407,407,0);
serviceObjArray[118] = new serviceObj('Timbuktu UDP 1419',1,3101,17,1419,1419,
serviceObjArray[119] = new serviceObj('Timbuktu UDP 407',1,3101,17,407,407,0);
serviceObjArray[120] = new serviceObj('Time Exceeded',1,3101,1,11,11,0
serviceObjArray[121] = new serviceObj('V2 Membership Report',1,3101,2,22,22,0);
serviceObjArray[122] = new serviceObj('V3 Membership Report',1,3101,2,34,34,0);
serviceObjArray[123] = new serviceObj('VNC',2,3101,0,
serviceObjArray[123].child
serviceObjArray[123].child
serviceObjArray[123].child
serviceObjArray[124] = new serviceObj('VNC 5500',1,3101,6,5500,5500,0
serviceObjArray[125] = new serviceObj('VNC 5800',1,3101,6,5800,5800,0
serviceObjArray[126] = new serviceObj('VNC 5900',1,3101,6,5900,5900,0
serviceObjArray[127] = new serviceObj('VOIP',2,3101,0
serviceObjArray[127].child
serviceObjArray[127].child
serviceObjArray[127].child
serviceObjArray[127].child
serviceObjArray[127].child
serviceObjArray[127].child
serviceObjArray[127].child
serviceObjArray[127].child
serviceObjArray[128] = new serviceObj('WinMX',2,3101,
serviceObjArray[128].child
serviceObjArray[128].child
serviceObjArray[128].child
serviceObjArray[129] = new serviceObj('WinMX TCP 6699',1,3101,6,6699,6699,0
serviceObjArray[130] = new serviceObj('WinMX TCP 7729-7735',1,3101,6,7729,7
serviceObjArray[131] = new serviceObj('WinMX UDP 6257',1,3101,17,6257,6257,
serviceObjArray[132] = new serviceObj('Yahoo Messenger',2,3101,0,0,0,0)
serviceObjArray[132].child
serviceObjArray[132].child
serviceObjArray[133] = new serviceObj('Yahoo Messenger TCP',1,3101,6,5050,5050,0)
serviceObjArray[134] = new serviceObj('Yahoo Messenger UDP',1,3101,17,5050,5050,0
serviceObjArray[135] = new serviceObj('ZebTelnet',1,3
serviceObjArray[136] = new serviceObj('cu-seeme',1,31
serviceObjArray[137] = new serviceObj('iMesh',1,3101,
      var addrObjArray = new Array();
addrObjArray[0] = new addrObj('All Authorized Access Points','8','','29','0.0.0
addrObjArray[0].children[0
addrObjArray[1] = new addrObj('All HF X0 IP','8','','793','0.0.0.0'
addrObjArray[1].children[0
addrObjArray[1].children[1
addrObjArray[2] = new addrObj('All HF X1 IP','8','','793','0.0.0.0'
addrObjArray[2].children[0
addrObjArray[2].children[1
addrObjArray[3] = new addrObj('All Interface IP','8','','793','0.0.0.0'
addrObjArray[3].children[0
addrObjArray[3].children[1
addrObjArray[3].children[2
addrObjArray[3].children[3
addrObjArray[4] = new addrObj('All SonicPoints','8','','793',
addrObjArray[5] = new addrObj('All WAN IP','8','','793','0.0.0.0'
addrObjArray[5].children[0
addrObjArray[6] = new addrObj('All X0 Management IP','8','','793','0.0.0.0'
addrObjArray[6].children[0
addrObjArray[6].children[1
addrObjArray[6].children[2
addrObjArray[7] = new addrObj('All X1 Management IP','8','','793','0.0.0.0'
addrObjArray[7].children[0
addrObjArray[7].children[1
addrObjArray[7].children[2
addrObjArray[8] = new addrObj('DMZ Interface IP','8','','793','0.0.0.0'
addrObjArray[9] = new addrObj('DMZ Subnets','8','','793','0.0
addrObjArray[10] = new addrObj('Firewalled Subnets','8','','793','0.0
addrObjArray[10].children[
addrObjArray[10].children[
addrObjArray[10].children[
addrObjArray[11] = new addrObj('LAN Interface IP','8','','793','0.0.0.0'
addrObjArray[11].children[
addrObjArray[12] = new addrObj('LAN Subnets','8','','793','0.0
addrObjArray[12].children[
addrObjArray[13] = new addrObj('WAN Interface IP','8','','793','0.0.0.0'
addrObjArray[13].children[
addrObjArray[14] = new addrObj('WAN Subnets','8','','793','0.0
addrObjArray[14].children[
addrObjArray[15] = new addrObj('WLAN Interface IP','8','','793','0.0.0.0'
addrObjArray[16] = new addrObj('WLAN Subnets','8','','793','0.0
addrObjArray[17] = new addrObj('Default Gateway','1','WAN','793','
addrObjArray[18] = new addrObj('HF Backup X0 IP','1','LAN','793','192.1
addrObjArray[19] = new addrObj('HF Backup X1 IP','1','WAN','793','8.1.1
addrObjArray[20] = new addrObj('HF Primary X0 IP','1','LAN','793','192.1
addrObjArray[21] = new addrObj('HF Primary X1 IP','1','WAN','793','8.1.1
addrObjArray[22] = new addrObj('LAN Primary IP','1','LAN','793','192.1
addrObjArray[23] = new addrObj('LAN Primary Subnet','4','LAN','793','1
addrObjArray[24] = new addrObj('Secondary Default Gateway','1','','793','0.0
addrObjArray[25] = new addrObj('WAN Primary IP','1','WAN','793','8.1.1
addrObjArray[26] = new addrObj('WAN Primary Subnet','4','WAN','793','8
addrObjArray[27] = new addrObj('X2 IP','1','','793','0.0.0.0'
addrObjArray[28] = new addrObj('X2 Subnet','4','','793','0.0.
addrObjArray[29] = new addrObj('X3 IP','1','','793','0.0.0.0'
addrObjArray[30] = new addrObj('X3 Subnet','4','','793','0.0.
      function displayHelp() {
           showHelp('ruletable');
      }
      function shouldUseWizard(page) {
           var entryType;
           if ("" == "checked") {
                 entryType = 'wizard';
           } else {
                 entryType = 'dialog';
           }
           openPage(entryType, page);
      }
      function addGenericRule(){
           bGroupRule = false;
           shouldUseWizard('addRuleDl
      }
      function addGroupRule(groupTitle1, groupTitle2){
           bGroupRule = true;
           strGroupTitle1 = groupTitle1;
           strGroupTitle2 = groupTitle2;
           shouldUseWizard('addRuleDl
      }
      var ruleArray = new Array();
ruleArray.push(new ruleElem('2','1','','','',
      function addRuleCgiToForm(index, rule) {
           var form = document.getElementById("t
           var nameId = "policyAction_" + index;
           addRuleTagToForm(nameId, rule.action);
           nameId = "policyEnabled_" + index;
           addRuleTagToForm(nameId, rule.enable);
           nameId = "policyDstSvc_" + index;
           addRuleTagToForm(nameId, rule.svc);
           nameId = "policySrcZone_" + index;
           addRuleTagToForm(nameId, rule.fromZone);
           nameId = "policyDstZone_" + index;
           addRuleTagToForm(nameId, rule.toZone);
           nameId = "policySrcNet_" + index;
           addRuleTagToForm(nameId, rule.src);
           nameId = "policyDstNet_" + index;
           addRuleTagToForm(nameId, rule.dst);
           nameId = "policyTime_" + index;
           addRuleTagToForm(nameId, rule.tod);
           nameId = "policyInactivity_" + index;
           addRuleTagToForm(nameId, rule.tim);
           nameId = "policyFrag_" + index;
           addRuleTagToForm(nameId, rule.frag);
           nameId = "policyWhom_" + index;
           if (rule.wtype == '4' || rule.wtype == '5') { /* User or User group */
                 var value = rule.wtype + ',' + rule.wstr;
                 addRuleTagToForm(nameId, value);
           }
           else { addRuleTagToForm(nameId, rule.wtype); }
           nameId = "policyComment_" + index;
           addRuleTagToForm(nameId, rule.cmt);
           nameId = "policyLog_" + index;
           addRuleTagToForm(nameId, rule.log);
           nameId = "policyPriType_" + index;
           addRuleTagToForm(nameId, rule.pri);
           nameId = "policyProps_" + index;
           addRuleTagToForm(nameId, rule.prop);
           nameId = "policyManagement_" + index;
           addRuleTagToForm(nameId, rule.man);
           nameId = "policyBwEnabled_" + index;
           addRuleTagToForm(nameId, rule.bwon);
           nameId = "policyBwGuar_" + index;
           addRuleTagToForm(nameId, rule.bwg);
           nameId = "policyBwMax_" + index;
           addRuleTagToForm(nameId, rule.bwm);
           nameId = "policyBwPri_" + index;
           addRuleTagToForm(nameId, rule.bwp);
           nameId = "policyIbwEnabled_" + index;
           addRuleTagToForm(nameId, rule.ibwon);
           nameId = "policyIbwGuar_" + index;
           addRuleTagToForm(nameId, rule.ibwg);
           nameId = "policyIbwMax_" + index;
           addRuleTagToForm(nameId, rule.ibwm);
           nameId = "policyIbwPri_" + index;
           addRuleTagToForm(nameId, rule.ibwp);
      }
      function addNewRule(rule) {
           addRuleCgiToForm(-1, rule);
      }
      function editCurrentRule(rule) {
           addRuleCgiToForm(-2, ruleArray[parent.frames["d
           addRuleCgiToForm(1, rule);
      }
      function ruleEnable(rule) {
           var modRule = ruleArray[rule];
           addRuleCgiToForm(-2, modRule);
           if (modRule.enable == '0') {
                 modRule.enable = '1';
           }
           else  {
                 modRule.enable = '0';
           }
           addRuleCgiToForm(1, modRule);
           ruleSubmit("none");
      }
      function ruleAllEnable(tableNum, enable) {
           if (confirm('Are you sure you wish to '+(0==enable?'disable':'en
                 var checkBox;
                 for (i = 0; i < ruleArray.length; i++) {
                      checkBox = document.forms["thisForm"]
                      if (checkBox) {
                            var modRule = ruleArray[i];
                            addRuleCgiToForm(-2, modRule);
                            modRule.enable = (0==enable?'0':'1');
                            addRuleCgiToForm(1, modRule);
                      }
                 }
                 ruleSubmit("none");
           }
      }
      function changeLogging(rule) {
           var modRule = ruleArray[rule];
           parent.frames["dataFrame"]
           addRuleCgiToForm(-2, modRule);
           if (modRule.log == '0') {
                 modRule.log = '1';
           }
           else  {
                 modRule.log = '0';
           }
           addRuleCgiToForm(1, modRule);
           ruleSubmit("none");
      }
      function editRulePopup(arrayIndex) {
           parent.frames["dataFrame"]
           parent.frames["dataFrame"]
           popupRuleDlg('addRuleDlg.h
      }
      function delCurrentRule(index) {
           if (window.confirm("Do you want to delete this rule?") == true) {
                 parent.frames["dataFrame"]
                 addRuleCgiToForm(-3, ruleArray[index]);
                 ruleSubmit("none");
           }
      }
      function openPage(type, page) {
           parent.frames["dataFrame"]
           parent.frames["dataFrame"]
           if (type == 'wizard') {
                 accessRulesWizard(false);
           } else if (type == 'dialog') {
                 popupRuleDlg(page);
           }
      }
      function popupRuleDlg(page) {
           var x = 0;
           var y = 0;
           if (screen) {
                 y = (screen.availHeight - 600)/2;
                 x = (screen.availWidth - 530)/2;
           }
           closeWindow = true;
           if (getWindowHandle() != 0)
           {
                 closeActivePopup();
           }
           setWindowHandle(window.ope
      }
      function delSTMarkedRules(tableNum)
           var imgDel = document.images["delImg"+t
           if (imgDel){
                 if (imgDel.className=="imgGra
                      return;
           }
                     Â
           if (confirm("Are you sure you wish to delete the selected entries?")) {
                 var checkBox;
                 currentIndex = -3;
                 for (i = 0; i < ruleArray.length; i++) {
                      checkBox = document.forms["thisForm"]
                      if (checkBox && checkBox.checked) {
                            addRuleCgiToForm(currentIn
                            currentIndex--;
                      }
                 }
                 ruleSubmit("none");
           }
      }
      function delMarkedRules() {
           if (confirm("Are you sure you wish to delete the selected entries?")) {
                 var checkBox;
                 currentIndex = -3;
                 for (i = 0; i < ruleArray.length; i++) {
                      checkBox = document.forms["thisForm"]
                      if (checkBox && checkBox.checked) {
                            addRuleCgiToForm(currentIn
                            currentIndex--;
                      }
                 }
                 ruleSubmit("none");
           }
      }
      function enableDeleteMarkedBtn() {
           var checkAllRules = document.thisForm.elements
           var delMarkedRulesBtn = document.thisForm.elements
           if (!ruleArray || !ruleArray.length) {
                 if (delMarkedRulesBtn) delMarkedRulesBtn.disabled
                 if (checkAllRules) checkAllRules.disabled = 1;
           } else {
                 var selTotalCount = 0;
                 var objTotalCouunt = 0;           Â
                 var selCount = 0;
                 var objCount = 0;
                 var checkBox;
                 var imgDel;
                 var curTableNum = ruleArray[0].tableNum;
                 var checkSubTable = document.thisForm.elements
                 for (var i = 0; i < ruleArray.length; i++) {
                      if (curTableNum != ruleArray[i].tableNum){
                            //refresh subtable buttons
                            imgDel = document.images["delImg"+c
                            if (imgDel){
                                 if ((objCount == 0) || (selCount == 0)){
                                       imgDel.src="trashx.gif";
                                       imgDel.className="imgGray"
                                 }
                                 else{
                                       imgDel.src="trash.gif";
                                       imgDel.className="imgActiv
                                 }
                            }
                            if (checkSubTable) {
                                 checkSubTable.disabled = (objCount == 0);
                                 if (!checkSubTable.disabled) {
                                       if (checkSubTable.checked){
                                            checkSubTable.checked = (selCount > 0);
                                       }
                                 }
                            }
                            curTableNum = ruleArray[i].tableNum;
                            checkSubTable = document.thisForm.elements
                            selCount = 0;
                            objCount = 0;
                      }
                      checkBox = document.forms["thisForm"]
                      if (checkBox) {
                            checkBox.disabled = (ruleArray[i].prop & POL_NO_DELETE);
                            if (!checkBox.disabled) {
                                 objCount++;
                                 objTotalCouunt++;
                                 if (checkBox.checked){
                                       selCount++;
                                       selTotalCount++;
                                 }
                            }
                      }
                 }
                 //refresh last subtable buttons
                 imgDel = document.images["delImg"+r
                 if (imgDel){
                      if ((objCount == 0) || (selCount == 0)){
                            imgDel.src="trashx.gif";
                            imgDel.className="imgGray"
                      }
                      else{
                            imgDel.src="trash.gif";
                            imgDel.className="imgActiv
                      }
                 }
                 if (checkSubTable) {
                      checkSubTable.disabled = (objCount == 0);
                      if (!checkSubTable.disabled) {
                            if (checkSubTable.checked){
                                 checkSubTable.checked = (selCount > 0);
                            }
                      }
                 }
                 //refresh the rule table buttons
                 if (delMarkedRulesBtn) delMarkedRulesBtn.disabled
                 if (checkAllRules) {
                      checkAllRules.disabled = (objTotalCouunt == 0);
                      if (checkAllRules.checked)
                            checkAllRules.checked = (selTotalCount > 0);
                 }
           }
      }
      function doCheckAllRules(tableNum) {
           if (ruleArray && ruleArray.length) {
                 var checkBox;
                 var checkAllRules = document.thisForm.elements
                 for (i = 0; i < ruleArray.length; i++) {
                      checkBox = document.forms["thisForm"]
                      if (checkBox && !checkBox.disabled) {
                            if (checkAllRules)
                                 checkBox.checked = checkAllRules.checked;
                      }
                 }
                 enableDeleteMarkedBtn();
           }
      }
      function doCheckAllTables()
      {
           if (ruleArray && ruleArray.length) {
                 var checkBox;
                 var checkAllRules = document.thisForm.elements
                 for (i = 0; i < ruleArray.length; i++) {
                      var checkSubTable = document.thisForm.elements
                      checkBox = document.forms["thisForm"]
                      if (checkBox && !checkBox.disabled) {
                            if (checkAllRules)
                            {
                                 checkBox.checked = checkAllRules.checked;
                                 if (checkSubTable&&!checkSubT
                                       checkSubTable.checked = checkAllRules.checked;
                            }
                      }
                 }
                 enableDeleteMarkedBtn();
           }
      }
      function prevNextLink(str) {
           parent.frames["tabFrame"].
      }
      function priorityPopup(index) {
           parent.frames["dataFrame"]
           parent.frames["dataFrame"]
           popup('chgPriorityDlg.html
      }
      function changePriority(d) {
           var modRule = ruleArray[parent.frames["d
           addRuleCgiToForm(-2, modRule);
           modRule.pri = d;
           addRuleCgiToForm(1, modRule);
           ruleSubmit("none");
      }
      function ruleSubmit(str) {
           document.thisForm.cgiactio
           parent.frames["statusFrame
      }
      var addedRuleCgiTags = new Array();
      function addRuleTagToForm(name, val) {
           var form = document.getElementById("t
           addCgiTagToForm(document, form, "hidden", name, val, addedRuleCgiTags);
      }
      function advancedRules() {
           popup("advRuleOptionsDlg.h
      }
      function defaultRules(srcZone,dstZo
           var strMsg;
           strMsg =  "Are you sure you want to reset the\n";
           strMsg += "Network Access Rules to their default values?\n";
           strMsg += "All rules you have added will be erased";
           if (window.confirm(strMsg) == true) {
                 document.thisForm.cgiactio
                 parent.frames["statusFrame
           }
      }
      function jumpToMatrix(view) {
           var ruleView = getCookie(RULE_VIEW);
           if (view != ruleView) {
                 setCookie(RULE_VIEW, view);
           }
           document.location.href = "/rulesMatrixView.html";
      }
      function cleanForm() {
           var form = document.getElementById("t
           removeAddedCgiTagsFromForm
      }
      function clearRuleStats() {
           var f = document.thisForm;
           f.cgiaction.value = "clearRuleStats";
           parent.frames["statusFrame
      }
      function onLoadFunc() {
           // Enable/Disable the add/delete buttons for all tables listed on this page
            var ruleView = getCookie(RULE_VIEW);
           enableDeleteMarkedBtn();
           if (ruleView == null) {
                 ruleView = 0;
           }
           //no options view any more
           if (ruleView == 3) {
                 ruleView = 2;
           }
           document.forms["thisForm"]
           InitPagableButtons();
      }
      function getPageEndItem(){
           var endItem = pageStartItem+pageSize;
           if (endItem > tableSize)
                 endItem = tableSize;
           return endItem;
      }
      function getPrevPageStartItem(){
           var startItem = pageStartItem-pageSize;
           if (startItem < 0)
                 startItem = 0;
           return      startItem;
      }
      function getNextPageStartItem(){
           var startItem = pageStartItem+pageSize;
           if (startItem >= tableSize)
                 startItem = pageStartItem;
           return      startItem;
      }
      function getLastPageStartItem(){
           var startItem = (tableSize - ((tableSize-pageStartItem)
           if (startItem == tableSize)
                 startItem = tableSize - pageSize;
           return startItem;
      }
      function setPagingButtons(){
           var href_firstPage;
           var href_lastPage;
           var href_prevPage;
           var href_nextPage;
           var prevId = getPrevPageStartItem();
           var nextId = getNextPageStartItem();
           var lastId = getLastPageStartItem();
           if (0 >= pageStartItem){
                 document.write('<img border=\"0\" src=\"firstPage.gif\" width=\"16\" height=\"16\">');
                 document.write('<img border=\"0\" src=\"prevPage.gif\" width=\"16\" height=\"16\">');
           }else{
                 href_firstPage = "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=0";
                 href_prevPage = "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=" + prevId;
                 document.write('<a name=\"firstPage\" title=\"First page\" href=\"' + href_firstPage + '\"><img border=\"0\" src=\"firstPage.gif\" width=\"16\" height=\"16\"></a>');
                 document.write('<a name=\"prevPage\" title=\"Prev page\" href=\"'+ href_prevPage + '\"><img border=\"0\" src=\"prevPage.gif\" width=\"16\" height=\"16\"></a>');
           }
           if (tableSize <= (pageStartItem+pageSize)){
                 document.write('<img border=\"0\" src=\"nextPage.gif\" width=\"16\" height=\"16\">');
                 document.write('<img border=\"0\" src=\"lastPage.gif\" width=\"16\" height=\"16\">');
           }else{
                 href_nextPage= "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=" + nextId;
                 href_lastPage = "/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?startItem=" + lastId;
                 document.write('<a name=\"nextPage\" title=\"Next page\" href=\"'+ href_nextPage + '\"><img border=\"0\" src=\"nextPage.gif\" width=\"16\" height=\"16\"></a>');
                 document.write('<a name=\"lastPage\" title=\"Last page\" href=\"' + href_lastPage +'\"><img border=\"0\" src=\"lastPage.gif\" width=\"16\" height=\"16\"></a>');
           }
      }
      function InitPagableButtons(){
           var f = document.thisForm;
          Â
           if (0 >= tableSize){
                 f.iSTStartItem.value = 0;
                 f.iSTStartItem.disabled = true;
           }else      f.iSTStartItem.value = pageStartItem+1;
      }
      function onChangeStartItem(e){
           var Key;
           var f = document.thisForm;
          Â
           if (navigator.appName == 'Netscape')
             Key = e.which;
           else
             Key = e.keyCode;
            Â
           if (Key == 13)
           {
                 var startItem = parseInt(f.iSTStartItem.va
                 if(isNaN(startItem)){
                      alert("The item you have input is invalid, it must be an integer between 1 ~ " + tableSize + ".");
                      f.iSTStartItem.value = pageStartItem+1;
                      f.iSTStartItem.focus();
                      return;
                 }
                 startItem--;
                 if (startItem == pageStartItem){
                      return;
                 }
                 if ((startItem >= tableSize)||(startItem < 0)){
                      alert("The item you have input is invalid, it must be an integer between 1 ~ " + tableSize + ".");
                      f.iSTStartItem.value = pageStartItem+1;
                      f.iSTStartItem.focus();
                      return;
                 }
                 parent.frames.tabFrame.loc
           }
      }
      function getSortedHref(col){
           var      bInverted;
           if (col == tableSortCol)
                 bInverted = (tableSortInverted?0:1);
           else bInverted = 0;
          Â
           return ("/ruleTable_" + srcZoneHandle + "_" + dstZoneHandle + ".html?sortCol=" + col + "&sortInverted=" + bInverted);
      }
      function setColHead(col, title, tip){
           var upArrow = "<img src=\"upArrow.gif\" border=0 width=16 height=16>";
           var downArrow = "<img src=\"downArrow.gif\" border=0 width=16 height=16>";
          Â
           document.write('<a class=\"tableLink\" href=\"' + getSortedHref(col) + '\" onMouseOver=\"dlc(\'' + tip + '\', \'Click to sort by\')\" onMouseOut=\"nd();\" >' + title);
           if (col == tableSortCol){
                 if (0 != tableSortInverted)
                      document.write(upArrow);
                 else
                      document.write(downArrow);
           }
           document.write('</a>');
      }
      // -->
      </script>
      <LINK REL=STYLESHEET HREF="wndStyle.css" TYPE="text/css">
      <style type="text/css" title="supplement">@import
      <title>Access Rules View</title>
</head>
<body onLoad="onLoadFunc()">
<div id="overDiv" style="position:absolute; visibility:hide;"></div>
<script language="JavaScript" src="overlib.js"></script>
<div id="tabData" align="left">
      <form name="thisForm" id="thisForm" action="main.cgi" method="POST" enctype="x-www-form-encode
           <table class="toolBar" border="0" cellspacing="0" cellpadding="0" width="100%" >
                 <tr>
                      <td class="toolBarText" height="35" nowrap> Firewall > Access Rules > LAN > WAN</td>
                      <td align="right" height="35" nowrap>
                      <input type="button" class="applyButton" style="width:170px;" value="Public Server Wizard..."  title="Launch the Public Server Wizard" onClick="publicServerWizar
                     Â
                      <input type=button class=applyButton style="width:110" value="Clear Statistics" title="Clear All Access Rule Statistics..." onClick="clearRuleStats();
                      <input type="button" class="applyButton" style="width:132;right:10p
                      <input type="button" class="applyButton" style="width:20;right:10px
                     Â
                      </td>
                 </tr>
           </table>
           <br>
           <table nowrap border="0" cellspacing="0" cellpadding="0" width="100%">
                 <tr>
                      <td class="groupLabel" valign=bottom nowrap>                Â
                            <script type="text/JavaScript">
                            <!--
                                 document.write('Access Rules (' + fromZone + ' > ' + toZone + ')');
                            // -->
                            </script>
                      </td>
                      <td align=right width=100%>
                            <table border="0" cellspacing="0" cellpadding="1" width="100%">
                                 <tr nowrap style="Height:26;">
                                       <td nowrap align="right">
                                            <table border="0" cellspacing="0" cellpadding="2" width="100%">
                                                  <tr>
                                                       <td class="label" nowrap align="right" valign="bottom" width=100%>Items
                                                             <input name="iSTStartItem" type="text" class="sortBox" style="width:36;height:22;
                                                             <script type="text/JavaScript">
                                                             <!--
                                                                  document.write(' to '+ getPageEndItem() +' (of '+ tableSize + ')');
                                                             // -->
                                                             </script>
                                                       </td>
                                                       <td valign=bottom>
                                                             <script type="text/JavaScript">
                                                             <!--
                                                                  setPagingButtons();
                                                             // -->
                                                             </script>
                                                       </td>
                                                  </tr>
                                            </table>
                                       </td>
                                 </tr>
                            </table>
                      </td>
                 </tr>
           </table>
          Â
           <table border="0" cellspacing="0" cellpadding="0" width="100%">
                 <tr>
                      <td class=line3Ddark width="100%" height="1"><img src="clear.gif" height="1"></td>
                 </tr>
                 <tr>
                      <td class=line3Dlite width="100%" height="1"><img src="clear.gif" height="1"></td>
                 </tr>
           </table>
           <br>
          Â
           <table BORDER=0 CELLSPACING="0" CELLPADDING="0"  WIDTH="100%">
                 <tr>
                      <td class="label">
                            View Style:
                            <input name="knobPageView" id="knobView0" onClick="{ jumpToMatrix(0); }" type="radio"><label id="labelView0" for="knobView0">Matrix</la
                            <input name="knobPageView" id="knobView1" onClick="{ jumpToMatrix(1); }" type="radio"><label id="labelView1" for="knobView1">Drop-down Boxes</label>
<!--
                            <input name="knobPageView" id="knobView2" onClick="{ jumpToMatrix(2); }" type="radio"><label id="labelView2" for="knobView2">Option Buttons</label>
-->
                            <input name="knobPageView" id="knobView2" onClick="{ jumpToMatrix(2); }" type="radio"><label id="labelView2" for="knobView2">All Rules</label>
                      </td>
                 </tr>
           </table>
           <br>
           <table class="ruleTable" valign="middle" border="0" width="100%" cellspacing="0" cellpadding="4" nowrap>
                 <tr>
                      <td class="tableHeader" width="3%" nowrap>
        <input type="checkbox" name="checkAllTables" onclick="doCheckAllTables(
                      <script type="text/JavaScript">
                      <!--
                            if ((-1 == srcZoneHandle)&&(-1 == dstZoneHandle)){
                                 document.write('<td class=\"tableHeader\">');
                                 setColHead(1, 'Zone', 'From Zone');
                                 document.write('</td>');
                                 document.write('<td class=\"tableHeader\" nowrap>></td>');
                                 document.write('<td class=\"tableHeader\">');
                                 setColHead(2, 'Zone', 'To Zone');
                                 document.write('</td>');
                            }
                            else{
                                 if (-1 == srcZoneHandle){
                                       document.write('<td class=\"tableHeader\" nowrap>');
                                       setColHead(1, 'From Zone', 'From Zone');
                                       document.write('</td>');
                                 }
                                 if (-1 == dstZoneHandle){
                                       document.write('<td class=\"tableHeader\" nowrap>');
                                       setColHead(2, 'To Zone', 'To Zone');
                                       document.write('</td>');
                                 }
                            }
                      // -->
                      </script>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(3, 'Priority', 'Priority');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(4, 'Source', 'Source network object');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(5, 'Destination', 'Destination network object');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(6, 'Service', 'Service object');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(7, 'Action', 'Action');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(8, 'Users', 'Allowed users');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(9, 'Comment', 'Comment');
                            // -->
                            </script>
                      </td>
                      <!-- get rid of the log column to save space in rule table
                      <td class="tableHeader" nowrap>Logging</td>
                       -->
                      <td class="tableHeader" nowrap>
                            <script type="text/JavaScript">
                            <!--
                                 setColHead(10, 'Enable', 'Enable');
                            // -->
                            </script>
                      </td>
                      <td class="tableHeader" nowrap>Configure </td>
                 </tr>
                 <tr class="tableLineContrast">
       <input type="checkbox" name="delRule_0_0" onfocus="if (this.disabled) { this.blur(); }" onclick="enableDeleteMarke
       <input type="checkbox" NAME="enableRule_0_0" onClick="ruleEnable(0);" CHECKED value="ON"></td><td><img src=stat.gif border=0 height=20 width=20 onMouseOver="dlc('<table cellpadding=1 cellspacing=0 border=0><tr class=ttSmall><td nowrap><b>Rx Bytes:</b></td><td nowrap>0</td></tr><tr class=ttSmall><td nowrap><b>Rx Packets:</b></td><td nowrap>0</td></tr><tr class=ttSmall><td nowrap><b>Tx Bytes:</b></td><td nowrap>0</td></tr><tr class=ttSmall><td nowrap><b>Tx Packets:</b></td><td nowrap>0</td></tr></table>
                 <tr>
                      <td class="tableHeader" colspan=8 nowrap>
                            <input type="button" class="button"  title="Add a new entry" style="width: 100px;" value=" Add... " onclick="addGenericRule();
                            <input name= "delMarkedRulesBtn" type="button" class="button"  style="width: 100px;" title="Delete marked entries" value="  Delete " onclick="delMarkedRules();
                      </td>
                      <script type="text/JavaScript">
                      <!--
                            if (-1 == srcZoneHandle)
                                 document.write('<td class=\"tableHeader\" nowrap> </td>');
                            if (-1 == dstZoneHandle)
                                 document.write('<td class=\"tableHeader\" nowrap> </td>');
                            if ((-1 == srcZoneHandle)&&(-1 == dstZoneHandle))
                                 document.write('<td class=\"tableHeader\" nowrap> </td>');
                      // -->
                      </script>
                      <td class="tableHeader" colspan=2 align="right" nowrap>
                            <input type="button" class="button" name="defaultBtn" style="width: 140px;" value="Restore Defaults..." title="Restore rule tables to defaults..."  onClick="defaultRules(srcZ
                      </td>
                 </tr>
           </table>
           <input type="hidden" name="cgiaction" value="">
           <input type="hidden" name="error_page" value="ruleTable_1_2.html"
           <input type="hidden" name="refresh_page" value="ruleTable_1_2.html"
      </form>
     Â
</div>
</body>
</html>
What in this code tells the page to make sure the user has authenticated, and can I remove it? Â If I don't authenticate (enter username &Â password on main page), the code for this page shows the code for the 'authenticate page'. Â If I remove the code, can I view the page offline without having to enter username &Â password?
Thanks
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER