Event.onDOMReady(function(){//Enregistrement des événements
	if(document.getElementById("classliv"))
		document.getElementById("classliv").style.display = "none";
	if(document.getElementById("AdFact")){
		document.getElementById("AdFact").parentNode.style.display = "block";
		Event.observe('AdFact', 'click', showForm);
	}
	if(document.getElementById("fAchat"))
		Event.observe('fAchat', 'submit', verifForm);
});

contreRemb = false;
CR_error = false;
livTNT = false;
livTNT_error = false;
max_amount = 800;

function is_FR(pays){ //Vérification que le pays est la France
	return /^(France[a-zA-Z\- ]+|France)$/g.test(pays);
}

function emailCheck(mail){//Vérification de l'email
	return /^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9_\-\.]+\.[a-zA-Z0-9_\-\.]+/.mail;
}

function FR_zipCheck(cp){//Code postal français et hors armée
	if(/^[0-9]{4,5}$/.test(cp) && !/^00[0-9]{3}$/g.test(cp))
		return true;
	return false;
}

function getSelectedRadioValue(radiobutton){//Renvoi la valeur choisie dans une liste de boutons radios
	for (i = 0; i < radiobutton.length ; i++){
        if (radiobutton[i].checked)
			return radiobutton[i].value;
    }
}

function CR_zipCheck(cp){//Vérif cp dom
	return !/^9[87][0-9]{3}$/.test(cp);
}

function showForm() {//Affichage du formulaire de saisie des coordonnées de livraison
    if(document.getElementById("classliv").style.display=="none")
        document.getElementById("classliv").style.display="block";
    else
        document.getElementById("classliv").style.display="none";
}


function verifForm(e){//Vérification  du formulaire
    var error = '';
    var cond = '';

    if(document.fAchat.prenom.value == '') 
		error += "\t- Prénom\n";
    if(document.fAchat.nom.value == '') 
		error += "\t- Nom\n";
    if(document.fAchat.adresse.value == '') 
		error += "\t- Adresse\n";
    if(document.fAchat.code_postal.value == '') 
		error += "\t- Code Postal\n";
	else{
	    if(is_FR(document.fAchat.pays.value)) {
	        if ( !FR_zipCheck(document.fAchat.code_postal.value) ) 
				error += "\t- Code Postal (incomplet)\n";
	    }
	}
    if(document.fAchat.ville.value == '') 
		error += "\t- Ville\n";
    if(document.fAchat.num_tel.value == '') 
		error += "\t- Téléphone\n";
    if(document.fAchat.pays.value == '')
		error += "\t- Pays\n";
    if(document.fAchat.email.value == '')
		error += "\t- Email\n";
    //    if ( !emailCheck()document.fAchat.email.value ) error += "\t- Email (non valide)\n";
    if(!document.fAchat.valid_conditions.checked) 
		cond += "Veuillez valider les conditions générales de vente\n";

    if(document.fAchat.AdFact.checked){//Lieu de livrasion différent, on vérifie les champs
        if(document.fAchat.prenomliv.value == '') error += "\t- Prénom Livraison\n";
        if(document.fAchat.nomliv.value == '') error += "\t- Nom Livraison\n";
        if(document.fAchat.adresseliv.value == '') error += "\t- Adresse Livraison\n";
        if(document.fAchat.code_postalliv.value == '') 
			error += "\t- Code Postal Livraison\n";
		else{
		    if(is_FR(document.fAchat.paysliv.value)){
		            if ( !FR_zipCheck(document.fAchat.code_postalliv.value) ) 
						error += "\t- Code Postal (incomplet)\n";
		    }
		}
        if(document.fAchat.villeliv.value == '') error += "\t- Ville Livraison\n";
        if(document.fAchat.num_telliv.value == '') error += "\t- Téléphone Livraison\n";
        if(document.fAchat.paysliv.value == '') error += "\t- Pays Livraison\n";
    }
    if ( getSelectedRadioValue(document.fAchat.mode_paiment) == "contreremb" ){
        contreRemb = true;
        if ( !is_FR(document.fAchat.pays.value) ){
            CR_error = true;
            error += "\t- Pays : Uniquement valide en France métropolitaine\n";
        }
        else{
            if (!CR_zipCheck(document.fAchat.code_postal.value) ){
                CR_error = true;
                error += "\t- Code Postal : Uniquement valide en France métropolitaine\n";
            }
            if ( document.fAchat.total_amount.value >= max_amount ){
                CR_error = true;
                error += "\t- Le montant de la commande ne peut dépasser 800 euros\n";
            }
        }
    }	
	if(document.fAchat.livraisonTNT.checked){
		livTNT = true
		if ( getSelectedRadioValue(document.fAchat.mode_paiment) != "cb" ){
			livTNT_error = true;
  			error += "\t- Paiement : Uniquement Carte bancaire\n";
		}else{
  			if(!is_FR(document.fAchat.pays.value)){
				livTNT_error = true;
  				error += "\t- Pays : Uniquement valide en France métropolitaine\n";
  			}else{
  				if ( !CR_zipCheck(document.fAchat.code_postal.value) ){
					livTNT_error = true;
					error += "\t- Code Postal : Uniquement valide en France métropolitaine\n";
				}
  			}
		}
	}
	if(error != '' || cond != '') {
		Event.stop(e);
		if(error != ''){
			if(contreRemb && CR_error)
				alert('Contre-remboursement :\n' + error);
			else{
				if(livTNT && livTNT_error)
					alert('Livraison expresse :\n' + error);
				else
					alert('Erreur: Veuillez renseigner les champs suivants:\n' + error);
			}
		}else
			alert(cond);
	}
}
    
function OpenWin(url, width, height) {
     if(parseInt(navigator.appVersion)>3)
            var fenetreM = window.open(url,'fenetreM','height='+height+',width='+width+',scrollbars=yes');
}
