//run necessary function
function externalLinks() {  
 if (!document.getElementsByTagName) return;  
 var anchors = document.getElementsByTagName("a");  
 for (var i=0; i<anchors.length; i++) {  
   var anchor = anchors[i];  
   if (anchor.getAttribute("href") &&  
       anchor.getAttribute("rel") == "external")  
     anchor.target = "_blank";  
 }  
}  
window.onload = externalLinks;

$(document).ready(function(){
     $.preloadCssImages();

	contact_showhide();
	 contact_submit();
	 otherProject_showhide();
	 
	 $("ul.gallery li").hover(function() { //On hover...

		var thumbOver = $(this).find("img").attr("src"); //Get image url and assign it to 'thumbOver'

		//Set a background image(thumbOver) on the <a> tag - Set position to bottom
		$(this).find("a.thumb").css({'background' : 'url(' + thumbOver + ') no-repeat center bottom'});

		//Animate the image to 0 opacity (fade it out)
		$(this).find("span").stop().fadeTo('normal', 0 , function() {
			$(this).hide() //Hide the image after fade
		});
	} , function() { //on hover out...
		//Fade the image to full opacity 
		$(this).find("span").stop().fadeTo('normal', 1).show();
	});

});

// CHECK FORM FIELDS WHEN SUBMIT 
function contact_submit()
{
	$('fieldset#contact_action input').click(
		function () {
			var passCheck = true;
			var regexEmail=/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/;
			var regexName=/^[a-zA-Z ]+$/;
			
			var name = $('input#contact_name').attr("value");
			var email = $('input#contact_email').attr("value");
			var message = $('textarea#contact_message').val();
			
			var nameError = $('.contact form label[for="contact_name"] span abbr');
			var emailError = $('.contact form label[for="contact_email"] span abbr');
			var messageError = $('.contact form label[for="contact_message"] span abbr');
			
			if (name == "") {
				nameError.text('(missing required info)');
				nameError.show();
				$('.contact form label[for="contact_name"] input').addClass('missing');
				passCheck = false;
				//window.alert('no name');
			} else if (!regexName.test(name)) {
				nameError.text('(invalid characters in name)');
				nameError.show();
				$('.contact form label[for="contact_name"] input').addClass('missing');
				passCheck = false;
				//window.alert('wrong name');
			} else {
				nameError.hide();
				$('.contact form label[for="contact_name"] input').removeClass('missing');
			}
			
			if (email == "") {
				emailError.text('(missing required info)');
				emailError.show();
				$('.contact form label[for="contact_email"] input').addClass('missing');
				passCheck = false;
				//window.alert('no mail');
			} else if (!regexEmail.test(email)) {
				emailError.text('(invalid email format)');
				emailError.show();
				$('.contact form label[for="contact_email"] input').addClass('missing');
				passCheck = false;
				//window.alert('wrong mail');
			} else {
				emailError.hide();
				$('.contact form label[for="contact_email"] input').removeClass('missing');
			}
			
			if (message == "") {
				messageError.text('(missing required info)');
				messageError.show();
				$('.contact form label[for="contact_message"] textarea').addClass('missing');
				passCheck = false;
				//window.alert('no message');
			} else {
				messageError.hide();
				$('.contact form label[for="contact_message"] textarea').removeClass('missing');
			}
			
			if (passCheck == false) {
				return false;
			} else { return true;}
			
			return false;
		}
	);
}

// CONTACT FORM SHOW/HIDE 
function contact_showhide()
{
    $('fieldset#contact_more').hide();
	
    $('div#contact_options ul li.more a').click(
		function () {
        	$('fieldset#contact_more').slideToggle('slow');
        	$(this).parent().toggleClass('less');
          	return false;
      	}  
    );
	
	$('div#contact_options ul li a').toggle(
		function () {
	    	$(this).text('Hide Form');
	    },
	    function () {
	        $(this).text('Extend Form');
	    }
	);
}

// OTHER PROJECT SHOW/HIDE 
function otherProject_showhide()
{
    $('div#other_projects').hide();
	
    $('h4#other_projects_toggle').click(
		function () {
        	$('div#other_projects').slideToggle('slow');
        	$(this).toggleClass('less');
          	return false;
      	}  
    );
}
