//trim function

String.prototype.trim = function() { return this.replace(/^\s+|\s+$/, ''); };

function _digit(zip)
{
	var filter=/^\d+$/
	if (filter.test(zip))
		return true;
	else
	    return false;
			
}


/******for Showing message************/
function _messageBox(message)
{
	document.getElementById('message').innerHTML = message;
	return false;
}
/******for Showing message************/


function _isFieldBlank(oForm)
{
	//var oForm = document.forms[0];
	var flag = false;
	var thisObj = '';

	for (var i = 0; i < oForm.elements.length; ++i)
	{
		oForm.elements[i].value=oForm.elements[i].value.trim();
		if (!oForm.elements[i].value)
		{
			var thisObj = oForm.elements[i];
			
			oForm.elements[i].style.backgroundColor = 'lime';
			oForm.elements[i].onblur = function()
			{
				this.style.backgroundColor = 'white';
			}
			flag = true;
		}
	}

	if ( flag )
	{
		_messageBox('Please enter data for highlighted fields');
		return false;
	}
	else
		return true;
}

/*******for Check email address**************/
function checkemail(str)
{
	//var str=document.forms[0].elements['email'].value;
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if (filter.test(str))	
		return true;	
	else	
		return false;
}

function _isValidemail(oForm)
{
	//var oForm = document.forms[0];
	if  ( !checkemail(oForm.elements['user_email'].value) )
	{
		oForm.elements['user_email'].select();
		_messageBox("Please enter valid email address");
		return false;
	}
	return true;
}
/*******for Check email address**************/


function ValidloginFrom(Oform)
{
	if (!_isFieldBlank(Oform))
		return false;
	if(!_isValidemail(Oform))
		return false;	
	else
		return true;	
}



/****
****Lost Password Valid function
************/

function ValidlostpFrom()
{
	
	if(document.forms[0].elements['user_email'].value == '')
	{
		alert("Please enter your email");
		document.forms[0].elements['user_email'].select();
		return false;
	}
	if  ( !checkemail(document.forms[0].elements['user_email'].value) )
	{
		document.forms[0].elements['user_email'].select();
		alert("Please enter valid email address");
		return false;
	}
	return true;
}
/****
****Lost Password Valid function
************/

/****
***Start function ValidRegisterFrom
******************/
function _messageBoxR(message)
{
	document.getElementById('messageR').innerHTML = message;
	return false;
}

function ValidateRegisterFrom(form)
{
	if (!_isFieldBlankRegister(form))
		return false;
	if(!_isValidemailRegister(form))
		return false;
	else if (!_isConfirmEmail(form))
		return false;
	else if (!_isValidPassword(form))
		return false;
	else if (!_isConfirmPassword(form))
		return false;		
	else if (!_chkdayyear(form))
		return false;
	else
		return true;		
}


function _isFieldBlankRegister(oForm)
{
	//var oForm = document.forms[1];
	var flag = false;
	var thisObj = '';	

	for (var i = 0; i < oForm.elements.length; ++i)
	{
		oForm.elements[i].value=oForm.elements[i].value.trim();
		if (!oForm.elements[i].value || oForm.elements[i].value =='dd')
		{
			var thisObj = oForm.elements[i];
			
			oForm.elements[i].style.backgroundColor = 'lime';
			oForm.elements[i].onblur = function()
			{
				this.style.backgroundColor = 'white';
			}
			flag = true;
		}
	}

	if ( flag )
	{
		_messageBoxR('Please enter data for highlighted fields');
		return false;
	}
	else
		return true;
}

function _isValidemailRegister(oForm)
{
	//var oForm = document.forms[1];
	if  ( !checkemail(oForm.elements['user_email'].value) )
	{
		oForm.elements['user_email'].select();
		_messageBoxR("Please enter valid email address");
		return false;
	}
	return true;
}

function _isConfirmEmail(oForm)
{
	//var oForm = document.forms[1];
	if ( oForm.elements['user_email'].value != oForm.elements['user_emailconfirm'].value )
	{
		oForm.elements['user_emailconfirm'].select();
		_messageBoxR("Please confirm email");
		return false;
	}
	return true;
}

function _isValidPassword(oForm)
{
	//var oForm = document.forms[1];
	if ( oForm.elements['user_password'].value.length < 4)
	{
		oForm.elements['user_password'].select();
		_messageBoxR("Password must be 4 or more characters long");
		return false;
	}
	return true;
}

function _isConfirmPassword(oForm)
{
	//var oForm = document.forms[1];
	if ( oForm.elements['user_password'].value != oForm.elements['user_cpassword'].value )
	{
		oForm.elements['user_cpassword'].select();
		_messageBoxR("Please confirm password");
		return false
	}
	return true;
}


function _chkdayyear(oForm)
{		
	/*
	if(document.getElementById('day').value.length ==1)
		var k = "0"+document.getElementById('day').value;
	else
		var k = document.getElementById('day').value;				
	if  (!_chkday(k))
	{
		document.getElementById('day').select();
		_messageBoxR("Please enter valid day");
		return false;
	}
	*/
	if(oForm.elements['day'].value.length ==1)
		var k = "0"+ oForm.elements['day'].value;
	else
		var k = oForm.elements['day'].value;				
	if  (!_chkday(k))
	{
		oForm.elements['day'].select();
		_messageBoxR("Please enter valid day");
		return false;
	}
	
	return true;	
}

function _chkday(aaa,month)
{
	var filter=/^(\d{2})$/i
	if (filter.test(aaa))
	{
		if(month == 2)
		{
			if(aaa <= 28)
				return true;
			else
				return false;	
		}else if(month == 4 || month == 6 || month == 9 || month == 11)
		{
			if(aaa <= 30)
				return true;
			else
				return false;
		}else
		{
			if(aaa <= 31)
				return true;
			else
				return false;	
		}
		
		
	}
	else
	{
		return false;
	}
}
/****
***Start function ValidRegisterFrom
******************/
function $(id)
{
	return document.getElementById(id);
}
function ValidPcodeFrom()
{
	if($('discount_code').value=='')
	{
		alert('Please enter the promotion code');
		$('discount_code').select();
		return false;
	}
  return true;	
}

/*************************************/
	function ValidshipFrom(oform)
	{
		if (!_isFieldBlankRegister(oform))
			return false;
		else
			return true;
	}
	
	
	
	/********************/
	function validateCC_Form(oForm)
	{
		
		//var oForm = document.forms[0];
	
		if (!_isFieldBlankRegister(oForm))
	
			return false;
	
		else if ( oForm.elements['cc_type'].options[oForm.elements['cc_type'].selectedIndex].value == "" )
	
		{
	
			 oForm.elements['cc_type'].focus();
	
			_messageBoxR('Please choose a value for highlighted field(s)');
	
			return false;
	
		}
	
		else if ( oForm.elements['cc_expmonth'].options[oForm.elements['cc_expmonth'].selectedIndex].value == "" )
	
		{
	
			oForm.elements['cc_expmonth'].focus();
	
			_messageBoxR('Please choose a value for highlighted field(s)');
	
			return false;
	
		}
	
		else if ( oForm.elements['cc_expyear'].options[oForm.elements['cc_expyear'].selectedIndex].value == "" )
	
		{
	
			oForm.elements['cc_expyear'].focus();
	
			_messageBoxR('Please choose a value for highlighted field(s)');
	
			return false;
	
		}else if(!_digit(oForm.elements['cc_number'].value))
		{
			oForm.elements['cc_number'].focus();
	
			_messageBoxR('Please enter valid credit card number');
	
			return false;	
		}	
		else
	
			return true;
	


	}
	//--------------------------
	
	
	function checkCustomerService(oForm)
	{
		var msg="Please enter data form the fields\n\n";
		var flas=false;
		
		for (var i = 0; i < oForm.elements.length; ++i)
		{
			oForm.elements[i].value=oForm.elements[i].value.trim();
		}
		
		if(oForm.elements['order_number'].value == "")
		{
			msg +="Order Number is required \n";
			flas=true;			
		}
		if(oForm.elements['customer_fname'].value == "")
		{
			msg +="First Name is required \n";
			flas=true;			
		}
		if(oForm.elements['customer_lname'].value == "")
		{
			msg +="Last Name is required \n";
			flas=true;			
		}
		if(oForm.elements['customer_email'].value == "")
		{
			msg +="Customer Email is required \n";
			flas=true;			
		}
	
		if(oForm.elements['return_exchange'].selectedIndex == 0)
		{
			msg +="Please specify if you would like to return or exchange \n";
			flas=true;			
		}
		
		if(!checkemail(oForm.elements['customer_email'].value))
		{
			msg +="Enter Valid Email \n";
			flas=true;			
		}
		
		if(oForm.elements['telephone_number'].value == "")
		{
			msg +="Telephone number is required \n";
			flas=true;			
		}
		
		if(oForm.elements['coments'].value == "")
		{
			msg +="Reason for exchange/refund is required \n";
			flas=true;			
		}
		
		if(flas)
		{
			alert(msg);
			return false;
		}else
		{
			return true;	
		}
		
		return true;
	}
	
	
	
	
function checkpress(oForm)
	{
		
		var msg="Please enter data form the fields\n\n";
		var flas=false;
		
		for (var i = 0; i < oForm.elements.length; ++i)
		{
			oForm.elements[i].value=oForm.elements[i].value.trim();
			
		}
		
		
		if(oForm.elements['first_name'].value == "")
		{
			
			msg +="First name is required \n";
			flas=true;			
		}
		if(oForm.elements['sur_name'].value == "")
		{
			msg +="Surname is required \n";
			flas=true;			
		}
		if(oForm.elements['job'].value == "")
		{
			msg +="Job title is required \n";
			flas=true;			
		}
		if(oForm.elements['publication'].value == "")
		{
			msg +="Publication is required \n";
			flas=true;			
		}
		if(oForm.elements['sender_email'].value == "")
		{
			msg +="Please provide an email address \n";
			flas=true;			
		}
		
		
	
		
		
		if(!checkemail(oForm.elements['sender_email'].value))
		{
			msg +="Enter Valid Email \n";
			flas=true;			
		}
	
		if(flas)
		{
			alert(msg);
			return false;
		}else
		{
			return true;	
		}
		
		return true;
	}	
	
//start of login form
function Validloginfrm(oform)
{
	for (var i = 0; i < oform.elements.length; ++i)
	{
		oform.elements[i].value=oform.elements[i].value.trim();
	}
	
	var msg="Please enter data form the fields\n\n";
	var flas=false;	
	if(oform.elements['user_email'].value == "")
	{
		msg +="Email is required \n";
		flas=true;			
	}
	if(oform.elements['user_password'].value == "")
	{
		msg +="Password is required \n";
		flas=true;			
	}
	if(flas)
	{
		alert(msg);
		return false;
	}else
	{
		return true;	
	}
	
	return true;
}
//end of login form

function ValidshipFrom1(oForm)
{
	
	for (var i = 0; i < oForm.elements.length; ++i)
	{
		oForm.elements[i].value=oForm.elements[i].value.trim();
	}
	
	var msg="Please enter data in the required data fields\n\n";
	var flas=false;		
	
	if(oForm.elements['fname'].value == "")
	{
		msg +="First name is required \n";
		flas=true;			
	}
	if(oForm.elements['lname'].value == "")
	{
		msg +="Last name is required \n";
		flas=true;			
	}
	if(oForm.elements['address1'].value == "")
	{
		msg +="address line 1 is required \n";
		flas=true;			
	}
	
	if(oForm.elements['City'].value == "")
	{
		msg +="City is required \n";
		flas=true;			
	}
	
	if(oForm.elements['Zip'].value == "")
	{
		msg +="Post code is required \n";
		flas=true;			
	}
	if(oForm.elements['tel'].value == "")
	{
		msg +="Phone number is required \n";
		flas=true;			
	}	
	if(oForm.elements['user_email'].value == "")
	{
		msg +="Email is required \n";
		flas=true;			
	}
	if(oForm.elements['user_password'].value == "")
	{
		msg +="Password is required \n";
		flas=true;			
	}
	if(oForm.elements['user_confirmpassword'].value == "")
	{
		msg +="Please confirm password \n";
		flas=true;			
	}
	
	
	if(oForm.elements['user_email'].value != "")
	{
		if(!checkemail(oForm.elements['user_email'].value)){
			msg +="Enter a valid email\n";
			flas=true;
		}
		if(oForm.elements['user_email'].value != oForm.elements['user_confirmemail'].value)
		{
			msg +="Confirm email does not match\n";
			flas=true;
		}
	}
	if(oForm.elements['user_password'].value != "")
	{
		if(oForm.elements['user_password'].value != oForm.elements['user_confirmpassword'].value)
		{
			msg +="Confirm password does not match\n";
			flas=true;
		}
	}
	
	
	//billing info check
	var radio_choice = true;
	
	if(oForm.elements['sameasshippingy'].checked || oForm.elements['sameasshippingn'].checked)
	{
		radio_choice = true;		
	}else{
		radio_choice = false;
	}
	
	if(!radio_choice)
	{
		msg +="Enter Billing Address below \n";
		flas=true;
	}
	
	if(oForm.elements['sameasshippingn'].checked)
	{
		msg +="\n\n Billing address\n\n";
		if(oForm.elements['billfname'].value == "")
		{
			msg +="First name is required \n";
			flas=true;			
		}
		if(oForm.elements['billlname'].value == "")
		{
			msg +="Last name is required \n";
			flas=true;			
		}
		if(oForm.elements['address1b'].value == "")
		{
			msg +="address line 1 is required \n";
			flas=true;			
		}
		
		if(oForm.elements['Cityb'].value == "")
		{
			msg +="City is required \n";
			flas=true;			
		}
			if(oForm.elements['Zipb'].value == "")
		{
			msg +="Post code is required \n";
			flas=true;			
		}
		if(oForm.elements['telb'].value == "")
		{
			msg +="Phone number is required \n";
			flas=true;			
		}	
		
	}
	
	if(flas)
	{
		alert(msg);
		return false;
	}else
	{
		return true;	
	}
	
	return true;
}

  function checkfrmbill(oForm)
  {
		for (var i = 0; i < oForm.elements.length; ++i)
		{
			oForm.elements[i].value=oForm.elements[i].value.trim();
		}
		
		var msg="Please enter data form the fields \n\n";
		var flas=false;		
		
		if(oForm.elements['fname'].value == "")
		{
			msg +="First name is required \n";
			flas=true;			
		}
		if(oForm.elements['lname'].value == "")
		{
			msg +="Last name is required \n";
			flas=true;			
		}
		if(oForm.elements['address1'].value == "")
		{
			msg +="address is required \n";
			flas=true;			
		}
		
		if(oForm.elements['City'].value == "")
		{
			msg +="City is required \n";
			flas=true;			
		}
		/*if(oForm.elements['County'].value == "")
		{
			msg +="County is required \n";
			flas=true;			
		}*/
		if(oForm.elements['Zip'].value == "")
		{
			msg +="Zip is required \n";
			flas=true;			
		}
		if(oForm.elements['tel'].value == "")
		{
			msg +="Telephone is required \n";
			flas=true;			
		}
		
		
		
		
		if(flas)
		{
			alert(msg);
			return false;
		}else
		{
			return true;	
		}
		
		return true;
  }
  
  
  

function displayYesMsg(whichLayer)
{
	var elem, vis;
	elem = document.getElementById(whichLayer);
	vis = elem.style;
	// if the style.display value is blank we try to figure it out here
	vis.visibility = 'visible';
	
	var no = document.getElementById('no');
	var no_style = no.style;
	no_style.visibility = 'hidden';
	
	
}

function displayNoMsg(whichLayer)
{
	var elem, vis;
	elem = document.getElementById(whichLayer);
	vis = elem.style;
	// if the style.display value is blank we try to figure it out here
	vis.visibility = 'visible';
	
	var yes = document.getElementById('yes');
	var yes_style = yes.style;
	yes_style.visibility = 'hidden';
	
	
}