// JavaScript Document
<!--
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
  if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function PopupCentrer(page,largeur,hauteur,options) {
  var top=(screen.height-hauteur)/2;
  var left=(screen.width-largeur)/2;
  window.open(page,"","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
}

function majuscule(obj)
{
 var minus = "aàâäbcçdeéèêëfghiîïjklmnoôöpqrstuùûvwxyz"
 var majus = "AAAABCCDEEEEEFGHIIIJKLMNOOOPQRSTUUUVWXYZ"
 var entree = obj.value;
 var sortie = "";
 for (var i = 0 ; i < entree.length ; i++)
 {
 var car = entree.substr(i, 1);
 sortie += (minus.indexOf(car) != -1) ? majus.substr(minus.indexOf(car), 1) : car;
 }
 obj.value = sortie;
} 






function getStates(sQuery) {
    aResults = [];
    if(sQuery && sQuery.length > 0) {
        var charKey = sQuery.substring(0,1).toLowerCase();
        var oResponse = dataset[charKey];
        
        if(oResponse) {
            for(var i = oResponse.length-1; i >= 0; i--) {
                var sKey = oResponse[i].STATE;
                var sKeyIndex = encodeURI(sKey.toLowerCase()).indexOf(sQuery.toLowerCase());

                // Query found at the beginning of the key string for STARTSWITH
                // returns an array of arrays where STATE is index=0, ABBR is index=1
                if(sKeyIndex === 0) {
                    aResults.unshift([sKey, oResponse[i].ABBR]);
                }
            }
            return aResults;
        }
    }
    // Empty queries return all states
    else {
        for(var letter in dataset) {
            var oResponse = dataset[letter];
            for(var i = 0; i < oResponse.length; i++) {
                aResults.push([oResponse[i].STATE, oResponse[i].ABBR]);
            }
        }
        return aResults;
    }
}

function checkEmail(emailAddr) {
	// Cette fonction vérifie la bon format d'une adresse e-mail.
	// Comme :
	// user@domain.com ou user.perso@domain.com
	
	var i;
	
	// Recherche de @
	i = emailAddr.indexOf("@");
	if (i == -1) {
		return false;
	}
	
	// Séparation du nom de l'utilisateur et du nom de domaine.
	var username = emailAddr.substring(0, i);
	var domain = emailAddr.substring(i + 1, emailAddr.length);

	// Recherche des espaces au début du nom de l'utilisateur.
	i = 0;
	while ((username.substring(i, i + 1) == " ") && (i < username.length)) {
		i++;
	}
	// Les enlève s'il en trouve.
	if (i > 0) {
		username = username.substring(i, username.length);
	}

	// Recherche d'espaces à la fin du nom de domaine.
	i = domain.length - 1;
	while ((domain.substring(i, i + 1) == " ") && (i >= 0)) {
		i--;
	}
	// Les enlève s'il en trouve.
	if (i < (domain.length - 1)) {
		domain = domain.substring(0, i + 1);
	}

	// Vérifie que le nom de l'utilisateur et du domaine ne soit pas vide.
	if ((username == "") || (domain == "")) {
		return false;
	}
	
	// Vérifie s'il n'y a pas de caractères interdits dans le nom de l'utilisateur.
	var ch;
	for (i = 0; i < username.length; i++) {
		ch = (username.substring(i, i + 1)).toLowerCase();
		if (!(((ch >= "a") && (ch <= "z")) || 
			((ch >= "0") && (ch <= "9")) ||
			(ch == "_") || (ch == "-") || (ch == "."))) {
				return false;
		}
	}
	
	// Vérifie s'il n'y a pas de caractères interdits dans le nom de domaine
	for (i = 0; i < domain.length; i++) {
		ch = (domain.substring(i, i + 1)).toLowerCase();
		if (!(((ch >= "a") && (ch <= "z")) || 
			((ch >= "0") && (ch <= "9")) ||
			(ch == "_") || (ch == "-") || (ch == "."))) {
				return false;
		}
	}

	// Ajouter ci-dessous de nouveaux noms de domaine.
	// Voir tous les noms de domaine sur http://www.toulouse-renaissance.net/c_outils/c-nom-domaine.htm
	//
	var aSuffix = new Array("com","net","int","aero","biz","museum","name","info","coop","pro","eu","edu","org","gov","mil","bj","dz","de","ad","be","ca","bf","bi","cm","cf","cg","cd","ci","dj","fr","gp","gf","lu","mg","ml","ma","mq","mr","mc","nc","pf","re","pm","sn","ch","td","tf","tn","eu","co.uk","ca.uk","it","nl","ru","es","ae","al","am","an","ao","ar","at","au","bg","bj","bm","br","ca","cg","cv","dk","fi","ga","gb","gf","gr","hr","hu","ie","il","is","je","lu","pt","ro","se","sn","tr","ua","uk","yt","no","jp");
	var bFoundSuffix = false;
	i = 0;
	while (i < aSuffix.length) {
		if (("." + aSuffix[i]) == domain.substring(domain.length - aSuffix[i].length - 1, domain.length)) {
			return true;
		}
		i++;
	}
	// Si le nom de domaine est inconnu  : return false
	return false;
	
}

function preloadImages() {
var d=document; if(d.images){ if(!d.p) d.p=new Array();
var i,j=d.p.length,a=preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.p[j]=new Image; d.p[j++].src=a[i];}}
}


// Fonction de recherche dans un tableau
function array_search(what, where){
	
	var index_du_tableau=-1
 
	for(elt in where)
	{
		index_du_tableau++;
		if (where[elt]==what)
		{
			return index_du_tableau
		}
	}
	
	index_du_tableau=-1;
	
	return index_du_tableau
}



// GESTION du format de la date
var t_jours = new Array(12);
t_jours[0] = 31;
t_jours[1] = 28;
t_jours[2] = 31;
t_jours[3] = 30;
t_jours[4] = 31;
t_jours[5] = 30;
t_jours[6] = 31;
t_jours[7] = 31;
t_jours[8] = 30;
t_jours[9] = 31;
t_jours[10] = 30;
t_jours[11] = 31;

function calcule_fevrier(valeur) {
	if ((valeur.substring(6)/400==parseInt(valeur.substring(6)/400)) || ((valeur.substring(6)/4==parseInt(valeur.substring(6)/4)) && (valeur.substring(6)/100!=parseInt(valeur.substring(6)/100)))){
		t_jours[1] = 29;
	} else {
		t_jours[1] = 28;
	}
}

function isNaD(valeur) {
	if ((valeur.length != 8) && (valeur.length != 10)) {
		return("erreur : longueur");
	} else {
		if (valeur.charAt(2)!="/" && valeur.charAt(5)!="/") {
			//return("erreur : mauvais séparateur de champs");
			return(true);
		} else {
			if (isNaN(valeur.substring(0,2)) || isNaN(valeur.substring(3,5)) || isNaN(valeur.substring(6))) {
				//return("erreur : type de donnée des champs");
				return(true);
			} else {
				if ((valeur.substring(3,5)<0) || (valeur.substring(3,5)>12)) {
					//return("erreur : valeur du mois");
					return(true);
				} else {
					calcule_fevrier(valeur);
					if ((valeur.substring(0,2)<0) || (valeur.substring(0,2)>t_jours[valeur.substring(3,5)-1])) {
						//return("erreur : valeur du jour");
						return(true);
					} else {
						//return("date correcte");
						return(false);
					}
				}
			}
		}
	}
}


function isNaC(valeur) {
	if ((valeur.length != 8)) {
		return(false);
	} else {
		if (valeur.charAt(2)!=":" && valeur.charAt(5)!=":") {
			//return("erreur : mauvais séparateur de champs");
			return(true);
		} else {
			if (isNaN(valeur.substring(0,2)) || isNaN(valeur.substring(3,5)) || isNaN(valeur.substring(6))) {
				//return("erreur : type de donnée des champs");
				return(true);
			} else {
				if ((valeur.substring(3,5)<0) || (valeur.substring(3,5)>59)) {
					//return("erreur : valeur du mois");
					return(true);
				} else {
					if ((valeur.substring(6,8)<0) || (valeur.substring(6,8)>59)) {
						//return("erreur : valeur du jour");
						return(true);
					} else {
						//return("date correcte");
						return(false);
					}
				}
			}
		}
	}
}



// on nomme la fenêtre pour afficher la page de retour internaute dans cette page
self.name="sitecom";
function Ouvrir_Spplus()
{
	// Largeur et hauteur préconisées de la fenêtre SPPLUS
   	var PopupSpplus_largeur	= 750;
   	var PopupSpplus_hauteur	= 560;

      // Position haut et gauche de la fenêtre SPPLUS pour affichage centré dans l'écran
   	var PopupSpplus_top	=((screen.height-PopupSpplus_hauteur)/2);
   	var PopupSpplus_left	=((screen.width-PopupSpplus_largeur)/2);

   	// Ouverture du popup SPLUS avec barre état uniquement et focus sur la fenêtre
   	var win = window.open('', "SPPLUS","status=yes,top="+PopupSpplus_top+",left="+PopupSpplus_left+",width="+PopupSpplus_largeur+",height="+PopupSpplus_hauteur);
   	win.focus();
}





function in_array (needle, haystack, argStrict) {
    var key = '', strict = !!argStrict;
 
    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) {
                return true;
            }
        }
    } else {
        for (key in haystack) {
            if (haystack[key] == needle) {
                return true;
            }
        }
    }
 
    return false;
}




// Auto Completion Club

function lookup(inputString,id,tabble) {
    if(inputString.length == 0) {
        // Hide the suggestion box.
        $('#suggestions_'+id).hide();
    } else {
        $.post("/include/club.php", {queryString: ""+inputString+"", id:""+id+"", tabble:""+tabble+""}, function(data){
            if(data.length >0) {
                $('#suggestions_'+id).show();
                $('#autoSuggestionsList_'+id).html(data);
            }
        });
    }
} // lookup

function lookup_club_perso(inputString,id,tabble,idformulaire) {
    if(inputString.length == 0) {
        // Hide the suggestion box.
        $('#suggestions_'+id).hide();
    } else {
        $.post("/include/club_perso.php", {queryString: ""+inputString+"", id:""+id+"", tabble:""+tabble+"", idformulaire:""+idformulaire+""}, function(data){
            if(data.length >0) {
                $('#suggestions_'+id).show();
                $('#autoSuggestionsList_'+id).html(data);
            }
        });
    }
} // lookup

function lookup_cp(inputString,id) {
    if(inputString.length == 0) {
        // Hide the suggestion box.
        $('#suggestions_'+id).hide();
    } else {
        $.post("/include/code_postal.php", {queryString: ""+inputString+"", id:""+id+""}, function(data){
            if(data.length >0) {
                $('#suggestions_'+id).show();
                $('#autoSuggestionsList_'+id).html(data);
            }
        });
    }
} // lookup_cp

function fill(thisValue,id) {
   	$('#'+id).val(thisValue);
   	$('#suggestions_'+id).hide();
}


//-->
