
$(document).ready(function(){

    // Régler les largeurs des entêtes du tableau admin
    $('#tableau-de-bord tr:first td').each(function(index) {
       $($('#tableau-de-bord-entete tr:first th')[index]).width($(this).width());
    });

    // A la sauvegarde, afficher une information (Uniquement en web)
    if($('input[name=_enreg]').val() != 'cancel' && $('input[name=_enreg]').val() != '' && $('.interface-web').length && $('input[name=p_courante]').val() == $('input[name=p_origine]').val())
    {
       $('#centre').prepend('<div class="information">Vos informations ont bien été enregistrées. Elles seront mises en ligne dans un délai d\'1 heure.</div>');
       $('.information').fadeIn('slow');
    }

    aideRepartitionCA();

});


function popup(url,w,h,scroll)
{
	lapopup=window.open(url,'popup','menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars='+scroll+',resizable=no,width='+w+',height='+h);
	win_x=(screen.width/2)-(w/2);
        win_y=(screen.height/2)-(h/2);
        lapopup.moveTo(win_x,win_y);
}
function popup_cgu()
{
	lapopup=window.open('cgu.php','popup','menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=no,width=500,height=300');
	win_x=(screen.width/2)-(w/2);
        win_y=(screen.height/2)-(h/2);
        lapopup.moveTo(win_x,win_y);
}
function changePage(debut)
{
	aform=window.document.form1;
	aform._debut.value=debut;
	aform.submit();		
}
function trier(champ)
{
	aform=window.document.form1;
	
	if (aform._tri.value==champ)
	{
		if (aform._sens.value=="ASC") aform._sens.value="DESC";
		else aform._sens.value="ASC";
	}
	else
		aform._sens.value="ASC";
	
	aform._tri.value=champ;

	aform._debut.value=0;
	aform.submit();
}

function isInteger (s)
{
    var i;
    if (isEmpty(s))
    {
       if (isInteger.arguments.length == 1) 
       {
       	return false;
       }
       else
       {
       	return (isInteger.arguments[1] == true);
       }
    }	
    for (i = 0; i < s.length; i++)
    {
        var c = s.charAt(i);
        if (!isDigit(c)) {return false;}
    }
    // All characters are numbers.
    return true;
}
function isEmpty(s)
{
	return ((s == null) || (s.length == 0));
}

function isDigit (c)
{
	return ((c >= "0") && (c <= "9"));
}

function isDate2(chaine)
{
	DateJour = new Date();
	Annee = DateJour.getYear();
	Mois = DateJour.getMonth()+1;
	// if (eval(Mois) < 10)
	//alert("datejour="+Mois+" jour="+Jour);
	lg = chaine.length;
	sep1 = chaine.substring(4,5);
	sep2 = chaine.substring(7,8);
	jour = chaine.substring(8,10);
	mois = chaine.substring(5,7);
	an   = chaine.substring(0,5);
	if (lg != 10) return false;
	if (sep1 != '-' || sep2 != '-') return false;
	if (jour < '01' || jour > '31') return false;	
	if (mois < '01' || mois > '12') return false;	
	if (an.match(/(20[0-9]{2})/) == null ) return false;
  return true;
} 
 // validite d'un e-mail	

function valider_email(email)
{
	var exp1=new RegExp("^([a-zA-Z0-9_])([a-zA-Z0-9_\.\-])*\@(([a-zA-Z0-9_\-])+\.)+([a-zA-Z0-9]{2,4})$");

	if ( !exp1.test(email) )
   	{
   		alert("E-mail non valide");
   	
   		return 0;
   	}
	return 1;
}


 
function isAlpha(chaine) { 
	RE = /^([A-Za-z]+[ ]*[-]*[A-Za-z]*)+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isAlphaNum(chaine) { 
	RE = /^[A-Za-z?????????????\s,0-9\-]+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isNum(chaine) { 
	RE = /^\d+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isFloat(chaine) { 
	RE = /^\d+[\.]\d+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isCodePostal(chaine) { 
	RE = /^\d{5}$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 

} 

function isFormatDate(chaine) { 
	RE = /^\d{2}([\/]|[\-])+\d{2}([\/]|[\-])+\d{2}(\d{2})*$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 
} 

function isEmail(chaine) { 
	RE = /^[A-Za-z0-9\.\-_]+[@][A-Za-z0-9\-\.]+[\.][A-Za-z][A-Za-z][A-Za-z]?[A-Za-z]?$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 
} 

function isPhoneNumber(chaine) { 
	RE = /^[0-9\.\-\ ]+$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 
} 

function isDate10(date)
{
// format : JJ/MM/AAAA
// alert( "date.length=" + date.length );

if (date.length!=10) return false;

var bissex=false;

var testjj=false;

var testmm=false;

var testaaaa=false;

var nbjours = new Array(12);

nbjours[0]=31;

nbjours[1]=28;

nbjours[2]=31;

nbjours[3]=30;

nbjours[4]=31;

nbjours[5]=30;

nbjours[6]=31;

nbjours[7]=31;

nbjours[8]=30;

nbjours[9]=31;

nbjours[10]=30;

nbjours[11]=31;

var Sjj = date.substr(0,2);

var Smm = date.substr(3,2);

var Saaaa = date.substr(6,4);

//var jj=parseInt(Sjj,10);

//var mm=parseInt(Smm,10); 

//var aaaa=parseInt(Saaaa,10);

jj = Sjj;

mm = Smm;

aaaa= Saaaa;

if ((aaaa % 4) == 0 && (aaaa % 100) != 0 || (aaaa % 400) == 0) bissex = true;

if (bissex) nbjours[1]=29;

if (jj >= 1 && jj <= nbjours[mm-1]) testjj = true;

if (mm >= 1 && mm <= 12) testmm = true;

if (aaaa >= 2000 && aaaa <= 2100) testaaaa = true;

// alert( "testjj=" + testjj + " testmm=" + testmm + " testaaaa=" + testaaaa );

return (testjj && testmm && testaaaa); 

} 

function fenetreCent(url,nom,largeur,hauteur,options)
{
 var haut=(screen.height-hauteur)/2;
 var Gauche=(screen.width-largeur)/2;
 fencent=window.open(url,nom,"top="+haut+",left="+Gauche+",width="+largeur+",height="+hauteur+","+options);
}
 
 
function Popu_PDF(idGuide, idFormat, NomChamp)
{
  var page = "popup_telecharge.php?_idGuide="+idGuide+"&_idFormat="+idFormat+"&_NomChamp="+NomChamp;
  fenetreCent(page,"fencent",800,500,"menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=yes");
}
  
 function isIPAdresse(chaine) { 
	RE = /^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/; 
	// Si on ne trouve pas dans le champ l'expression reguliere recherchee 
	if (!RE.test(chaine)) { 
		return(false); 
	} else { 
		return(true); 
	} 
} 
function affiche_alert(texte){
 var chaine=urldecode(texte);
  alert(chaine);
}
function urldecode(ch) {
   ch = ch.replace(/[+]/g," ")
   return unescape(ch)
}

    /* Activation ou dÃ©sactivation de champs*/
  function ControleAct(Controleur, Controle1, Controle2, Masquer) 
  {
	var objControleur = document.getElementById(Controleur);
	if( !objControleur ) return false;
	var objControle1 = document.getElementById(Controle1);
	if( !objControle1 ) return false;
	var objControle2 = document.getElementById(Controle2);
	if( !objControle2 ) return false;
		if (Masquer=='1')
		{
			objControle1.style.visibility=(objControleur.checked==true)?'visible':'hidden';
			objControle2.style.visibility=(objControleur.checked==true)?'visible':'hidden';
		}
		else
		{
			objControle1.disabled=(objControleur.checked==true)?false:true;
			objControle2.disabled=(objControleur.checked==true)?false:true;
			objControle1.checked=(objControleur.checked==true)?true:false;
			objControle2.checked=false;
		}
		return true;
  }
  /* Visualisation de champs */
  function ControleVisu(Controleur, Controle, Masquer) 
  {
	var objControleur = document.getElementById(Controleur);
	if( !objControleur ) return false;
	var objControle = document.getElementById(Controle);
	if( !objControle ) return false;
		if (Masquer=='1')
		{
			objControle.style.visibility=(objControleur.checked==true)?'visible':'hidden';
		}
		else
		{
			objControle.disabled=(objControleur.checked==true)?false:true;
		}
		return true;
  }
  /*champs oui desabled*/
  function desabled_oui(Controleur) 
  {
	 var objControleur = document.getElementById(Controleur);
	
	  objControleur.disabled=true;

  }

function textCounter( field, countfield, maxlimit ) {
  if ( field.value.length > maxlimit )
  {
    field.value = field.value.substring( 0, maxlimit );
    alert( 'Le nombre maximum de caractères autorisé est 255.' );
    return false;
  }
 /* else
  {
    countfield = maxlimit - field.value.length;
  }*/
}

/* Controle de formulaires */

/* Vérifie qu'une sélection est faite dans la liste de choix 
*
* n_select > Noeud HTML Select
*/
function ControleSelect(n_select)
{
	if(n_select.selectedIndex == 0)
		return false;
	
	return true;
}

function Alerter(t_erreurs)
{
	var message = '';

	if(t_erreurs.length)
	{
		for(var i = 0; i < t_erreurs.length; i++)
			message += t_erreurs[i];

		alert(message);

		return false;
	}
	
	return true;
}

/* / Controle de formulaires */

/**
 * Controle si l'option sélectionnée n'est pas déjà sélectionnée sur une autre liste
 */
function VerifierRIetDI(liste)
{
	var di_pos = liste.selectedIndex;

	// Pas de choix, pas de controle
	if(di_pos == 0)
		return true;

	// CAS particulier : Guide consulting / Premier choix
	/*if(ObtVarGDT('id_guide') == 1) {
		return true;
	}*/
	
	// CAS particulier : Guide evènement
	if(ObtVarGDT('id_guide') == 18) {
		return true;		
	}


	var ri = document.getElementById('rubriques1');
	var ri_sel = ri.selectedIndex;

	if(!ri)
		return true;

	if(liste.id == 'rubriques1')
	{
		if(ObtVarGDT('id_guide') == 1) {
			di_pos--;
		}

		for(var i = 1; i <= nb_di; i++)
		{
			var liste_di = document.getElementById('domaines'+i);
			if(liste_di.selectedIndex == di_pos)
				return AnnulerChangement(liste);
		}
	}
	else {
		
		if(ObtVarGDT('id_guide') == 1) {
			di_pos++;
		}
		
		if(ri_sel == di_pos)
			return AnnulerChangement(liste);
	}

	return true;
}

function AnnulerChangement(liste)
{
	alert("Les domaines d'intervention doivent différer de la rubrique d'insertion.");
	liste.selectedIndex = VALEUR_PRECEDENTE;
	return false;
}

/**
 * A la sélection d'un domaine d'intervention, vérifie si celui-ci n'est pas déjà sélectionné 
 * @param liste_di
 * @return false si le DI est déjà sélectionné
 */
function VerifierSelectionDI(liste_di)
{
	var di_pos = liste_di.selectedIndex;

	// Pas de choix, pas de controle
	if(di_pos == 0)
		return true;

	var occ = 0;

	for(var i = 1; i <= nb_di; i++)
	{
		// Ignorer la liste courante
		if('domaines'+i == liste_di.id)
			continue;

		var liste = document.getElementById('domaines'+i);
		
		if(di_pos == liste.selectedIndex) {
			occ++;
		}
	}

	if(occ)
	{
		alert("Un domaine ne doit être sélectionné qu'une fois.");

		// Sélectionner la position précédente
		liste_di.selectedIndex = VALEUR_PRECEDENTE;
		
		return false;
	}
	
	return true;		

}

function GriserSelection()
{
    DeGriser();

    var t_valeurs = new Array();

    // Récupérer les valeurs des listes DI
    for(var i = 0; i <= nb_di; i++)
    {
        var liste = document.getElementById((i) ? 'domaines'+i : 'rubriques1');

        if(!liste)
            continue;

        t_valeurs[i] = liste.selectedIndex;
    }

    if(ObtVarGDT('id_guide') == 1) {
        t_valeurs[0] = t_valeurs[0]-1;
    }

    if(ObtVarGDT('id_guide') == 18) {
        t_valeurs[0] = '';
    }

    // Griser les éléments utilisés
    for(var i = 1; i <= nb_di; i++)
    {
        var liste = document.getElementById('domaines'+i);

        for(var j = 0; j < t_valeurs.length; j++)
        {
                if(j == i || !t_valeurs[j])
                        continue;
                if(liste)
                    liste.options[t_valeurs[j]].style.color = '#888888';
        }
    }
}

function DeGriser()
{
    // Récupérer les valeurs des listes DI
    for(var i = 1; i <= nb_di; i++)
    {
        var liste = document.getElementById('domaines'+i);
        if(liste)
            for(var j = 0; j < liste.options.length; j++)
            {
                    liste.options[j].style.color = '';
            }
    }
}

function VoirPDF(type) {
    activer_fiche = document.getElementById('activer_fiche');
    activer_fiche.value = type;
}

var WindowObjectReference = null; // variable globale

function NouvelleFenetre(url, nom)
{
  if(WindowObjectReference == null || WindowObjectReference.closed) {
    WindowObjectReference = window.open(url, nom, "resizable=yes,toolbar=0,menubar=0,location=0,scrollbars=1,width=1270,height=885");
  }
  else {
    WindowObjectReference.focus();
  };
}


/**
* Changer de mode d'édition (web ou papier)
* cle_soc : clé société
* mode : web|papier
*/
function Switcher(id_soc, mode) {
	$('#switch_id_soc').val(id_soc);
	$('#switch_rub').val('societe');
	$('#mode').val(mode);
	$('#switch').submit();
}

function Switcher2(id_soc, mode) {
	$('#switch_id_soc').val(id_soc);
	$('#mode').val(mode);
	if( ! redirection('societe')) {
            $('#switch_id_soc').val('');
            $('#mode').val('');
	}
	
}

function AllerPage(page) {
	redirection(page);
}

function Quitter()
{
    var alerte = '';

    motscles = false;

    if($('input[name=p_courante]').val() == 'options' && $('textarea[name=motscles]').val() != '')
        motscles = true;

    // Controler que certaines infos soit complétées
    if($('#controle_nb_secteurs').html() == '0')
        alerte += '- Au moins un secteur doit être sélectionné.\n';

    if(( ! motscles && $('#controle_mot_cles').html() == '0') || ($('#controle_mot_cles').html() == '1' && ! motscles && $('input[name=p_courante]').val() == 'options'))
        alerte += '- Au moins un mot-clé doit être renseigné.\n';
 //   if($('#controle_logo').html() == '0')
   //     alerte += '- Le logo n\'a pas été envoyé\n';

    if(alerte)
    {
        if( ! confirm(alerte + 'Rendez-vous sur l\'onglet Option(s) pour compléter.\n\nÊtes-vous sur de vouloir quitter ?'))
            return false;
        return true;
    }

    // Sur la page intro, ne pas afficher d'alerte si on clique sur "se reconnecter"
    // (le test porte sur la visibilité du popup)
    if($('input[name=p_courante]').val() == 'introduction' && $('#message_bat:visible').length)
        return true;


    if($('#etat_id').html() != 7)
        if( ! confirm('Merci de votre visite. Etes-vous sûrs d\'avoir validé tous les onglets et de vouloir quitter le site ?'))
            return false;

    return true;
}

function AccessibleEnBAT() {
	alert('Cet onglet n\'est pas accessible car la société n\'est pas en BAT.');
}

function annulerModifications(page)
{
    $('form')[0].reset(); // Reset du formulaire
    $('form input[name=_rub]').val(page); // Afficher la page
    $('form input[name=_enreg]').val('cancel'); // Ne pas enregistrer
    $('form').submit();
}

function SupprimerCom(com_id)
{
    if(!confirm('Confirmez-vous la suppression du communiqué ?'))
        return false;

    $('#action').val('del');
    $('#com_id').val(com_id);

    redirection('cpresse');
}


function AjouterCom() {
	$('#action').val('add');
	redirection('form_communique');
}

function EditerCom(com_id)
{
    $('#action').val('mod');
    $('#com_id').val(com_id);

    redirection('form_communique');
}

function aideRepartitionCA()
{

    $(".tableau2 select[name*=_indice]").change(function() {

        var id = $(this).attr('id');
        var valeur = $(this).val();

        $(this).parents('tr').first().find('select').each(function() {

          if($(this).attr('id') != id)
          {
            $(this).val(100-valeur);
          }

        });

    });

}

/**
 * Tester en js si l'utilisateur est admin
 * Une classe est présente sur la balise body si c'est le cas
 */
function isAdmin()
{
    if( ! $('.login-administrateur').length)
        return false;

    return true;
}
