--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--
+ (c) 2005 U.S. Robotics Corporation
+-->
+<html>
+<head>
+ <title></title>
+
+ <link href="usr_main.css" rel="stylesheet" type="text/css">
+ <script src="usr_menus.js" type="text/javascript"></script>
+ <script src="usr_common.js" type="text/javascript"></script>
+
+ <meta HTTP-EQUIV='Pragma' CONTENT='no-cache'>
+
+ <script type="text/javascript" src="util.js"></script>
+ <script type="text/javascript">
+<!-- hide
+setPageTitle("<%ejGetWl(wlInterface)%>");
+
+var dhcpClnt = '<%ejGet(enblDhcpClnt)%>';
+var addr = '<%ejGet(wanIpAddress)%>';
+var mask = '<%ejGet(wanSubnetMask)%>';
+var enblAuto = '<%ejGet(enblAuto)%>';
+var gtwyIfc = '<%ejGetOther(sysInfo, dfltGwIfc)%>';
+if ( gtwyIfc == ' ' ) gtwyIfc = '';
+var gtwy = '<%ejGetOther(sysInfo, dfltGw)%>';
+if ( gtwy == ' ' ) gtwy = '';
+var dnsAuto = '<%ejGetOther(sysInfo,dnsAuto)%>';
+var dns1Mem = '<%ejGet(dnsPrimary)%>';
+var dns1 = '<%ejGetOther(sysInfo, dns)%>';
+if ( dns1 == ' ' )
+ dns1 = '';
+var dns2Mem = '<%ejGet(dnsSecondary)%>';
+var dns2 = '<%ejGetOther(sysInfo, dns2)%>';
+if ( dns2 == ' ' )
+ dns2 = '';
+var qs = '<%ejGet(quickSetup)%>';
+var srvId = parseInt('<%ejGet(serviceId)%>');
+
+function disableDnsInfo() {
+ with ( document.forms[0] ) {
+ dnsPrimary.disabled = 1;
+ dnsPrimary.value = '';
+ dnsSecondary.disabled = 1;
+ dnsSecondary.value = '';
+ }
+}
+
+function enableDnsInfo() {
+ with ( document.forms[0] ) {
+ dnsPrimary.disabled = 0;
+ dnsPrimary.value = dns1;
+ dnsSecondary.disabled = 0;
+ dnsSecondary.value = dns2;
+ }
+}
+
+function dnsClick() {
+ with ( document.forms[0] ) {
+ if ( dns[0].checked == true )
+ disableDnsInfo();
+ else
+ enableDnsInfo();
+ }
+}
+
+function disableGwInfo() {
+ with ( document.forms[0] ) {
+ gwAddr.disabled = 1;
+ gwAddr.checked = false;
+ defaultGateway.disabled = 1;
+ defaultGateway.value = '';
+ gwIfc.disabled = 1;
+ gwIfc.checked = false;
+ wanIf.disabled = 1;
+ }
+}
+
+function enableGwInfo() {
+ with ( document.forms[0] ) {
+ gw[1].checked = true;
+ gwAddr.disabled = 0;
+ if ( isValidIpAddress(gtwy) == true ) {
+ gwAddr.checked = true;
+ defaultGateway.value = gtwy;
+ } else {
+ gwAddr.checked = false;
+ defaultGateway.value = '';
+ }
+ defaultGateway.disabled = 0;
+ gwIfc.disabled = 0;
+ if ( gtwyIfc != '' )
+ gwIfc.checked = true;
+ else
+ gwIfc.checked = false;
+ wanIf.disabled = 0;
+ }
+}
+
+function gwClick() {
+ with ( document.forms[0] ) {
+ if ( gw[0].checked == true )
+ disableGwInfo();
+ else
+ enableGwInfo();
+ }
+}
+
+function disableWanInfo() {
+ with ( document.forms[0] ) {
+ wanIpAddress.disabled = 1;
+ wanIpAddress.value = '';
+ wanSubnetMask.disabled = 1;
+ wanSubnetMask.value = '';
+ }
+}
+
+function enableWanInfo() {
+ with ( document.forms[0] ) {
+ wanIpAddress.disabled = 0;
+ wanIpAddress.value = addr;
+ wanSubnetMask.disabled = 0;
+ wanSubnetMask.value = mask;
+ }
+}
+
+function wanClick() {
+ with ( document.forms[0] ) {
+ if ( wan[0].checked == true )
+ disableWanInfo();
+ else
+ enableWanInfo();
+ }
+}
+
+function frmLoad() {
+ with ( document.forms[0] ) {
+ if ( dhcpClnt == '1' ) {
+ wan[0].checked = true;
+ disableWanInfo();
+ } else {
+ wan[1].checked = true;
+ enableWanInfo();
+ }
+ if ( enblAuto == '1' ) {
+ gw[0].checked = true;
+ disableGwInfo();
+ } else {
+ gw[1].checked = true;
+ enableGwInfo();
+ }
+ if (dnsAuto == '1') {
+ dns[0].checked = true;
+ disableDnsInfo();
+ } else {
+ dns[1].checked = true;
+ enableDnsInfo();
+ }
+ }
+}
+
+function btnNext() {
+ var loc = 'natcfg2.cgi?';
+
+ with ( document.forms[0] ) {
+ dns1 = dnsPrimary.value;
+ dns2 = dnsSecondary.value;
+ // wan IP address
+ if ( wan[0].checked == true )
+ loc += 'enblDhcpClnt=1'; // auto WAN address
+ else {
+ loc += 'enblDhcpClnt=0'; // static WAN address
+ if ( isValidIpAddress(wanIpAddress.value) == false ) {
+ alert('WAN IP address "' + wanIpAddress.value + '" is invalid IP address.');
+ return;
+ }
+ loc += '&wanIpAddress=' + wanIpAddress.value;
+ if ( isValidIpAddress(wanSubnetMask.value) == false ) {
+ alert('WAN subnet mask "' + wanSubnetmask.value + '" is invalid IP address.');
+ return;
+ }
+ loc += '&wanSubnetMask=' + wanSubnetMask.value;
+ }
+ // default gateway
+ if ( gw[0].checked == false ) {
+ if ( gwAddr.checked == false && gwIfc.checked == false ) {
+ alert('There is no selection for default gateway.');
+ return;
+ }
+ if ( gwAddr.checked == true ) {
+ if ( isValidIpAddress(defaultGateway.value) == false ) {
+ alert('Remote WAN IP address "' + defaultGateway.value + '" is invalid IP address.');
+ return;
+ }
+ loc += '&defaultGateway=' + defaultGateway.value;
+ } else
+ loc += '&defaultGateway=0.0.0.0';
+ if ( gwIfc.checked == true ) {
+ var idx = wanIf.selectedIndex;
+ var ifc = wanIf.options[idx].value;
+ // if chosen interface is MER but does not specify static IP address then display error
+ if ( ifc.indexOf('nas_') != -1 && gwAddr.checked == false ) {
+ alert('Default gateway IP address should be specified since MER interface is selected.');
+ return;
+ }
+ loc += '&wanIfName=' + ifc;
+ } else
+ loc += '&wanIfName=';
+ // use static default gateway
+ loc += '&enblAuto=0';
+ } else {
+ loc += '&defaultGateway=0.0.0.0';
+ loc += '&wanIfName=';
+ loc += '&enblAuto=1';
+ }
+ if ( dns[0].checked == false ) {
+ // primary DNS
+ if ( isValidIpAddress(dns1) == false ) {
+ alert('Primary DNS server "' + dnsPrimary.value + '" is invalid IP address.');
+ return;
+ }
+ loc += '&dnsPrimary=' + dns1;
+ // secondary DNS
+ if ( dns2 != '' && dns2 != '0.0.0.0' ) {
+ if ( isValidIpAddress(dns2) == false ) {
+ alert('Secondary DNS server "' + dns2 + '" is invalid IP address.');
+ return;
+ }
+ }
+ loc += '&dnsSecondary=' + dns2;
+ loc += '&dnsDynamic=0';
+ } else {
+ loc += '&dnsPrimary=0.0.0.0';
+ loc += '&dnsSecondary=0.0.0.0';
+ loc += '&dnsDynamic=1';
+ }
+ }
+
+ var code = 'location.assign("' + loc + '")';
+ eval(code);
+}
+
+function btnBack() {
+ var loc = 'ntwkprtcl.html';
+
+ var code = 'location.assign("' + loc + '")';
+ eval(code);
+}
+
+// done hiding -->
+</script>
+</head>
+
+<body onload="initMenu('idMenu'); frmLoad();">
+
+<script type="text/javascript">
+ writeHeader("WAN IP Settings", "<%ejGet(curUserName)%>", "<%ejGetOther(sysInfo, adslStd)%>", "<%ejGetOther(sysInfo, noBrPrtcl)%>", <%ejGetOther(sysInfo, pppIpExtension)%>, <%ejGetOther(sysInfo, enblFirewall)%>, <%ejGetOther(sysInfo, enblNat)%>, "<%ejGetWl(wlInterface)%>", <%ejGet(enblQos)%>);
+</script>
+
+<form>
+ <p>Enter information provided to you by your ISP to configure the WAN IP settings.</p>
+
+ <p>
+ <input type="radio" name="wan" id="wan1" onClick='wanClick()'> <label for="wan1">Obtain an IP address automatically</label><br/>
+ <input type="radio" name="wan" id="wan2" onClick='wanClick()'> <label for="wan2">Use the following IP address:</label>
+ </p>
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td><label for="wanIpAddress">WAN IP address:</label></td>
+ <td><input type='text' name='wanIpAddress' id='wanIpAddress'></td>
+ </tr>
+ <tr>
+ <td><label for="wanSubnetMask">WAN subnet mask:</label></td>
+ <td><input type='text' name='wanSubnetMask' id='wanSubnetMask'></td>
+ </tr>
+ </table>
+
+ <p>
+ <input type="radio" name="gw" id="gw1" onClick='gwClick()'> <label for="gw1">Obtain default gateway automatically</label><br/>
+ <input type="radio" name="gw" id="gw2" onClick='gwClick()'> <label for="gw2">Use the following default gateway:</label>
+ </p>
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td> </td>
+ <td><input type="checkbox" name='gwAddr' id='gwAddr'> <label for="gwAddr">Use IP address:</label></td>
+ <td><input type='text' name='defaultGateway' id='defaultGateway'></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td><input type="checkbox" name='gwIfc' id='gwIfc'> <label for="gwIfc">Use WAN interface:</label></td>
+ <td><select name='wanIf' id='wanIf'>
+<script type="text/javascript">
+<!-- hide
+{
+ var i = 0;
+ var defaultInterface = '<%ejGetOther(wanInterfaceInfo, default)%>';
+ var interfaceInfo = '<%ejGetOther(wanInterfaceInfo, route)%>';
+ var interfaces = interfaceInfo.split('|');
+
+ if ( srvId == 0 || qs == '1' ) {
+ var defaultNames = defaultInterface.split('/');
+ document.write(" <option value='" + defaultNames[1] + "' selected>");
+ document.writeln(defaultInterface);
+ for ( i = 0; i < interfaces.length; i++ ) {
+ var names = interfaces[i].split('/');
+ document.write(" <option value='" + names[1] + "'>");
+ document.writeln(interfaces[i]);
+ }
+ } else {
+ for ( i = 0; i < interfaces.length; i++ ) {
+ var names = interfaces[i].split('/');
+ if ( names[1] == gtwyIfc )
+ document.write(" <option value='" + names[1] + "' selected>");
+ else
+ document.write(" <option value='" + names[1] + "'>");
+ document.writeln(interfaces[i]);
+ }
+ }
+}
+// done hiding -->
+</script>
+ </select></td>
+ </tr>
+ </table>
+
+ <p>
+ <input type="radio" name="dns" id="dnsP" onClick='dnsClick()'><label for="dnsP">Obtain DNS server addresses automatically</label><br>
+ <input type="radio" name="dns" id="dnsS" onClick='dnsClick()'><label for="dnsS">Use the following DNS server addresses:</label>
+ </p>
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td width="20"> </td>
+ <td><label for="dnsPrimary">Primary DNS server:</label></td>
+ <td><input type='text' name='dnsPrimary' id='dnsPrimary'></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td><label for="dnsSecondary">Secondary DNS server:</label></td>
+ <td><input type='text' name='dnsSecondary' id='dnsSecondary'></td>
+ </tr>
+ </table><br>
+ <p><input type='button' onClick='btnBack()' value='Back'> <input type='button' onClick='btnNext()' value='Next'></p>
+ </form>
+
+<script type="text/javascript">
+ writeFooter();
+</script>
+
+</body>
+</html>