var in_progress = false; // pour tester si certains effets sont en cours de fonctionnement (apparition, fade, etc.)

function wm_effet_opacite(evenement, element) {
	
	if(evenement == 1) new Effect.Opacity(element, {to: 1, duration:0.2});
	else new Effect.Opacity(element, {to: 0.5, duration:0.2});
	
	return false;
}

function basename (path, suffix) {
    var b = path.replace(/^.*[\/\\]/g, '');
        if (typeof(suffix) == 'string' && b.substr(b.length-suffix.length) == suffix) {
        b = b.substr(0, b.length-suffix.length);
    }return b;
}

function isMail(email) {
    var expreg = new RegExp("^[a-zA-Z0-9_-].+@[a-zA-Z0-9-]{2,}[.][a-zA-Z]{2,4}$");
    return expreg.test(email);
}

function basename(path, suffix) {
    var b = path.replace(/^.*[\/\\]/g, '');
        if (typeof(suffix) == 'string' && b.substr(b.length-suffix.length) == suffix) {
        b = b.substr(0, b.length-suffix.length);
    }

    return b;
}

function submitFormNewsletter() {

    type = $('newsletter_type').checked ? 'inscription' : 'desinscription';

    if(!$('newsletter_email').present() || (type == 'inscription' && !$('newsletter_nom').present())) alert("Vous devez remplir tous les champs ! - You have to fill out all the blank !");
    else if(!isMail($F('newsletter_email'))) alert("Adresse email incorrecte - Your email address is incorrect");
    else {

        new Ajax.Request('/xhr/newsletter.php', {

        parameters:'nom='+$F('newsletter_nom')+'&email='+$F('newsletter_email')+'&type='+type,
        onSuccess: function(xhr) {
            var sortie = xhr.responseText;

            if(sortie == 'ko') alert("Erreur, votre adresse email n'a pas pu être enregistrée - Your email address is incorrect ");
            else {
                alert("Votre demande a bien été prise en compte - Your subscription is valid");
                fermerPopupNewsletter();
            }
        }
        });
    }
}
function ouvrirPopupNewsletter() {
    $('bloc_newsletter').appear({duration: 0.5});
    new Effect.Highlight($('bloc_newsletter'), {delay: 0.5});
    return false;
}
function fermerPopupNewsletter() {
    $('bloc_newsletter').fade({duration: 0.5});
}

function changeLng(lng) {
    new Ajax.Request('/xhr/changelng.php', {

    parameters:'lng='+lng,
    onSuccess: function(xhr) {
        window.location = document.location.href; 
    }
    });
}

//<---------------- HOME ---------------->
function onLoadHome() {
	$$('#menu-images .colonne > div, #menu-images .colonne > form').each(function(e){new Effect.Opacity(e, {from: 1, to: 0.5, duration:1.5} )});
}

function menuHautOver(id) {
	
    $(id).setStyle({backgroundPosition: '0 -328px'});

    if(id == 'collection') {
        $('newsletter').setStyle({backgroundPosition: '0 -656px'});
        $('info').setStyle({backgroundPosition: '0 -656px'});
    }

    if(id == 'newsletter') {
        $('collection').setStyle({backgroundPosition: '0 -656px'});
        $('info').setStyle({backgroundPosition: '0 -656px'});
    }

    if(id == 'info') {
        $('collection').setStyle({backgroundPosition: '0 -656px'});
        $('newsletter').setStyle({backgroundPosition: '0 -656px'});
    }

    $(id).select('cite').each(function(e){e.show()});
}


function menuHautOut(id) {
	
	$(id).setStyle({backgroundPosition: '0 0'}); 
		
	if(id == 'collection') {
		
		$('newsletter').setStyle({backgroundPosition: '0 0'}); 
		$('info').setStyle({backgroundPosition: '0 0'}); 
	}
		
	if(id == 'newsletter') {
		
		$('collection').setStyle({backgroundPosition: '0 0'}); 
		$('info').setStyle({backgroundPosition: '0 0'}); 
	}
		
	if(id == 'info') {
		
		$('collection').setStyle({backgroundPosition: '0 0'}); 
		$('newsletter').setStyle({backgroundPosition: '0 0'}); 
	}
	
	$(id).select('cite').each(function(e){e.hide()});
}
//<-------------------------------------->


//<---------------- STORE --------------->
function storeVisuelOver(id) {
	
	$(id).setStyle({backgroundPosition: '0 -515px'}); 
		
	if(id == 'visuel1') {
		
		$('visuel2').setStyle({backgroundPosition: '0 -1030px'}); 
		$('visuel3').setStyle({backgroundPosition: '0 -1030px'}); 
	}
	
	if(id == 'visuel2') {
		
		$('visuel1').setStyle({backgroundPosition: '0 -1030px'}); 
		$('visuel3').setStyle({backgroundPosition: '0 -1030px'}); 
	}
	
	if(id == 'visuel3') {
		
		$('visuel1').setStyle({backgroundPosition: '0 -1030px'}); 
		$('visuel2').setStyle({backgroundPosition: '0 -1030px'});
	}
}

function storeVisuelOut(id) {
	
	$(id).setStyle({backgroundPosition: '0 0'}); 
		
	if(id == 'visuel1') {
		
		$('visuel2').setStyle({backgroundPosition: '0 0'}); 
		$('visuel3').setStyle({backgroundPosition: '0 0'}); 
	}
		
	if(id == 'visuel2') {
		
		$('visuel1').setStyle({backgroundPosition: '0 0'}); 
		$('visuel3').setStyle({backgroundPosition: '0 0'}); 
	}
		
	if(id == 'visuel3') {
		
		$('visuel1').setStyle({backgroundPosition: '0 0'}); 
		$('visuel2').setStyle({backgroundPosition: '0 0'}); 
	}
}

function onLoadDetailsproduits() {
	$$('#miniatures > a').each(function(e){new Effect.Opacity(e, {from: 1, to: 0.5, duration:1.5} )});
}

var vignette_cliquee = '';
function clicVignette(img, id_produit, n, from, discount, artistique) {

    if(!in_progress) {

        in_progress = true;
        
        if(!from) {
            url_discount = discount == 1 ? '&discount' : '';

            // REMETTRE LA LIGNE CI-DESSOUS QUAND TOUTES LES IMAGES ZOOM SONT CREEES
            if(!artistique) $('lien-zoom').href = '/details-produit-zoom.php?id='+ id_produit +'&img='+ n + url_discount;

        }

        vignette_cliquee = basename(img);

        $('image2').src = img;
        $('image2').appear({duration: 0.6,
                                afterFinish: function() {
                                    $('image1').src = img;
                                    $('image2').hide();
                                    in_progress = false;
                            }
        });
    }return false;
}

function activationZoom(action) {
    if(action == 0) $('lien-zoom').setStyle({visibility: 'hidden'});
    else            $('lien-zoom').setStyle({visibility: 'visible'});
}

function ajoutePanier(id_produit, destination, catalogue) {

    var quantite = isNaN($F("quantite")) || $F("quantite") < 1 ? 1 : $F("quantite");

    if(id_produit == 'lapointe') {

        if($F('pointure') == 0)       alert(LNG == 'fr' ? "Veuillez choisir une pointure" : 'Choose a size');
        else if($F('largeur') == 0) alert(LNG == 'fr' ? "Veuillez choisir une largeur" : 'Choose a width');
        //else if($F('durete') == 0 && $F('cambrion') != '3/4') alert(LNG == 'fr' ? "Veuillez choisir une dureté" : 'Choose a shank');
        else if($F('durete') == 0) alert(LNG == 'fr' ? "Veuillez choisir une dureté" : 'Choose a shank');
        else if($F('cambrion') == 0 && $F('durete') != 'XS') alert(LNG == 'fr' ? "Veuillez choisir une cambrion" : 'Choose an insole');
        else if($F('cambrion') == '3/4' && $F('durete') == 'XS') alert(LNG == 'fr' ? "Vous ne pouvez pas choisir une pointe avec une dureté XS et Cambrion 3/4" : 'It isn\'t possible to order the reference : XS - 3/4');

        else {

            //var decollete_v = $F('decollete_v') ? 1 : 0;
			var decollete_v = 0;

            new Ajax.Request('/xhr/ajoutePanier.php', {
                method: 'post',
                parameters:'id='+id_produit+'&quantite='+quantite+'&pointure='+$F('pointure')+'&largeur='+$F('largeur')+'&durete='+$F('durete')+'&cambrion='+$F('cambrion')+'&decollete_v='+decollete_v+'&destination='+destination,
                onSuccess: function(xhr) {

                    if(xhr.responseText == 'ko') alert("Rupture de stock (En cours de réapprovisionnement) - Out of Stock");
                    else if(xhr.responseText == 'inactif') alert("Article non reconduit - Dicountinued Item");

                    else {


                        if(catalogue == false) {
                            var confirm_destination = destination == 'panier' ? (LNG == 'fr' ? 'au panier' : 'to the basket') : (LNG == 'fr' ? 'à la wish-list' : 'to the wish-list');

                            $('confirmation-destination').update(confirm_destination);
                            $('confirmation-quantite').update($F('quantite'));
                        }

                        $('confirmation-panier').appear({duration: 0.5,
                            afterFinish: function() {
                                $('confirmation-panier').fade({delay: 2, duration: 0.5})
                            }
                        });
                    }
                }
            });
        }

    } else {

        if($F('taille') == 0)       alert("Veuillez choisir une taille - Choose a size");
        else if($F('couleur') == 0) alert("Veuillez choisir une couleur - Choose a color");

        else {

            new Ajax.Request('/xhr/ajoutePanier.php', {
                method: 'post',
                parameters:'id='+id_produit+'&quantite='+quantite+'&taille='+$F('taille')+'&couleur='+$F('couleur')+'&destination='+destination,
                onSuccess: function(xhr) {

                    if(xhr.responseText == 'ko') alert("Rupture de stock (En cours de réapprovisionnement) - Out of stock");
                    else if(xhr.responseText == 'inactif') alert("Article non reconduit - Discoutinued item");

                    else {

                        if(catalogue == false) {
                            //var confirm_destination = destination == 'panier' ? 'au panier' : ' à la wish-list';
                            var confirm_destination = destination == 'panier' ? (LNG == 'fr' ? 'au panier' : 'basket') : (LNG == 'fr' ? 'à la wish-list' : 'to the wish-list');

                            $('confirmation-destination').update(confirm_destination);
                            $('confirmation-taille').update($('taille').options[$('taille').selectedIndex].text);
                            $('confirmation-couleur').update($('couleur').options[$('couleur').selectedIndex].text);
                            $('confirmation-quantite').update($F('quantite'));
                        }

                        $('confirmation-panier').appear({duration: 0.5,
                            afterFinish: function() {
                                $('confirmation-panier').fade({delay: 2, duration: 0.5})
                            }
                        });
                    }
                }
            });
        }
    } return false;
}

function changeTaille() {
    if($F('taille') > 0) {
        $('prix_a_changer').update(prixTailles[$F('taille')]+ " &euro;");
        $('prix_barre').show();
    } else {
        $('prix_a_changer').update("Choisissez une taille");
        $('prix_barre').hide();
    }
}

var id_produit_popup_details;
function affiche_popup_details(id_produit) {

    if(id_produit != id_produit_popup_details) {
        new Effect.Appear('popup_details_'+id_produit, {duration:0.4});

        if(id_produit_popup_details != undefined) new Effect.Fade('popup_details_'+id_produit_popup_details, {duration:0.4});
        id_produit_popup_details = id_produit;
    }
}

var i_dep_tous_produits = 1;
function deplacemenTousLesProduits(to, nb_pages) {
    var deplacement_x = 816;
    if(to == 'next') {
        if(i_dep_tous_produits >= nb_pages) return;
        deplacement_x *= -1;
        i_dep_tous_produits++;
    } else if(to == 'prev') {
        if(i_dep_tous_produits == 1) return;
        i_dep_tous_produits--;
    }
    in_progress = true;
    new Effect.Move($('contenu_tous_produits'), {x: deplacement_x, y: 0, mode: 'relative', duration: 0.6, afterFinish: function() {in_progress = false;}});
}

function ouvrirTousProduits() {
    $('opacite').show();
    $('popup_tous_produits').appear({duration: 0.8});
}

function fermerTousProduits() {
    $('popup_tous_produits').fade({duration: 0.8});
    $('opacite').fade({delay: 0.5, duration: 0.5});
}
//<-------------------------------------->


//<-------------- HISTOIRE -------------->
function onLoadHistoire() {
	$$('#colonne-gauche, #colonne-droite, #illustration').each(function(e){new Effect.Opacity(e, {from: 1, to: 0.5, duration:1.5} )});
}
//<-------------------------------------->


//<------------- REVENDEURS ------------->
var i_bloc = new Array();

var deplacement_y = 100; // Valeur du déplacement vertical du bloc

function up_btn(n) {
    if(!in_progress && i_bloc[n] > 0) {
        in_progress = true;
        new Effect.Move($('ul_bloc' + n), {x: 0, y: deplacement_y, duration:0.3,  mode: 'relative', afterFinish: function(){in_progress = false;}});

        i_bloc[n] --;
    }
    return false;
}

function down_btn(n) {
    var hauteur_ul_bloc = $('ul_bloc' + n).getHeight();
    var hauteur_bloc 	= $('bloc' + n).getHeight();

    if(!in_progress && (hauteur_ul_bloc > hauteur_bloc)) {

        if(i_bloc[n] == undefined) i_bloc[n] = 0;

        if(Math.round((hauteur_ul_bloc - hauteur_bloc) / deplacement_y) >= i_bloc[n]) {

            in_progress = true;
            new Effect.Move($('ul_bloc' + n), {x: 0, y: deplacement_y * -1, duration:0.3,  mode: 'relative', afterFinish: function(){in_progress = false;}});

            i_bloc[n] ++;
        }
    }
    return false;
}
//<-------------------------------------->


//<------------- CATALOGUE -------------->
var i_catalogue_img = 1;

function catalogue_img_suivante(total_img) {
	
	if(!in_progress && i_catalogue_img < total_img) {
		
		in_progress = true;
		
		if(i_catalogue_img == 1) $('precedent').setStyle( {visibility: 'visible'} );
		
		i_catalogue_img++;
		
		$('img-catalogue'+i_catalogue_img).appear({duration: 1, afterFinish: function() {in_progress = false;}});
		
		if(i_catalogue_img == total_img) {
			$('suivant').setStyle( {visibility: 'hidden'} );
			$('lien_img').setStyle( {cursor: 'auto'} );
		}
	}
	
	return false;
}

function catalogue_img_precedente() {
	
	if(!in_progress && i_catalogue_img > 1) {
		
		in_progress = true;
		
		$('img-catalogue'+i_catalogue_img).fade({duration: 1, afterFinish: function() {in_progress = false;}});
		
		i_catalogue_img--;
		
		if(i_catalogue_img == 1) $('precedent').setStyle( {visibility: 'hidden'} );
		$('suivant').setStyle( {visibility: 'visible'} );
		$('lien_img').setStyle( {cursor: 'pointer'} );
	}
	
	return false;
}
//<-------------------------------------->

//<----------- QUESTIONNAIRE ------------>
var i_page_questionnaire = 1;

function questionnaire_page_suivante(total_pages_questionnaire) {

	if(!in_progress && i_page_questionnaire < total_pages_questionnaire) {
		
		in_progress = true;
		
		if(i_page_questionnaire == 1) $('precedent').setStyle( {visibility: 'visible'} );
		
		i_page_questionnaire++;
		
		new Effect.Move($('questionnaire'), {x: -594, y: 0, mode: 'relative', duration: 0.3, afterFinish: function() {in_progress = false;}});

		if(i_page_questionnaire == total_pages_questionnaire) {
			$('suivant').setStyle( {visibility: 'hidden'} );
		}
	}
	
	return false;
}

function questionnaire_page_precedente() {
	
	if(!in_progress && i_page_questionnaire > 1) {
		
		in_progress = true;
		
		new Effect.Move($('questionnaire'), {x: 594, y: 0, mode: 'relative', duration: 0.3, afterFinish: function() {in_progress = false;}});
		
		i_page_questionnaire--;
		
		if(i_page_questionnaire == 1) $('precedent').setStyle( {visibility: 'hidden'} );
		$('suivant').setStyle( {visibility: 'visible'} );
	}
	
	return false;
}
//<-------------------------------------->

//<-------------- CLIENTS --------------->
function check_livraison_facturation() {
    if(!$F('livraison_facturation')) {
        $('adresse_facturation').enable();
        $('pays').enable();
        $('cp').enable();
        $('ville').enable();

    } else {
        $('adresse_facturation').disable();
        $('pays').disable();
        $('cp').disable();
        $('ville').disable();
    }
}
//<-------------------------------------->

//<----------- MES COMMANDES ------------>
var i_page_commande = 1;

function commandesSuivantes(total_pages_commandes) {

	if(!in_progress && i_page_commande < total_pages_commandes) {
		
		in_progress = true;
		
		i_page_commande++;
		
		new Effect.Move($('liste-commandes'), {x: 0, y: -286, mode: 'relative', duration: 0.7, afterFinish: function() {in_progress = false;}});
	}
	
	return false;
}

function commandesPrecedentes() {
	
	
	if(!in_progress && i_page_commande > 1) {
		
		in_progress = true;
		
		new Effect.Move($('liste-commandes'), {x: 0, y: 286, mode: 'relative', duration: 0.7, afterFinish: function() {in_progress = false;}});
		
		i_page_commande--;
		
		
	}
	
	return false;
}
//<-------------------------------------->

//<----------- GALERIE PHOTOS ----------->
var i_page_photos = 1;

function photosSuivantes(total_pages_photos) {

    if(!in_progress && i_page_photos < total_pages_photos) {
        in_progress = true;
        i_page_photos++;

        new Effect.Move($('miniatures'), {x: 0, y: -503, mode: 'relative', duration: 0.7, afterFinish: function() {in_progress = false;}});
    }
    return false;
}

function photosPrecedentes() {

    if(!in_progress && i_page_photos > 1) {
        in_progress = true;
        new Effect.Move($('miniatures'), {x: 0, y: 503, mode: 'relative', duration: 0.7, afterFinish: function() {in_progress = false;}});
        i_page_photos--;
    }
    return false;
}

var i_photo = 0;

function photoSuivante(total_photos) {

    if(i_photo+1 < total_photos) {
        i_photo++;
        $('photo').src = "/"+photos_arr[i_photo];
        $('titre').update(titres_arr[i_photo]);
        $('description_txt').update(descriptions_arr[i_photo]);
        
    }
    return false;
}

function photoPrecedente() {

    if(i_photo > 0) {
        i_photo--;
        $('photo').src = "/"+photos_arr[i_photo];
        $('titre').update(titres_arr[i_photo]);
        $('description_txt').update(descriptions_arr[i_photo]);
    }
    return false;
}

function affichePhoto(i) {
    $('photo').src = "/"+photos_arr[i];
    $('titre').update(titres_arr[i]);
    $('description_txt').update(descriptions_arr[i]);
    i_photo = i;
    return false;
}
//<-------------------------------------->

//<---------- COMMANDE EXPRESS ---------->
function changeQuantite(id_case, value, stock) {
    
    if(value > stock || stock == 0) {
        $('case-'+ id_case).removeClassName('cercle-vert');
        $('case-'+ id_case).addClassName('cercle-rouge');
    } else {
        $('case-'+ id_case).removeClassName('cercle-rouge');
        $('case-'+ id_case).addClassName('cercle-vert');
    }
    
    if(value > 0) $('case-'+ id_case).addClassName('bg-gris');
    else  $('case-'+ id_case).removeClassName('bg-gris');
}

function initQuantite(id_case, value) {
    if(isNaN(value) || value == '') $('q-'+ id_case).value = 0;
}
//<-------------------------------------->

//<------------ INSCRIPTION ------------->
function verifForm(from) {

    var erreur = false;

    if(from == 'particulier') {

        new Ajax.Request('/xhr/verifMailClient.php', {
            parameters:'email='+$F('email'),
            asynchronous:false,
            onSuccess: function(xhr) {
                var sortie = xhr.responseText;
                if(sortie > 0) erreur = "L'adresse email existe déjà.\n The email adress is already in use.";
            }
        });

        if(     !$('nom').present()
            ||  !$('prenom').present()
            ||  !$('email').present()
            ||  !$('telephone').present()
            ||  !$('adresse_livraison').present()
            ||  $F('pays_livraison') == 0
            ||  !$('cp_livraison').present()
            ||  !$('ville_livraison').present()
        ) {erreur = "Vous devez remplir tous les champs obligatoires";}

        else if(!$('accepte').checked) {
            erreur = "Vous devez accepter les conditions de confidentialité";
        }

    } else if(from == 'revendeur') {
        if(     !$('nom_entreprise').present()
            ||  !$('nom_gerant').present()
            ||  !$('telephone').present()
            ||  !$('email').present()
            ||  !$('adresse_livraison').present()
            ||  $F('pays_livraison') == 0
            ||  !$('cp_livraison').present()
            ||  !$('ville_livraison').present()
            ||  !$('num_tva').present()
            ||  !$('superficie').present()
            ||  !$('siret').present()
            ||  !$('nb_employes').present()
            ||  !$('ca_annuel').present()
            ||  !$('marques').present()
            ||  !$('date_creation').present()
        ) {erreur = "Vous devez remplir tous les champs obligatoires";}

        else if($F('password') != $F('password2')) {
            erreur = "Les deux mots de passe que vous avez tapés ne sont pas identiques";
        }
    }

    if(erreur) alert(erreur);
    return !erreur;
}
//<-------------------------------------->
