/* Author: AvantGout Studios

*/
var slideshows = new Array();
var lastImageIndex = 0;
var timer;
$(document).ready(function(){
	
	$("#form").submit(function()
	{
			
		publish_form();
	
		return false;
	});
	
	
	$.fx.speeds._default = 1000;
		$(function() {
			$( "#dialogSuccess, #dialogError" ).dialog({
				autoOpen: false,
				show: "blind",
				hide: "blind"
			});

		});
	
	/*=====================================
	 * 	jQuery History
	 =====================================*/
	 $.history.init(function(hash){
        if(hash == "") {
            // initialize your app
            $("#pages").scrollTo($("#home"),1500,{easing:'swing'});
        } else if(hash.lastIndexOf("/",hash.length-1) > 0){
        	//charger projet
        	var res = /^\/(.*)\/(.*)/.exec(hash);

        	console.log(res);
            $("#pages").scrollTo($("#"+res[1]),1,{easing:'swing'});
            $("#"+res[1]+" section.content").animate({marginLeft:'+=5000'},1000,function(){loadProject(res[2],$(this))});            
        }
        else if(hash.lastIndexOf("/",hash.length-1) == 0)
        {
			var seq = hash.replace("/","");
        	var page = $("#"+seq);

			$("#nav_web, #nav_mobile, #nav_elearning, #nav_contact").removeClass('active');
			switch(seq)
			{
				case 'mobile':
					$("#nav_mobile").addClass('active');
				break;
				case 'ria':
					$("#nav_web").addClass('active');
				break;
				case 'elearning':
					$("#nav_elearning").addClass('active');
				break;
				case 'contact':
					$("#nav_contact").addClass('active');
				break;
			}

        	if(page.has(".slideshow").length > 0)
        	{
        		page.find("section:has(.slideshow)").animate({marginLeft:'+=5000'},0,function(){
					page.find("section:has(.slideshow)").remove();
					page.find("section:has(.projectsList)").show();
					page.find("section:has(.projectsList)").animate({marginLeft:'-=5000'},0);
				});
        	}
        	$("#pages").scrollTo(page,0,{easing:'swing'});
        }
		
		
    },
    { unescape: "/" });
	
	/*=====================================
	 * 	jQuery History END
	 =====================================*/
	
	$(".page, #pages").css({width: $(window).width()+"px", height: $(window).height()+"px", lineHeight: $(window).height()+"px" });
	
	$(window).resize(function(){
		$(".page, #pages").css({width: $(window).width()+"px", height: $(window).height()+"px", lineHeight: $(window).height()+"px" });
		//window.scrollTo(0, 1 );
	});
	
	$("a").not(".externalLink, .social").click(function(){
		var anchor = $(this).attr("href");

		if(anchor.charAt(0) == "#")
		{
			$("#pages").scrollTo($(anchor),1500,{easing:'swing'});

			$.history.load("/"+anchor.replace("#",""));				
		}
		//window.scrollTo(0, 1 );
		return false;
	});

	window.scrollTo(0, 1 );
	
	/*=========================
	 * SlideShow
	 ==========================*/
	initSlideshow();
	timer = window.setInterval(function(){slideshow()},3000);
	
	/*=========================
	 * PlusClick
	 ==========================*/
	$(".vignette, .vignette a").click(function(){
		var link = $(this).attr("data-id");
		var res0 = link.split(".");
		var slug = res0[0];
		
		var res = slug.split("/");
	
		$.history.load("/"+res[res.length-2]+"/"+res[res.length-1]);
		
		return false;
	});
	
	/*========================
	 *  AjaxCalls
	 =========================*/
	$(document).ajaxStart(function(){
		var loader = document.createElement("div");
		var img = document.createElement("img");
		
		var imgPath = $(".plus").filter(":first").attr("src");
		imgPath = imgPath.substring(0,imgPath.lastIndexOf("/"));
		
		img.setAttribute("src",imgPath+"/ajax-loader.gif");
		img.setAttribute("alt","ajax-loader");
		loader.className = "loader";
		loader.appendChild(img);
		document.getElementById("container").appendChild(loader);
	});
	$("#container").ajaxStop(function(){
		$(this).find(".loader").remove();
	});
});


function initSlideshow()
{
	$(".slideshow").each(function(){
		var slideshow = new Object();
		slideshow.element = $(this).find("div");
		//console.log(slideshow.lastImageIndex);
		if(slideshow.lastImageIndex == undefined)
		{
			slideshow.lastImageIndex = 0;
		} 
		if(slideshow.element.find("img").length > 1 )
		{
			slideshows.push(slideshow);
			slideshow.element.find("img:gt(0)").hide();
		}
		
	});
}	
function slideshow()
{
	for (var i=0; i < slideshows.length; i++) {
		var slideshow = slideshows[i];
			
		//console.log(slideshow.lastImageIndex);
		if(slideshow.element.find("img").length <= 1 )
		{
			//window.clearInterval(timer);
		}else{
			
			slideshow.element.find("img:eq("+ slideshow.lastImageIndex +")").fadeOut(1000);
			slideshow.lastImageIndex++;
			slideshow.lastImageIndex %= slideshow.element.find("img").length;
			slideshow.element.find("img:eq("+ slideshow.lastImageIndex +")").fadeIn(1200);
			//console.log(slideshow.lastImageIndex);	
		}		
	};
}	
function addSlideshow(jQueryObject)
{
	var slideshow = new Object();
	slideshow.element = jQueryObject.find("div");
	//console.log(slideshow.lastImageIndex);
	if(slideshow.lastImageIndex == undefined)
	{
		slideshow.lastImageIndex = 0;
	} 
	if(slideshow.element.find("img").length > 1 )
	{
		slideshows.push(slideshow);
		slideshow.element.find("img:gt(0)").hide();
	}
}

function setScrollPane()
{
	if( !$.browser.msie )
	{
		$(".text").jScrollPane();
	}
}	
	
function loadProject(id,sect)
{
	console.log(sect);
	var section = sect
	var page = section.parent();
	section.hide();
	$.ajax({
		url:ajaxURL,
		type:'POST',
		data:'action=get_project&id='+id,
	  success: function(html){
	  	page.find("section:has(.slideshow)").remove();
	    page.append(html);
	
		setScrollPane();
		
	    page.find("section:has(.slideshow)").css({marginLeft: 5000}).animate({marginLeft:'-=5000'},500);
	    
	    addSlideshow(page.find(".slideshow").filter(":first"));
		page.find(".moins").click(function(){
			$.history.load("/"+page.attr('id'));
			page.find("section:has(.slideshow)").animate({marginLeft:'+=5000'},500,function(){
				page.find("section:has(.slideshow)").remove();
				section.show();
				section.animate({marginLeft:'-=5000'},1000);
			});
			return false;
		});
	  }
	});
}
	

function publish_form()
{
	/* ========================== */
	var name = $("#form_name").val();
	var email = $("#form_email").val();
	var subject = $("#form_subject").val();
	var message = $("#form_message").val();
	
	$.ajax({
		url:ajaxURL,
		type:'POST',
		data:'action=publish_form&name='+name+'&email='+email+'&subject='+subject+'&message='+message,
		dataType: 'xml',
	  	success: function(result){
			
		    $success = $( result ).find( "success" );
			
			if( $success.text() == 'true' )
			{
				
				$("#form_name").val('');
				$("#form_email").val('');
				$("#form_subject").val('');
				$("#form_message").val('');
				
				$( "#dialogSuccess" ).dialog( "open" );
			}else
			{
				$( "#dialogError" ).dialog( "open" );
			}

			
	  }
	});
	

	/* ========================== */
}





















