
var bg_band_array=new Array(
			new band_obj('2.412GHZ (channel 1)','1'),  
			new band_obj('2.417GHZ (channel 2)','2'), 
			new band_obj('2.422GHZ (channel 3)','3'),  
			new band_obj('2.427GHZ (channel 4)','4'),  
			new band_obj('2.432GHZ (channel 5)','5'),  
			new band_obj('2.437GHZ (channel 6)','6'),
			new band_obj('2.442GHZ (channel 7)','7'),
			new band_obj('2.447GHZ (channel 8)','8'),
			new band_obj('2.452GHZ (channel 9)','9'),  
			new band_obj('2.457GHZ (channel 10)','10'),
			new band_obj('2.462GHZ (channel 11)','11'),
			new band_obj('2.467GHZ (channel 12)','12'),
			new band_obj('2.472GHZ (channel 13)','13'),
			new band_obj('2.477GHZ (channel 14)','14')
)


function band_obj(description,channel){
	this.channel=channel;
	this.description=description;
}

function wlan_enable_change()
{
	//var encryType=f.wlan_encryp_type.value;
	var f=document.wlanform;
	if (f.wlan_enable.checked) {	// enabled
		document.getElementById("row_wlan_mode").className = "data_visible";
		document.getElementById("row_wlan_ssid").className = "data_visible";
		document.getElementById("row_wlan_freq").className = "data_visible";
		document.getElementById("row_wlan_encryp_type").className = "data_visible";
		document.getElementById("row_wlan_auth_mode").className = "data_visible";
		
		
	} else {
		document.getElementById("row_wlan_mode").className = "data_invisible";
		document.getElementById("row_wlan_ssid").className = "data_invisible";
		document.getElementById("row_wlan_freq").className = "data_invisible";
		document.getElementById("row_wlan_encryp_type").className = "data_invisible";
		document.getElementById("row_wlan_auth_mode").className ="data_invisible";
		
	}
	create_list_box(document.getElementById("wlan_encryp_type"));
	/*
	for(i=0;i<f.wlan_encryp_type_buff.length;i++){
		if (f.wlan_encryp_type[i].value==f.wlan_encryp_type.value)
		f.wlan_encryp_type_buff[i].selected=true;
	}
	*/
	chkauth();
	gen_freq(document.getElementById("wlan_freq"),parseInt(document.getElementById("wlan_freq").value));
	//gen_freq();
	//wlanform.wlan_freq_selector[parseInt(wlanform.wlan_freq.value)-1].selected=true;
	//wlanform.wlan_freq_selector.disabled=f.wlan_auto_freq.checked;
	
}

function channel_chk(theSel,selectedIndex){
	
	var theSel=document.getElementById("wlan_freq_selector");
	if(document.getElementById("wlan_mode").value==3){
		if (document.getElementById("wlan_auto_freq").checked==true)
			alert ("802.11 A doesn't support AUTO Channel");
		
		document.getElementById("wlan_auto_freq").checked=false;
		document.getElementById("wlan_auto_freq").disabled=true;
	}else
		document.getElementById("wlan_auto_freq").disabled=false;
		document.getElementById("wlan_freq_selector").disabled=document.getElementById("wlan_auto_freq").checked;
	for (i=theSel.length;i>=0;i--)	
		if(theSel[i] !=null)deleteOption(theSel, 0);

	setChannel();
	/*gen_freq(theSel,parseInt(document.getElementById("wlan_auto_freq").value));*/
}



function setChannel(){
	
	var regid=wlan_regulation;
	
	var selObj=document.getElementById("wlan_freq");
	var sel_value=document.getElementById("wlan_freq").value;
	
	switch(parseInt(regid)){
		case 0 :
		case 1 :
			genChannel(selObj,1,11);
			break;
		case 2 :
			genChannel(selObj,1,13);
			break;
		case 3 :
			genChannel(selObj,10,11);
			break;
		case 4 :
			genChannel(selObj,10,13);
			break;
		case 5 :
			genChannel(selObj,1,14);
			break;
	}

	for(i=0;i<selObj.length;i++){
		if (selObj[i].value==sel_value)
			selObj[i].selected=true;
	}

}


function genChannel(selObj,vals,vale){
	deleteAllOption(selObj);
	var i=0;
	//alert(vals+","+vale);

	for(i=vals-1;i<vale;i++){
		addOption(selObj,bg_band_array[i].description,bg_band_array[i].channel);
	}
	
}


function gen_freq(container,selectedIndex){
	var theSel=container;
	
	for(i=theSel.length;i>=0;i--)
		theSel.remove(i);
	
	switch (parseInt(document.getElementById("wlan_mode").value)){
		case 0:
		case 1:
		case 2:
			addOption(theSel,'2.412GHZ (channel 1)','1');  
			addOption(theSel,'2.417GHZ (channel 2)','2');  
			addOption(theSel,'2.422GHZ (channel 3)','3');  
			addOption(theSel,'2.427GHZ (channel 4)','4');  
			addOption(theSel,'2.432GHZ (channel 5)','5');  
			addOption(theSel,'2.437GHZ (channel 6)','6');  
			addOption(theSel,'2.442GHZ (channel 7)','7');  
			addOption(theSel,'2.447GHZ (channel 8)','8');  
			addOption(theSel,'2.452GHZ (channel 9)','9');  
			addOption(theSel,'2.457GHZ (channel 10)','10');
			addOption(theSel,'2.462GHZ (channel 11)','11');
			addOption(theSel,'2.467GHZ (channel 12)','12');
			addOption(theSel,'2.472GHZ (channel 13)','13');
			addOption(theSel,'2.477GHZ (channel 14)','14');
			break;
		case 3:
			addOption(theSel,'5180MHz (Channel 36)','36');  
			addOption(theSel,'5200MHz (Channel 40)','40');  
			addOption(theSel,'5220MHz (Channel 44)','44');  
			addOption(theSel,'5240MHz (Channel 48)','48');  
			addOption(theSel,'5260MHz (Channel 52)','52');  
			addOption(theSel,'5280MHz (Channel 56)','56');  
			addOption(theSel,'5300MHz (Channel 60)','60');  
			addOption(theSel,'5320MHz (Channel 64)','64');  
			addOption(theSel,'5500MHz (Channel 100)','100'); 
			addOption(theSel,'5520MHz (Channel 104)','104');
			addOption(theSel,'5540MHz (Channel 108)','108');
			addOption(theSel,'5560MHz (Channel 112)','112');
			addOption(theSel,'5580MHz (Channel 116)','116');
			addOption(theSel,'5600MHz (Channel 120)','120');
			addOption(theSel,'5620MHz (Channel 124)','124');
			addOption(theSel,'5640MHz (Channel 128)','128');
			addOption(theSel,'5660MHz (Channel 132)','132');
			addOption(theSel,'5680MHz (Channel 136)','136');
			addOption(theSel,'5700MHz (Channel 140)','140');
			addOption(theSel,'5745MHz (Channel 149)','149');
			addOption(theSel,'5765MHz (Channel 153)','153');
			addOption(theSel,'5785MHz (Channel 157)','157');
			addOption(theSel,'5815MHz (Channel 161)','161');
			addOption(theSel,'5835MHz (Channel 165)','165');
			break;
	}
	theSel.selectedIndex=(selectedIndex-1);
	
}


function chkauth()
{
		
	var f=document.wlanform;
	var wlan_enable=false;

	//if(f.wlan_enable ){
		if (f.wlan_enable.type =="checkbox")
			wlan_enable=(f.wlan_enable.checked==true)?true:false;
		else
			wlan_enable=(f.wlan_enable.value=="1")?true:false;
	//}
	
	
	
	//document.getElementById("row_wlan_encryp_type").className = "data_invisible";
	document.getElementById("row_wlan_wep_encryp_length").className = "data_invisible";
	document.getElementById("row_wlan_desc").className = "data_invisible";
	document.getElementById("row_wlan_key1").className = "data_invisible";
	document.getElementById("row_wlan_key2").className = "data_invisible";
	document.getElementById("row_wlan_key3").className = "data_invisible";
	document.getElementById("row_wlan_key4").className = "data_invisible";
	document.getElementById("row_wlan_wpapsk").className = "data_invisible";
	if(document.getElementById("row_wlan_radius_server"))document.getElementById("row_wlan_radius_server").className = "data_invisible";
	if(document.getElementById("row_wlan_radius_port"))document.getElementById("row_wlan_radius_port").className = "data_invisible";
	if(document.getElementById("row_wlan_radius_key"))document.getElementById("row_wlan_radius_key").className = "data_invisible";
	if (document.getElementById("row_apcli_auth")) document.getElementById("row_apcli_auth").className = "data_invisible";
	//row_apcli_auth

	
	if (wlan_enable==true && f.wlan_encryp_type.value!="NONE")
		switch(f.wlan_encryp_type.value){
			case "WEP":
				document.getElementById("row_wlan_wep_encryp_length").className = "data_visible";
				document.getElementById("row_wlan_desc").className = "data_visible";
				document.getElementById("row_wlan_key1").className = "data_visible";
				document.getElementById("row_wlan_key2").className = "data_visible";
				document.getElementById("row_wlan_key3").className = "data_visible";
				document.getElementById("row_wlan_key4").className = "data_visible";
				f.default_KeyID[parseInt(f.wlan_default_KeyID.value)-1].checked=true;
				break;
			case "TKIP":
			case "AES":
			case "TKIPAES":
				switch(f.wlan_auth_mode.value){
					case "WPA":
					case "WPA2":
					case "WPA1WPA2":
						if(parseInt(document.getElementById("wlan_role").value)!=6){
							document.getElementById("row_wlan_radius_server").className = "data_visible";
							document.getElementById("row_wlan_radius_port").className = "data_visible";
							document.getElementById("row_wlan_radius_key").className = "data_visible";
						}
						break;
					case "WPAPSK":
					case "WPA2PSK":
					case "WPAPSKWPA2PSK":
						document.getElementById("row_wlan_wpapsk").className = "data_visible";
						if(document.getElementById("wlan_enable").checked==true && document.getElementById("wlan_role").value=="1" )
							document.getElementById("row_apcli_auth").className = "data_visible";
						break;
				}
		}


	//f.wlan_encryp_type.value=(f.wlan_pre_auth.checked)?f.select_wlan_encryp_type.value:"NONE";
}

function submitchk(f)
{
	if (	!valid(f.wlan_ssid.value, is_ssid, "SSID should contain digits, alphabets, dash(-) or underscore(_) only") ||
		!valid_or_null(f.wlan_mac.value, is_mac, "WLAN MAC should be in xx:xx:xx:xx:xx:xx format.") ) {
		return false;
	}
	return true;
}


function create_list_box( encryp_element ){

	var menu= new Array("NONE","WEP","TKIP","AES","TKIPAES");
	//var encryp_element=document.wlanform.wlan_encryp_type;
	var encryp_type_obj=new Object;
	
	for(i=encryp_element.length;i>=0;i--)
		encryp_element.remove(i);

			
	switch(document.getElementById("wlan_auth_mode").value) {
		case "OPEN":
			create_option(menu[0],encryp_element);
		case "SHARED":
			create_option(menu[1],encryp_element);
			break;
		case "WPA":
		case "WPAPSK":
		case "WPA2":
		case "WPA2PSK":
			document.getElementById("wlan_default_KeyID").value="2";
			create_option(menu[2],encryp_element);
			create_option(menu[3],encryp_element);
			break;
		case "WPA1WPA2":
		case "WPAPSKWPA2PSK":
			document.getElementById("wlan_default_KeyID").value="2";
			create_option(menu[4],encryp_element);
/*
			if (document.getElementById("wlan_auth_mode").selectedIndex < 4 ) create_option(menu[2],encryp_element);
			create_option(menu[3],encryp_element);
			break;
		case "WPA1WPA2":
		case "WPAPSKWPA2PSK":
			create_option(menu[4],encryp_element);
			break;
*/
	}
}

function create_option(value,oelement){
	var newOpt = document.createElement('option');
	newOpt.text = value;
	newOpt.value = value;
	oelement.options.add(newOpt);
}	
	

	
	
	
	
	
	
	

