// JavaScript Document
function MM_displayStatusMsg(msgStr) { //v1.0
  status=msgStr;
  document.MM_returnValue = true;
}

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_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 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_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_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function AfficherSousMenu(id) {
	var d = document.getElementById('smenu'+id);var r = document.getElementById('row'+id);var mt = document.getElementById('mainTable');
	for (var i = 1; i<=10; i++) {if (document.getElementById('smenu'+i)) { document.getElementById('smenu'+i).style.display='none'; }}
	if (d) {d.style.top=r.offsetTop+278;d.style.left=mt.offsetLeft+r.clientWidth-50;d.style.display='block';}
}
function AfficherSousMenuHaut(id) {
	var d = document.getElementById('smenu_haut'+id);var r = document.getElementById('rowHaut'+id);var mt = document.getElementById('mainTable');
	for (var i = 1; i<=10; i++) {if (document.getElementById('smenu_haut'+i)) { document.getElementById('smenu_haut'+i).style.display='none'; }}
	if (d) {d.style.top=58; d.style.left=mt.offsetLeft+r.offsetLeft+r.clientWidth+162; d.style.display='block';}
}

function Goto(destination) { window.location.href = destination; }

function PeuplerProvinces(pays, province, paysAutre, provinceAutre, strProvince) {
	var nbProvinces = province.length;
	var i;
	for (i=0;i<nbProvinces;i++) { province[0]=null;	}
	
	paysAutre.style.display='none';
	provinceAutre.style.display='none';
	
	if (pays[pays.selectedIndex].value == 'Canada') {
		province.options[0] = new Option('(AB) Alberta', 'Alberta');
		province.options[1] = new Option('(BC) Colombie-Britannique', 'Colombie-Britannique');
		province.options[2] = new Option('(PE) Île-du-Prince-Édouard', 'Île-du-Prince-Édouard'); 
		province.options[3] = new Option('(MB) Manitoba', 'Manitoba'); 
		province.options[4] = new Option('(NB) Nouveau-Brunswick', 'Nouveau-Brunswick'); 
		province.options[5] = new Option('(NS) Nouvelle-Écosse', 'Nouvelle-Écosse'); 
		province.options[6] = new Option('(ON) Ontario', 'Ontario'); 
		province.options[7] = new Option('(QC) Québec', 'Québec'); 
		province.options[8] = new Option('(SK) Saskatchewan', 'Saskatchewan'); 
		province.options[9] = new Option('(NF) Terre-Neuve', 'Terre-Neuve'); 
		province.options[10] = new Option('(NT) Territoires du Nord-Ouest', 'Territoires du Nord-Ouest'); 
		province.options[11] = new Option('(YT) Yukon', 'Yukon'); 
		if (strProvince == '') { province.options[7].selected = true; }
		else {
			nbProvinces = province.length;
			for (i = 0; i < nbProvinces; i++) {	if (strProvince == province.options[i].value) { province.options[i].selected = true; i=nbProvinces; } }
		}
	} else if (pays[pays.selectedIndex].value == 'États-Unis') {
		province.options[0] = new Option('(AK) Alaska', 'Alaska'); 
		province.options[1] = new Option('(AZ) Arizona', 'Arizona'); 
		province.options[2] = new Option('(AR) Arkansas', 'Arkansas'); 
		province.options[3] = new Option('(CA) Californie', 'Californie'); 
		province.options[4] = new Option('(NC) Caroline du Nord', 'Caroline du Nord'); 
		province.options[5] = new Option('(SC) Caroline du Sud', 'Caroline du Sud'); 
		province.options[6] = new Option('(CO) Colorado', 'Colorado'); 
		province.options[7] = new Option('(CT) Connecticut', 'Connecticut'); 
		province.options[8] = new Option('(ND) Dakota du Nord', 'Dakota du Nord'); 
		province.options[9] = new Option('(SD) Dakota du Sud', 'Dakota du Sud'); 
		province.options[10] = new Option('(DE) Delaware', 'Delaware'); 
		province.options[11] = new Option('(DC) District de Columbia', 'District de Columbia'); 
		province.options[12] = new Option('(FL) Floride', 'Floride'); 
		province.options[13] = new Option('(GA) Géorgie', 'Géorgie'); 
		province.options[14] = new Option('(HI) Hawaii', 'Hawaii'); 
		province.options[15] = new Option('(ID) Idaho', 'Idaho'); 
		province.options[16] = new Option('(IL) Illinois', 'Illinois'); 
		province.options[17] = new Option('(IN) Indiana', 'Indiana'); 
		province.options[18] = new Option('(IA) Iowa', 'Iowa'); 
		province.options[19] = new Option('(KS) Kansas', 'Kansas'); 
		province.options[20] = new Option('(KY) Kentucky', 'Kentucky'); 
		province.options[21] = new Option('(LA) Louisiane', 'Louisiane'); 
		province.options[22] = new Option('(ME) Maine', 'Maine'); 
		province.options[23] = new Option('(MD) Maryland', 'Maryland'); 
		province.options[24] = new Option('(MA) Massachusetts', 'Massachusetts'); 
		province.options[25] = new Option('(MI) Michigan', 'Michigan'); 
		province.options[26] = new Option('(MN) Minnesota', 'Minnesota'); 
		province.options[27] = new Option('(MS) Mississippi', 'Mississippi'); 
		province.options[28] = new Option('(MO) Missouri', 'Missouri'); 
		province.options[29] = new Option('(MT) Montana', 'Montana'); 
		province.options[30] = new Option('(NE) Nebraska', 'Nebraska'); 
		province.options[31] = new Option('(NV) Nevada', 'Nevada'); 
		province.options[32] = new Option('(NH) New Hampshire', 'New Hampshire'); 
		province.options[33] = new Option('(NJ) New Jersey', 'New Jersey'); 
		province.options[34] = new Option('(NY) New York', 'New York'); 
		province.options[35] = new Option('(NM) Nouveau-Mexique', 'Nouveau-Mexique'); 
		province.options[36] = new Option('(OH) Ohio', 'Ohio'); 
		province.options[37] = new Option('(OK) Oklahoma', 'Oklahoma'); 
		province.options[38] = new Option('(OR) Oregon', 'Oregon'); 
		province.options[39] = new Option('(PA) Pennsylvanie', 'Pennsylvannie'); 
		province.options[40] = new Option('(RI) Rhode Island', 'Rhode Island'); 
		province.options[41] = new Option('(TN) Tennessee', 'Tennessee'); 
		province.options[42] = new Option('(TX) Texas', 'Texas'); 
		province.options[43] = new Option('(UT) Utah', 'Utah'); 
		province.options[44] = new Option('(VT) Vermont', 'Vermont'); 
		province.options[45] = new Option('(VA) Virginie', 'Virginie'); 
		province.options[46] = new Option('(WV) Virginie-Occidentale', 'Virginie-Occidentale'); 
		province.options[47] = new Option('(WA) Washington', 'Washington'); 
		province.options[48] = new Option('(WI) Wisconsin', 'Wisconsin'); 
		province.options[49] = new Option('(WY) Wyoming', 'Wyoming'); 
		if (strProvince == '') { province.options[0].selected = true; }
		else {
			nbProvinces = province.length;
			for (i = 0; i < nbProvinces; i++) {	if (strProvince == province.options[i].value) { province.options[i].selected = true; i=nbProvinces; } }
		}
	} else {
		province.options[0] = new Option('Autre', 'Autre');
		province.options[0].selected = true;
		
		// On doit afficher le textbox pour permettre de spécifier le pays
		paysAutre.style.display='block';
		provinceAutre.style.display='block';
	}
}

function checkZip(val,pays) {
	if (val.length==0) { return false; }
	if (pays == "Canada") { // CANADIEN
		val=val.toUpperCase();
		if (val.match(/^[A-Z][0-9][A-Z][0-9][A-Z][0-9]$/)) { return true; }
		if (val.match(/^[A-Z][0-9][A-Z].[0-9][A-Z][0-9]$/)) { return true; }
	}
	else if (pays == "États-Unis")  { // AMÉRICAIN ET/OU AUTRE
		if(val.length>0){
			var modele= /[0-9]{5}([- ]?[0-9]{4})?/;  ///^\d{5}|^\d{5}-\d{4}/;
			var zip=val.search(modele);
			if(zip!=-1 && (val.length==5 || val.length==9 || val.length==10)){ return true; }
		}
	}
	else { if(val.length>0){ return true; }	} // OTHER
	alert ('Code postal invalide!'); return false;
}

function CheckEmail(email){ 
    var RegExp = /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/ 
    if(RegExp.test(email)){ return true; } else { alert ('Courriel invalide!'); return false; } 
} 

function trim( str, charlist ) {
    var whitespace, l = 0;
	if (!charlist) {whitespace = ' \n\r\t\f\x0b\xa0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000';}
	else {whitespace = charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1');}
    l = str.length;
    for (var i = 0; i < l; i++) {if (whitespace.indexOf(str.charAt(i)) === -1) {str = str.substring(i); break;}}
    l = str.length;
    for (i = l - 1; i >= 0; i--) {if (whitespace.indexOf(str.charAt(i)) === -1) {str = str.substring(0, i + 1);break;}}
	return whitespace.indexOf(str.charAt(0)) === -1 ? str : '';
}

function OpenNewWin(tmpPath,tmpFichier,width,height,scrollbars,statusbar,menubar) {
	if (tmpFichier == '') { alert('Valeur incorrecte pour l\'ouverture de la page.'); }
	else {
		if (!width) { width=620 }
		if (!height) { height=515 }

		if (!scrollbars) { scrollbars='yes' }
		if (!statusbar) { statusbar='yes' }
		if (!menubar) { menubar='yes' }
		popupNouvelleFenetre = open(tmpPath+tmpFichier, 'popupNouvelleFenetre', 'scrollbars='+scrollbars+',statusbar='+statusbar+',menubar='+menubar+',' + StringGrandeur(width,height));
		popupNouvelleFenetre.focus();
	}
}

function StringGrandeur (width, height) {
	var string = 'width=' + width + ',height=' + height + ',left=' + ((screen.width - width) / 2) + ',top=' + ((screen.height - height) / 2) + ',screenX=' + ((screen.width - width) / 2) + ',screenY=' + ((screen.height - height) / 2);
	return string;
}

