// JavaScript Document

function popupcentree(page,nom,largeur,hauteur,options) {
	var top=(screen.height-hauteur)/2;
	var left=(screen.width-largeur)/2;
	window.open(page,nom,"top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
}


// permet d'afficher un calendrier en popup
// @@ sIdInput : id de l'élément input contenant la date actuelle et recevant la date du calendier
// @@ la date est au format dd/mm/aaaa en entrée et aaaammdd en sortie
function fShowCalendar(sIdInput, sServer) {
	var reg     = new RegExp("[/]+", "g");
	var arrDate = document.getElementById(sIdInput).value.split(reg);
	var sDate   = '';
	if ( arrDate.length == 3 ) {
		sDate = arrDate[2]+arrDate[1]+arrDate[0];
	}
	sPage = sServer+"administration/calendrier.php?data="+sIdInput+"&date="+sDate;
	popupcentree(sPage,"cal",190,172,"scrollbars=no, toolbar=no, resizable=yes, status=no");
}


function swapButtons(z, iInt) {
	switch(z) {
		case 0: // affiche la présentation
			$('buttonOne').style.display = 'block';
			$('buttonTwo').style.display = 'none';
			if ( iInt == 3 ) $('buttonTree').style.display = 'none';
			break;

		case 1: // affiche le sommaire
			$('buttonOne').style.display = 'none';
			$('buttonTwo').style.display = 'block';
			if ( iInt == 3 ) $('buttonTree').style.display = 'none';
			break;

		case 2: // affiche les extraits
			$('buttonOne').style.display = 'none';
			$('buttonTwo').style.display = 'none';
			$('buttonTree').style.display = 'block';
			break;

	}
}
function swapLayers(iActiveLayer, iInt) {
	/* define style layers */
	var oDiv_1;
	var oDiv_2;
	var oDiv_3;
	oDiv_1 = $('complement_presentation').style;
	oDiv_2 = $('complement_sommaire').style;
	if ( iInt == 3 ) oDiv_3 = $('complement_extraits').style;
		/*
	// Current browsers
	if(document.getElementById) {
		oDiv_1 = document.getElementById('complement_presentation').style;
		oDiv_2 = document.getElementById('complement_sommaire').style;
		if ( iInt == 3 ) oDiv_3 = document.getElementById('complement_extraits').style;
	// browsers aka: IE 5,5.5,6
	} else if(document.all) {
		oDiv_1 = document.all['complement_presentation'].style;
		oDiv_2 = document.all['complement_sommaire'].style;
		if ( iInt == 3 ) oDiv_3 = document.all['complement_extraits'].style;
	// Old browsers aka: Netscape
	} else if(document.layers) {
		oDiv_1 = document.layers('complement_presentation');
		oDiv_2 = document.layers('complement_sommaire');
		if ( iInt == 3 ) oDiv_3 = document.layers('complement_extraits');
	}*/

	switch (iActiveLayer) {
		case 0:
			$('complement_presentation').addClassName('pres_focus');
			$('complement_sommaire').removeClassName('somm_focus');
			oDiv_1.display = 'block';
			oDiv_2.display = 'none';
			if ( iInt == 3 ) {
				oDiv_3.display = 'none';
				$('complement_extraits').removeClassName('ext_focus');
			}
			break;
		case 1:
			$('complement_presentation').removeClassName('pres_focus');
			$('complement_sommaire').addClassName('somm_focus');
			oDiv_1.display = 'none';
			oDiv_2.display = 'block';
			if ( iInt == 3 ) {
				oDiv_3.display = 'none';
				$('complement_extraits').removeClassName('ext_focus');
			}
			break;
		case 2:
			$('complement_presentation').removeClassName('pres_focus');
			$('complement_sommaire').removeClassName('somm_focus');
			$('complement_extraits').addClassName('ext_focus');
			oDiv_1.display = 'none';
			oDiv_2.display = 'none';
			oDiv_3.display = 'block';
			break;
	}
}


function	fShowHide(sAffiche, iInt) {
	var DureeAppear = 1;

	new Effect.SlideUp('compl'+ComplementCourant, {afterFinish: function() { Effect.SlideDown('compl_'+sAffiche, {duration: DureeAppear}) } });

	new Effect.Opacity('btn_'+sAffiche, {duration:0.8, from:0.35, to:1.0});
	new Effect.Opacity('btn'+ComplementCourant, {duration:0.8, from:1.0, to:0.35});

	if ( sAffiche == 'extraits' ) {
		Element.removeClassName($('compl_contour'), 'complement_contour');
		Element.addClassName($('compl_contour'), 'complement_contour_extraits');
	}
	else {
		Element.removeClassName($('compl_contour'), 'complement_contour_extraits');
		Element.addClassName($('compl_contour'), 'complement_contour');
	}

	ComplementCourant = '_'+sAffiche;
}

//Fonction qui ajoute un champ pour les numéros d'abonné
var iCountNum = 1;
function fAddNumClient() {
	InputAdd  = '<div id="'+iCountNum+'" class="NumAbo"><input type="text" name="NumClient[]" id="NumClient" value="" class="text_form" />';
	InputAdd += '&nbsp;<a href="#" onclick="Element.remove(\''+iCountNum+'\'); return false;" title="supprimer ce champ">[ - ]</a></div>';
	new Insertion.Before('add_num', InputAdd);
	iCountNum++;
}

//Fonction de vérification du formulaire d'inscription
function verifForm(sActionType)
{
	var isOk = true;
	var chaine = "";
	var bAffVeuillez = false;
	$('error_message').style.display = 'none';
	//On cache les différents messages serveurs présents sur la page
	if($('error_inscription')) {
		$('error_inscription').style.display='none';
	}
	if($('good_inscription')) {
		$('good_inscription').style.display='none';
	}

	switch(sActionType) {
		case 'enseignant':
			var aFieldName = new Array(	'nom', 'nom_etablissement', 'liste_fonction', 'liste_niveau', 'liste_discipline',
										'num_voie_etablissement', 'type_voie_etablissement', 'nom_voie_etablissement',
										'cp_voie_etablissement', 'ville_voie_etablissement', 'liste_pays_etablissement', 'mel_insc', 'mdp', 'confirm');
			var aRetour = new Array('votre nom', 'le nom de votre établissement', 'votre fonction', 'le niveau de votre établissement', 'la discipline que vous enseignez',
									'le numéro', 'le type de voie', 'le nom de la voie', 'le code postal', 'la ville', 'le pays',
									'votre mél', 'votre mot de passe', 'la confirmation de votre mot de passe');
			break;
		case 'panier':
		case 'commande':
			var aFieldName = new Array('nom', 'prenom', 'num_voie', 'type_voie', 'nom_voie', 'cp_voie', 'ville_voie', 'liste_pays', 'mel_insc', 'mdp', 'confirm');
			var aRetour = new Array('votre nom', 'votre prénom', 'le numéro', 'le type de voie', 'le nom de la voie', 'votre code postal', 'votre ville', 'votre pays', 'votre mél', 'votre mot de passe', 'la confirmation de votre mot de passe');
			break;
		default:
			var aFieldName = new Array('nom', 'mel_insc', 'mdp', 'confirm');
			var aRetour = new Array('votre nom', 'votre mél', 'votre mot de passe', 'la confirmation de votre mot de passe');
			break;
	}

	for (var i=0; i < aFieldName.length; i++) {
		if(document.formInscription.elements[aFieldName[i]].value == "")
		{
			isOk = false;
			Element.addClassName($(aFieldName[i]), 'text_form_error');
			chaine = chaine + '- '+ aRetour[i] +'<br />';
			bAffVeuillez = true;
		}
		else
		{
			Element.removeClassName($(aFieldName[i]), 'text_form_error');
		}
	}

	// Accepte une chaine de type 'code postal'. Ex : F-33370 ou 33 370 ou 33370 ou F-1 370
	var regExpCodePostal = new RegExp ( "^([A-Z]+[A-Z]?\\-)?[0-9]{1,2} ?[0-9]{3}$", "gi" ) ;
	if ( isOk && $('cp_voie').value.search( regExpCodePostal ) == -1 ) {
		isOk = false;
		Element.addClassName($('cp_voie'), 'text_form_error');
		chaine = chaine + "Veuillez renseigner un code postal valide pour votre adresse<br />";
	}
	else if ( isOk )
	{
		Element.removeClassName($('cp_voie'), 'text_form_error');
	}

	// Accepte un numero de téléphone de type 'national' y compris numéros en '08'.
	var regExpTelephoneNational = new RegExp ( "^(0[1234568])[ \\.\\-]?[0-9]{2}[ \\.\\-]?[0-9]{2}[ \\.\\-]?[0-9]{2}[ \\.\\-]?[0-9]{2}$", "gi" ) ;
	//if( isOk && sValue != '' && oMatch == null && oMatch.length != 1) {
	if ( isOk && $('tel').value.search( regExpTelephoneNational ) == -1 ) {
		isOk = false;
		Element.addClassName($('tel'), 'text_form_error');
		chaine = chaine + "Veuillez renseigner un numéro de téléphone valide<br />";
	}
	else if ( isOk )
	{
		Element.removeClassName($('cp_voie'), 'text_form_error');
	}

	// Adresse mail
	var RegexMail = new RegExp ( "^\\w[\\w+\.\-]*@[\\w\-]+\.\\w[\\w+\.\-]*\\w$", "gi" ) ;

	if ( isOk && $('mel_insc').value.search( RegexMail ) == -1 )
	{
		isOk = false;
		Element.addClassName($('mel_insc'), 'text_form_error');
		chaine = chaine + "- un mél valide<br />";
		bAffVeuillez = true;

	}
	else if ( isOk )
	{
		Element.removeClassName($('mel_insc'), 'text_form_error');
	}

	// confirmation mot de passe 1/2
	if(document.formInscription.confirm.value == '' && document.formInscription.mdp.value != '')
	{
		isOk = false;
		Element.addClassName($('confirm'), 'text_form_error');
		chaine = chaine + "Veuillez confirmer votre mot de passe<br />";
	}
	else if ( isOk )
	{
		Element.removeClassName($('confirm'), 'text_form_error');
	}

	// confirmation mot de passe 2/2
	if(document.formInscription.confirm.value != document.formInscription.mdp.value)
	{
		isOk = false;
		Element.addClassName($('mdp'), 'text_form_error');
		Element.addClassName($('confirm'), 'text_form_error');
		chaine = chaine + "La confirmation et le mot de passe sont différents<br />";
	}
	else if(document.formInscription.confirm.value!="" && document.formInscription.mdp.value!="" )
	{
		Element.removeClassName($('confirm'), 'text_form_error');
		Element.removeClassName($('mdp'), 'text_form_error');
	}

	// gestion des numéros d'abonnés
	NumClientList = Form.getInputs('formInscription', 'text', 'NumClient[]');
	NumClient = '';
	for (i=0; i< NumClientList.length; i++) {
		if (NumClientList[i].value != '' )
			  NumClient += NumClientList[i].value+' ';
	}

	if( NumClient == '' ) {
		isOk = false;
		Element.addClassName($('NumClient'), 'text_form_error');
		chaine = chaine + "- un numéro d\'abonné<br />";
		bAffVeuillez = true;
	}
	else {
		Element.removeClassName($('NumClient'), 'text_form_error');
	}

	// code postal	adresse établissement
	if ( isOk && $('cp_voie_etablissement').value.search( regExpCodePostal ) == -1 ) {
		isOk = false;
		Element.addClassName($('cp_voie'), 'text_form_error');
		chaine = chaine + "Veuillez renseigner un code postal valide pour l'établissement<br />";
	}
	else if ( isOk )
	{
		Element.removeClassName($('cp_voie_etablissement'), 'text_form_error');
	}

	if(!isOk)
	{
		if ( bAffVeuillez )
			$('error_message').innerHTML = 'Veuillez saisir  : <br />' + chaine;
		else
			$('error_message').innerHTML = chaine;
		Effect.BlindDown('error_message');
		return false;
	}
}

//Fonction de vérification du formulaire du compte
function verifFormCpt(sActionType)
{
	var isOk = true;
	var chaine = "";
	var bAffVeuillez = false;
	$('error_message').style.display = 'none';
	//On cache les différents messages serveurs présents sur la page
	if($('error_inscription')) {
		$('error_inscription').style.display='none';
	}
	if($('good_inscription')) {
		$('good_inscription').style.display='none';
	}

	switch(sActionType) {
		case 'panier':
		case 'commande':
			var aFieldName = new Array('liste_civilite', 'nom', 'prenom', 'num_voie', 'type_voie', 'nom_voie', 'cp_voie', 'ville_voie', 'liste_pays', 'mel_insc', 'mdp', 'confirm');
			var aRetour = new Array('votre civilité', 'votre nom', 'votre prénom', 'le numéro', 'le type de voie', 'le nom de la voie', 'votre code postal', 'votre ville', 'votre pays', 'votre mél', 'votre mot de passe', 'la confirmation de votre mot de passe');
			break;
		default:
			var aFieldName = new Array('liste_civilite', 'nom', 'prenom', 'mel_insc', 'mdp', 'confirm');
			var aRetour = new Array('votre civilité', 'votre nom', 'votre prenom', 'votre mél', 'votre mot de passe', 'la confirmation de votre mot de passe');
			break;
	}

	for (var i=0; i < aFieldName.length; i++) {
		if(document.formInscription.elements[aFieldName[i]].value == "")
		{
			isOk = false;
			Element.addClassName($(aFieldName[i]), 'text_form_error');
			chaine = chaine + '- '+ aRetour[i] +'<br />';
			bAffVeuillez = true;
		}
		else
		{
			Element.removeClassName($(aFieldName[i]), 'text_form_error');
		}
	}

	sPays = $('liste_pays').options[$('liste_pays').selectedIndex].text;
	if ( sPays.indexOf("FRANCE") == 0 ) {
		// Accepte une chaine de type 'code postal'. Ex : F-33370 ou 33 370 ou 33370 ou F-1 370
		if ( $('cp_voie').value != '' ) { // si le CP est renseigné
			var regExpCodePostal = new RegExp ( "^([A-Z]+[A-Z]?\\-)?[0-9]{1,2} ?[0-9]{3}$", "gi" ) ;
			if ( $('cp_voie').value.search( regExpCodePostal ) == -1 ) {
				isOk = false;
				Element.addClassName($('cp_voie'), 'text_form_error');
				chaine = chaine + "<br />Veuillez renseigner un code postal valide pour votre adresse<br />";
			}
			else {
				Element.removeClassName($('cp_voie'), 'text_form_error');
			}
		}
		else if ( isOk )
		{
			Element.removeClassName($('cp_voie'), 'text_form_error');
		}

		// Accepte un numero de téléphone de type 'national' y compris numéros en '08'.
		if ( $('tel').value != '' ) {
			var regExpTelephoneNational = new RegExp ( "^(0[1234568])[ \\.\\-]?[0-9]{2}[ \\.\\-]?[0-9]{2}[ \\.\\-]?[0-9]{2}[ \\.\\-]?[0-9]{2}$", "gi" ) ;
			if ( $('tel').value.search( regExpTelephoneNational ) == -1 ) {
				isOk = false;
				Element.addClassName($('tel'), 'text_form_error');
				chaine = chaine + "Veuillez renseigner un numéro de téléphone valide<br />";
			}
			else {
				Element.removeClassName($('tel'), 'text_form_error');
			}
		}
		else if ( isOk )
		{
			Element.removeClassName($('tel'), 'text_form_error');
		}
	}

	// Adresse mail
	var RegexMail = new RegExp ( "^\\w[\\w+\.\-]*@[\\w\-]+\.\\w[\\w+\.\-]*\\w$", "gi" ) ;

	if ( isOk && $('mel_insc').value.search( RegexMail ) == -1 )
	{
		isOk = false;
		Element.addClassName($('mel_insc'), 'text_form_error');
		chaine = chaine + "- un mél valide<br />";
		bAffVeuillez = true;

	}
	else if ( isOk )
	{
		Element.removeClassName($('mel_insc'), 'text_form_error');
	}

	// confirmation mot de passe 1/2
	if(document.formInscription.confirm.value == '' && document.formInscription.mdp.value != '')
	{
		isOk = false;
		Element.addClassName($('confirm'), 'text_form_error');
		chaine = chaine + "Veuillez confirmer votre mot de passe<br />";
	}
	else if ( isOk )
	{
		Element.removeClassName($('confirm'), 'text_form_error');
	}

	// confirmation mot de passe 2/2
	if(document.formInscription.confirm.value != document.formInscription.mdp.value)
	{
		isOk = false;
		Element.addClassName($('mdp'), 'text_form_error');
		Element.addClassName($('confirm'), 'text_form_error');
		chaine = chaine + "La confirmation et le mot de passe sont différents<br />";
	}
	else if(document.formInscription.confirm.value!="" && document.formInscription.mdp.value!="" )
	{
		Element.removeClassName($('confirm'), 'text_form_error');
		Element.removeClassName($('mdp'), 'text_form_error');
	}

	if(!isOk)
	{
		if ( bAffVeuillez )
			$('error_message').innerHTML = 'Veuillez saisir  : <br />' + chaine;
		else
			$('error_message').innerHTML = chaine;
		Effect.BlindDown('error_message');
		return false;
	}
}


//Fonction de vérification du formulaire des paramètres du profil
function verifFormParam()
{
	var isOk = true;
	var chaine = "";
	var bAffVeuillez = false;
	$('error_message').style.display = 'none';
	//On cache les différents messages serveurs présents sur la page
	if($('error_inscription')) {
		$('error_inscription').style.display='none';
	}
	if($('good_inscription')) {
		$('good_inscription').style.display='none';
	}


	var aFieldName = new Array();
	var aRetour = new Array();

	// Revues
	NumClient = '';
	NumClientList = Form.getInputs('formInscription', 'text', 'NumClient[]');

	//alert($('id_Abonne_Revues').checked);

	if ( $('id_Abonne_Revues').checked ) {
		NumberOk = true;
		// gestion des numéros d'abonnés
		NumClientList = Form.getInputs('formInscription', 'text', 'NumClient[]');
		NumClient = '';
		for (i=0; i< NumClientList.length; i++) {
			if (NumClientList[i].value != '' )
				if ( isNaN(NumClientList[i].value) ) {
					NumberOk = false;
					Element.addClassName(NumClientList[i].id, 'text_form_error');
				}
				else
			  		NumClient += NumClientList[i].value+' ';
		}
		//alert(NumClient);
		if( NumClient.length == '' ) {
			isOk = false;
			for (i=0; i< NumClientList.length; i++) {
				Element.addClassName(NumClientList[i].id, 'text_form_error');
			}
			//Element.addClassName($('NumClient[]'), 'text_form_error');
			chaine = chaine + "- un numéro d\'abonné<br />";
			bAffVeuillez = true;
		}
		else if( NumberOk == false ) {
			isOk = false;
			chaine = chaine + "Les numéros d\'abonné doivent être des chiffres<br />";
		}
		else {
			for (i=0; i< NumClientList.length; i++) {
				Element.removeClassName(NumClientList[i].id, 'text_form_error');
			}

		}
	}

	// enseignant
	if ( $('id_enseignant').checked ) {
		var aFieldName = new Array(	'nom_etablissement', 'ID_TypeEtab', 'liste_fonction', 'ID_Niveau[]', 'ID_Discipline[]',
									'num_voie_etablissement', 'type_voie_etablissement', 'nom_voie_etablissement',
									'cp_voie_etablissement', 'ville_voie_etablissement', 'liste_pays_etablissement');
		var aRetour = new Array('le nom de votre établissement', 'le type de votre établissement', 'votre fonction', 'le(s) niveau(x) que vous enseignez (2 maximum)',
								'la ou les discipline(s) que vous enseignez (2 maximum)', 'le numéro', 'le type de voie', 'le nom de la voie',
								'le code postal', 'la ville', 'le pays');

		for (var i=0; i < aFieldName.length; i++) {
			if(document.formInscription.elements[aFieldName[i]].value == "")
			{
				isOk = false;
				Element.addClassName($(aFieldName[i]), 'text_form_error');
				chaine = chaine + '- '+ aRetour[i] +'<br />';
				bAffVeuillez = true;
			}
			else
			{
				Element.removeClassName($(aFieldName[i]), 'text_form_error');
			}
		}
		sPays = $('liste_pays_etablissement').options[$('liste_pays_etablissement').selectedIndex].text;
		if ( sPays.indexOf("FRANCE") == 0 ) {
			// Accepte une chaine de type 'code postal'. Ex : F-33370 ou 33 370 ou 33370 ou F-1 370
			var regExpCodePostal = new RegExp ( "^([A-Z]+[A-Z]?\\-)?[0-9]{1,2} ?[0-9]{3}$", "gi" ) ;
			// code postal	adresse établissement
			if ( isOk && $('cp_voie_etablissement').value.search( regExpCodePostal ) == -1 ) {
				isOk = false;
				Element.addClassName($('cp_voie_etablissement'), 'text_form_error');
				chaine = chaine + "Veuillez renseigner un code postal valide pour l'établissement<br />";
			}
			else if ( isOk )
			{
				Element.removeClassName($('cp_voie_etablissement'), 'text_form_error');
			}
		}
	}



	if(!isOk)
	{
		if ( bAffVeuillez )
			$('error_message').innerHTML = 'Veuillez saisir  : <br />' + chaine;
		else
			$('error_message').innerHTML = chaine;
		Effect.BlindDown('error_message');
		return false;
	}
}

function verifFormAdresse(oForm)
{
	var isOk = true;
	var chaine = "";
	var bVeuillez = true;
	$('error_message').style.display = 'none';

	//On cache les différents messages serveurs présents sur la page
	if ( $('good_add') )
	{
		$('good_add').style.display = 'none';
	}

	var aFieldName 	= new Array('Libelle', 'Nom', 'Prenom', 'Email', 'Adr_Numero', 'ID_Typevoie', 'Adr_NomVoie', 'Adr_CP', 'Adr_Ville', 'ID_Pays');
	var aRetour 	= new Array('le libellé', 'votre nom', 'votre prénom', 'votre adresse mail', 'le numéro', 'le type de voie', 'le nom de la voie', 'votre code postal', 'votre ville', 'votre pays');


	for (var i=0; i < aFieldName.length; i++) {
		if( oForm.elements[aFieldName[i]].value == "")
		{
			isOk = false;
			Element.addClassName($(aFieldName[i]), 'text_form_error');
			chaine = chaine + '- '+ aRetour[i] +'<br />';
		}
		else
		{
			Element.removeClassName($(aFieldName[i]), 'text_form_error');
		}
	}

	// Adresse mail
	var RegexMail = new RegExp ( "^\\w[\\w+\.\-]*@[\\w\-]+\.\\w[\\w+\.\-]*\\w$", "gi" ) ;

	if ( isOk && $('Email').value.search( RegexMail ) == -1 )
	{
		isOk = false;
		Element.addClassName($('Email'), 'text_form_error');
		chaine = chaine + "- un mail valide<br />";
		bAffVeuillez = true;

	}
	else if ( isOk )
	{
		Element.removeClassName($('Email'), 'text_form_error');
	}

	// vérification du num TVA intracommunautaire
	if ( isOk && $('TVA_Intra').value != '' ) {
		ISOPays = fReturnISOCode($('ID_Pays').options[$('ID_Pays').selectedIndex].text);

		if ( !isTVA($('TVA_Intra').value, ISOPays) ) {
			isOk = false;
			Element.addClassName($('TVA_Intra'), 'text_form_error');
			bVeuillez = false;
			chaine = chaine + "Veuillez renseigner un numéro de TVA intracommunautaire valide<br />";
		}
		else if ( isOk )
		{
			Element.removeClassName($('TVA_Intra'), 'text_form_error');
		}
	}

	sPays = $('ID_Pays').options[$('ID_Pays').selectedIndex].text;
	if ( sPays.indexOf("FRANCE") == 0 ) {
		// Accepte une chaine de type 'code postal'. Ex : F-33370 ou 33 370 ou 33370 ou F-1 370
		var regExpCodePostal = new RegExp ( "^([A-Z]+[A-Z]?\\-)?[0-9]{1,2} ?[0-9]{3}$", "gi" ) ;
		if ( isOk && $('Adr_CP').value.search( regExpCodePostal ) == -1 ) {
			isOk = false;
			Element.addClassName($('Adr_CP'), 'text_form_error');
			bVeuillez = false;
			chaine = chaine + "Veuillez renseigner un code postal valide<br />";
		}
		else if ( isOk )
		{
			Element.removeClassName($('Adr_CP'), 'text_form_error');
		}
	}

	if ( !isOk ) {
		chaine = (bVeuillez) ? 'Veuillez saisir  : <br />' + chaine : chaine;
		$('error_message').innerHTML = chaine;
		Effect.BlindDown('error_message');
		return false;
	}
}

function fSuppAdresse(sHref) {
	if ( confirm('Voulez-vous supprimer cette adresse ?') ) {
		location.href = sHref;
	}
}

// permet l'envoi du mot de passe
function fLostPwd() {
	var oForm = document.formConnexion;
	var isOk = true;
	$('error_message_login').style.display = 'none';
	if( $('mel').value == '' ) {
		isOk = false;
		Element.addClassName($('mel'), 'text_form_error');
		chaine = 'Veuillez renseigner votre e-mail.';
	}
	else	{
		Element.removeClassName($('mel'), 'text_form_error');
	}

	if (isOk)	{
		if (confirm('Vous souhaitez recevoir votre mot de passe par e-mail ?')) {
			oForm.lost.value = 1;
			oForm.submit();
		}
	}
	else {
		$('error_message_login').innerHTML = chaine;
		Effect.BlindDown('error_message_login');
	}
}

// permet l'envoi du mail d'inscription newsletter
function fNewsletter(newsletter) {
	var oForm = document.formNewsletter;
	var isOk = true;
	$('error_message_newsletter').style.display = 'none';
	if($('melNews').value == '') {
		isOk = false;
		Element.addClassName($('melNews'), 'text_form_error');
		chaine = 'Veuillez renseigner votre e-mail.';
	}
	else {
		Element.removeClassName($('melNews'), 'text_form_error');
	}
	
	if (isOk)	{
		oForm.send.value = newsletter;
		oForm.melNews.value = $('melNews').value;
		oForm.submit();
	}
	else {
		$('error_message_newsletter').innerHTML = chaine;
		Effect.BlindDown('error_message_newsletter');
	}
}

// gestion du bloc-notes
function fSupprBNArticle (ID_RevArticle)  {
	var data = 'ajaction=supp_bn_art&ID_RevArticle='+ID_RevArticle;
	var sLien = '<a href="#" onclick="fDisplayBNTheme('+ID_RevArticle+'); return false;" class="enlever">Ajouter cet article de votre bloc note</a>';
	new Ajax.Updater('blocnote', '_includes/ajax_trt.php', {asynchronous:true, method:'post', postBody:data, evalScripts:true, onSuccess: $('lien_bn').innerHTML = sLien });
	alert('Cet article a été supprimé de votre bloc-notes.');
	new Effect.ScrollTo('welcome', {duration:1});
}

var DisplayListeThemes = function (t) {
	$('liste_bn_themes').innerHTML = t.responseText;
	new Effect.toggle('liste_bn_themes', 'blind');
}
function fDisplayBNTheme(ID_RevArticle) {
	if ( $('liste_bn_themes').style.display == 'none') {
		var data = 'ajaction=show_bn_list_theme&ID_RevArticle='+ID_RevArticle;
		new Ajax.Request('_includes/ajax_trt.php', {asynchronous:true, method:'post', postBody:data, evalScripts:true, onSuccess: DisplayListeThemes });
	}
	else {
		new Effect.toggle('liste_bn_themes', 'blind');
	}
}

function fAddBNArticle(ID_RevArticle) {
	var data = 'ajaction=add_bn_article&ID_RevArticle='+ID_RevArticle+'&ID_BlocNoteTheme='+$('id_bn_theme').value;
	var sLien = '<a href="#" onclick="fSupprBNArticle('+ID_RevArticle+'); return false;" class="enlever">Enlever cet article de votre bloc note</a>';
	new Ajax.Updater('blocnote', './_includes/ajax_trt.php', {asynchronous:true, method:'post', postBody:data, evalScripts:true });
	new Effect.ScrollTo('blocnote', {duration:0.5});
	$('lien_bn').innerHTML = sLien;
	$('liste_bn_themes').innerHTML = '';
}

var ThemeAdded = function (t) {
	$('blocnote').innerHTML = t.text;
	Effect.toggle('new_theme', 'slide');
	$('theme').value = '';
}

function fAddTheme() {
	if ( $('theme').value != '' ) {
		var data = 'ajaction=add_theme&theme='+escape($F('theme'));
		new Ajax.Updater('blocnote', '_includes/ajax_trt.php', {asynchronous:true, method:'post', postBody:data, evalScripts:true, onSuccess:ThemeAdded});
	}
	else {
		alert('Veuiller saisir un libellé pour ce nouveau thème.\n\nMerci');
	}
}

function fShowEdit (IDtheme) {
	if ( $('edit_'+IDtheme).style.display == 'none' )
		$('edit_'+IDtheme).style.display = 'inline';
	else
		$('edit_'+IDtheme).style.display = 'none';
}

function fSuppTheme(IdTheme) {
	if ( confirm('Voulez-vous supprimer ce thème et tous les articles inclus ?') ) {
		var data='ajaction=del_theme&ID_BlocNoteTheme='+IdTheme;
		new Ajax.Updater('blocnote', '_includes/ajax_trt.php', {asynchronous:true, method:'post', postBody:data, evalScripts:true});
	}
}

var ShowTheme = function (t) {
	$('rename_theme').innerHTML = t.responseText;
	new Effect.toggle('rename_theme', 'blind');
}

function fRenameThemeFrm(IdTheme) {
	var data='ajaction=ren_theme_frm&ID_BlocNoteTheme='+IdTheme;
	new Ajax.Request('_includes/ajax_trt.php', {asynchronous:true, method:'post', postBody:data, evalScripts:true, onSuccess:ShowTheme});
}

var HideForm = function(t) {
	$('blocnote').innerHTML = t.responseText;
	new Effect.toggle('rename_theme', 'blind');
}
function fRenameTheme() {
	var data='ajaction=ren_theme&ID_BlocNoteTheme='+$F('id_theme')+'&Libelle='+escape($F('theme_libelle'));
	new Ajax.Request('_includes/ajax_trt.php', {asynchronous:true, method:'post', postBody:data, evalScripts:true, onSuccess:HideForm});
}

function fRedirectRevue(iValue) {
	if (iValue == 0 )
		location.href='/revues.php';
	else
		location.href='/revue/'+iValue+'/';
}

function fRedirectBouquet(iValue) {
	if (iValue == 0)
		location.href='/revues.php';
	else
		location.href='/bouquet/'+iValue+'/';
}

/**
 * fonctions du moteur de recherche
*/

var WriteSDom = function(t) {
  $('choix_sous_dom').innerHTML = t.responseText;
	if ( $('choix_sous_dom').style.display == 'none' )
		new Effect.BlindDown('choix_sous_dom', {duration:0.5});
	else
		new Effect.Appear('choix_sous_dom');
}

function fGetSousDomaine(sDomaine, sSousDomaine) {
	if ( sDomaine != '' ) {
		var data = 'ajaction=menu_sdom&Domaine='+escape(sDomaine)+'&SousDomaine='+escape(sSousDomaine);
		new Ajax.Request('_includes/ajax_trt.php', {parameters:data, onSuccess:WriteSDom});
	}
	else {
		$('sous_domaine').value = '';
		new Effect.BlindUp('choix_sous_dom', {duration:0.5});
	}
}

function fShowHideColl(bIsChecked) {
	if ( bIsChecked ) {
		new Effect.BlindDown('choix_domaine', {duration:0.5});
		new Effect.BlindDown('choix_collect', {duration:0.5});
	}
	else {
		new Effect.BlindUp('choix_domaine', {duration:0.5});
		new Effect.BlindUp('choix_collect', {duration:0.5});
	}
}

function fShowHideRevues(bIsChecked) {
	if ( bIsChecked ) {
		new Effect.BlindDown('choix_revue', {duration:0.5});
	}
	else {
		new Effect.BlindUp('choix_revue', {duration:0.5});
	}
}

function fShowArgs() {
	//var chkResume = '<input type="checkbox" id="chkResume" name="type[]" value="r" /><label for="chkresume">Résumé</label>';
	// livre et revue
	if ( ($('chkLivres').checked && $('chkRevues').checked) ||
			 (!$('chkLivres').checked && !$('chkRevues').checked)) {
		if ($('choix_livre').style.display != 'none')
			new Effect.BlindUp('choix_livre', {duration:0.5});
		if ($('choix_revue').style.display != 'none')
			new Effect.BlindUp('choix_revue', {duration:0.5});
		if ( $('zone_resum').style.display != 'none' ) {
			new Effect.Fade('zone_resum', {duration:0.5});
			$('chkResume').checked = false;
		}
		if ( $('zone_motcle').style.display != 'none' ) {
			new Effect.Fade('zone_motcle', {duration:0.5});
			$('chkMotsCle').checked = false;
		}

		$('choix_rev').selectedIndex = 0;
		if ( $('choix_domaine').selectedIndex > 0 )
			$('sous_domaine').selectedIndex = 0;
		$('choix_domaine').selectedIndex = 0;
		$('choix_collection').selectedIndex = 0;
	}

	// livre seulement
	if ( $('chkLivres').checked && !$('chkRevues').checked ) {

		new Effect.BlindDown('choix_livre', {duration:0.5});
		new Effect.BlindUp('choix_revue', {duration:0.5});
		$('choix_rev').selectedIndex = 0;
		if ( $('zone_resum').style.display != 'none' ) {
			new Effect.Fade('zone_resum', {duration:0.5});
			$('chkResume').checked = false;
		}
		if ( $('zone_motcle').style.display != 'none' ) {
			new Effect.Fade('zone_motcle', {duration:0.5});
			$('chkMotsCle').checked = false;
		}
	}

	// revue seulement
	if ( !$('chkLivres').checked && $('chkRevues').checked ) {
		new Effect.BlindDown('choix_revue', {duration:0.5});
		new Effect.BlindUp('choix_livre', {duration:0.5});
		if ( $('choix_domaine').selectedIndex > 0 )
			$('sous_domaine').selectedIndex = 0;
		$('choix_domaine').selectedIndex = 0;
		$('choix_collection').selectedIndex = 0;
		if ( $('zone_resum').style.display == 'none' ) {
			new Effect.Appear('zone_resum', {duration:0.5});
		}
		if ( $('zone_motcle').style.display == 'none' )
			new Effect.Appear('zone_motcle', {duration:0.5});
	}
}

// gestion des onglets de la partie "mon compte"
function fFocus(Div, effect, CurrentTab) {
	FinalOpacity = (Div.id == CurrentTab ) ? 1.0: 0.35;
	switch(effect) {
		case 0:
			new Effect.Opacity(Div.id, {duration:0.2, to:FinalOpacity});
			break;
		case 1:
			new Effect.Opacity(Div.id, {duration:0.2, to:0.8});
			break;
	}
}

// affiche les détails d'une commande depuis la partie "mon compte"
function fShowDetailCommande(ID_Commande, oThis, sServerUrl) {
	var aLstCommandes = $('liste_commande').getElementsByTagName('a');
	var i;
	var NbCommande = aLstCommandes.length;
	var data = 'ajaction=show_det_com&ID_Commande='+ID_Commande;
	new Ajax.Request(sServerUrl+'_includes/ajax_trt.php', {
					asynchronous:true,
					method:'post',
					postBody:data,
					evalScripts:true,
					onSuccess: function(t) {
						$('detail_commande').style.display = 'none'
						//new Effect.Fade('detail_commande', {duration:0.5});
						$('detail_commande').innerHTML = '';
						$('detail_commande').innerHTML = t.responseText;
						new Effect.Appear('detail_commande', {duration:0.5});
					}
				}
			);
	var msg ='';
	for (i=0; i<NbCommande; i++) {
		//msg += aLstCommandes[i].id + ' >> '+ Element.classNames(aLstCommandes[i].id)+'\n' ;
		if ( aLstCommandes[i].className == 'cmd_active' ) {
			Element.removeClassName(aLstCommandes[i].id, 'cmd_active');
			Element.addClassName(aLstCommandes[i].id, 'cmd');
		}
	}
	//alert(msg);
	Element.removeClassName(oThis.id, 'cmd');
	Element.addClassName(oThis.id, 'cmd_active');
	//alert(oThis.id + ' ' +oThis.className);
}


function verifContact(oForm)
{
	var isOk = true;
	var chaine = "";
	$('error_message').style.display = 'none';

	//On cache les différents messages serveurs présents sur la page
	if ( $('good_add') )
	{
		$('good_add').style.display = 'none';
	}

	var aFieldName 	= new Array('nom', 'mel', 'sujet', 'message');
	var aRetour 	= new Array('votre nom', 'votre e-mail', 'le sujet', 'le message');


	for (var i=0; i < aFieldName.length; i++) {
		if( oForm.elements[aFieldName[i]].value == "")
		{
			isOk = false;
			Element.addClassName($(aFieldName[i]), 'text_form_error');
			chaine = chaine + '- '+ aRetour[i] +'<br />';
		}
		else
		{
			Element.removeClassName($(aFieldName[i]), 'text_form_error');
		}
	}

	// Adresse mail
	var RegexMail = new RegExp ( "^\\w[\\w+\.\-]*@[\\w\-]+\.\\w[\\w+\.\-]*\\w$", "gi" ) ;

	if ( isOk && $('mel').value.search( RegexMail ) == -1 )
	{
		isOk = false;
		Element.addClassName($('mel'), 'text_form_error');
		chaine = chaine + "- un mél valide<br />";
		bAffVeuillez = true;

	}
	else if ( isOk )
	{
		Element.removeClassName($('mel'), 'text_form_error');
	}

	if ( !isOk ) {
		$('error_message').innerHTML = 'Veuillez saisir  : <br />' + chaine;
		Effect.BlindDown('error_message');
		return false;
	}
}

function verifFormAmi(oForm)
{
	var isOk = true;
	var chaine = "";
	$('error_message').style.display = 'none';

	//On cache les différents messages serveurs présents sur la page
	if ( $('good_add') )
	{
		$('good_add').style.display = 'none';
	}

	var aFieldName 	= new Array('votre_nom', 'orig_mel');
	var aRetour 	= new Array('votre nom', 'votre e-mail');

	// champs nom et email non vide
	if ( $('nom_1').value == "" && $('mel_1').value == "" && $('nom_2').value == "" && $('mel_2').value == "" && $('nom_3').value == "" && $('mel_3').value == "" )  
	{
		isOk = false;
		Element.addClassName($('nom_1'), 'text_form_error');
		Element.addClassName($('nom_2'), 'text_form_error');
		Element.addClassName($('nom_3'), 'text_form_error');
		Element.addClassName($('mel_1'), 'text_form_error');
		Element.addClassName($('mel_2'), 'text_form_error');
		Element.addClassName($('mel_3'), 'text_form_error');

		chaine = chaine + "- au moins un destinataire ! <br />";
		bAffVeuillez = true;

	}else{
		Element.removeClassName($('nom_1'), 'text_form_error');
		Element.removeClassName($('nom_2'), 'text_form_error');
		Element.removeClassName($('nom_3'), 'text_form_error');
		Element.removeClassName($('mel_1'), 'text_form_error');
		Element.removeClassName($('mel_2'), 'text_form_error');
		Element.removeClassName($('mel_3'), 'text_form_error');		
	}

	//controle nom et email SENDER
	for (var i=0; i < aFieldName.length; i++) {
		if( oForm.elements[aFieldName[i]].value == "")
		{
			isOk = false;
			Element.addClassName($(aFieldName[i]), 'text_form_error');
			chaine = chaine + '- '+ aRetour[i] +'<br />';
		}
		else
		{
			Element.removeClassName($(aFieldName[i]), 'text_form_error');
		}
	}


	// NOM 1 et EMAIL 1
	if ( ($('nom_1').value != "" && $('mel_1').value == "") || ($('nom_1').value == "" && $('mel_1').value != "") ) 
	{
		isOk = false;
		if($('nom_1').value == "") {
			Element.addClassName($('nom_1'), 'text_form_error');
			chaine = chaine + "-  nom du destinataire 1<br />";
			bAffVeuillez = true;
		}else{
			Element.addClassName($('mel_1'), 'text_form_error');
			chaine = chaine + "- email du destinataire 1<br />";			
			bAffVeuillez = true;
		}	

	}
	else if ( isOk )
	{
		Element.removeClassName($('nom_1'), 'text_form_error');
		Element.removeClassName($('mel_1'), 'text_form_error');
	}

	// NOM 2 et EMAIL 2
	if ( ($('nom_2').value != "" && $('mel_2').value == "") || ($('nom_2').value == "" && $('mel_2').value != "") ) 
	{
		isOk = false;
		if($('nom_2').value == "") {
			Element.addClassName($('nom_2'), 'text_form_error');
			chaine = chaine + "- nom du destinataire 2<br />";
			bAffVeuillez = true;
		}else{
			Element.addClassName($('mel_2'), 'text_form_error');
			chaine = chaine + "- email du destinataire 2<br />";
			bAffVeuillez = true;
		}	
	}
	else if ( isOk )
	{
		Element.removeClassName($('nom_2'), 'text_form_error');
		Element.removeClassName($('mel_2'), 'text_form_error');
	}

	// NOM 3 et EMAIL 3
	if ( ($('nom_3').value != "" && $('mel_3').value == "") || ($('nom_3').value == "" && $('mel_3').value != "") ) 
	{
		isOk = false;
		if($('nom_3').value == "") {
			Element.addClassName($('nom_3'), 'text_form_error');
			chaine = chaine + "- nom du destinataire 3<br />";
			bAffVeuillez = true;
		}else{
			Element.addClassName($('mel_3'), 'text_form_error');
			chaine = chaine + "- email du destinataire 3<br />";
			bAffVeuillez = true;
		}	
	}
	else if ( isOk )
	{
		Element.removeClassName($('nom_3'), 'text_form_error');
		Element.removeClassName($('mel_3'), 'text_form_error');
	}


	// validité des Adresse mail
	var RegexMail = new RegExp ( "^\\w[\\w+\.\-]*@[\\w\-]+\.\\w[\\w+\.\-]*\\w$", "gi" ) ;

	// destinaitaire 1
	if ( isOk && $('mel_1').value != "" && $('mel_1').value.search( RegexMail ) == -1 ) 
	{
		isOk = false;
		Element.addClassName($('mel_1'), 'text_form_error');
		chaine = chaine + "- un mél valide<br />";
		bAffVeuillez = true;

	}
	else if ( isOk )
	{
		Element.removeClassName($('mel_1'), 'text_form_error');
	}
	
	// destinaitaire 2
	if ( isOk && $('mel_2').value != "" && $('mel_2').value.search( RegexMail ) == -1 ) 
	{
		isOk = false;
		Element.addClassName($('mel_2'), 'text_form_error');
		chaine = chaine + "- un mél valide<br />";
		bAffVeuillez = true;

	}
	else if ( isOk )
	{
		Element.removeClassName($('mel_2'), 'text_form_error');
	}

	// destinaitaire 3
	if ( isOk && $('mel_3').value != "" && $('mel_3').value.search( RegexMail ) == -1 ) 
	{
		isOk = false;
		Element.addClassName($('mel_3'), 'text_form_error');
		chaine = chaine + "- un mél valide<br />";
		bAffVeuillez = true;

	}
	else if ( isOk )
	{
		Element.removeClassName($('mel_3'), 'text_form_error');
	}

	//email SENDER
	if ( isOk && $('orig_mel').value != "" && $('orig_mel').value.search( RegexMail ) == -1 ) 
	{
		isOk = false;
		Element.addClassName($('orig_mel'), 'text_form_error');
		chaine = chaine + "- un mél valide<br />";
		bAffVeuillez = true;

	}
	else if ( isOk )
	{
		Element.removeClassName($('orig_mel'), 'text_form_error');
	}
	
	if ( !isOk ) {
		$('error_message').innerHTML = 'Veuillez saisir  : <br />' + chaine;
		Effect.BlindDown('error_message');
		return false;
	}
}


// Active ou désactive le bouton "Commander" si les CGV sont lues
function fAcceptCGV(oThis) {
  	if (oThis.checked) {
  		new Effect.Opacity($('btnCommander'), {duration:0.3, from:0.3, to:1.0});
  		$('btnCommander').disabled = false;
  	}
  	else {
  		new Effect.Opacity($('btnCommander'), {duration:0.3, from:1.0, to:0.3});
  		$('btnCommander').disabled = true;
  	}
}

new Event.observe(window, 'load', function() {
	try {
	 	new Event.observe('ID_Niveau[]', 'click', function(event) {
	 		var l = $('ID_Niveau[]').length;
	 		var count = 0;
	 		for (var i=0; i<l; i++) {
	 			if ($('ID_Niveau[]').options[i].selected) {
	 				count++;
	 			}
	 		}
	 		if ( count > 2 ) {
	 			var elt = Event.element(event);
	 			alert('Merci de ne sélectionner que 2 niveaux maximum.');
	 			elt.selected = false;
	 		}
		});

		new Event.observe('ID_Discipline[]', 'click', function(event) {
	 		var l = $('ID_Discipline[]').length;
	 		var count = 0;
	 		for (var i=0; i<l; i++) {
	 			if ($('ID_Discipline[]').options[i].selected)
	 				count++;
	 		}
	 		if ( count > 2 ) {
	 			var elt = Event.element(event);
	 			alert('Merci de ne sélectionner que 2 disciplines maximum.');
	 			elt.selected = false;
	 		}
		});
	}
	catch(e) {}
});

