
function getObj(name){
	
	if (document.getElementById){
		return document.getElementById(name);
	}
	else if (document.all){
		return document.all[name];
	}
	else if (document.layers){
		return document.layers[name];
	}
	else return false;
}

function getObjName(name){
	
	if (document.getElementsByName){
		return document.getElementsByName(name)[0];
	}
	else if (document.all){
		return document.all[name];
	}
	else if (document.layers){
		return document.layers[name];
	}
	else return false;
}

	function selectionne_option(sel,opt){
		for(var i=0;i<sel.options.length;i++){
			if (sel.options[i].value==opt){
				sel.selectedIndex=i;
				return(true);
			}
		}
	}

function date_sans_annee(s){
	// Utilisée dans la liste des actus sur Espinf 4/02/2009
 return(s.substr(0,s.lastIndexOf("/")));
}

function maj_categorie(site){

	var selection=element_selectionne_option(getObj("categorie"))

	
	var destinataire=getObj("destinataire_"+selection).value
	var nb_destinataires=getObj("nb_destinataires").value
	getObjName("destinataire").value=destinataire
	
	getObj("trace_destinataire").innerHTML=destinataire
	getObj("formulaire_contact").style.display=(destinataire==""?"none":"block")
	
	// alert(destinataire+" "+selection)
	
	for(var i=0;i<nb_destinataires;i++){
		getObj("precisions_contact_"+(i+1)).style.display=(selection==i+1?"block":"none")
		
	}
}

function element_selectionne_value(l){
	if(typeof(l)=="undefined"){
		var s=-1
	}
	else{
		if(l.options.length==0){
			var s=-1
		}
		else{
			var s=(l.selectedIndex==-1?-1:l.selectedIndex)
		}
	}
	return(s)
}

 function element_selectionne_libelle(l){
	if(typeof(l)=="undefined"){
		var s=""
	}
	else{
		if(l.options.length==0){
			var s=""
		}
		else{
			var s=(l.selectedIndex==-1?l.options[0].text:l.options[l.selectedIndex].value)
		}
	}
return(s)
}

function element_selectionne_option(l){
	if(typeof(l)=="undefined"){
		var s=""
	}
	else{
		if(l.options.length==0){
			var s=""
		}
		else{
			var s=(l.selectedIndex==-1?"":l.options[l.selectedIndex].value)
		}
	}
	return(s)
}

function getVar(name)
         {
         get_string = document.location.search;         
         return_value = '';
         
         do { //This loop is made to catch all instances of any get variable.
            name_index = get_string.indexOf(name + '=');
            
            if(name_index != -1)
              {
              get_string = get_string.substr(name_index + name.length + 1, get_string.length - name_index);
              
              end_of_value = get_string.indexOf('&');
              if(end_of_value != -1)                
                value = get_string.substr(0, end_of_value);                
              else                
                value = get_string;                
                
              if(return_value == '' || value == '')
                 return_value += value;
              else
                 return_value += ', ' + value;
              }
            } while(name_index != -1)
            
         //Restores all the blank spaces.
         space = return_value.indexOf('+');
         while(space != -1)
              { 
              return_value = return_value.substr(0, space) + ' ' + 
              return_value.substr(space + 1, return_value.length);
							 
              space = return_value.indexOf('+');
              }
          
         return(return_value);        
         }
		 
function ComparerDates(LeParam1,LeParam2){

// Compare 2 dates au format jj/mm/aaaa
// Renvoye 0 si égalité, 1 si la première est supérieure, sinon 2

var LeParam1 = DateAnglaise(LeParam1,"/");// Ne pas oublier d'utiliser cette fonction
// pour convertir en date anglaise, sinon le 05/07/2003 sera compris "7 mai 2003" par JavaScript

var LeParam2 = DateAnglaise(LeParam2,"/");
LeParam1 = Date.parse(LeParam1);
LeParam2 = Date.parse(LeParam2);

if (LeParam1 == LeParam2) { 
return 0;
}

if (LeParam1 > LeParam2){
return 1;
}else{
return 2;
}
}


// Renvoye une date en format anglais avec le séparateur choisi "02/03/1981" -> "1981-3-2"
// Le premier paramètre est la date a convertir, le second est le caractère de séparation choisi
function DateAnglaise(LeParam1,LeParam2){

LaDate = new Array(3);
LaDate = DecomposeDate(LeParam1);

LeRetour = LaDate[2]+LeParam2+LaDate[1]+LeParam2+LaDate[0];
return LeRetour;
}

function DecomposeDate(LeParam1){ 

// Sépare les jours, les mois et les années dans une date de type "22/05/1981"
// Renvoye le tout dans un tableau de taille 3

LeRetour = new Array(3);
LeJour="";
LeMois="";
LeAnnee="";

// Extraction du jour
i=0;
while((LeParam1.charAt(i)!="/")&&(i<10)){
LeJour+=LeParam1.charAt(i);
i++;
}
if(LeJour.charAt(0)=="0"){
LeJour=LeJour.charAt(1);
}
LeParam1=LeParam1.substring(i+1,LeParam1.length);

// Extraction du mois
i=0;
while((LeParam1.charAt(i)!="/")&&(i<10)){
LeMois+=LeParam1.charAt(i);
i++;
}
if(LeMois.charAt(0)=="0"){
LeMois=LeMois.charAt(1);
}
LeParam1=LeParam1.substring(i+1,LeParam1.length);


// Extraction de l'année
LeAnnee=LeParam1;
LeRetour[0]=LeJour;
LeRetour[1]=LeMois;
LeRetour[2]=LeAnnee;
return LeRetour;
}


function getCookie(sName) {
        var cookContent = document.cookie, cookEnd, i, j;

        var sName = sName + "=";
 
        for (i=0, c=cookContent.length; i<c; i++) {
                j = i + sName.length;
                if (cookContent.substring(i, j) == sName) {
                        cookEnd = cookContent.indexOf(";", j);
                        if (cookEnd == -1) {
                                cookEnd = cookContent.length;
                        }
                        return decodeURIComponent(cookContent.substring(j, cookEnd));
                }
        }       
        return null;
}

function setCookie(sName, sValue,jours) {
        var today = new Date(), expires = new Date();
        expires.setTime(today.getTime() + (jours*24*60*60*1000));
        document.cookie = sName + "=" + sValue + ";path=/;expires=" + expires.toGMTString();
	}

	function deleteCookie( name, path, domain ) {
if ( getCookie( name )) document.cookie = name + "=" +
( ( path ) ? ";path=" + path : "") +
( ( domain ) ? ";domain=" + domain : "" ) +
";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}
	
	function libelle_publication_v2(acronyme){ // Sert à l'allumage "manuel" des onglets à partir des acronymes de publications dans les templates d'archives
	switch(acronyme){
		case "SV":
			return("La Semaine Vétérinaire");
		break;
		case "PV":
			return("Le Point Vétérinaire");
		break;
		case "PVE":
			return("Pratique Vétérinaire Equine");
		break;
		case "vt":
			return("Veterinary Times");
		break;
		case "vnt":
			return("VN Times");
		break;
		case "vbj":
			return("The Veterinary Business Journal");
		break;
		case "IM":
			return("L'Infirmière magazine");
		break;		
		case "ILM":
			return("L'Infirmière libérale magazine");
		break;
		case "OS":
			return("Objectif soins");
		break;		
		default:
			return("");
		break;
	}
}


function getName(o){
	if(o.nodeType==1){
		return(o.getAttribute("name"));
	}
	else{
		return("");
	}
}

// Retrouve les enfant d'un noeud ayant un nom particulier
// L'idéal aurait été de passer par un prototypage, mais ça ne semble pas fonctionner sous ie pour Object
function getElementsByName(obj,name){
	var a=[];
	
	for(var n=0;n<obj.childNodes.length;n++){
	
		if(getName(obj.childNodes[n])==name){a.push(obj.childNodes[n]);}
	}
	return a;
}

// 30/09/11
function alterne_tableau(nomtab,couleur_pair,couleur_impair){
	var t=document.getElementById(nomtab);
	var ltr=t.tBodies[0].getElementsByTagName("tr")

	if(ltr.length>0){
		var correctif_header=(ltr[0].getElementsByTagName("th").length==0?0:1)
		
		for (var l=correctif_header;l<ltr.length;l++){
			if (document.all) {		
				ltr[l].style.setAttribute("cssText", "background-color:"+((l+correctif_header)%2==0?couleur_impair:couleur_pair)+";");
			}
			else{
			ltr[l].setAttribute("style", "background-color:"+((l+correctif_header)%2==0?couleur_impair:couleur_pair)+";");
			}
		}			
	}
}

var BrowserDetect = {
init: function () {
this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
//alert(navigator.appVersion)
this.version = this.searchVersion(navigator.userAgent)
|| this.searchVersion(navigator.appVersion)
|| "an unknown version";
this.OS = this.searchString(this.dataOS) || "an unknown OS";
},
searchString: function (data) {
for (var i=0;i<data.length;i++) {
var dataString = data[i].string;
var dataProp = data[i].prop;
this.versionSearchString = data[i].versionSearch || data[i].identity;
if (dataString) {
if (dataString.indexOf(data[i].subString) != -1)
return data[i].identity;
}
else if (dataProp)
return data[i].identity;
}
},
searchVersion: function (dataString) {
var index = dataString.indexOf(this.versionSearchString);
if (index == -1) return;
var res=parseFloat(dataString.substring(index+this.versionSearchString.length+1));
res+=(IsIE8Browser()?" (8 detected)":"");
res+=(IsIE9Browser()?" (9 detected)":"");
return res;
},
dataBrowser: [
{
string: navigator.userAgent,
subString: "Chrome",
identity: "Chrome"
},
{ string: navigator.userAgent,
subString: "OmniWeb",
versionSearch: "OmniWeb/",
identity: "OmniWeb"
},
{
string: navigator.vendor,
subString: "Apple",
identity: "Safari",
versionSearch: "Version"
},
{
prop: window.opera,
identity: "Opera"
},
{
string: navigator.vendor,
subString: "iCab",
identity: "iCab"
},
{
string: navigator.vendor,
subString: "KDE",
identity: "Konqueror"
},
{
string: navigator.userAgent,
subString: "Firefox",
identity: "Firefox"
},
{
string: navigator.vendor,
subString: "Camino",
identity: "Camino"
},
{ // for newer Netscapes (6+)
string: navigator.userAgent,
subString: "Netscape",
identity: "Netscape"
},
{
string: navigator.userAgent,
subString: "MSIE",
identity: "Explorer",
versionSearch: "MSIE"
},
{
string: navigator.userAgent,
subString: "Gecko",
identity: "Mozilla",
versionSearch: "rv"
},
{ // for older Netscapes (4-)
string: navigator.userAgent,
subString: "Mozilla",
identity: "Netscape",
versionSearch: "Mozilla"
}
],
dataOS : [
{
string: navigator.platform,
subString: "Win",
identity: "Windows"
},
{
string: navigator.platform,
subString: "Mac",
identity: "Mac"
},
{
string: navigator.userAgent,
subString: "iPhone",
identity: "iPhone/iPod"
},
{
string: navigator.platform,
subString: "Linux",
identity: "Linux"
}
]
};
BrowserDetect.init();
function IsIE8Browser() {
var rv = -1;
var ua = navigator.userAgent;
var re = new RegExp("Trident\/([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null) {
rv = parseFloat(RegExp.$1);
}
return (rv == 4);
} 
function IsIE9Browser() {
var rv = -1;
var ua = navigator.userAgent;
var re = new RegExp("Trident\/([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null) {
rv = parseFloat(RegExp.$1);
}
return (rv == 5);
} 

function getDate(){
	var Stamp = new Date();
	return ((Stamp.getMonth() + 1) +"/"+Stamp.getDate()+ "/"+Stamp.getYear());
}
function getHour(){
	var Stamp = new Date();
	var Hours = Stamp.getHours();
	var Mins = Stamp.getMinutes();

	if (Mins < 10) {
		Mins = "0" + Mins;
	}
	return (Hours+":"+Mins)	
}



