All pastes #1220419 Raw Edit

Miscellany

public text v1 · immutable
#1220419 ·published 2008-10-06 03:22 UTC
rendered paste body
Err=" is not correct !";
Err1=" is out of range. Please input between ";
Err2="Please select an item to ";
Err3="Syetem supports at most ";
Err4="Please input at least ONE ";
Err5="\nPlease try again.";
Err6="Detects IP address duplication with IP ";
Err7=" IP address";
Err8="Please input integer values.";
Err9=" is the same as its ";
SUBERR="Invalid subnet mask."+Err5;
Err10="IP address is invalid for this subnet mask."
Empty=new Array(""," ","  ","   ","	","	 ","	  ","	   ","		",
					"		 ","		  ","		   ","			","			 "
					,"			  ","			   ","				");
MAX_PVC=8;

function CheckDATA(DATA)
{	name=DATA.name;
	if(name=="SSID")
		return true;
	if (isNaN(parseInt(DATA.value,10))){//for characters
		alert(Err8);
		DATA.value="";
		return false;}
	if (!isNaN(DATA.value)){//prevent blank
		data=parseInt(DATA.value,10);
		if (data<0) {alert("Please input positive number.");DATA.value="";return false;}
		DATA.value=data;
		if (data.length==0){
			alert("Please input the value.");
			DATA.value="";
			return false;}
		if (name=="VPI"){
			if (data>255){
				alert("VPI"+Err1+"0 ~ 255");
				DATA.value="";
				return false;}
			return true;}
		else if(name=="VCI")	{
			if (data>65535){
				alert("VCI"+Err1+"0 ~ 65535");
				DATA.value="";
				return false;
			}
			else return true;	}
		else if((name.indexOf("IP")!="-1")||(name.indexOf("Mask")!="-1"))
		{
			if (data>255)
			{
				alert("IP address"+Err1+"0 ~ 255");
				DATA.value="";
				return false;
			}
			else if (data==0)
			{	if (name.indexOf("IPA")!="-1")
				{
					alert("IP address"+Err1+"1 ~ 255"+Err5);
					DATA.value="";
					return false;
				}
				else if (name.indexOf("MaskA")!="-1")
				{
					alert("Subnet mask"+Err1+"1 ~ 255"+Err5);
					DATA.value="";
					return false;
				}
				return true;
			}
			else return true;
		}
		else if(name=="Beacon")
			return true;
		else if(name=="DTIM")
			return true;
		else if(name=="RTS")
			return true;			
		else return true;//for PCR....
	}
	else{
		alert(Err8);
		DATA.value="";
		return false;}
}

function ShowMode(FORM)
{	var mode="N/A";
	if (FORM.SET_MODE.value==1) mode="Bridged Mode";
	else if (FORM.SET_MODE.value==2) mode="Routed Mode";
	else if (FORM.SET_MODE.value==3) mode="PPPoA Mode";
	else if (FORM.SET_MODE.value==4) mode="Mixed Mode";
	else if (FORM.SET_MODE.value==5) mode="USB";
	document.write(mode);
	return;
}
function Clear4(i)
{
	var Index;
	for (Index=i;Index<(i+4);Index++)
		FORM.elements[Index].value="";
}
function Check4(i)
{
	var Index;
	for (Index=i;Index<(i+4);Index++)
		if (!CheckDATA(FORM.elements[Index])) return false;
	return true;
}

function Set(i)
{
	return (FORM.elements[i].value+"."+FORM.elements[i+1].value+"."+
	FORM.elements[i+2].value+"."+FORM.elements[i+3].value);
}

function SetFrame(HTML,i)
{
	now = new Date();
	top.frames[i].location.href=HTML+"?"+now.getTime();
	document.returnValue = true;
}

function SET(FORM)
{	var t=".";
	if (FORM.name=="RT") {//for routing
		M=FORM.MaskT.value;
		A=FORM.IPT.value;
	}else
	{
		M=FORM.MaskA.value;
		A=FORM.IPD.value;
	}
	SUBNET=M+t+FORM.MaskB.value+t+
	   FORM.MaskC.value+t+FORM.MaskD.value;//Wan Subnet Mask
	ADSL=FORM.IPA.value+t+FORM.IPB.value+t+
		 FORM.IPC.value+t+A;
	if (FORM.name=="RT") {//for routing
		ADSL=NetID(ADSL,SUBNET);
	}
	GATE=FORM.GIPA.value+t+FORM.GIPB.value+t+
		FORM.GIPC.value+t+FORM.GIPD.value;//GateWay IP
	return;
}
function CheckPVC(FORM)
{	if (!(CheckDATA(FORM.VPI)&&CheckDATA(FORM.VCI)))
		return false;
	else if ((FORM.VPI.value==0)&&(FORM.VCI.value<32)) {
		alert("VCI 0 ~ 31 is reserved when VPI is 0."+Err5);return false;}
	else return true;
}

function STRTOK(STR,INDEX)
{	var i,j;
	i=STR.indexOf(".");
	FORM.elements[INDEX++].value=STR.substring(0,i);
	j=STR.indexOf(".",i+1);
	FORM.elements[INDEX++].value=STR.substring(i+1,j);
	i=STR.indexOf(".",j+1);
	FORM.elements[INDEX++].value=STR.substring(j+1,i);
	FORM.elements[INDEX++].value=STR.substring(i+1);
	return;
}
function AddList(LIST,INDEX,TEXT)
{
	LIST.options[INDEX]=new Option(TEXT,INDEX,false,false);
	LIST.options[0].selected=true;//add 0103
	return;
}

function WARNING(ERR)
{
	var p=eval(ERR.charAt(0));
	var p1=ERR.charAt(1);
	temp=" already exists.";
	if (p1=="W") temp="ADSL"+Err7+temp;
	else if (p1=="D") temp="Destination network ID "+temp;
	else if (p1=="G") temp="Gateway"+Err7+temp;
	else if (p1=="P") temp="VPI/VCI"+temp;
	temp+=Err5;
	alert(temp);
	return;
}

function VerifySubnet(MASK)
{	var i,j,change=false,last=1,ZCount=0;
	SPILT(MASK);
	for (i=0;i<4;i++)
	{	for (j=0;j<8;j++){
			bit=SUB[i]>>(7-j)&1;
			if (bit==0) ZCount++;
			if (last!=bit) {
				if (change)	{alert(SUBERR);return false;}
				else {last=bit;change=true;}
			}
		}
	}
	if (ZCount<2) {alert(SUBERR);return false;}
	return true;
}

function SPILT(STR)
{	var i,j;
	SUB=new Array(4);
	i=STR.indexOf(".");		SUB[0]=STR.substring(0,i);
	j=STR.indexOf(".",i+1);	SUB[1]=STR.substring(i+1,j);
	i=STR.indexOf(".",j+1);	SUB[2]=STR.substring(j+1,i);
	SUB[3]=STR.substring(i+1);
	return;
}

function NetID(IP,MASK)
{
	IP_TEMP=new Array(4);
	MASK_TEMP=new Array(4);
	ID=new Array(4);

	SPILT(IP);
	for (i=0;i<4;i++)	IP_TEMP[i]=SUB[i];

	SPILT(MASK);
	for (i=0;i<4;i++)	MASK_TEMP[i]=SUB[i];
	for (i=0;i<4;i++)	ID[i]=IP_TEMP[i]&MASK_TEMP[i];
	NET=ID[0]+"."+ID[1]+"."+ID[2]+"."+ID[3];
	return (ID[0]+"."+ID[1]+"."+ID[2]+"."+ID[3]);
}

function BROADCAST(IP,MASK)
{
	ID=new Array(4);
	MASK_TEMP=new Array(4);
	B_IP=new Array(4);

	var ID_STR=NetID(IP,MASK);
	SPILT(ID_STR);
	for (i=0;i<4;i++)	ID[i]=SUB[i];

	SPILT(MASK);
	for (i=0;i<4;i++)	MASK_TEMP[i]=SUB[i];

	for (i=0;i<4;i++)	B_IP[i]=((256+(~MASK_TEMP[i]))|(ID[i]));
	return (B_IP[0]+"."+B_IP[1]+"."+B_IP[2]+"."+B_IP[3]);
}

function CheckIP(IP,MASK)
{
	if (!VerifySubnet(MASK)) return false;
	if (IP==NetID(IP,MASK)){
		alert(Err10);
		return false;
	}
	if (IP==BROADCAST(IP,MASK)){
		alert(Err10);
		return false;
	}
	return true;
}

// Ambit William Niu add 1/2/03 start

/*************************************************************************/
// Trim functions   1/27/03
// Get rid of white spaces at beginning and/or end of text
// http://www.developingskills.com/ds.php?article=jstrim&page=1 

function strltrim() { return this.replace(/^\s+/,''); }
function strrtrim() { return this.replace(/\s+$/,''); }
function strtrim()  { return this.replace(/\xA0/g,' ').ltrim().rtrim(); }

/*
function strltrim() { return this.replace(/^\s+/,'').replace(/^\xA0/g,''); }
function strrtrim() { return this.replace(/\s+$/,'').replace(/\xA0$/g,''); }
function strtrim()  { return this.ltrim().rtrim(); }
*/
// replace nonbreaking space (ASCII 160) with space (ASCII 32)
function strreplacebspace()	{ return this.replace(/\xA0/g,' '); }

String.prototype.ltrim = strltrim;
String.prototype.rtrim = strrtrim;
String.prototype.trim = strtrim;
String.prototype.repBSpace = strreplacebspace;
/*************************************************************************/

// split string (str) with delimiter (d) into an array of string containing (len) elements
// Deprecated! there's already a split() function for String!
function mySplit(str, d, len)
{
	var str2 = new Array(len);
	for (var i=0, k=0; i<len-1; i++) {
		str2[i] = str.substring(k, str.indexOf(d, k));
		k = str.indexOf(d, k)+1;
	}
	str2[len-1] = str.substring(k);
	return str2;
}

// check for valid ip address range: 1-254
function checkIP(ip)
{
	if(!(ip.value<255 && ip.value>=0)) {
		//alert("Please enter a value between 0 and 254");
		ip.value="";
		ip.focus();
		return false;
	}
	return true;
}

// check if component (comp) is empty
function checkEmpty(comp)
{
	var re = /\s/g; //Match any white space including space, tab, form-feed, etc. 
	var str = comp.value.replace(re, "");
	if (str.length == 0) {
		alert("Some required field is empty!");
		comp.value = comp.defaultValue;
		if (!comp.disabled) comp.focus();
		return true;
	}
	return false;
}

// check if the IP address fields are empty
function checkEmptyIP(n)
{
	var S = String(n);
	for(var i=1; i<5; i++) {
		if (eval("checkEmpty(document.FORM." + S + i + ")"))
			return true;
	}
	return false;
}

//chekc if the first 8-bit of IP is valid for a private LAN (10, 172, or 192)
function checkLANIP(ip)
{
	var A = parseInt(ip.value, 10);
	/*
	if (!(A==10 || A==172 || A==192)) {
		alert("A LAN IP address should be 10.x.x.x, 172.x.x.x or 192.168.x.x");
		ip.value="";
		ip.focus();
		return false;
	}
	*/
	return true;
}

//chekc if the 2nd 8-bit of IP is valid for a private LAN, if the 1st is 192
function ckLANIP2(N)
{
	if (eval("document.FORM." + N + "1.value == 192 && document.FORM." + N + "2.value != 168")) {
		alert("A LAN IP should be 192.168.x.x");
		eval("document.FORM." + N + "2.value = document.FORM." + N + "2.defaultValue");
		eval("document.FORM." + N + "2.focus()");
		return false;
	}
	return true;
}
/*  //Ambit marked by Borland on 2003/11/3
//chekc for valid port range: 0-65535
function ckPort(I)
{
	var P = parseInt(I.value);
	if (P>=0 && P<65536) return true;
	alert("'Port value is out of range [0 - 65535]");
	I.value = I.defaultValue;
	return false;
}
*/
//to fill in IP input textboxes with specified name N and whether it's a LAN IP
function ipInput(N, lan)
{
	for (var i=1; i<5; i++) {
		document.write("<INPUT MAXLENGTH='3' NAME='" + N + i + "' VALUE='' SIZE=3>");
		if (i!=4) document.write(".");
	}
}

// put 6 textboxes for MAC address input
function macInput(N)
{
	for (var i=1; i<7; i++) {
		document.write("<INPUT MAXLENGTH='2' NAME='"+N+i+"' VALUE='' SIZE=2>");
		if (i!=6) document.write(".");
	}
}

// check for navigator: IE or Netscape. they use different styles
function ckNavigator()
{
	if (navigator.appName.substring(0,9) != "Microsoft")
		document.write("<STYLE>UL{text-indent: -6}</STYLE>"); 
}

/*  //Ambit marked by Borland on 2003/11/3
// check for valid MAC value: 00-ff
function checkMAC(val)
{
	var n = val.value;
	n = Number("0x"+n.trim());
	if (n>255 || n<0 || isNaN(n)) {
		alert("Valid MAC address range: 00 - FF");
		val.value="";
		val.focus();
		return false;
	}
	return true;
}
*/

// remove an entry to a selection (list), which has (num) elements
function deleteItem(list, num)
{
	var j = list.selectedIndex;
	if (j < 0 || num==0) return false;
	list.options[j] = null;
	if (j) list.options[j-1].selected = true;
	else if (num-1)list.options[0].selected = true;
	return true;
}

// clear a selection list (list), which had (num) elements
function clearList(list, num)
{
	if (num<1) return;
	list.selectedIndex = 0;
	for (var i=num; i>0; i--)
		if (deleteItem(list, num)) num--;
}

// test if the array (str) match IP or MAC fields with name (t)
function match(str, t, n)
{
	for (var j=1; j<n+1; j++)
		//if (eval("parseInt(str["+(j-1)+"], 10) != parseInt(document.FORM."+t+j+".value, 10)")) 
		if (eval("str["+(j-1)+"].toString(16) != document.FORM."+t+j+".value")) 
		{
		    //alert("mac not match, j= "+j);
			return false;
		}
	return true;
}

// check ping packet size: between 0 and 65500 bytes
function checkSize(pSize)
{
	if(!(pSize.value<=65500 && pSize.value>=0)) {
		alert("Packet size should be between 0 and 65500");
		pSize.value=pSize.defaultValue;
		pSize.focus();
	}
}

// display formated, local date and time
function time()
{
	x = new Date();
	document.write(x.toLocaleString());
}


function Check_mask_fun(mask)
{
    cpemask = mask.split(".");
   
    pmask = 0;
    pmask = pmask | (cpemask[0]<<24);
    pmask = pmask | (cpemask[1]<<16);
    pmask = pmask | (cpemask[2]<<8);
    pmask = pmask | (cpemask[3]);
    
    
    mask = 0x00000001;
    invmask = ~pmask;

    while(invmask)
    {
        if(invmask & mask)
            invmask >>=1;
        else
        {    
            alert("Lan subnet Mask is incorrect !!");
            return false;
        }    
    }    
    return true;
}
// Ambit William Niu add 1/27/03 end

function Navigate(sPage) {
	window.location = sPage;
}

function OpenClients(sPage) {
	window.open(sPage, "clients", "width=720,height=300,location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no");
}

function OpenClients2(sPage) {
	window.open(sPage, "clients", "width=720,height=500,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no");
}

function OpenHelp(sPage) {
	window.open(sPage, "help", "width=526,height=370,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no");
}

function OpenTime(sPage) {
	window.open(sPage, "clients", "width=720,height=500,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no,toolbar=no");
}

var msg1000,msg1001,msg1002,msg1003,msg1004,msg1021,msg1022,msg1023,msg1024,msg1025,msg1026,msg1027,msg1028;
var msg1029,msg1030,msg1031,msg1032,msg1033,msg1034,msg1035,msg1036,msg1037,msg1038,msg1039,msg1040,msg1041;
var msg1042,msg1043,msg1044,msg1061,msg1062,msg1063,msg1064,msg1065,msg1081,msg1082,msg1083,msg1084,msg1085;
var msg1086,msg1087,msg1088,msg1089,msg1101,msg1102,msg1103,msg1104,msg1105,msg1106,msg1107,msg1131,msg1132;
var msg1133,msg1134,msg1135,msg1136,msg1137,msg1138,msg1151,msg1152,msg1153,msg1154,msg1155,msg1156,msg1171;
var msg1172,msg1173,msg1174,msg1175,msg1176,msg1177,msg1178,msg1179,msg1180,msg1181,msg1182,msg1183,msg1184;
var msg1185,msg1186,msg1187,msg1188,msg1189,msg1190,msg1191,msg1192,msg1193;

//msg1000="@";         //holomorphic space
msg1000="<img src='/public/image/spacer.gif' alt='' width='10' height='12' border='0'>"

msg1001="STATUS: Changes Accepted (Computer Added to DMZ)";
msg1002="STATUS: Changes Accepted (Computer Removed from DMZ)";
msg1003="STATUS: Changes NOT Accepted (Computer Could Not Be Added to DMZ)";
msg1004="STATUS: Changes NOT Accepted (No Computer Name Could Be Added to DMZ)";
msg1021="STATUS: Changes Accepted (Access Limit Options Changed)";
msg1022="STATUS: Changes Accepted (Access Limits Removed from Computer)";
msg1023="STATUS: Changes Accepted (Computer Added to Access Time Limits)";
msg1024="STATUS: Changes NOT Accepted (Access Limits Can Not Be Set for Computer)";
msg1025="STATUS: Changes NOT Accepted (Maximum Amount of Access Time Limits)";
msg1026="STATUS: Changes NOT Accepted (Invalid Time Range)";
msg1027="STATUS: Changes Accepted (Key Word / Website Added)";
msg1028="STATUS: Changes Accepted (Key Word / Website Deleted)";
msg1029="STATUS: Changes Accepted (Key Word / Website List Cleared)";
msg1030="STATUS: Changes Accepted (Key Word / Website Blocking Enabled)";
msg1031="STATUS: Changes Accepted (Key Word / Website Blocking Disabled)";
msg1032="STATUS: Changes NOT Accepted (Key Word / Website Blocking Is Not Enabled)";
msg1033="STATUS: Changes NOT Accepted (Duplicate Key Word / Website)";
msg1034="STATUS: Changes NOT Accepted (Key Word / Website NOT Found)";
msg1035="STATUS: Changes NOT Accepted (Key Words Cannot Contain Spaces)";
msg1036="STATUS: Changes Accepted (Trusted Computer Added)";
msg1037="STATUS: Changes Accepted (Trusted Computer Removed)";
msg1038="STATUS: Changes NOT Accepted (Computer Already Set as Trusted)";
msg1039="STATUS: Changes NOT Accepted (Computer Could Not Be Set as Trusted)";
msg1040="STATUS: Changes NOT Accepted (Maximum of Three Trusted Computers)";
msg1041="STATUS: Changes Accepted (Activity Log Cleared)";
msg1042="STATUS: Changes NOT Accepted (No Connected Computer Selected)";
msg1043="STATUS: Changes NOT Accepted (No Day(s) to Block Selected)";
msg1044="STATUS: Changes NOT Accepted (No Time of Day to Block Selected)";
msg1061="STATUS: Changes NOT Accepted (Invalid Current Password)";
msg1062="STATUS: Changes NOT Accepted (Invalid New Password)";
msg1063="STATUS: Changes NOT Accepted (New Password Entries Do Not Match)";
msg1064="STATUS: Changes Accepted (Password Changed)";
msg1065="STATUS: Changes NOT Accepted (Password Too Short, Must Contain Atleast 4 Characters)";
msg1081="STATUS: Changes NOT Accepted (IP Address Is Out of Range)";
msg1082="STATUS: Changes NOT Accepted (Port Range Is Reversed)";
msg1083="STATUS: Changes NOT Accepted (IP Range Is Reversed)";
msg1084="STATUS: Changes NOT Accepted (Out of Assignable Port Range)";
msg1085="STATUS: Changes Accepted (Port Forwarding Rule Set)";
msg1086="STATUS: Changes Accepted (Port Forwarding Rule Enabled)";
msg1087="STATUS: Changes Accepted (Port Forwarding Rule Disabled)";
msg1088="STATUS: Changes NOT Accepted (Port Ranges Overlap)";
msg1089="STATUS: Changes NOT Accepted (No Application Name Entered)";
msg1101="STATUS: Changes NOT Accepted (IP Address Is Out of Range)";
msg1102="STATUS: Changes NOT Accepted (IP Range Is Reversed)";
msg1103="STATUS: Changes NOT Accepted (Port Range Is Reversed)";
msg1104="STATUS: Changes NOT Accepted (Out of Assignable Port Range)";
msg1105="STATUS: Changes Accepted (Port Blocking Rule Set)";
msg1106="STATUS: Changes Accepted (Port Blocking Rule Enabled)";
msg1107="STATUS: Changes Accepted (Port Blocking Rule Disabled)";
msg1131="STATUS: Changes NOT Accepted (SSID Contains Invalid Characters)";
msg1132="STATUS: Changes NOT Accepted (Passphrase Contains Invalid Characters)";
msg1133="STATUS: Changes NOT Accepted (Static IP Address Is Invalid)";
msg1134="STATUS: Changes NOT Accepted (Static IP Subnet Mask Is Invalid)";
msg1135="STATUS: Changes NOT Accepted (Static IP Default Gateway Is Invalid)";
msg1136="STATUS: Changes NOT Accepted (Static IP Primary DNS Is Invalid)";
msg1137="STATUS: Changes NOT Accepted (Static IP Secondary DNS Is Invalid)";
msg1138="STATUS: Changes NOT Accepted (Network Key Contains Invalid Characters)";
msg1151="STATUS: Changes Accepted (IPSec Passthrough Changed)";
msg1152="STATUS: Changes Accepted (IPSec Passthrough Changed)";
msg1153="STATUS: Changes Accepted (PPTP Passthrough Changed)";
msg1154="STATUS: Changes Accepted (PPTP Passthrough Changed)";
msg1155="STATUS: Changes Accepted (PPTP / IPSec Passthrough Changed)";
msg1156="STATUS: Changes Accepted (PPTP / IPSec Passthrough Changed)";
msg1171="STATUS: Changes Accepted (WEP Keys Generated)";
msg1172="STATUS: Changes Accepted (WEP Encryption Strength Changed)";
msg1173="STATUS: Changes NOT Accepted (Cannot Use Passphrase If WEP Is Disabled)";
msg1174="STATUS: Changes Accepted (Wireless Computer Added To Access List)";
msg1175="STATUS: Changes Accepted (Wireless Computer Removed From Access List)";
msg1176="STATUS: Changes NOT Accepted (Wireless Computer Already In Access List)";
msg1177="STATUS: Changes NOT Accepted (SSID Contains Invalid Characters)";
msg1178="STATUS: Changes NOT Accepted (Passphrase Contains Invalid Characters)";
msg1179="STATUS: Changes NOT Accepted (Network Key Contains Invalid Characters)";
msg1180="STATUS: Changes NOT Accepted (No Connected Computer Selected)";
msg1181="STATUS: Changes NOT Accepted (No Day(s) to Block Selected)";
msg1182="STATUS: Changes NOT Accepted (No Time of Day to Block Selected)";
msg1183="STATUS: Changes NOT Accepted (Only 50 Entries Are to Be Blocked)";
msg1184="STATUS: Changes NOT Accepted (Valid MAC Address Range: 00 - FF)";
msg1185="STATUS: Changes NOT Accepted (Beacon Interval Is Out of Range)";
msg1186="STATUS: Changes NOT Accepted (DTIM Interval Is Out of Range)";
msg1187="STATUS: Changes NOT Accepted (Fragmentation Threshold Is Out of Range)";
msg1188="STATUS: Changes NOT Accepted (RTS Threshold Out of Range)";
msg1189="STATUS: Changes NOT Accepted (Out of CPE Pool Range)";
msg1190="STATUS: Changes NOT Accepted (Out of Ping Size)";
msg1191="STATUS: Changes NOT Accepted (Valid MAC Address Apart from ':' or '-')";
msg1192="STATUS: Changes NOT Accepted (WPA Pre-Shared Key Too Short, Must Contain Atleast 8 Characters)";
msg1193="STATUS: Successful (Cancel command)";
msg1194="STATUS: Changes NOT Accepted (Out of Hops Range)";
//Ambit add end by Borland 08/01/03

function CheckMsg(Msg)
{
    var tmp;
    
    switch(Msg)
    {
        case msg1000: tmp = msg1000; break;    case msg1001: tmp = msg1001; break;    case msg1002: tmp = msg1002; break;
        case msg1003: tmp = msg1003; break;    case msg1004: tmp = msg1004; break;    case msg1021: tmp = msg1021; break;
        case msg1022: tmp = msg1022; break;    case msg1023: tmp = msg1023; break;    case msg1024: tmp = msg1024; break;
        case msg1025: tmp = msg1025; break;    case msg1026: tmp = msg1026; break;    case msg1027: tmp = msg1027; break;
        case msg1028: tmp = msg1028; break;    case msg1029: tmp = msg1029; break;    case msg1030: tmp = msg1030; break;
        case msg1031: tmp = msg1031; break;    case msg1032: tmp = msg1032; break;    case msg1033: tmp = msg1033; break;
        case msg1034: tmp = msg1034; break;    case msg1035: tmp = msg1035; break;    case msg1036: tmp = msg1036; break;
        case msg1037: tmp = msg1037; break;    case msg1038: tmp = msg1038; break;    case msg1039: tmp = msg1039; break;
        case msg1040: tmp = msg1040; break;    case msg1041: tmp = msg1041; break;    case msg1042: tmp = msg1042; break;
        case msg1043: tmp = msg1043; break;    case msg1044: tmp = msg1044; break;    case msg1061: tmp = msg1061; break;
        case msg1062: tmp = msg1062; break;    case msg1063: tmp = msg1063; break;    case msg1064: tmp = msg1064; break;
        case msg1065: tmp = msg1065; break;    case msg1081: tmp = msg1081; break;    case msg1082: tmp = msg1082; break;
        case msg1083: tmp = msg1083; break;    case msg1084: tmp = msg1084; break;    case msg1085: tmp = msg1085; break;
        case msg1086: tmp = msg1086; break;    case msg1087: tmp = msg1087; break;    case msg1088: tmp = msg1088; break;
        case msg1089: tmp = msg1089; break;    case msg1101: tmp = msg1101; break;    case msg1102: tmp = msg1102; break;
        case msg1103: tmp = msg1103; break;    case msg1104: tmp = msg1104; break;    case msg1105: tmp = msg1105; break;
        case msg1106: tmp = msg1106; break;    case msg1107: tmp = msg1107; break;    case msg1131: tmp = msg1131; break;
        case msg1132: tmp = msg1132; break;    case msg1133: tmp = msg1133; break;    case msg1134: tmp = msg1134; break;
        case msg1135: tmp = msg1135; break;    case msg1136: tmp = msg1136; break;    case msg1137: tmp = msg1137; break;
        case msg1138: tmp = msg1138; break;    case msg1151: tmp = msg1151; break;    case msg1152: tmp = msg1152; break;
        case msg1153: tmp = msg1153; break;    case msg1154: tmp = msg1154; break;    case msg1155: tmp = msg1155; break;
        case msg1156: tmp = msg1156; break;    case msg1171: tmp = msg1171; break;    case msg1172: tmp = msg1172; break;
        case msg1173: tmp = msg1173; break;    case msg1174: tmp = msg1174; break;    case msg1175: tmp = msg1175; break;
        case msg1176: tmp = msg1176; break;    case msg1177: tmp = msg1177; break;    case msg1178: tmp = msg1178; break;
        case msg1179: tmp = msg1179; break;    case msg1180: tmp = msg1180; break;    case msg1181: tmp = msg1181; break;
        case msg1182: tmp = msg1182; break;    case msg1183: tmp = msg1183; break;    case msg1184: tmp = msg1184; break;
        case msg1185: tmp = msg1185; break;    case msg1186: tmp = msg1186; break;    case msg1187: tmp = msg1187; break;
        case msg1188: tmp = msg1188; break;    case msg1189: tmp = msg1189; break;    case msg1190: tmp = msg1190; break;
        case msg1191: tmp = msg1191; break;    case msg1192: tmp = msg1192; break;    case msg1193: tmp = msg1193; break;
    }
    return tmp;
}

function ShowStatusMsg(Msg,bErrorRed) {
    var errmsg,tmpMsg;
    var sClass = "";
    
    tmpMsg = CheckMsg(Msg);

    if (bErrorRed == 1) {
	    sClass = "errorred";
    } else {
	    sClass = "errorblack";
    }

    errmsg='<font class="' + sClass + '">'+tmpMsg+'</font>';

    if (document.all) { //IS IE 4 or 5 (or 6 beta) 
	    document.all.displaystatus.innerHTML = errmsg;
    }       

    if (document.layers) { //IS NETSCAPE 4 or below 
	    document.layers.displaystatus.innerHTML = errmsg;
    } 

    if (document.getElementById &&(!document.all)) {
	    document.getElementById("displaystatus").innerHTML = errmsg;
	}
}

function ShowOpenerStatusMsg(Msg,bErrorRed) {
    var errmsg,tmpMsg;
    var sClass = "";
    
    tmpMsg = CheckMsg(Msg);
    
    if (bErrorRed == 1) {
	    sClass = "errorred";
    } else {
	    sClass = "errorblack";
    }
    
    errmsg='<td class="' + sClass + '" colspan="7" align="center">'+tmpMsg+'</td>';
    if (opener.document.all) { //IS IE 4 or 5 (or 6 beta) 
	    opener.document.all.displaystatus.innerHTML = errmsg;
    }       

    if (opener.document.layers) { //IS NETSCAPE 4 or below 
	    opener.document.layers.displaystatus.innerHTML = errmsg;
    } 

    if (opener.document.getElementById &&(!opener.document.all)) {
	    opener.document.getElementById("displaystatus").innerHTML = errmsg;
	}
}

function checkMAC(val)
{
	var n = val.value;
	n = Number("0x"+n.trim());
	if (n>255 || n<0 || isNaN(n)) {
	    ShowStatusMsg(msg1184,1);
	    val.value="";
	    val.focus();
		return false;
	}
	ShowStatusMsg(msg1000,1);
	return true;
}

function checkWepKeyScope(val)
{
    var n = val.value;
	n = Number("0x"+n.trim());
	if (n>255 || n<0 || isNaN(n)) {
        ShowStatusMsg(msg1138,1);
		val.value="";
		val.focus();
		return false;
	}
	ShowStatusMsg(msg1000,0);
	return true;
}

function CheckIpNoZero(ip)
{
	if(!(ip.value<255 && ip.value>0)) {
		ip.value="";
		ip.focus();
		return false;
	}
	return true;
}

function CheckIpNoZeroRange(IP)
{
    if (!CheckIpNoZero(IP))
    {
        ShowStatusMsg(msg1101,1);
    }
    else
        ShowStatusMsg(msg1000,0);        
}

//chekc for valid port range: 1-65535
function ckPort(I)
{
	var P = parseInt(I.value);
	if (P>0 && P<65536)
	{
	    ShowStatusMsg(msg1000,0);
	    return true;
    }
    else
    {
        ShowStatusMsg(msg1084,1);
	    I.value = I.defaultValue;
	    return false;
	}
}

function CheckTimeRange(I,LowBound,HighBound)
{
    var P = parseInt(I.value);
	if (P>=LowBound && P<=HighBound){
	    ShowStatusMsg(msg1000,0);
	    return true;
	}
    else{
        ShowStatusMsg(msg1026,1);
	    I.value = I.defaultValue;
	    return false;
	}
}


function CheckSubnetMask(IP)
{
    if(!(IP.value<=255 && IP.value>=0)) {
        ShowStatusMsg(msg1134,1);
		IP.value="";
		IP.focus();
		return false;
	}
    else
        ShowStatusMsg(msg1000,0);        
}


function ShowDataFrom(index) {
    var tmpMsg1,tmpMsg2,tmpMsg3,tmpMsg4,tmpMsg5;
    var tmpMsg6,tmpMsg7,tmpMsg8,tmpMsg9,tmpMsg10;
    
    if (index == 1)
    {
        tmpMsg1 = '1.';tmpMsg2 = '2.';tmpMsg3 = '3.';tmpMsg4 = '4.';tmpMsg5 = '5.';
        tmpMsg6 = '6.';tmpMsg7 = '7.';tmpMsg8 = '8.';tmpMsg9 = '9.';tmpMsg10 = '10.';
    }
    else if (index == 2)
    {
        tmpMsg1 = '11.';tmpMsg2 = '12.';tmpMsg3 = '13.';tmpMsg4 = '14.';tmpMsg5 = '15.';
        tmpMsg6 = '16.';tmpMsg7 = '17.';tmpMsg8 = '18.';tmpMsg9 = '19.';tmpMsg10 = '20.';
    }
    else if (index == 3)
    {
        tmpMsg1 = '21.';tmpMsg2 = '22.';tmpMsg3 = '23.';tmpMsg4 = '24.';tmpMsg5 = '25.';
        tmpMsg6 = '26.';tmpMsg7 = '27.';tmpMsg8 = '28.';tmpMsg9 = '29.';tmpMsg10 = '30.';
    }
    
    if (document.all) { //IS IE 4 or 5 (or 6 beta) 
	    document.all.Item1.innerHTML = tmpMsg1;
	    document.all.Item2.innerHTML = tmpMsg2;
	    document.all.Item3.innerHTML = tmpMsg3;
	    document.all.Item4.innerHTML = tmpMsg4;
	    document.all.Item5.innerHTML = tmpMsg5;
	    document.all.Item6.innerHTML = tmpMsg6;
	    document.all.Item7.innerHTML = tmpMsg7;
	    document.all.Item8.innerHTML = tmpMsg8;
	    document.all.Item9.innerHTML = tmpMsg9;
	    document.all.Item10.innerHTML = tmpMsg10;
    }       

    if (document.layers) { //IS NETSCAPE 4 or below 
	    document.layers.Item1.innerHTML = tmpMsg1;
	    document.layers.Item2.innerHTML = tmpMsg2;
	    document.layers.Item3.innerHTML = tmpMsg3;
	    document.layers.Item4.innerHTML = tmpMsg4;
	    document.layers.Item5.innerHTML = tmpMsg5;
	    document.layers.Item6.innerHTML = tmpMsg6;
	    document.layers.Item7.innerHTML = tmpMsg7;
	    document.layers.Item8.innerHTML = tmpMsg8;
	    document.layers.Item9.innerHTML = tmpMsg9;
	    document.layers.Item10.innerHTML = tmpMsg10;
    } 

    if (document.getElementById &&(!document.all)) {
	    document.getElementById("Item1").innerHTML = tmpMsg1;
	    document.getElementById("Item2").innerHTML = tmpMsg2;
	    document.getElementById("Item3").innerHTML = tmpMsg3;
	    document.getElementById("Item4").innerHTML = tmpMsg4;
	    document.getElementById("Item5").innerHTML = tmpMsg5;
	    document.getElementById("Item6").innerHTML = tmpMsg6;
	    document.getElementById("Item7").innerHTML = tmpMsg7;
	    document.getElementById("Item8").innerHTML = tmpMsg8;
	    document.getElementById("Item9").innerHTML = tmpMsg9;
	    document.getElementById("Item10").innerHTML = tmpMsg10;
	    
	}
}

var AsciiTable=new Array(
        " ","!","\"","#","$","%","&","`","(",")","*","+",",","_",
        ".","/","0","1","2","3","4","5","6","7","8","9",":",";","<",
        "=",">","?","@","A","B","C","D","E","F","G","H","I","J","K",
        "L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",
        "[","\\","]","^","-","'","a","b","c","d","e","f","g","h",
        "i","j","k","l","m","n","o","p","q","r","s","t","u","v","w",
        "x","y","z","{","|","}","~"
);
var HexTable=new Array(
        "20","21","22","23","24","25","26","27","28","29",
        "2A","2B","2C","2D","2E","2F","30","31","32","33",
        "34","35","36","37","38","39","3A","3B","3C","3D",
        "3E","3F","40","41","42","43","44","45","46","47",
        "48","49","4A","4B","4C","4D","4E","4F","50","51",
        "52","53","54","55","56","57","58","59","5A","5B",
        "5C","5D","5E","5F","60","61","62","63","64","65",
        "66","67","68","69","6A","6B","6C","6D","6E","6F",
        "70","71","72","73","74","75","76","77","78","79",
        "7A","7B","7C","7D","7E"
);

function HexToAscii(KeyString)
{
    var newstr='';
    var pointer;
    
    for(i=0;i<KeyString.length;i=i+2){
        pointer=KeyString.charAt(i)+KeyString.charAt((i+1));
        for(j=0;j<HexTable.length;j++){
            if(pointer.toUpperCase()==HexTable[j])
                newstr+=AsciiTable[j];
        }
    }
    return newstr;
}


function AsciiToHex(KeyString)
{
    var newstr='';
    var pointer;
    
    for(i=0;i<KeyString.length;i++){
        pointer=KeyString.charAt(i);
        
        for(j=0;j<AsciiTable.length;j++){
          if(pointer==AsciiTable[j])
            newstr+=HexTable[j];
        }
    }
    return newstr;
}