/* **********************************************
 * Developpement Gabriel Bauza & Paul Fauchille *
 * Nécessite JQuery            									*
 * **********************************************/


$(function(){
 	$("#frm1").submit(validFrmEnr);
 	$("#frmModifAdresse").submit(validFrmModif);
 	$('a.btnAjout').click(addPanier);
	if( jQuery.browser.msie && jQuery.browser.version<7 ){
		$("#PanierDyn .ongletContent").css('cursor','pointer').click(function(){
			var href = $(this).find('.command a').attr('href');
			document.location.href = BaseHref+href;
		});
		var el = $("#PanierDyn .ongletContent"), el2 = el.find('.command a').text();
		el.attr('title',el2).attr('alt',el2);
	}
});
var chValid=true;

function addPanier(){
	var ProdID = $(this).attr('rel');
	if( $(".nbAjout").length>0 ) var Nb = $(".nbAjout").val();
	else var Nb = 1;
	$.post('shop/panier-recap.php','ProdID='+ProdID+'&mode=add&Nb='+Nb,function(data,textStatus){
		if(textStatus=="success"){
			$("#PanierDyn2 .content").attr('rel',1000);
			setPanier(data);
		}
	});
}
function ValideSalon(frm){
	frm.submit();
}
function changeSalon(obj,cmdID){
	$.get('shop/ax.changesalon.php?salonID='+obj.value+'&CmdID='+cmdID, function(data){
	});
	
}
function changePort(obj,cmdID){
	//alert("obj ID : "+obj.id);
	if(obj.id=='methodliv3'){
		if($("#lstSalon").length>0){
			$("#lstSalon").show();
		}
	}else{
		if($("#lstSalon").length>0){
			$("#lstSalon").hide();
		}
	}
	$.get('shop/ax.changeport.php?livraison='+obj.value+'&CmdID='+cmdID, function(data){
		$("#recapPanierGb").empty(); 
		$("#recapPanierGb").append(data);
		$.get('shop/ax.changetarif.php?livraison='+obj.value+'&CmdID='+cmdID, function(data1){
			$("#modePaiement").empty(); 
			$("#modePaiement").append(data1);
		})
	});
}
function deconnecteUser(){
	$.get('shop/shop.deconnecte.php', function(){ document.location.reload(); });
}
function identifieUser(){
  $.post('shop/shop.user_login.php',
    { login: $("#frmCpt_Email").val(), passe: $("#frmCpt_Passe").val() },
    function(data){
      var myRet = decode_JSON(data); var uid=myRet.uid;
      if(uid==Number(uid) && uid > 0){
      	window.document.location.href="shop-step2.php";
        // Direction la page de Verification
        //window.document.location.href="index.php";
        // ICI Remplace le block par un block identifié
      }else{
        if(uid==0) uid='';
        $(".warning_compte").hide();
        $("#warning_compte"+uid).fadeIn("slow");
      }
      
    });
  return false;
}

function validFrmModif(){
	var myRet=false;
	chValid=true;
	var ErrorMsg=""; var Msg="";
	if(isEmpty($("#frm1_Civilite"))){ Notif($("#frm1_Civilite"));ErrorMsg+="La civilité est obligatoires\n";};
	if($("#typeAdresse").val=="facturation"){
	if(isEmpty($("#frm1_Password"))){ Notif($("#frm1_Password"));ErrorMsg+="Le mot de passe est obligatoire\n";};
	if(isEmpty($("#frm1_Password2"))){ Notif($("#frm1_Password2"));ErrorMsg+="La vérification du mot de passe est obligatoire\n";};
	if( $("#frm1_Password").val() != $("#frm1_Password2").val() ){ Notif($("#frm1_Password2"));ErrorMsg+="Les mots de passe sont différents\n";};
	}
	if(isEmpty($("#frm1_Nom"))){ Notif($("#frm1_Nom"));ErrorMsg+="Le nom est obligatoire\n";};
	if(isEmpty($("#frm1_Prenom"))){ Notif($("#frm1_Prenom"));ErrorMsg+="Le prénom est obligatoire\n";};
	if(isEmpty($("#frm1_Adresse1"))){Notif($("#frm1_Adresse1"));ErrorMsg+="L'adresse est obligatoire\n";} ;
	if(isEmpty($("#frm1_Code_Postal"))) {Notif($("#frm1_Code_Postal"));ErrorMsg+="Le code postal est obligatoire\n";}	;
	if(isEmpty($("#frm1_Ville"))) {Notif($("#frm1_Ville"));ErrorMsg+="La ville est obligatoire\n"};
	if(isEmpty($("#frm1_Pays"))) {Notif($("#frm1_Pays"));ErrorMsg+="Le pays est obligatoire\n";}	;
	if(isEmpty($("#frm1_Telephone"))) {Notif($("#frm1_Telephone"));ErrorMsg+="Le téléphone est obligatoire\n";}	;
	if(isEmpty($("#frm1_Email"))) {Notif($("#frm1_Email"));ErrorMsg+="Votre email est obligatoire\n"};
	if(!vEmail($("#frm1_Email"))){Notif($("#frm1_Email"));ErrorMsg+="Votre email doit être valide\n";}
	if(chValid){
		var str = $(this).serialize();
		$.post('shop.modif_user.php',str,function(data,textStatus){
			if(textStatus=="success"){
				if(data=="OK"){
					// Recharge la page;
					parent.window.document.location.href="../shop-step2.php";
				}
			}
		});
		return false;
		/*
		$.post('shop/shop.enr_user.php',str,function(data,textStatus){
			//alert("textStatus: "+textStatus);
			if(textStatus=="success"){
				if(data=="OK"){
					window.document.location.href="shop-step2.php"
				}
			}
		});
		*/
		return false;
//		obj.method="post";
//		obj.action="infos.S01.php";
		//obj.submit();
	}
	if(ErrorMsg!="") alert(ErrorMsg);
	return chValid;
}  

function validFrmEnr(){
	var myRet=false;
	chValid=true;
	var ErrorMsg=""; var Msg="";
	if(isEmpty($("#frm1_Civilite"))){ Notif($("#frm1_Civilite"));ErrorMsg+="La civilité est obligatoires\n";};
	if(isEmpty($("#frm1_Password"))){ Notif($("#frm1_Password"));ErrorMsg+="Le mot de passe est obligatoire\n";};
	if(isEmpty($("#frm1_Password2"))){ Notif($("#frm1_Password2"));ErrorMsg+="La vérification du mot de passe est obligatoire\n";};
	if( $("#frm1_Password").val() != $("#frm1_Password2").val() ){ Notif($("#frm1_Password2"));ErrorMsg+="Les mots de passe sont différents\n";};
	if(isEmpty($("#frm1_Nom"))){ Notif($("#frm1_Nom"));ErrorMsg+="Le nom est obligatoire\n";};
	if(isEmpty($("#frm1_Prenom"))){ Notif($("#frm1_Prenom"));ErrorMsg+="Le prénom est obligatoire\n";};
	if(isEmpty($("#frm1_Adresse1"))){Notif($("#frm1_Adresse1"));ErrorMsg+="L'adresse est obligatoire\n";} ;
	if(isEmpty($("#frm1_Code_Postal"))) {Notif($("#frm1_Code_Postal"));ErrorMsg+="Le code postal est obligatoire\n";}	;
	if(isEmpty($("#frm1_Ville"))) {Notif($("#frm1_Ville"));ErrorMsg+="La ville est obligatoire\n"};
	if(isEmpty($("#frm1_Pays"))) {Notif($("#frm1_Pays"));ErrorMsg+="Le pays est obligatoire\n";}	;
	if(isEmpty($("#frm1_Telephone"))) {Notif($("#frm1_Telephone"));ErrorMsg+="Le téléphone est obligatoire\n";}	;
	if(isEmpty($("#frm1_Email"))) {Notif($("#frm1_Email"));ErrorMsg+="Votre email est obligatoire\n"};
	if(!vEmail($("#frm1_Email"))){Notif($("#frm1_Email"));ErrorMsg+="Votre email doit être valide\n";}
//	if(!$("#frm1_CGV").is(':checked')){chValid=false;ErrorMsg+="Les conditions générales de ventes doivent être acceptées\n"};
	if(chValid){
		var str = $(this).serialize();
		$.post('shop/shop.enr_user.php',str,function(data,textStatus){
			//alert("textStatus: "+textStatus);
			if(textStatus=="success"){
				if(data=="OK"){
					window.document.location.href="shop-step2.php"
				}
			}
		});
		return false;
//		obj.method="post";
//		obj.action="infos.S01.php";
		//obj.submit();
	}
	if(ErrorMsg!="") alert(ErrorMsg);
	return chValid;
}  


function isEmpty(obj){
	var myval = $.trim(obj.val());
		if((myval.length==0) || (myval==null)){
			return true;
		}else{
			return false;
		}
}

function vAmount(obj){
	var bSigned = false;
	var re = new RegExp("^"+((bSigned)?"[\\-\\+]?":"")+"\\d+(.\\d{2})?$");
	return re.test(obj.val());
}

function vEmail(obj){
  return ((/^[0-9a-zA-ZüöäßÄÖÜ]+([\.-]?[0-9a-zA-ZüöäßÄÖÜ]+)*@[0-9a-zA-ZüöäßÄÖÜ]+([\.-]?[0-9a-zA-ZüöäßÄÖÜ]+)*(\.\w{2,5})+$/).test(obj.val()));
}
function isZero(obj){
	return (obj.val() > 0);
}
function DeNotif(obj){
	chValid=true;
	$(obj).removeClass('required');
}
function Notif(obj){
	try{
	//console.log(obj);
	chValid=false;
	$(obj).removeClass('required');
	$(obj).addClass('required');
	
	}catch(e){ alert(e); }
}

function decode_JSON(data){
	try{
		return eval( '(' + data + ')' );
	}catch(e){
		alert("Erreur decode_JSON :" + e);
		return null;
	}
}






/* Développement Panier Dynamique */

var hoverPan=false, openPan=false, PanAutoHide=null, noAnimPan=false;
var showPanier = function(){
	clearTimeout(PanAutoHide);
	if(noAnimPan===true) openPan=false;
	hoverPan=true; if(openPan) return;
	openPan=true; var el = $("#PanierDyn2");
	if(noAnimPan===true){
		el.stop().height('auto').show().css('opacity','1'); panierNew();
	}else{
		if( !jQuery.browser.opera && !jQuery.browser.safari && !jQuery.browser.msie || (jQuery.browser.msie && jQuery.browser.version<7) ){
			el.stop().fadeIn(600,function(){ $(this).css('opacity','1'); panierNew(); });
		}else{
			var h = el.stop().height(); el.height('auto'); var h2 = el.height();
			el.height(h); el.stop().animate({height:h2},600,panierNew);
		}
	}
	noAnimPan=false;
	$("#PanierDyn .flc").fadeOut(600);
	movePanier();
	setTimeout(movePanier,50);
	setTimeout(movePanier,100);
	setTimeout(movePanier,150);
};
var quitPanier = function(){
	hoverPan=false;
	setTimeout(hidePanier,250);
};
var hidePanier = function(){
	if(!hoverPan){ 
		openPan=false;
		if( !jQuery.browser.opera && !jQuery.browser.safari && !jQuery.browser.msie || (jQuery.browser.msie && jQuery.browser.version<7) ){
			$("#PanierDyn2").stop().fadeOut(350,function(){ $(this).css('opacity','0'); });
		}else{
			$("#PanierDyn2").stop().animate({height:0},350);
		}
		$("#PanierDyn .flc").fadeIn(350);
		$("#PanierDyn2 .content").attr('rel','0');
		//$(".selectbox-wrapper").parent().parent().hide();
		$(".comboAbsoDiv").hide();
	}
};
var panierNew = function(){
	$("#PanierDyn .panier.new").append('<div class="maskNew">&nbsp;</div>').removeClass('new');
	$("#PanierDyn .maskNew").fadeOut(750,function(){ $(this).remove(); });
};
var movePanier = function(){
	
	var top = $(document).scrollTop();
	var MargeRight=100;

	var el = $(window); var maxW=980;
	var w = el.width(), h = el.height();

	if( jQuery.browser.msie && jQuery.browser.version<7 ){
		var el2 = $("#PanierDyn");
		var w2 = el2.width(), h2 = el2.height();

		var Height = h-h2+top; 
		el2.stop().css({position:'absolute', bottom:'auto'}).animate({top:Height},50);
	}

	var el3 = $("#PanierDyn .onglet");
	var w3 = el3.width(), h3 = el3.height();

	var left = ((w-maxW)/2)+maxW-w3-40;
	if(w>maxW){ 
		var tmp = w-maxW; 
		tmp=Math.min(tmp,MargeRight);
		if(tmp!=MargeRight) tmp-=10;
		left+=Number(tmp);
	}
	el3.stop().css({right:'auto'}).animate({left:left},50);



	var maxHeight = h - 25 - ( $("#PanierDyn .onglet").height() + $("#PanierDyn .bande").height() + $("#PanierDyn .bande2").height() + $("#PanierDyn2 .top").height() );
	var height = $("#PanierDyn2 .content").height('').height();
	height = Math.min(height,maxHeight);
	if(height>0) $("#PanierDyn2 .content").height(height);
	
	var scrollPanier = $("#PanierDyn2 .content").attr('rel');
	if(scrollPanier>0 && scrollPanier!==undefined) $("#PanierDyn2 .content").scrollTop(scrollPanier);

};

var setPanier = function(data){
	data = data.split('<!---//--->');
	$("#PanierDyn .content").html(data[0]);

	$("#PanierDyn .plus").click(addPanier);
	$("#PanierDyn .moins").click(decPanier);
	$("#PanierDyn .supp").click(delPanier);

	noAnimPan=true; showPanier(); clearTimeout(PanAutoHide);
	PanAutoHide = setTimeout(quitPanier,2000);

	updatePanier(data[1]);

	setCombobox();
	movePanier(); 
};

var updatePanier = function(e){
	var data = eval('('+e+')');
	if(data){
		$("#PanierDyn .prix").html(data.total);
		$("#PanierDyn .nbEl").html(data.nbArt);
		var html = data.nbArt; if(html>1) html+=' articles'; else html+=' article';
		$("#PanierDyn .nbArt").html(html);	
	}
};


var verifieQuantite = function(txt){
	if(txt==''){
		$("#connectCompte,#passCommand").show();
		$("#msgConditionnement").hide();
	}else{
		$("#connectCompte,#passCommand").hide();
		$("#msgConditionnement").html(txt).show();
	}
};
var verifieRajoutOffert = function(txt){
	if(txt!=''){
		$("#rajoutOffert").html(txt).show();
	}else{
		$("#rajoutOffert").hide();
	}
};

/*
var verifieQuantite = function(cQte,Qte,boutMank){
	if(cQte==0){
		$("#connectCompte,#passCommand").show();
		$("#msgConditionnement").hide();
	}else{
		$("#connectCompte,#passCommand").hide();
		$.post('shop/verifQte.php',{QtePort:Qte,boutMank:boutMank},function(e){
			$("#msgConditionnement").html(e);
		})
		$("#msgConditionnement").show();
	}
}
*/

var changeQte = function(){
	var PanID = $(this).attr('rel');
	var Qte = $(this).val();
	$.post('shop/panier-recap.php',{mode:'majQte',PanID:PanID,Qte:Qte},function(e){
		e = e.split('<!---//--->');
		$("#panierRecap").html(e[0]);
		$("select.recapQte").change(changeQte);
		$("a.recapSupp").click(delProd);

		verifieQuantite(e[1]);
		if(e[1]!='') e[2]='';
		verifieRajoutOffert(e[2]);

		//var data = eval('('+e[1]+')');
		//verifieQuantite(data.cQte,data.QtePort,data.boutMank);
	});	
};
var delProd = function(){
	var PanID = $(this).attr('rel');
	$.post('shop/panier-recap.php',{mode:'delProd',PanID:PanID},function(e){
		e = e.split('<!---//--->');

		$("#panierRecap").html(e[0]);
		$("select.recapQte").change(changeQte);
		$("a.recapSupp").click(delProd);

		verifieQuantite(e[1]);
		if(e[1]!='') e[2]='';
		verifieRajoutOffert(e[2]);

	});
};


var changePanier = function(PanID, Qte){
	$.post('shop/panier-recap.php',{mode:'majQte2',PanID:PanID,Qte:Qte},function(data){
		setPanier(data);
	});
};
var decPanier = function(){
	var ProdID = $(this).attr('rel');
	$.post('shop/panier-recap.php','ProdID='+ProdID+'&mode=dec',function(data,textStatus){
		if(textStatus=="success"){
			$("#PanierDyn2 .content").attr('rel',0);
			setPanier(data);
		}
	});
};
var delPanier = function(){
	var ProdID = $(this).attr('rel');
	$.post('shop/panier-recap.php','ProdID='+ProdID+'&mode=del',function(data,textStatus){
		if(textStatus=="success"){
			$("#PanierDyn2 .content").attr('rel',0);
			setPanier(data);
		}
	});
};
var emptyPanier = function(){
	$.post('shop/panier-recap.php','mode=empty',function(data){
		setPanier(data);
	});
};


var setCombobox = function(){

	$(".comboAbsoDiv").remove();

	$('#PanierDyn2 select.changeQte').selectbox({
    onChangeCallback: function(args){
			changePanier(args.PanID ,args.selectedVal);
  	}
  });

	//comboAbsoDiv
	$('.selectbox-wrapper, .jScrollPaneContainer').jScrollPane({showArrows:true, scrollbarWidth: 8, arrowSize: 8});
	//$(".selectbox-wrapper").parent().parent()
	$(".comboAbsoDiv").hover(function(){ hoverPan=true; }, quitPanier);
	$(".comboAbsoDiv").hide();

};


$(function(){

	movePanier(); 
	$("body").css('overflow-x','hidden');
	if( !jQuery.browser.opera && !jQuery.browser.safari && !jQuery.browser.msie ){
		// Nothing firefox
	}else{
		$("#PanierDyn2").height('0px').show();
	}
	$("#PanierDyn .ongletContent, #PanierDyn2").hover(showPanier,quitPanier);
	$("#PanierDyn2 .content").scroll(function(){ var el = $(this); var scroll=el.scrollTop(); if(scroll>0) el.attr('rel',scroll); });
	$(window).scroll(movePanier);
	$(window).resize(movePanier);
	$("#PanierDyn2 .flc2").click(function(){ hoverPan=false; hidePanier(); });


	$("select.recapQte").change(changeQte);
	$("a.recapSupp").click(delProd);

	$("#PanierDyn2").hide();
	$("#PanierDyn .plus").click(addPanier);
	$("#PanierDyn .moins").click(decPanier);
	$("#PanierDyn .supp").click(delPanier);
	$("#PanierDyn2 .empty").click(emptyPanier);
	//setCombobox();

});

addOnLoad('movePanier');
addOnLoad('setCombobox');



