$.extend({URLEncode:function(c){var o='';var x=0;c=c.toString();var r=/(^[a-zA-Z0-9_.]*)/;
  while(x<c.length){var m=r.exec(c.substr(x));
    if(m!=null && m.length>1 && m[1]!=''){o+=m[1];x+=m[1].length;
    }else{if(c[x]==' ')o+='+';else{var d=c.charCodeAt(x);var h=d.toString(16);
    o+='%'+(h.length<2?'0':'')+h.toUpperCase();}x++;}}return o;},
URLDecode:function(s){var o=s;var binVal,t;var r=/(%[^%]{2})/;
  while((m=r.exec(o))!=null && m.length>1 && m[1]!=''){b=parseInt(m[1].substr(1),16);
  t=String.fromCharCode(b);o=o.replace(m[1],t);}return o;}
});


jQuery(document).ready(function() {
	if (!getCookie("newslettersignup")) {
		$.fancybox(
			'<div id="signup">'+
			'	<h1>Sign up for FREE monthly e-newsletter today!</h1><br />'+
			'	<img src="/images/mail.png" alt="Newsletter">'+
			'	<form action="#" method="get">'+
			'		<input type="text" value="Name..." name="yourname" id="yourname" onclick="if(this.value==\'Name...\') { this.value=\'\'; this.style.color=\'black\'; }" onblur="if(this.value==\'\') { this.value=\'Name...\'; this.style.color=\'white\'; }" />'+
			'		<input type="text" value="Email..." name="youremail" id="youremail" onclick="if(this.value==\'Email...\') { this.value=\'\'; this.style.color=\'black\'; }" onblur="if(this.value==\'\') { this.value=\'Email...\'; this.style.color=\'white\'; }" />'+
			'		<input type="submit" value="Sign Up" name="submit" id="submit" onclick="javascript: submitNewsletter(this.form);" />'+
			'	</form>'+
			'</div>',
			{
				'autoDimensions'	: false,
				'width'         	: 450,
				'height'        	: 200,
				'transitionIn'		: 'none',
				'transitionOut'		: 'none',
				'hideOnOverlayClick': false,
				'overlayOpacity'	: 0.7
			}
		);
	}
});
function submitNewsletter(newsletterform) {
	// validate fields before we procede to give them the cookie
	var errorMessage = "";
	if (newsletterform.yourname.value == "" || newsletterform.yourname.value == "Name...") {
		errorMessage += "* Please enter your name.\n";
	}
	if (!validateEmail(newsletterform.youremail.value)) {
		errorMessage += "* Please enter a valid email address.";
	}
	if (errorMessage) {
		alert(errorMessage);
	}
	// we have data in the fields that at least looks legitimate
	else {
		// send the email
		$.ajax({ 
			type: "GET",
			url: "mail.php",
			dataType: "script",
			data: "name="+$.URLEncode(newsletterform.yourname.value)+"&email="+newsletterform.youremail.value,
			success: function(html) {
				$.fancybox.close;
				setCookie("newslettersignup",true,9999);
				alert("Thank you for your submission.");
			}
		});
	}
}
function validateEmail(emailAddress) {
	var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return pattern.test(emailAddress);
}
function setCookie(c_name,value,expiredays) {
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toUTCString());
}
function getCookie(c_name) {
	if (document.cookie.length>0) {
		c_start=document.cookie.indexOf(c_name + "=");
		if (c_start!=-1) {
			c_start=c_start + c_name.length+1;
			c_end=document.cookie.indexOf(";",c_start);
			if (c_end==-1) c_end=document.cookie.length;
				return unescape(document.cookie.substring(c_start,c_end));
		}
	}
	return "";
}
