//******************************************************************
// Validates content of fields
//******************************************************************
function checkfield(fieldname,fieldlabel,acceptonly,formname){

	var s= new String();
	
	characters = new RegExp ("[^A-Za-z .'-]","ig");
	numbers = new RegExp ("[^0-9]","ig");
	numchar = new RegExp ("[^0-9-^A-Za-z .'-]","ig");
	
	myobj = eval('document.' + formname + '.' + fieldname);
	s = myobj.value;
	result = s.search(eval(acceptonly));
	if (result != -1){
		if (acceptonly == "numchar")
		{
			msg = fieldlabel + " can only contain numbers and characters" + ".";
		}
		else if  (acceptonly == "numbers")
		{
			msg = fieldlabel + " can only contain numbers" + ".";
		}
		else
		{
			msg = fieldlabel + " can only contain characters" + ".";
		}
		myobj.value  = s.replace(eval(acceptonly), "");
		alert(msg);
		return false;
	}

}
//******************************************************************
// End of code to validates content of fields
//******************************************************************		

function cutandpasteMSISDN(formname) {

	obj_npa = eval('document.' + formname + '.npa');
	obj_nxx = eval('document.' + formname + '.nxx');
	obj_phone = eval('document.' + formname + '.phone');
	
	var_MSISDN = obj_npa.value;
	
	if (var_MSISDN.length >= 3)
	{
		var_NPA = var_MSISDN.substring(0, 3);
		var_Remaining = var_MSISDN.substring(3, var_MSISDN.length);
		
		obj_npa.value = var_NPA;
		obj_nxx.value = var_Remaining;
		obj_nxx.focus();
		
		if (var_Remaining.length > 3)
		{		
			var_NXX = var_Remaining.substring(0, 3);
			var_Phone = var_Remaining.substring(3, var_Remaining.length);																											

			obj_nxx.value = var_NXX;
			obj_phone.value = var_Phone;
			obj_phone.focus();
		}													
	}
}

//-- Ajax Manager
function ajaxManager(){
	var args = ajaxManager.arguments;
	if (document.getElementById) 
	{
		var x = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
	}
	
	if (x){
		x.onreadystatechange = function(){
			if (x.readyState == 4 && x.status == 200){
				eval(x.responseText);
			}
		}
		var MyString = args[0];
		x.open("POST", MyString, true);
		x.send(null);
	}
}

loginSubmited = 0;
function validatelogin(formname){
	var errormessage
	var flagerror
	
	errormessage = "The following error(s) have occured. \n __________________________________________________\n"
	flagerror = 0;
	
	var formPath = eval('document.' + formname);
	
	if (formPath.MSISDN.value.length != 10)
	{
		errormessage = errormessage + "\n Please enter a valid 10-digit mobile number.";
		flagerror = 1;			
	}					

	if (formPath.Password.value.length == 0)
	{
		errormessage = errormessage + "\n Please enter your password.";
		flagerror = 1;			
	}		
						
	if (flagerror == 1)
	{
		errormessage = errormessage + "\n__________________________________________________\n\n";
		alert(errormessage);
		return false;
	}
	else if (loginSubmited == 0)
	{
		loginSubmited = 1;
		return true;
	}
	else
		return false;
}	

loginSubmited = 0;
function validatelogin2(formname){
	var errormessage
	var flagerror
	
	errormessage = "The following error(s) have occured. \n __________________________________________________\n"
	flagerror = 0;
	
	var formPath = eval('document.' + formname);
	
	var msisdn = formPath.npa.value + formPath.nxx.value + formPath.phone.value;
	
	if (msisdn.length != 10)
	{
		errormessage = errormessage + "\n Please enter a valid 10-digit mobile number.";
		flagerror = 1;			
	}	

	if (formPath.Password.value.length == 0)
	{
		errormessage = errormessage + "\n Please enter your password.";
		flagerror = 1;			
	}		
						
	if (flagerror == 1)
	{
		errormessage = errormessage + "\n__________________________________________________\n\n";
		alert(errormessage);
		return false;
	}
	else if (loginSubmited == 0)
	{
		loginSubmited = 1;
		return true;
	}
	else
		return false;
}

var sendPass = 0;
function CheckMultiplePhone(formname){
	var errormessage
	var flagerror
	
	errormessage = "The following error(s) have occured. \n __________________________________________________\n"
	flagerror = 0;
	
	var formPath = eval('document.' + formname);
	var msisdn = formPath.npa.value + formPath.nxx.value + formPath.phone.value;
	
	if (msisdn.length != 10)
	{
		errormessage = errormessage + "\n Please enter a valid 10-digit mobile number.";
		flagerror = 1;			
	}					

	if (flagerror == 1)
	{
		errormessage = errormessage + "\n__________________________________________________\n\n";
		alert(errormessage);
		return false;
	}
	else if	(sendPass == 0)
	{
		sendPass = 1;
		return true;
	}
	else
		return false;
}

function PreviewFormValidation(formname)
{
	var formPath = eval('document.' + formname);
	var Agree = formPath.Agree.checked;

	if(Agree)
		return CheckMultiplePhone(formname)

	errormessage = "The following error(s) have occured. \n __________________________________________________\n"
	errormessage = errormessage + "\n You must agree to the terms and conditions.";
	errormessage = errormessage + "\n__________________________________________________\n\n";
	alert(errormessage);
	return false;
}

function gounsub(cell){
	if(confirm("Are you sure you wish to deactivate billing on this site?"))
	{
		window.open("./WebUnsub.cfm?msisdn="+cell,"unsubscribe","width=200,height=100,top=150,left=250");
		return false;
	}
	else
		return false;
}

function SubmitPromo()
{
	if (document.promo.AuthCode.value == '')
	{
		alert('Please enter the verification code to continue!')
		return false;
	}
	else if (MD5(document.promo.AuthCode.value) != document.promo.ywnb.value)
	{
		alert('Please enter a valid verification code to continue!')
		return false;
	}
	else 
	{
		ajaxManager('./promoAuthProcess.cfm?PID='+ document.promo.PID.value +'&AuthCode='+document.promo.AuthCode.value+'&ywnbid='+document.promo.ywnbid.value);
		return false;
	} 
}

function ToggleLay(LayerName,Action)
{
	var LayerNames = LayerName.split('|')

	for (var i = 0, n = LayerNames.length; i < n; i++)
	{
		if (Action == 'Show')
			document.getElementById(LayerNames[i]).style.display = "block";
		else
			document.getElementById(LayerNames[i]).style.display = "none";
	}
}

function chkfromproblem() {
	
	var re = /(<([^>]+)>)/gi;		
	var stripcomment = frmproblem.comment.value.replace(re, "");
	
	frmproblem.comment.value = 	stripcomment;
			
	//alert(comment.length);return false;
	if(comment==0) {
		alert("Please enter comment before continuing!");
		return false;
	}
	else {
		
		document.getElementById("btnSubmit").disabled=true;		
		document.frmproblem.submit();
	}
}