// jquery goodness
$(document).ready(function(){  
	// Open links in new window
	$('a:not(.ajax)').each(function() {
		var a = new RegExp('/' + window.location.host + '/');
		if(!a.test(this.href)) {
			$(this).click(function(event) {
				event.preventDefault();
				event.stopPropagation();
				window.open(this.href, '_blank');
			});
		}
	});
	// PDF animations
	$("ul.pdfs li a").hover(
	 	function () {
			$(this).find('img').stop().animate({top: 2}, 300);
		},
	  	function () {
			$(this).find('img').stop().animate({top: 0}, 100);
	  	}
	);
	// Mailchimp modal
	$('.mc-signup').bind('click', function(){		
		$.get('./inc/mailchimp', null, mcform);
		return false;	
	});
	var mcform = function(response) {
		if (response) {
			$('body').append('<div id="overlay" style="display:none"></div><div id="mc-popup" style="display:none">' + response + '</div>');		
			$('#overlay, #mc-popup').fadeIn();
			$('#mc-fname').focus();
		} 
	}
	$('#overlay').live('click', function(){
		$('#overlay, #mc-popup').fadeOut('slow', function(){
			$(this).remove();
		});
	});
	// Mailchimp form validation
	$('form#mc-embedded-subscribe-form').live('submit', function(){
		$('.error-msg').remove();
		var pass = true;
		if (!$('#mc-fname').val()) {
			$('#mc-fname').addClass('error').parent('div').append('<span class="error-msg">Please provide your first name</span>');
			pass = false;
		} else {
			$('#mc-fname').removeClass('error').parent('div').find('span').remove();
		}
		if (!$('#mc-lname').val()) {
			$('#mc-lname').addClass('error').parent('div').append('<span class="error-msg">Please provide your last name</span>');
			pass = false;			
		} else {
			$('#mc-lname').removeClass('error').parent('div').find('span').remove();
		}
		if (!validateEmail($('#mc-email').val())) {
			$('#mc-email').addClass('error').parent('div').append('<span class="error-msg">Please provide a valid email</span>');
			pass = false;			
		} else {
			$('#mc-email').removeClass('error').parent('div').find('span').remove();
		}
		if (pass) {
			$('#overlay, #mc-popup').fadeOut('slow', function(){
				$(this).remove();
				return true;		
			});
		} else {
			return false;
		}					
	});	
		
});
// vanilla js functions
function twitter(twitters) {
	var statusHTML = [];
	for (var i=0; i<twitters.length; i++){
		var username = twitters[i].user.screen_name;
		var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
			return '<a href="'+url+'">'+url+'</a>';
		}).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
			return reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
		});
		statusHTML.push('<li>'+status+'</li>');
	}
	document.getElementById('twitter_update_list').innerHTML = statusHTML.join('');
}
// helper Regx function for valid emails
function validateEmail(email) { 
 var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
 return email.match(re);
}
