// variables globales
var debug=true; // variable booléenne permettant d'afficher ou non les sorties console
var moove=false,
imgCour,
divInfo,
diapo=0, //Diapo select
imageSelected,//Element jquery selectionné
nbImages=0;

$(window).load(function(){
	tester("doc load");
	tailleBlocsMain();
	
});

$(document).ready(function(){
	tester("doc ready");
//	tailleBlocsMain();
	
	$("#validemois").hide();
	$('#validespec').hide();
	//$("img").lazyload({ threshold : "200", effect : "fadeIn" });
	$(window).scroll(function(){
		if ($(window).scrollTop()>=480 && !moove ) {
			$("#selectionSpectacle").css("position", "fixed");
			$("#selectionSpectacle").css("top", "0px");	
			moove = true;
		} else if ($(window).scrollTop()<=480 && moove){
			$("#selectionSpectacle").css("position", "relative");
			
			moove = false;
		}
	});
	labelForm("#lettreInfo");
	
	if($('.spectacle').length>0){
		initSpectacle();
	}
	
	
	changementTypeContact();
	
	filtresSpectacles();
	filtresAction();
	initActus();

	
});


// Gestion des fonts par webfont de Google
// http://www.google.com/webfonts/family?family=Ubuntu&subset=latin#code
WebFontConfig={
	google: { families: [ 'Ubuntu:regular,italic,bold,bolditalic' ] }
};
(function() {
	var wf=document.createElement('script');
	wf.src=('https:'==document.location.protocol?'https':'http')
	+'://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
	wf.type='text/javascript';
	wf.async='true';
	var s=document.getElementsByTagName('script')[0];
	s.parentNode.insertBefore(wf,s);
})();


function tailleBlocsMain(){
	var css = {
			'position' : "absolute",
			"top" : 0
	}
	$(".actuclearfix").each(function(e){
		var hauteurMax = 200;
		var $blocpere = $(this);
		$(".spectacle_autre",$blocpere).each(function(e){
			var tailleBloc = $(this).height();
			if(tailleBloc>hauteurMax)
				hauteurMax =tailleBloc;
		});
		tester(hauteurMax);
		$(".spectacle_autre",$blocpere).css("height",hauteurMax+"px");			
		/*$(".spectacle_autre .dateimage",$blocpere).css(css);*/
		
	});
	//on affecte la hauteur max à tous les blocs
	
}



// actions sur les boutons précédent et suivant de la 
// section "en ce moment" sur la home
function initActus(){
	if($('#actualitesMain .actu').length>1){
		$('#colonneActus').prepend('<div id="pager"><span id="nextAct"><a href="#">›</a></span><span id="prevAct"><a href="#">‹</a></span></div>');
		//$('#main-p article').css('position','absolute');
		
		$('#colonneActus .actu:first').addClass('current');
			$('#prevAct a').css('opacity', '0.3').css('cursor',"default");
		$('#prevAct a').click(function(e){
			e.preventDefault();
			actuPrev();
			positionNews($(".actu.current"));
		});
		$('#nextAct a').addClass("actif");
		$('#nextAct a').click(function(e){
			e.preventDefault();
			actuNext();
			positionNews($(".actu.current"));
		});
		positionNews($(".actu.current"));
	}
}
function actuPrev(){
	var current=$('#colonneActus .actu.current');
	var prev=current.prev();

	if(prev.length>0  && !prev.hasClass("titleActu")){

		current.removeClass('current');
		prev.addClass('current');
		//var pos=$('#main-p article').position();
		var pos=prev.position();
		var posLeft=-10-pos.left;
		$('#actualitesMain').animate({left: posLeft+'px'},300);
		//$('#main-p article').scrollTo(prev);
		$('#nextAct a').css('opacity', '1').css('cursor',"pointer").addClass("actif");
		current=$('#colonneActus .actu.current');

		//action pour le précédent si il existe ou non des diapos précédentes
		if(current.attr("id")=="actu_0")
			//$('#prevAct').hide();
			$('#prevAct a').css('opacity', '0.3').css('cursor',"default").removeClass("actif");	
		else 
			$('#prevAct a').css('opacity', '1').css('cursor',"pointer").addClass("actif");
			//$('#prevAct').show();
	}

}
function actuNext(){
	var current=$('#colonneActus .actu.current');
	var next=current.next();
	if(next.length>0){

		current.removeClass('current');
		next.addClass('current');
		//var pos=$('#main-p article').position();
		var pos=next.position();
		var posLeft=-10-pos.left;
		$('#actualitesMain').animate({left: posLeft+'px'},300);
		//$('#main-p article').scrollTo(next);
		$('#prevAct a').css('opacity', '1').css('cursor',"pointer").addClass("actif");
		//action pour le suivant suivant l'existence ou non de diapos suivantes
		if(next.next().length==0)	
			$('#nextAct a').css('opacity', '0.3').css('cursor',"default").removeClass("actif");			
		else 
			$('#nextAct a').css('opacity', '1').css('cursor',"pointer").addClass("actif");
		}


}

//on replace le bloc des newsletter par rapport a la hauteur de l'actu current
function positionNews(position){
	$("#colonneActus").height(position.height());
}

function filtresSpectacles(){
	//on cache les deux boutons de submit
	$("#blocfixe button").hide();
	
	
	$("#SpectacleMois").change(function(){
		valMois = $(this).val();
		if(valMois!="" && valMois!="0"){
			$("#main div.spec:not(.annonce):not(.spectacle_une)").hide();
			$('.mois_'+valMois+'').show();	
		}
		else{
			$('.spec').show();
		}
	});
	
	$("#SpectacleSpectaclesid").change(function(){
		idSpectacle = $(this).val();

		if(idSpectacle!="" && idSpectacle!="0"){
			$.getJSON(wroot+"spectacles/viewspectacle/"+idSpectacle,function(res){		 
				if(res.status=='success'){
					window.location = wroot+"spectacles/view/"+idSpectacle;
				}
			},'json');
		}
		else{
			$('.spec').show();
		}
	});
}

function filtresAction(){
	//on cache les deux boutons de submit
	$("#blocfixe button").hide();
	

	
	$("#ActionActionsid").change(function(){
		idAction = $(this).val();

		if(idAction!="" && idAction!="0"){
			$.getJSON(wroot+"actions/viewaction/"+idAction,function(res){		 
				if(res.status=='success'){
					window.location = wroot+"actions/view/"+idAction;
				}
			},'json');
		}
	
	});
}


function changementTypeContact(){
	var type = $("#ContactType").val();
	$("#upFileContact").hide();
	if(type=="professionnel")
		$("#upFileContact").show();
	
	
	$("#ContactType").change(function(){
	 	type =$(this).val();
		if(type=="professionnel"){
			$("#upFileContact").show();
		}else{
			$("#upFileContact").hide();
			$("#ContactFichier").val("");
		}
	});
}

function initSpectacle(){
	$('#playervideo').hide();
	$('#CommentaireAddForm').hide();
	
	$('.btnJaime').click(function(){ jaime(this); return false; });
	
	$('#launchDiapo').click(function(){ diaporama(); return false; });
	
	
	// action sur les images en vrac
	var diapos=$('#miniatures img');
	diapos.css('cursor','hand').click(function(){ openDiaporamaImage(diapos.index(this)+1); return false;});
	
	// actions sur les flèches du diaporama
	$('#btnPrev').click(function(){ previousImage(); return false; });
	$('#btnSuiv').click(function(){ nextImage(); return false; });
	
	// actions sur les miniatures du diaporama
	var minis=$('#miniatures img');
	minis.css('cursor','hand').click(function(){ selectDiapo(minis.index(this)+1); return false;});
	
	// action sur la grande image
	$('#imggrand').click(function(){ nextImage(); return false; });
	
	if($('.envideo').length>0){
		$(".btnFermerVideo").click(function(){ closeVideo(); return false;});
		$('.envideo .video').click(function(){ addPlayer($(this).attr('rel')); return false; });
		$("#videoplayer").hide();
	}
	
	
}


//change un spectacle par clique sur select box "les spectacles du mois"
function changeSpectacle() {
	var mois = $("#mois").val();
	$("#formulairemois").submit();
}

function changeSpectacleParNom(global_url) {
	//$("#formulairespectacle").submit();
	window.location.href=global_url+'spectacles/view/'+$("#spectacle").val(); 
}



// lancement du player vidéo en fonction de la vidéo sélectionnée
function addPlayer(str){
	tester(str);
	var args=str.split(',');
	var type=args[0];
	var code=args[1];
	
	$("#videoplayer").show();
	
	var params={ allowScriptAccess: "always" };
	var atts={ id: "vplayer" };
	var url;
	

	
	switch(type){
		case 'dailymotion':
			url="http://www.dailymotion.com/swf/"+code+"&enableApi=1";
			break;
		case 'youtube':
			url="http://www.youtube.com/v/"+code+"?enablejsapi=1";
		default:
			url="http://www.youtube.com/v/"+code+"?enablejsapi=1";
	}

	swfobject.embedSWF(url,"vplayer", "440", "330", "8", null, null, params, atts);
}

//Fermeture de la video en cours de lecture
function closeVideo() {
	/*playerCour.hide();
	imgCour.show();
	divInfo.find("div div.lirevideo a").show();
	divInfo.removeClass("open");*/
	$("#videoplayer").hide();
}

function jaime(elem) {
	$.get($(elem).attr('href'),function(text){
		if(text=='0'){
			alert("Vous aimez déjà le spectacle.");
		}
		else{
			if(text=="1"){
				text=text+" personne aime";
			}
			else{
				text=text+" personnes aiment";
			}
			$("#nombrepersonne").html(text);
		}
	});
}

//affichage ou hide du formulaire commentaire
function commentaire() {
	if ($("#CommentaireAddForm").is(":visible")) {
		$('#CommentaireAddForm').slideToggle('fast');
	} else {
		$('#CommentaireAddForm').slideToggle('fast');
	}	
}

function submitCommentaire() {
	$('#CommentaireAddForm').ajaxSubmit({
		success: function(txt){
		if (txt == '0') {
			alert("L'adresse mail n'est pas valide");
		} else if(txt == '-1') {
			alert("Tous les champs ne sont pas remplis");
		}else {
			$("#containerCommentaires").load("commentaires/add/"+txt,function(){$('#CommentaireAddForm').hide();});			
		}
	}
	});
}

//lancement diaporama
function diaporama(){
	if(nbImages==0) nbImages=$('#miniatures img').length;
	//$("#imagesansdiapo").hide();
	$("#showdiap").show();
	$("#boutondiaporama").html(
		'<a href="#" class="btnCloseDiapo suite">Fermer le diaporama</a>'
	);
	$("a.btnCloseDiapo").click(function(){ closeDiaporama(); return false; });
	
	if (imageSelected == null) {
		/*var img = $("#miniatures img:first");
		img.addClass("imageselecteed");
		$("#imggrand>img").attr("src",img.attr('src')).attr('alt',img.attr('alt'));
		$("#imagecour").html(1+" / "+nbImages);
		imageSelected=img;*/
		diapo = 1;
		changeImage(diapo);
	}
}

//fermeture diaporama
function closeDiaporama() {
	$("#showdiap").hide();
	$("#diaporama .ligneimage img").removeClass("imageselecteed");
	
	//$("#imagesansdiapo").show();
	$("#boutondiaporama").html(
		'<a href="#" class="suite">Lancer le diaporama</a>'
	);
	$("#boutondiaporama>a").click(function(){ diaporama(); return false;});
	//imageSelected.removeClass("imageselecteed");
	//imageSelected = null;
	//diapo = 1;
}

//sélection d'une image par click sur miniature
function selectDiapo(id) {
	//console.log('id='+id);
	if(nbImages==0) nbImages=$('#imagesansdiapo img').length;
	if (id != diapo) {
		diapo=id;
		changeImage(diapo);
	}
}

//ouverture diaporama par clique sur image
function openDiaporamaImage(id) {
	//console.log('id='+id);
	if(nbImages==0) nbImages=$('#imagesansdiapo img').length;
	diaporama();
	selectDiapo(id);
}

//image précédente
function previousImage() {
	diapo--;
	if (diapo < 1) {
		diapo=nbImages;
	}
	changeImage(diapo,nbImages);
}

//image suivante
function nextImage() {
	diapo++;
	if (diapo>nbImages) {
		diapo=1;
	}
	changeImage(diapo);
}

//changement de l'image sélectionnée
function changeImage(diapo) {
	
	var img = $("#mini_"+diapo);
	img.addClass("imageselecteed");
	//console.log('src='+img.attr('src')+'; alt='+img.attr('alt'));
	$("#imggrand>img").attr('src',img.attr('src')).attr('alt',img.attr('alt'));
	$("#imagecour").html(diapo+" / "+nbImages);
	if (imageSelected != null) {
		imageSelected.removeClass("imageselecteed");
	}
	imageSelected=img;
}


function labelForm(champ){
	var $champ=$(champ);
	var $chLabel=$('label',$champ);
	var $chText=$('input:text',$champ);
	if($chText.val()!=""){
		$chLabel.hide();
	}
	$chText.keypress(function(){
		$chLabel.hide();
	});

	$chText.focus(function(){
		if($(this).val()==""){
			$chLabel.fadeTo("fast", 0.3);
		}
		else{
			$chLabel.hide();
		}
	});

	$chText.blur(function(){
		if($(this).val()==""){
			$chLabel.fadeTo("fast", 1);
		}
		else{
			$chLabel.hide();
		}
	});
}


// permet d'afficher une entrée dans la console, si elle existe et que les sorties sont activées
function tester(txt){
	//if(console!=undefined && debug) console.log(txt);
	if(debug){
		try{
			console.log(txt);
		}
		catch(e){
			return;
		}
	}
}
