home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2002 March / PCWMAR02.iso / software / windowsxp / ftgateoffice / ftgateoffice.exe / Main / schedule.fts < prev    next >
Encoding:
Text File  |  2001-11-29  |  17.7 KB  |  540 lines

  1. <%
  2. #include </utility/security.fts>
  3. #include </utility/global.fts>
  4. #include </utility/theme.fts>
  5. #include </utility/ftgate.fts>
  6.  
  7. var s = new server.schedule
  8.  
  9. const DOM_INTERNET    = 2
  10. const DOM_ALIAS            = 3
  11.  
  12. function domainType(d)
  13. {
  14.     var type
  15.  
  16.     if (d.description=="Local")
  17.         type=DOM_LOCAL
  18.     else if (d.description=="Remote")
  19.         type=DOM_REMOTE
  20.     else
  21.         type=DOM_ALIAS
  22.  
  23.     return type
  24. }
  25.  
  26. if (form.config=="1")
  27. {
  28.     if (build()==FTGATE_PRO)
  29.         s.name = form.name
  30.     else
  31.         s.first()
  32.  
  33.     var ok=true
  34.     while (ok)
  35.     {
  36.         s.connectionmethod = form.connectionmethod
  37.         s.postconnectsleeptime = form.postconnectsleeptime
  38.         s.inactivitytimeout = form.inactivitytimeout
  39.         s.command = form.schedcommand
  40.         s.script = form.script
  41.         s.kickaddress = form.kickaddress
  42.         s.kickport = form.kickport 
  43.         s.primarydns= form.primarydns
  44.         s.secondarydns = form.secondarydns
  45.  
  46.         if (build()!=FTGATE_PRO)
  47.         {
  48.             s.next()
  49.             if (!s.name)
  50.                 ok=false
  51.         }
  52.         else
  53.             ok=false
  54.     }
  55.  
  56.     if (build()!=FTGATE_PRO)
  57.         s.first()
  58.  
  59.     if (form.command==1)
  60.     {
  61.         if (form.redirect!="")
  62.         {
  63.             var str = form.redirect
  64.             if (str.indexof("?",0)==-1)
  65.                 output.redirect(form.redirect+"?schedule="+s.name)
  66.             else
  67.                 output.redirect(form.redirect+"&schedule="+s.name)
  68.         }
  69.     }
  70.     else if (form.command==2)
  71.     {
  72.             output.redirect("scriptedit.fts?schedule="+s.name)
  73.     }
  74. }
  75. else if (form.config=="2")
  76. {
  77.   if (form.redirect!="")
  78.     {
  79.         var str = form.redirect
  80.         if (str.indexof("?",0)==-1)
  81.             output.redirect(form.redirect+"?schedule="+form.name)
  82.         else
  83.             output.redirect(form.redirect+"&schedule="+form.name)
  84.     }
  85. }
  86. else
  87. {
  88.     if (build()==FTGATE_PRO)
  89.         s.name = request.schedule
  90.     else
  91.         s.first()
  92. }
  93. %>
  94. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
  95. <HTML>
  96. <HEAD>
  97. <LINK REL=STYLESHEET HREF="/utility/main<%=nn4%>.css" TYPE="text/css">
  98. <META NAME="GENERATOR" CONTENT="Microsoft Developer Studio">
  99. <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
  100. <TITLE>Schedules -- General</TITLE>
  101.  
  102. <SCRIPT LANGUAGE="JavaScript1.2" TYPE="text/javascript">
  103. <!--
  104. var dir="<%=buttons%>";
  105. var pro=<%=build()==FTGATE_PRO%>;
  106.  
  107. if (!document.images) {}
  108. else {
  109.   plus0 = new Image();
  110.   plus0.src  = dir+"open.gif";
  111.   plus1 = new Image();
  112.   plus1.src = dir+"openon.gif";
  113.   minus0 = new Image();
  114.   minus0.src  = dir+"close.gif";
  115.   minus1 = new Image();
  116.   minus1.src = dir+"closeon.gif";
  117.   edit0 = new Image();
  118.   edit0.src  = dir+"edit.gif";
  119.   edit1 = new Image();
  120.   edit1.src = dir+"editon.gif";
  121. }
  122.  
  123. <%
  124. if (netscape)
  125. {
  126.   %>
  127.   document.captureEvents(Event.KEYPRESS);
  128.   document.onkeypress = keypress;
  129.  
  130.   function keypress(event)
  131.   {
  132.     if (event.which==13)
  133.     {
  134.       onApply();
  135.       return false;
  136.     }
  137.  
  138.     return true;
  139.   }
  140.   <%
  141. }
  142. else
  143. {
  144.   %>
  145.   function keypress()
  146.   {
  147.     if (event.keyCode==13)
  148.     {
  149.       event.returnValue=null;
  150.       onApply();
  151.     }
  152.   }
  153.   <%
  154. }
  155. %>
  156.  
  157. function onLoad()
  158. {
  159.     <%
  160.     if (build()==FTGATE_PRO)
  161.         output.writeln("setPage(3, \"Schedules\");")
  162.     else
  163.         output.writeln("setPage(4, \"Remote Domain\");")
  164.     %>
  165.     document.ftgate.postconnectsleeptime.value = toNicePeriod(<%=s.postconnectsleeptime%>);
  166.     document.ftgate.inactivitytimeout.value = toNicePeriod(<%=s.inactivitytimeout%>);
  167.   document.ftgate.primarydns.focus();
  168. }
  169.  
  170. function isOK(form)
  171. {
  172.     if (!isPeriod(form.postconnectsleeptime.value))
  173.     {
  174.         alert("The period is invalid: enter a number followed by s, m, h, or d");
  175.         form.postconnectsleeptime.focus();
  176.  
  177.         return false;
  178.     }
  179.  
  180.     if (!isPeriod(form.inactivitytimeout.value))
  181.     {
  182.         alert("The period is invalid: enter a number followed by s, m, h, or d");
  183.         form.inactivitytimeout.focus();
  184.  
  185.         return false;
  186.     }
  187.     document.ftgate.postconnectsleeptime.value = fromNicePeriod(document.ftgate.postconnectsleeptime.value);
  188.     document.ftgate.inactivitytimeout.value = fromNicePeriod(document.ftgate.inactivitytimeout.value);
  189.  
  190.     return true;
  191. }    
  192.  
  193. function onUpEdit(edit, name)
  194. {
  195.   change(name, 'plus', 0);
  196.   onUpPeriod(edit);
  197.   setModified(true);
  198. }
  199.  
  200. function onDownEdit(edit, name)
  201. {
  202.   change(name, 'minus', 0);
  203.   onDownPeriod(edit);
  204.   setModified(true);
  205. }
  206.  
  207. function onCancelLocal()
  208. {
  209.     <%
  210.     if (build()==FTGATE_PRO)
  211.         output.writeln("onCancel()")
  212.     else
  213.     {
  214.         %>
  215.         if (!checkModified())
  216.             return;
  217.  
  218.         window.location.href="/domains/index.fts";
  219.         <%
  220.     }
  221.     %>
  222. }
  223.  
  224. function onCloseLocal()
  225. {
  226.     <%
  227.     if (build()==FTGATE_PRO)
  228.         output.writeln("onClose()")
  229.     else
  230.     {
  231.         %>
  232.         if (!isOK(document.ftgate))
  233.             return;
  234.  
  235.         document.ftgate.redirect.value="/domains/index.fts";
  236.         document.ftgate.submit();
  237.         <%
  238.     }
  239.     %>
  240. }
  241.  
  242. function onScriptEdit()
  243. {
  244.     if (!isScript(document.ftgate.script.value))
  245.     {
  246.         alert(errScript);
  247.         document.ftgate.script.focus();
  248.         return;
  249.     }
  250.  
  251.     document.ftgate.command.value="2";
  252.     document.ftgate.submit();
  253. }
  254.  
  255. //-->
  256. </SCRIPT>
  257. <SCRIPT LANGUAGE="JavaScript1.2" SRC="/utility/cookies.js" TYPE="text/javascript"></SCRIPT>
  258. <SCRIPT LANGUAGE="JavaScript1.2" SRC="/utility/core.js" TYPE="text/javascript"></SCRIPT>
  259. <SCRIPT LANGUAGE="JavaScript1.2" SRC="/utility/time.js" TYPE="text/javascript"></SCRIPT>
  260. <SCRIPT LANGUAGE="JavaScript1.2" SRC="/utility/spin.js" TYPE="text/javascript"></SCRIPT>
  261. <SCRIPT LANGUAGE="JavaScript1.2" SRC="/utility/dialog.js" TYPE="text/javascript"></SCRIPT>
  262. </HEAD>
  263.  
  264. <BODY BGCOLOR="white" onLoad="onLoad()" MARGINHEIGHT="0" MARGINWIDTH="0" onkeypress="keypress()">
  265.  
  266. <TABLE BORDER="0" BGCOLOR="<%=border%>" WIDTH="<%=bodywidth%>" HEIGHT="<%=bodyheight%>" CELLPADDING="0" CELLSPACING="0"><TR><TD> </TD><TD VALIGN="TOP">
  267.  
  268. <%
  269. if (build()==FTGATE_PRO)
  270. {
  271.     %>
  272.     <A HREF="index.fts"><SPAN ID="top">Schedules</SPAN></A><SPAN ID="top"> /</SPAN>
  273.     <SPAN ID="topsel"><%=s.name%></SPAN>
  274.     <%
  275. }
  276. else
  277. {
  278.     var d = new server.domain
  279.     var ok=d.findfirst("*")
  280.     while (ok&&(domainType(d)!=DOM_REMOTE))
  281.         ok=d.findnext()
  282.     %>
  283.     <A HREF="/domains/index.fts"><SPAN ID="top">Domains</SPAN></A><SPAN ID="top"> /</SPAN>
  284.     <SPAN ID="topsel"><%=d.domainname%></SPAN>
  285.     <%
  286. }
  287. %>
  288.  
  289. <FORM NAME="ftgate" METHOD="POST" onSubmit="return isOK(this)" ACTION="schedule.fts">
  290. <!-- hidden variables -->
  291. <INPUT TYPE="HIDDEN" NAME="name" VALUE="<%=s.name%>">
  292. <INPUT TYPE="HIDDEN" NAME="config" VALUE="1">
  293. <INPUT TYPE="HIDDEN" NAME="command" VALUE="1">
  294. <INPUT TYPE="HIDDEN" NAME="redirect" VALUE="">
  295.  
  296. <!-- start of the tabs -->
  297. <TABLE BORDER="0" WIDTH="100%" CELLSPACING="0" CELLPADDING="0">
  298. <%
  299. if (build()==FTGATE_PRO)
  300. {
  301. %>
  302. <TABLE BORDER="0" WIDTH="100%" CELLSPACING="0" CELLPADDING="0">
  303.     <TR>
  304.         <TD WIDTH="5" HEIGHT="18"><IMG SRC="/images/left-s.gif" VSPACE="0" BORDER="0" WIDTH="5" HEIGHT="18"></TD>
  305.         <TD CLASS="navon" WIDTH="50" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('schedule.fts')" CLASS="navon">General</A></TD>
  306.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  307.         <TD CLASS="navoff" WIDTH="55" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('times.fts')" CLASS="navoff">Times</A></TD>
  308.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  309.         <TD CLASS="navoff" WIDTH="50" HEIGHT="18"ALIGN="CENTER"><A HREF="javascript:onLaunch('dialup.fts')" CLASS="navoff">Dialup</A></TD>
  310.         <TD WIDTH="5" HEIGHT="18"><IMG SRC="/images/right.gif" VSPACE="0" BORDER="0" WIDTH="5" HEIGHT="18"></TD>
  311.         <TD WIDTH="<%=bodywidth-167%>" HEIGHT="18"> </TD>
  312.     </TR>
  313. </TABLE>
  314. <%
  315. }
  316. else
  317. {
  318. %>
  319. <TABLE BORDER="0" WIDTH="100%" CELLSPACING="0" CELLPADDING="0">
  320.   <TR>
  321.         <TD WIDTH="5" HEIGHT="18"><IMG SRC="/images/left.gif" VSPACE="0" BORDER="0" WIDTH="5" HEIGHT="18"></TD>
  322.         <TD CLASS="navoff" WIDTH="50" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('/domains/remote.fts')" CLASS="navoff">General</A></TD>
  323.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  324.         <TD CLASS="navoff" WIDTH="55" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('/domains/delivery.fts')" CLASS="navoff">Delivery</A></TD>
  325.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  326.         <TD CLASS="navoff" WIDTH="55" HEIGHT="18"ALIGN="CENTER"><A HREF="javascript:onLaunch('/domains/security.fts')" CLASS="navoff">Security</A></TD>
  327.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  328.         <TD CLASS="navoff" WIDTH="55" HEIGHT="18"ALIGN="CENTER"><A HREF="javascript:onLaunch('/domains/details.fts')" CLASS="navoff">Details</A></TD>
  329.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  330.         <TD CLASS="navoff" WIDTH="55" HEIGHT="18"ALIGN="CENTER"><A HREF="javascript:onLaunch('/domains/priority.fts')" CLASS="navoff">Priority</A></TD>
  331.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  332.         <TD CLASS="navon" WIDTH="70" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('/schedules/schedule.fts')" CLASS="navon">Connection</A></TD>
  333.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  334.         <TD CLASS="navoff" WIDTH="55" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('/schedules/dialup.fts')" CLASS="navoff">Dialup</A></TD>
  335.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  336.         <TD CLASS="navoff" WIDTH="55" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('/schedules/times.fts?id=1')" CLASS="navoff">Times A</A></TD>
  337.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  338.         <TD CLASS="navoff" WIDTH="55" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('/schedules/times.fts?id=2')" CLASS="navoff">Times B</A></TD>
  339.         <TD BGCOLOR="black" WIDTH="1" HEIGHT="18" ALIGN="CENTER"><IMG SRC="/images/1pixel.gif" WIDTH="1" HEIGHT="18"></TD>
  340.         <TD CLASS="navoff" WIDTH="50" HEIGHT="18" ALIGN="CENTER"><A HREF="javascript:onLaunch('/mailboxes/mailbox.fts')" CLASS="navoff">Outbox</A></TD>
  341.         <TD WIDTH="5" HEIGHT="18"><IMG SRC="/images/right.gif" VSPACE="0" BORDER="0" WIDTH="5" HEIGHT="18"></TD>
  342.         <TD WIDTH="<%=bodywidth-574%>" HEIGHT="18"> </TD>
  343.   </TR>
  344. </TABLE>
  345. <%
  346. }
  347. %>
  348. <!-- end of the tabs -->
  349.  
  350. <!-- start of the tab body -->
  351. <TABLE BORDER="0" BGCOLOR="<%=border%>" WIDTH="100%" CELLPADDING="0" CELLSPACING="0"><TR><TD>
  352. <TABLE <%=table%> CELLPADDING="0" CELLSPACING="0">
  353. <!-- start of block -->
  354. <TR>
  355. <TD VALIGN="TOP">
  356.      <!-- sub table goes here -->
  357.   <TABLE BORDER="0" WIDTH="100%">
  358.     <TR>
  359.       <TD>
  360.               <TABLE CLASS="box" WIDTH="100%">
  361.           <TR>
  362.             <TD>
  363.                             <TABLE BORDER="0" WIDTH="100%">
  364.                                 <TR>
  365.                                     <TH>Connection Options</TH>
  366.                                 </TR>
  367.                                 <TR>
  368.                                     <TD>
  369.                                         <INPUT TYPE="RADIO" NAME="connectionmethod" VALUE="<%=CM_LAN%>" onClick="setModified(true)"
  370.                                         <% if (s.connectionmethod==CM_LAN) output.write("CHECKED") %>>Connect using LAN ignoring schedule<BR>
  371.                                         <INPUT TYPE="RADIO" NAME="connectionmethod" VALUE="<%=CM_PROXYROUTER%>" onClick="setModified(true)"
  372.                                         <% if (s.connectionmethod==CM_PROXYROUTER) output.write("CHECKED") %>>Connect using a proxy server or dialup router<BR>
  373.                                         <INPUT TYPE="RADIO" NAME="connectionmethod" VALUE="<%=CM_DIALUP%>" onClick="setModified(true)"
  374.                                         <% if (s.connectionmethod==CM_DIALUP) output.write("CHECKED") %>>Connect using a dialup connection<BR>
  375.                                     </TD>
  376.                                 </TR>
  377.                             </TABLE>
  378.                         </TD>
  379.                     </TR>
  380.                 </TABLE>
  381.       </TD>
  382.     </TR>
  383.       <!-- sub table ends here -->
  384.       <!-- sub table goes here -->
  385.     <TR>
  386.       <TD>
  387.               <TABLE CLASS="box" WIDTH="100%">
  388.           <TR>
  389.             <TD>
  390.               <TABLE BORDER="0" WIDTH="100%">
  391.                         <TR>
  392.                             <TH COLSPAN="2">DNS Servers</TH>
  393.                         </TR>
  394.                         <TR>
  395.                             <TD>Primary</TD>
  396.                             <TD><INPUT TYPE="TEXT" NAME="primarydns" SIZE="<%=size40%>" VALUE="<%=s.primarydns%>" onChange="setModified(true)"></TD>
  397.                         </TR>
  398.                         <TR>
  399.                             <TD>Secondary</TD>
  400.                             <TD><INPUT TYPE="TEXT" NAME="secondarydns" SIZE="<%=size40%>" VALUE="<%=s.secondarydns%>" onChange="setModified(true)"></TD>
  401.                         </TR>
  402.               </TABLE>
  403.                         </TD>
  404.                     </TR>
  405.         </TABLE>
  406.       </TD>
  407.     </TR>
  408.       <!-- sub table ends here -->
  409.       <!-- sub table goes here -->
  410.     <TR>
  411.       <TD HEIGHT="1%">
  412.               <TABLE CLASS="box" WIDTH="100%">
  413.           <TR>
  414.             <TD>
  415.               <TABLE BORDER="0" WIDTH="100%">
  416.                         <TR>
  417.                             <TH COLSPAN="2">When Online</TH>
  418.                         </TR>
  419.                         <TR>
  420.                             <TD>Minimum sleep time</TD>
  421.                             <TD>
  422.                                 <INPUT TYPE="TEXT" NAME="postconnectsleeptime" SIZE="<%=size5%>" VALUE="<%=s.postconnectsleeptime%>" onChange="setModified(true)">
  423.                                 <A HREF="javascript:onUpEdit(document.ftgate.postconnectsleeptime, 'plusA')"
  424.                                 onMouseDown="change('plusA', 'plus', 1)"
  425.                                 onMouseOut="change('plusA', 'plus', 0)"><IMG SRC="<%=buttons%>open.gif" NAME="plusA" BORDER="0" WIDTH="20" HEIGHT="20" ALT="Increment"></A>
  426.                                 <A HREF="javascript:onDownEdit(document.ftgate.postconnectsleeptime, 'minusA')"
  427.                                 onMouseDown="change('minusA', 'minus', 1)"
  428.                                 onMouseOut="change('minusA', 'minus', 0)"><IMG SRC="<%=buttons%>close.gif" NAME="minusA" BORDER="0" WIDTH="20" HEIGHT="20" ALT="Decrement"></A>
  429.                             </TD>
  430.                             <TD>Inactivity timeout</TD>
  431.                             <TD>
  432.                                 <INPUT TYPE="TEXT" NAME="inactivitytimeout" SIZE="<%=size5%>" VALUE="<%=s.inactivitytimeout%>" onChange="setModified(true)">
  433.                                 <A HREF="javascript:onUpEdit(document.ftgate.inactivitytimeout, 'plusB')"
  434.                                 onMouseDown="change('plusB', 'plus', 1)"
  435.                                 onMouseOut="change('plusB', 'plus', 0)"><IMG SRC="<%=buttons%>open.gif" NAME="plusB" BORDER="0" WIDTH="20" HEIGHT="20" ALT="Increment"></A>
  436.                                 <A HREF="javascript:onDownEdit(document.ftgate.inactivitytimeout, 'minusB')"
  437.                                 onMouseDown="change('minusB', 'minus', 1)"
  438.                                 onMouseOut="change('minusB', 'minus', 0)"><IMG SRC="<%=buttons%>close.gif" NAME="minusB" BORDER="0" WIDTH="20" HEIGHT="20" ALT="Decrement"></A>
  439.                             </TD>
  440.                         </TR>
  441.               </TABLE>
  442.                         </TD>
  443.                     </TR>
  444.         </TABLE>
  445.       </TD>
  446.     </TR>
  447.       <!-- sub table ends here -->
  448.       <!-- sub table goes here -->
  449.     <TR>
  450.       <TD HEIGHT="1%">
  451.               <TABLE CLASS="box" WIDTH="100%">
  452.           <TR>
  453.             <TD>
  454.               <TABLE BORDER="0" WIDTH="100%">
  455.                         <TR>
  456.                             <TH COLSPAN="2">Execute After Connecting</TH>
  457.                         </TR>
  458.                         <TR>
  459.                             <TD>Command</TD>
  460.                             <TD><INPUT TYPE="TEXT" NAME="schedcommand" SIZE="<%=size40%>" VALUE="<%=s.command%>" onChange="setModified(true)"></TD>
  461.                         </TR>
  462.                         <TR>
  463.                             <TD>Script</TD>
  464.                             <TD>
  465.                                         <INPUT TYPE="TEXT" NAME="script" SIZE="<%=size40%>" VALUE="<%=s.script%>" onChange="setModified(true)">
  466.                                         <A HREF="javascript:onScriptEdit()"
  467.                                         onMouseDown="change('editA', 'edit', 1)"
  468.                                         onMouseOut="change('editA', 'edit', 0)"><IMG SRC="<%=buttons%>edit.gif" NAME="editA" BORDER="0" WIDTH="50" HEIGHT="20" ALT="Edit script" HSPACE="5"></A>
  469.                                     </TD>
  470.                         </TR>
  471.               </TABLE>
  472.                         </TD>
  473.                     </TR>
  474.         </TABLE>
  475.       </TD>
  476.     </TR>
  477.       <!-- sub table ends here -->
  478.       <!-- sub table goes here -->
  479.     <TR>
  480.       <TD HEIGHT="1%">
  481.               <TABLE CLASS="box" WIDTH="100%">
  482.           <TR>
  483.             <TD>
  484.               <TABLE BORDER="0" WIDTH="100%">
  485.                         <TR>
  486.                             <TH COLSPAN="4">Proxy/Router Kick</TH>
  487.                         </TR>
  488.                         <TR>
  489.                             <TD COLSPAN="4">Kick the proxy or router by connecting to the following:</TD>
  490.                         </TR>
  491.                         <TR>
  492.                             <TD>Address</TD>
  493.                             <TD><INPUT TYPE="TEXT" NAME="kickaddress" SIZE="<%=size40%>" VALUE="<%=s.kickaddress%>" onChange="setModified(true)"></TD>
  494.                             <TD>Port</TD>
  495.                             <TD><INPUT TYPE="TEXT" NAME="kickport" SIZE="<%=size5%>" VALUE="<%=s.kickport%>" onChange="setModified(true)"></TD>
  496.                         </TR>
  497.               </TABLE>
  498.                         </TD>
  499.                     </TR>
  500.         </TABLE>
  501.       </TD>
  502.     </TR>
  503.       <!-- sub table ends here -->
  504.       <!-- table footer goes here -->
  505.         <TR>
  506.             <TD VALIGN="TOP" ALIGN="RIGHT">
  507.                 <A HREF="javascript:onCloseLocal()"
  508.                 onMouseDown="change('closeA', 'ok', 1)"
  509.                 onMouseOut="change('closeA', 'ok', 0)"><IMG SRC="<%=buttons%>ok.gif" NAME="closeA" BORDER="0" WIDTH="50" HEIGHT="20" ALT="Apply changes and close" HSPACE="5"></A>
  510.                 <A HREF="javascript:onCancelLocal()"
  511.                 onMouseDown="change('cancelA', 'cancel', 1)"
  512.                 onMouseOut="change('cancelA', 'cancel', 0)"><IMG SRC="<%=buttons%>cancel.gif" NAME="cancelA" BORDER="0" WIDTH="50" HEIGHT="20" ALT="Cancel"></A>
  513.                 <A HREF="javascript:onApply()"
  514.                 onMouseDown="change('applyA', 'apply', 1)"
  515.                 onMouseOut="change('applyA', 'apply', 0)"><IMG SRC="<%=buttons%>apply.gif" NAME="applyA" BORDER="0" WIDTH="50" HEIGHT="20" ALT="Apply changes" HSPACE="5"></A>
  516.             </TD>
  517.         </TR>
  518.       <!-- table footer ends here -->
  519.   </TABLE>
  520. </TD>
  521. </TR>
  522. <!-- end of block -->
  523. </TABLE>
  524. </TD></TR></TABLE>
  525.  
  526. <!-- footer starts here -->
  527. <SCRIPT LANGUAGE="JavaScript1.2" TYPE="text/javascript">
  528. <!--
  529.     var href="/schedules/schedule.fts?schedule=<%=s.name%>";
  530.     var bodywidth=<%=bodywidth%>;
  531. //-->
  532. </SCRIPT>
  533. <SCRIPT LANGUAGE="JavaScript1.2" SRC="/utility/footer.js" TYPE="text/javascript"></SCRIPT>
  534. <!-- footer ends here -->
  535. </FORM>
  536.  
  537. </TD><TD WIDTH="10"> </TD></TR></TABLE>
  538. </BODY>
  539. </HTML>
  540.