var chk =1;

function popUp(url)
{
	if(chk == 1)
	{
		ht = screen.height - 20;
		wd = screen.width - 20;
		win2 = window.open(url, "win2", "width="+wd+",height="+ht+",left=0,top=0,scrollbars=yes,toolbar=yes,status=yes,resizable=yes,menubar=yes" );
	}
}
function echeck(str) 
{

	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){
	   return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		return false
	}

	 if (str.indexOf(at,(lat+1))!=-1){
		return false
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		return false
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
		return false
	 }
	
	 if (str.indexOf(" ")!=-1){
		return false
	 }

	 return true					
}

function showSurvey() 
{
	//hideSurvey()
	document.getElementById("survey").style.visibility = "visible";
	document.getElementById("survey_rrc").style.visibility = "visible";
	//document.getElementById("seeSurvey").style.display = '';
	//document.getElementById("skipTop").style.display = '';
	//document.getElementById("skipBottom").style.display = '';
}

function validateAddressForm()
{
	optionNum = -1;
	var errMsg="";
	var problem=false;

	
	if(document.addressForm.salutation.value == '')
	{
		errMsg += "Please indicate your preferred title.\n";		
		var problem = true;
	}


	if(document.addressForm.fname.value.length <= 0)
	{				
		errMsg += "First name is required.\n";		
		var problem = true;
	}
	else
	{
		var first_name = document.addressForm.fname.value;
		var first_name_re = /[A-Za-z ]+\-*\'*/gi;
		var first_name_result = first_name.match(first_name_re);
		
		if (first_name_result != first_name)
		{
			errMsg += "First name contains invalid character(s).\n";
			var problem = true;
		}			
	}

	if(document.addressForm.lname.value.length <= 0)
	{				
		errMsg += "Last name is required.\n";		
		var problem = true;
	}
	else
	{
		var last_name = document.addressForm.lname.value;
		var last_name_re = /[A-Za-z ]+\-*\'*/gi;
		var last_name_result = last_name.match(last_name_re);
		
		if (last_name_result != last_name)
		{
			errMsg += "Last name contains invalid character(s).\n";
			var problem = true;
		}			
	}

	if(document.addressForm.address1.value.length <=0)
	{
		errMsg += "Street address line 1 is required.\n";		
		var problem = true;
	}
	
	if(document.addressForm.city.value.length <=0)
	{
		errMsg += "City name is required.\n";		
		var problem = true;
	}
	
	if(document.addressForm.zip.value.length <= 0)
	{
		errMsg += "Zip code is required.\n";
		var problem = true;
	}
	else
	{
		var myzip = document.addressForm.zip.value;
		var myzip_re = /\s+/gi;
		var myzip1_re = /\D/gi;
		var myzip_result = myzip.match(myzip_re);
		var myzip1_result = myzip.match(myzip1_re);

		if (document.addressForm.zip.value.length != 5) 
		{
			errMsg += "Zip code is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myzip_result != null)
			{
				errMsg += "Zipcode cannot have spaces.\n";
				var problem = true;
			}
			
			if (myzip1_result != null)
			{
				errMsg += "Zip code contains invalid characters.\n";
				var problem = true;
			}			
		}
	}

	if(!echeck(document.addressForm.e_address.value))
	{
		errMsg += "Please enter a valid email address.\n";
		var problem = true;
	}

	if(document.addressForm.state.value == '--Select--')
	{
		errMsg += "Please select a state\n";
		var problem = true;
	}

	if(document.addressForm.DOBMonth.value == 0 || document.addressForm.DOBDay.value == 0 || document.addressForm.DOBYear.value == 0)
	{
		errMsg += "Please enter your date of birth.\n";
		var problem=true;
	}

	if(document.addressForm.homephone1.value.length <= 0)
	{
		errMsg += "Home Phone Area Code is required.\n";
		var problem = true;
	}
	else
	{
		var myhomephone1 = document.addressForm.homephone1.value;
		var myhomephone1_re = /\s+/gi;
		var myhomephone11_re = /\D/gi;
		var myhomephone1_result = myhomephone1.match(myhomephone1_re);
		var myhomephone11_result = myhomephone1.match(myhomephone11_re);

		if (document.addressForm.homephone1.value.length != 3) 
		{
			errMsg += "Home Phone Area Code is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myhomephone1_result != null)
			{
				errMsg += "Home Phone Area Code cannot have spaces.\n";
				var problem = true;
			}
			
			if (myhomephone11_result != null)
			{
				errMsg += "Home Phone Area Code contains invalid characters.\n";
				var problem = true;
			}			
		}
	}

	if(document.addressForm.homephone2.value.length <= 0)
	{
		errMsg += "Home Phone Prefix is required.\n";
		var problem = true;
	}
	else
	{
		var myhomephone2 = document.addressForm.homephone2.value;
		var myhomephone2_re = /\s+/gi;
		var myhomephone21_re = /\D/gi;
		var myhomephone2_result = myhomephone2.match(myhomephone2_re);
		var myhomephone21_result = myhomephone2.match(myhomephone21_re);

		if (document.addressForm.homephone2.value.length != 3) 
		{
			errMsg += "Home Phone Prefix is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myhomephone2_result != null)
			{
				errMsg += "Home Phone Prefix cannot have spaces.\n";
				var problem = true;
			}
			
			if (myhomephone21_result != null)
			{
				errMsg += "Home Phone Prefix contains invalid characters.\n";
				var problem = true;
			}			
		}
	}

	if(document.addressForm.homephone3.value.length <= 0)
	{
		errMsg += "Home Phone Suffix is required.\n";
		var problem = true;
	}
	else
	{
		var myhomephone3 = document.addressForm.homephone3.value;
		var myhomephone3_re = /\s+/gi;
		var myhomephone31_re = /\D/gi;
		var myhomephone3_result = myhomephone3.match(myhomephone3_re);
		var myhomephone31_result = myhomephone3.match(myhomephone31_re);

		if (document.addressForm.homephone3.value.length != 4) 
		{
			errMsg += "Home Phone Suffix is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myhomephone3_result != null)
			{
				errMsg += "Home Phone Suffix cannot have spaces.\n";
				var problem = true;
			}
			
			if (myhomephone31_result != null)
			{
				errMsg += "Home Phone Suffix contains invalid characters.\n";
				var problem = true;
			}			
		}
	}

	/*
	if(!document.addressForm.agree.checked)
	{
		errMsg += "You must agree to the privacy policy and terms and conditions.";	
		problem = true;
	}
	*/

	if(problem)
	{
		alert(errMsg);
		errMsg="";
		return false;
	}
	else
	{
		chk=0;
		return true;
	}
}

function termsAgreeFun()
{
	return true;
}



function submit_survey_form()
{
	if(validateForm())
	{
		chk=0;
		return true;
	}
	else
		return false;
}

function validateZipForm() {
	var problem = false;
	var errMsg = "";
	
	if(document.addressForm.zip.value.length <= 0)
	{
		errMsg += "Zip code is required.\n";
		var problem = true;
	}
	else
	{
		var myzip = document.addressForm.zip.value;
		var myzip_re = /\s+/gi;
		var myzip1_re = /\D/gi;
		var myzip_result = myzip.match(myzip_re);
		var myzip1_result = myzip.match(myzip1_re);

		if (document.addressForm.zip.value.length != 5) 
		{
			errMsg += "Zip code is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myzip_result != null)
			{
				errMsg += "Zipcode cannot have spaces.\n";
				var problem = true;
			}
			
			if (myzip1_result != null)
			{
				errMsg += "Zip code contains invalid characters.\n";
				var problem = true;
			}			
		}
	}
		
	if(problem) {
		alert(errMsg);
		return false;
	}
	else
	{
		chk=0;
		return true;
	}
}

function validateEmailForm() {
   var valid = true;
	var errMsg = "";
   var email = document.addressForm.e_address.value;
   var checkbox = document.addressForm.checkbox.checked;
   var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
   if(email.length <= 0) {
      valid = false;
      errMsg = "Email address is required.";
   } else {
      if (!filter.test(email)) {
         valid = false;
         errMsg = "Please provide a valid email address.";
      }
   }
   if(!checkbox) {
      valid = false;
      errMsg = "You must certify that you are a US resident over the age of 18 and agree to the privacy policy and promotion terms.";
   }
   if (errMsg.length > 0) {
      alert(errMsg);
   }
   return valid;
}

function validateTemplateAddressForm()
{
	optionNum = -1;
	var errMsg="";
	var problem=false;

	
	if(document.addressForm.salutation.value == '')
	{
		errMsg += "Please indicate your preferred title.\n";		
		var problem = true;
	}


	if(document.addressForm.fname.value.length <= 0)
	{				
		errMsg += "First name is required.\n";		
		var problem = true;
	}
	else
	{
		var first_name = document.addressForm.fname.value;
		var first_name_re = /[A-Za-z ]+\-*\'*/gi;
		var first_name_result = first_name.match(first_name_re);
		
		if (first_name_result != first_name)
		{
			errMsg += "First name contains invalid character(s).\n";
			var problem = true;
		}			
	}

	if(document.addressForm.lname.value.length <= 0)
	{				
		errMsg += "Last name is required.\n";		
		var problem = true;
	}
	else
	{
		var last_name = document.addressForm.lname.value;
		var last_name_re = /[A-Za-z ]+\-*\'*/gi;
		var last_name_result = last_name.match(last_name_re);
		
		if (last_name_result != last_name)
		{
			errMsg += "Last name contains invalid character(s).\n";
			var problem = true;
		}			
	}

	if(document.addressForm.address1.value.length <=0)
	{
		errMsg += "Street address line 1 is required.\n";		
		var problem = true;
	}
	
	if(document.addressForm.city.value.length <=0)
	{
		errMsg += "City name is required.\n";		
		var problem = true;
	}
	
	if(document.addressForm.zip.value.length <= 0)
	{
		errMsg += "Zip code is required.\n";
		var problem = true;
	}
	else
	{
		var myzip = document.addressForm.zip.value;
		var myzip_re = /\s+/gi;
		var myzip1_re = /\D/gi;
		var myzip_result = myzip.match(myzip_re);
		var myzip1_result = myzip.match(myzip1_re);

		if (document.addressForm.zip.value.length != 5) 
		{
			errMsg += "Zip code is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myzip_result != null)
			{
				errMsg += "Zipcode cannot have spaces.\n";
				var problem = true;
			}
			
			if (myzip1_result != null)
			{
				errMsg += "Zip code contains invalid characters.\n";
				var problem = true;
			}			
		}
	}

	if(!echeck(document.addressForm.e_address.value))
	{
		errMsg += "Please enter a valid email address.\n";
		var problem = true;
	}

	if(document.addressForm.state.value == '--Select--')
	{
		errMsg += "Please select a state\n";
		var problem = true;
	}

	if(document.addressForm.DOBMonth.value == 0 || document.addressForm.DOBDay.value == 0 || document.addressForm.DOBYear.value == 0)
	{
		errMsg += "Please enter your date of birth.\n";
		var problem=true;
	}

	if(document.addressForm.homephone1.value.length <= 0)
	{
		errMsg += "Home Phone Area Code is required.\n";
		var problem = true;
	}
	else
	{
		var myhomephone1 = document.addressForm.homephone1.value;
		var myhomephone1_re = /\s+/gi;
		var myhomephone11_re = /\D/gi;
		var myhomephone1_result = myhomephone1.match(myhomephone1_re);
		var myhomephone11_result = myhomephone1.match(myhomephone11_re);

		if (document.addressForm.homephone1.value.length != 3) 
		{
			errMsg += "Home Phone Area Code is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myhomephone1_result != null)
			{
				errMsg += "Home Phone Area Code cannot have spaces.\n";
				var problem = true;
			}
			
			if (myhomephone11_result != null)
			{
				errMsg += "Home Phone Area Code contains invalid characters.\n";
				var problem = true;
			}			
		}
	}

	if(document.addressForm.homephone2.value.length <= 0)
	{
		errMsg += "Home Phone Prefix is required.\n";
		var problem = true;
	}
	else
	{
		var myhomephone2 = document.addressForm.homephone2.value;
		var myhomephone2_re = /\s+/gi;
		var myhomephone21_re = /\D/gi;
		var myhomephone2_result = myhomephone2.match(myhomephone2_re);
		var myhomephone21_result = myhomephone2.match(myhomephone21_re);

		if (document.addressForm.homephone2.value.length != 3) 
		{
			errMsg += "Home Phone Prefix is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myhomephone2_result != null)
			{
				errMsg += "Home Phone Prefix cannot have spaces.\n";
				var problem = true;
			}
			
			if (myhomephone21_result != null)
			{
				errMsg += "Home Phone Prefix contains invalid characters.\n";
				var problem = true;
			}			
		}
	}

	if(document.addressForm.homephone3.value.length <= 0)
	{
		errMsg += "Home Phone Suffix is required.\n";
		var problem = true;
	}
	else
	{
		var myhomephone3 = document.addressForm.homephone3.value;
		var myhomephone3_re = /\s+/gi;
		var myhomephone31_re = /\D/gi;
		var myhomephone3_result = myhomephone3.match(myhomephone3_re);
		var myhomephone31_result = myhomephone3.match(myhomephone31_re);

		if (document.addressForm.homephone3.value.length != 4) 
		{
			errMsg += "Home Phone Suffix is invalid.\n";
			var problem = true;
		}
		else
		{
				
			if (myhomephone3_result != null)
			{
				errMsg += "Home Phone Suffix cannot have spaces.\n";
				var problem = true;
			}
			
			if (myhomephone31_result != null)
			{
				errMsg += "Home Phone Suffix contains invalid characters.\n";
				var problem = true;
			}			
		}
	}

	
	if(!document.addressForm.agree.checked)
	{
		errMsg += "You must agree to the privacy policy and terms and conditions.";	
		problem = true;
	}
	

	if(problem)
	{
		alert(errMsg);
		errMsg="";
		return false;
	}
	else
	{
		chk=0;
		return true;
	}
}


 var b_timer = null; // blink timer 
 var b_on = true; // blink state 
 var blnkrs = null; // array of spans 

 function blink() { 
 var tmp = document.getElementsByTagName("span"); 
 if (tmp) { 
 blnkrs = new Array(); 
 var b_count = 0; 
 for (var i = 0; i < tmp.length; ++i) { 
 if (tmp[i].className == "blink") { 
 blnkrs[b_count] = tmp[i]; 
 ++b_count; 
 } 
 } 
 // time in m.secs between blinks 
 // 500 = 1/2 second 
 blinkTimer(500); 
 } 
 } 

 function blinkTimer(ival) { 
 if (b_timer) { 
 window.clearTimeout(b_timer); 
 b_timer = null; 
 } 
 blinkIt(); 
 b_timer = window.setTimeout('blinkTimer(' + ival + ')', ival); 
 } 

 function blinkIt() { 
 for (var i = 0; i < blnkrs.length; ++i) { 
 if (b_on == true) { 
 blnkrs[i].style.visibility = "hidden"; 
 } 
 else { 
 blnkrs[i].style.visibility = "visible"; 
 } 
 } 
 b_on =!b_on; 
 } 

function setOffer(offer) {
	document.addressForm.laptop_brand.value = offer;
}

function validateContactForm() {
   if($) {
      var msg = '';
      // Check if empty
      $('form:first input.text').each(function(index) {
         if($(this).attr('value').length == 0) {
            switch(index) {
               case 0: msg += 'First Name'; break;
               case 1: msg += 'Last Name'; break;
               case 2: msg += 'Email'; break;
               case 3: msg += 'Zip Code'; break;
               case 4: msg += 'Area code'; break;
               case 5: msg += 'Phone prefix'; break;
               case 6: msg += 'Phone suffix'; break;
            }
            msg += ' is required.\n';
         }
      });
      // Check first/last name
      $('form:first input[name=fname], form:first input[name=lname]').each(function(index) {
         var subject = $(this).attr('value');
         var reg = /[A-Za-z ]+\-*\'*/gi;
         var result = subject.match(reg);
         if(result != subject) {
            switch(index) {
               case 0: msg += 'First Name has an invalid character.\n'; break;
               case 1: msg += 'Last Name has an invalid character.\n'; break;
            }
         }
      });
      // Check email
      $('form:first input[name=e_address]').each(function() {
         if($(this).attr('value').length > 0) {
            if(!echeck($(this).attr('value'))) {
               msg += 'Email address is invalid.\n';
            }
         }
      });
      // Check zip
      $('form:first input[name=zip]').each(function() {
         var reg = /\s+/gi;
         var reg1 = /\D/gi;
         var subject = $(this).attr('value');
         var result1 = subject.match(reg);
         var result2 = subject.match(reg1);
         if (subject.match(reg) != null || subject.match(reg1) || subject.length != 5) {
            msg += 'Zip code is invalid.\n';
         }
      });
      // Check phone
      $('form:first input[name=homephone1], form:first input[name=homephone2], form:first input[name=homephone3]').each(function(index) {
         var phone = $(this).attr('value');
         var reg = /\s+/gi;
         var reg1 = /\D/gi;
         var issue = false;
         if(phone.length > 0) {
            if(phone.length != (index != 2 ? 3 : 4) || phone.match(reg) != null || phone.match(reg1) != null) {
               switch(index) {
                  case 0: msg += 'Phone Area code is invalid.\n'; break;
                  case 1: msg += 'Phone Prefix is invalid.\n'; break;
                  case 2: msg += 'Phone Suffix is invalid.\n'; break;
               }
            }
         }
      });
      if(msg.length > 0) {
         alert(msg);
         return false;
      }
   }
   return true;
}

