//<![CDATA[

// EXTEND JQUERY SCROLLTO
jQuery.fn.extend({
	scrollTo : function(speed, easing) {
		return this.each(function() {
			var intHeightHeader = jQuery("header").height();
			var targetOffset = (jQuery(this).offset().top) - intHeightHeader;
			jQuery("html,body").animate({scrollTop: targetOffset}, speed, easing);
		});
	}
});

// FILTER REFERENCES
filterReferences = function() {
	if (jQuery("#filter").length) {
		jQuery("ul#filter a").click(function() {
			jQuery("ul#filter .current").removeClass("current");
			jQuery(this).parent().addClass("current");
			var filterVal = jQuery(this).text().toLowerCase().replace(' ','-').replace('é','e');
					
			if(filterVal == "tous") {
				jQuery("ul#portfolio li.hidden").fadeIn("slow").removeClass("hidden");
			} else {
			jQuery("ul#portfolio li").each(function() {
				if(!jQuery(this).hasClass(filterVal)) {
					jQuery(this).fadeOut("normal").addClass("hidden");
				} else {
					jQuery(this).fadeIn("slow").removeClass("hidden");
				}
			});
			}
			return false;
		});
	}
}

// SHOW HIDE DESCRIPTION ON IMAGE REFRENCE
showHideDescription = function() {
    jQuery("ul#portfolio li").hover(
      function () {
         jQuery(this).find("dl").css("left","10px");
      }, 
      function () {
         jQuery(this).find("dl").css("left","-999em");
      }
    );
    jQuery("ul#portfolio li a").bind("focus", function(){
         jQuery(this).parent().find("dl").css("left","10px");
    });
    jQuery("ul#portfolio li a").bind("blur", function(){
         jQuery(this).parent().find("dl").css("left","-999em");
    });
	jQuery("ul#portfolio li").bind("click", function(){	
		document.location.href = jQuery(this).find("a").attr("href");
    });	
}

// PROECT EMAIL FUNCTION
function emailProtect(i) {
    var content = $(this).text().replace(' AT ', '@').replace(' POINT ', '.');
    $(this).replaceWith($('<a href="mailto:'+content+'">'+content+'<\/a>'));
}

// ADD CLASS TO HOME PAGE
isHomePage = function() {
	if (jQuery("#aPropos").length) {
	jQuery("body").addClass("home");
	jQuery("nav li:first").addClass("current");
	}
}

// ANCHOR ANIMATION 
if (jQuery("#aPropos").length) {
	jQuery("nav a, #skipLinks a, .backToTop a").bind("click", function(){	
		var strHref = jQuery(this).attr("href");
		(strHref =="#nav") ? strHref = "#top" : strHref = strHref;
		strHref = strHref.replace('/','');
		jQuery(strHref).scrollTo(1000);
		jQuery("nav ul .current").removeClass("current");
		(strHref == "#top") || (strHref =="#content") || (strHref =="#nav") ? jQuery("nav li:first").addClass("current") : jQuery(this).parent().addClass("current");
		return false;
	});
} else {
	jQuery("#skipLinks a").bind("click", function(){	
		var strHref = jQuery(this).attr("href");
		(strHref =="#nav") ? strHref = "#top" : strHref = strHref;
		jQuery(strHref).scrollTo(1000);
		return false;
	});
}

lastItemMainNav = function() {
	if (jQuery("#aPropos").length) {
		jQuery("nav li:last").addClass("last");
	}
}

getHashParametersAndScroll = function() {
	if (location.hash) {
		var hashParam = location.hash;
		jQuery(hashParam).scrollTo(1000);
		jQuery("nav ul .current").removeClass("current");
		var classMainNav = hashParam.replace('#','');
		(classMainNav == "top") || (classMainNav =="content") || (classMainNav =="nav") ? jQuery("nav li:first").addClass("current") : jQuery("li."+classMainNav).addClass("current");
	}
}

// ARIA PARAMETERS
setAriaParameters = function() {
	jQuery("#content").attr("role","main");
	jQuery("aside").attr("role","complementary");
	jQuery("#search").attr("role","search");
	jQuery("footer").attr("role","contentinfo");
}

jQuery(document).ready(function() {
	filterReferences();
	showHideDescription();
	jQuery(".emailProtect").each(emailProtect); 	 
	isHomePage();
	getHashParametersAndScroll();
	lastItemMainNav();
});
//]]>