home *** CD-ROM | disk | FTP | other *** search
/ PC User 2004 November / PCU1104CD1.iso / software / security / files / norton.exe / Setup / ISCommon / APP / fwUI.dll / HTML / PORTS-POPUP.JS < prev    next >
Encoding:
JavaScript  |  2003-09-06  |  5.7 KB  |  251 lines

  1. ////////////////////////////////////////////////////////////////////////////////////////////
  2. //
  3. // PRODUCT: Norton Internet Security/Symantec Desktop Firewall
  4. //
  5. // NAME:    Ports-Popup.js (Javascript file for Ports-Popup.HTM)
  6. //
  7. // Copyright (c) 2001 by Symantec Corporation. All rights reserved.
  8. //
  9. ////////////////////////////////////////////////////////////////////////////////////////////
  10.  
  11. var g_LocalPorts = null;
  12. var g_RemotePorts = null;
  13. var g_OldLocalPorts = null;
  14. var g_OldRemotePorts = null;
  15.  
  16. function Page_OnLoad()
  17. {
  18.     var args = window.dialogArguments;
  19.  
  20.     UserManager.WatchForFREIntegStart();
  21.  
  22.     if(args[0] == "local") {
  23.         RLocal.checked = true;
  24.         RRemote.checked = false;
  25.     }
  26.     else
  27.     {
  28.         RLocal.checked = false;
  29.         RRemote.checked = true;
  30.     }
  31.  
  32.     g_LocalPorts = new ActiveXObject("ccFWSettg.PortList");
  33.     g_RemotePorts = new ActiveXObject("ccFWSettg.PortList");
  34.  
  35.     g_OldLocalPorts = args[1];
  36.     g_OldRemotePorts = args[2];
  37.     
  38.     OKB.focus();
  39. }
  40.  
  41. function UserManager_OnFREIntegratorStart()
  42. {
  43.      window.navigate('res://closeme.xyz');
  44. }
  45.  
  46. function SelIndividual_OnClick()
  47. {
  48.     Range.style.display = "none";
  49.     List.style.display = "none";
  50.     Individual.style.display = "";
  51.     RPortRange.checked = false;
  52.     RPortList.checked = false;
  53.     RSinglePort.checked = true;
  54. }
  55.  
  56. function SelList_OnClick()
  57. {
  58.     Individual.style.display = "none";
  59.     Range.style.display = "none";
  60.     List.style.display = "";
  61.     RPortRange.checked = false;
  62.     RSinglePort.checked = false;
  63.     RPortList.checked = true;
  64. }
  65.  
  66. function SelRange_OnClick()
  67. {
  68.     Individual.style.display = "none";
  69.     List.style.display = "none";
  70.     Range.style.display = "";
  71.     RSinglePort.checked = false;
  72.     RPortList.checked = false;
  73.     RPortRange.checked = true;
  74. }
  75.  
  76. function OKB_OnClick()
  77. {
  78.     //
  79.     // Prepare some variables to simplify access to objects.
  80.     //
  81.     var Error = false;
  82.     var oKnownPortsList = KnownPorts.KnownPortsList;
  83.  
  84.     var    nList_CheckboxOffset = 0;
  85.     var nList_PortOffset = 1;
  86.  
  87.     //
  88.     // Is this the specified ports list?
  89.     //
  90.     if (PortType[0].checked)
  91.     {
  92.         //
  93.         // Iterate over each service listed in our dialog.
  94.         //
  95.         for(var i=0; i < oKnownPortsList.rows.length;i++)
  96.         {
  97.             if(oKnownPortsList.rows[i].cells[nList_CheckboxOffset].children[0].checked)
  98.             {
  99.                 if(IsValidPort(oKnownPortsList.rows[i].cells[nList_PortOffset].innerText))
  100.                 {
  101.                     var cPort = new ActiveXObject("ccFWSettg.Port");
  102.  
  103.                     cPort.PortNum = oKnownPortsList.rows[i].cells[nList_PortOffset].innerText;
  104.                     cPort.Type = 0;
  105.  
  106.                     if(!AddPortToList(Locality[0].checked, cPort))
  107.                     {
  108.                         Error = true;
  109.                         break;
  110.                     }
  111.                 }
  112.                 else
  113.                 {
  114.                     webWind.MsgBox(StrID("InvalidPort"), UserManager.AppTitle, MB_OK | MB_ICONEXCLAMATION);
  115.                     Error = true;
  116.                     break;
  117.                 }
  118.             }
  119.         }
  120.     }
  121.     //
  122.     // Is this individually specified ports?
  123.     //
  124.     else if (PortType[1].checked)
  125.     {
  126.         var aPort = EnterPorts.value.split(" ");
  127.  
  128.         // 
  129.         // Cycle through space delimited list and add each port.
  130.         //
  131.         for(var nElem = 0; nElem < aPort.length; nElem++)
  132.         {
  133.             //
  134.             // Valid port?
  135.             //
  136.             if (IsValidPort(aPort[nElem]))
  137.             {
  138.                 var cPort = new ActiveXObject("ccFWSettg.Port");
  139.  
  140.                 cPort.PortNum = aPort[nElem];
  141.                 cPort.Type = 0;
  142.  
  143.                 if(!AddPortToList(Locality[0].checked, cPort))
  144.                 {
  145.                     Error = true;
  146.                     break;
  147.                 }
  148.             }
  149.             else
  150.             {
  151.         webWind.MsgBox(StrID("InvalidPort"), UserManager.AppTitle, MB_OK | MB_ICONEXCLAMATION);                
  152.                 Error = true;
  153.                 break;
  154.             }
  155.         
  156.         }
  157.     }
  158.     //
  159.     // Is this a port range?
  160.     //
  161.     else if (PortType[2].checked)
  162.     {
  163.         if (IsValidPort(EnterStartPort.value) && IsValidPort(EnterEndPort.value))
  164.         {                
  165.             var nStart = parseInt(EnterStartPort.value);
  166.             var nEnd = parseInt(EnterEndPort.value);
  167.  
  168.             if(nStart < nEnd)
  169.             {
  170.                 var cPort = new ActiveXObject("ccFWSettg.Port");
  171.  
  172.                 cPort.RangeStart = nStart;
  173.                 cPort.RangeEnd = nEnd;
  174.                 cPort.Type = 1;
  175.  
  176.                 Error = !AddPortToList(Locality[0].checked, cPort);
  177.             }
  178.             else
  179.             {
  180.                 webWind.MsgBox(StrID("PortRangeError"), UserManager.AppTitle, MB_OK | MB_ICONEXCLAMATION);
  181.                 Error = true;
  182.             }
  183.         }
  184.         else
  185.         {
  186.             webWind.MsgBox(StrID("InvalidPort"), UserManager.AppTitle, MB_OK | MB_ICONEXCLAMATION);
  187.             Error = true;
  188.         }
  189.     }
  190.  
  191.     if (!Error)
  192.     {
  193.         var retVals = new Array;
  194.     
  195.         retVals[0] = g_LocalPorts;
  196.         retVals[1] = g_RemotePorts;
  197.  
  198.         window.returnValue = retVals;
  199.         window.navigate("res://closeme.xyz");
  200.     }
  201. }
  202.  
  203. function CancelB_OnClickOrReset()
  204. {
  205.     var retVals = new Array;
  206.     
  207.     retVals[0] = null;
  208.     retVals[1] = null;
  209.  
  210.     returnValue = retVals;
  211.     window.navigate("res://closeme.xyz");
  212. }
  213.  
  214. function AddPortToList(localPort, portItem)
  215. {
  216.     var Success = true;
  217.  
  218.     if(localPort)
  219.     {
  220.         if(null == g_OldLocalPorts.IsPortInList(portItem))
  221.         {
  222.             g_LocalPorts.LastError = 0;
  223.             g_LocalPorts.AppendItem(portItem);
  224.             if(HandleListError(g_LocalPorts.LastError, 1008, 110))
  225.                 Success = false;
  226.         }
  227.         else
  228.         {
  229.             webWind.MsgBox(StrID("PortDupeEntry"), UserManager.AppTitle, MB_OK | MB_ICONEXCLAMATION);
  230.             Success = false;
  231.         }
  232.  
  233.     }
  234.     else
  235.     {
  236.         if(null == g_OldRemotePorts.IsPortInList(portItem))
  237.         {
  238.             g_RemotePorts.LastError = 0;
  239.             g_RemotePorts.AppendItem(portItem);                
  240.             if(HandleListError(g_RemotePorts.LastError, 1008, 111))
  241.                 Success = false;
  242.         }
  243.         else
  244.         {
  245.             webWind.MsgBox(StrID("PortDupeEntry"), UserManager.AppTitle, MB_OK | MB_ICONEXCLAMATION);
  246.             Success = false;
  247.         }
  248.     }
  249.  
  250.     return Success;
  251. }