var i=0;
// init contexte si non défini
if (!window.ctx) ctx = new Object;

// init onglets
if (ctx.nav) MpInitOnglets();

// evt onload
var cFunctions=new Array();

function addOnLoad(fFunction) {
	cFunctions[cFunctions.length]=fFunction;
}

function doOnLoad() {
	for (iK=0;iK<cFunctions.length;iK++) {
		cFunctions[iK]();
	}
}

// evt onblur
var cFunctionsBlur=new Array();

function addOnBlur(fFunction) {
	cFunctionsBlur[cFunctionsBlur.length]=fFunction;
}

function doOnBlur() {
	for (var iL=0;iL<cFunctionsBlur.length;iL++) {
		if (cFunctionsBlur[iL]) cFunctionsBlur[iL]();
	}
}
window.onblur=doOnBlur;

function MpLoad() {
	if (ctx.cook) MpCookSet('SES',MpSerialize(ctx.cook));
	if (ctx.nav) { var i = ctx.onglet; ctx.onglet = 0; MpSwap(i); ctx.onglet=i; }
	if (document.forms.f_bad && ctx.bad_etab) MpBadInit(document.forms.f_bad);
	if (window.MpInit) MpInit();
	if (document.images["sous_tet"]) {src=document.images["sous_tet"].src; document.images["sous_tet"].src=ctx.sousnav[i]; ctx.sousnav[i]=src;}
	doOnLoad();
}


// init onglets
function MpInitOnglets() {
	window.gtNavImg = new Array();
	for (var i=1;i<ctx.nav.length;i++) {
		gtNavImg[i] = new Image;
		gtNavImg[i].src = ctx.nav[i];
	}
}

// allume un onglet
function MpOnglet(i) {
	var j, img, src;
	if (!ctx.nav || !document.images) return;
	j = ctx.onglet; ctx.onglet=0;
	MpSwap(j); MpSwap(i);
	ctx.onglet=i;
}

// swap image onglet
function MpSwap(i) {
	var img, src;
	if (!i || !ctx.nav || !document.images || i==ctx.onglet) return;
	img = document.images["rub_"+i];
	if (img) {src=img.src; img.src=ctx.nav[i]; ctx.nav[i]=src;}
}

// conversion d'une chaîne jj/mm/ss hh:mm:ss en Date ou 30/12/1899 si chaîne vide ou invalide
function hd(str) {
	var		mask;
	var		t,d,m,y,h,mi,s;
	var		i;

	// init
	d=30;m=12;y=1899;h=mi=s=0;
	// applique les masques successifs horodate, date, heure
	mask = /\s*(\d\d?)\/(\d\d?)\/(\d{4}|\d{2})\s+(\d\d?):(\d\d?):(\d\d?)\s*$/;
	t = mask.exec(str);
	if (t) {
		if (t[3].length == 2) y=2000; else y=0;
		for (i=1; i<t.length; i++) t[i]=parseInt(t[i]);
		d = t[1]; m=t[2]; y+=t[3]; h=t[4]; mi=t[5]; s=t[6];
	}
	else {
		mask = /\s*(\d\d?)\/(\d\d?)\/(\d{4}|\d{2})\s*$/;
		t = mask.exec(str);
		if (t) {
			if (t[3].length == 2) y=2000; else y=0;
			for (i=1; i<t.length; i++) t[i]=parseInt(t[i]);
			d = t[1]; m=t[2]; y+=t[3];
			if (t[3].length == 2) y += 2000;
		}
		else {
			mask = /\s*(\d\d?):(\d\d?):(\d\d?)\s*$/;
			t = mask.exec(str);
			if (t) {
				for (i=1; i<t.length; i++) t[i]=parseInt(t[i]);
				h = t[1]; mi=t[2]; s=t[3];
			}
		}
	}
	if (h>23 || mi>59 || s>59) h=mi=s=0;
	if (d==30 && m==12 && y==1899) {
		return new Date(y,m-1,d,h,mi,s,0);
	}
	if (d<1 || d>31 || m<1 || m>12 || y<1900 || y>2100) { d=30; m=12; y=1899; }
	return new Date(y,m-1,d,h,mi,s,0);
}

// conversion d'une variable en littéral JavaScript
function MpSerialize(v) {
	var y,m,d,h,mi,s,sRet;
	var bComma = false;

	if (v == null) sRet = 'null';

	else if (typeof v == 'string') {
		sRet = v.replace(/\\/g, '\\\\');
		sRet = sRet.replace(/\t/g, '\\t');
		sRet = sRet.replace(/\r/g, '\\r');
		sRet = sRet.replace(/\n/g, '\\n');
		sRet = sRet.replace(/\'/g, '\\\'');
		sRet = "'"+sRet+"'";
	}
	else if (v.constructor == Date) {
		y=v.getFullYear(); m=v.getMonth()+1; d=v.getDate();
		h=v.getHours(); mi=v.getMinutes(); s=v.getSeconds();
		if (d!=30 || m!=12 || y!=1899) {
			d=d.toString(); m=m.toString();
			sRet=((d.length == 2)?d:'0'+d)+'/'+((m.length==2)?m:'0'+m)+'/'+y;
		}
		if (h!=0 || mi!=0 || s!=0) {
			if (sRet) sRet += ' '; else sRet = '';
			h=h.toString(); mi=mi.toString(); s=s.toString();
			sRet += ((h.length == 2)?h:'0'+h)+':'+((mi.length == 2)?mi:'0'+mi)+':'+
			 ((s.length == 2)?s:'0'+s);
		}
		if (sRet == null) sRet = "hd()";
		else sRet = "hd('" + sRet + "')";
	}
	else if (v.constructor == Array) {
		sRet = '[';
		for (var i=0; i < v.length; i++) {
			if (bComma) sRet += ',';
			bComma = true;
			sRet += MpSerialize(v[i]);
		}
		sRet += ']';
	}
	else if (typeof v == 'object') {
		sRet = '{';
		for (var prop in v) {
			if (bComma) sRet += ',';
			bComma = true;
			sRet += prop+':'+MpSerialize(v[prop]);
		}
		sRet += '}';
	}
	else sRet = v.toString();
	return sRet;
}

// fonction d'impression
function printFrame(){
	var sNS		 = (navigator.appName == "Netscape");
	var sVersNav = navigator.appVersion;
	// Navigateur Netscape
	if (sNS) {
		window.print();
	}else{
		// N° Version du Navigateur IE
		pos = sVersNav.indexOf("MSIE");
		if (pos >0) {
			numVers = sVersNav.substr((pos+5),1);
			if (numVers > 4){
				window.print();
			}else{
				var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
				document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
				WebBrowser1.ExecWB(6, 2);
				//Use a 1 vs. a 2 for a prompting dialog box
				WebBrowser1.outerHTML = "";
			}
		}else{
			alert("Pour imprimer, utiliser l'item \"Imprimer\" du menu Fichier Imprimer.")
		}
	}
}

// paramétrage ouverture d'une fenêtre
function MP_paramfen(sW,sH,sToolBar,sStatusBar,sLocation,sMenu,sScroll,sResize,sTitleBar,sDepend){
	sParam = 'width='+sW+',height='+sH+',toolbar='+sToolBar+',status='+sStatusBar+',location='+sLocation+',menubar='+sMenu+',scrollbars='+sScroll+',resizable='+sResize+',titlebar='+sTitleBar+',dependent='+sDepend;
	return sParam;
}

// impression avec ou sans le modèle d'impression
function MP_imprimer(url,tMethod) {
	if (!url) {
		url="BTH_modeleimp.aspx"+document.location.search;
		if (ctx.rh) url=url+"&rh=1"
	}
	if (!tMethod) tMethod=ctx.post;
	// Cas des Formulaire => Impression direct de la Page
	// Sinon on recharge la page pour supprimer le totem
	if (tMethod == 'POST') {
		printFrame();
	}else if (/bth_(mp_popup|modele[03]).aspx/gi.test(document.location.href)) {
		printFrame();
	}else{
		window.open(url,'Impression',MP_paramfen('600','450','no','no','no','no','yes','yes','yes','yes'));
	}
}

// envoyer à un ami
function MP_ami(url) {
	if (!url) {
		if (!ctx.url) return;
		url="BTH_modele0.aspx?np=envoyer_a_un_ami_bth&url="+escape(location.protocol+'//'+location.host+ctx.url)+"&titre="+escape(document.title);
	}
	var w=window.open(url,"envoyer_a_un_ami","directories=no,resizable=no,scrollbars=yes,toolbar=no,left=100,top=13,height=500,width=680");
	w.focus();
}

// appel satisfaction
function MP_sat(degre, url) {
	if (degre == undefined) {
		var d=(parent.frames.length)?parent.frames.totemd.document:document;
		var rb=d.forms.f_sat.degre;
		for (var i=0; i < rb.length; i++) if (rb[i].checked) break;
		if (i >= rb.length) { alert("Précisez votre choix"); return; }
		degre = rb[i].value;
	}
	if (!url) url="mp_popup.aspx?np=satisfaction_resultat&idc="+ctx.idc+"&ddc="+ctx.ddc;
	url = url + "&dg="+degre
	var w=window.open(url,"envoyer_a_un_ami","left=100,top=13,width=500,height=300,resizable=yes,scrollbars=yes");
	w.focus();
}

// ajout à la sélection
function MP_Bookmark() {
	if (!ctx.url) return;
	var url="mp_popup.aspx?np=ajout_selection&url="+escape(ctx.url)+
	 "&idc="+ctx.idc+"&titre="+escape(document.title);
	var w=window.open(url,"envoyer_a_un_ami","left=100,top=13,width=500,height=300,resizable=yes,scrollbars=yes");
	w.focus();
}

// gestion focus et blur d'un champ (bIn = 1 si focus, 0 si blur)
function MpFocus(field, sText, bIn) {
	if (bIn) {
		if (field.value == sText) field.value = '';
		field.select();
	}
	else if (!bIn && field.value == '') field.value = sText;
}

// affichage nb d'éléments de la sélection
function MpSel() {
	var n=MpCookGet("SEL");
	if (!n) n = "0";
	document.write(n);
}

// accès à la recherche
function MpRecherche(fEnvoi,s) {
	var m=fEnvoi.mot_clef.value;
	if (m == s || m.replace(/\s/g,"") == '') return false;
	return true;
}

// lecture d'un cookie
function MpCookGet(sCook) {
	var sc = document.cookie;
	var i = sc.indexOf(sCook+"=");
	if (i < 0) return null;
	i += sCook.length+1;
	j = sc.indexOf(";",i);
	if (j < 0) j = sc.length
	return unescape(sc.substring(i,j));
}

// écriture d'un cookie
function MpCookSet(sCook,sVal, dDfv) {
	var d = (dDfv) ? '; expires='+dDfv.toGMTString() : '';
	var p = location.pathname;
	var i = p.indexOf('/portail');
	if (i > 0) p = p.substr(0,i); else p='/';
	document.cookie = sCook+'='+escape(sVal)+'; path='+p+d;
}


function toggleBad() {
	var oBad=document.getElementById("oBAD");
	var oPave=document.getElementById("oPave");
	var noeud_td = oPave.parentNode;
	var clone = document.getElementById("oBAD").cloneNode(true);
	clone.style.display = "block";
	noeud_td.insertBefore(clone, oPave);
	oPave.style.display = "none";
  oBad.innerHTML = "";
}


// acces bad
var oBAD;
function MpBadVerif(f) {

	oBAD=f
	gbSubmit=false;
	
	if (f.bad_type) 
	{
		if (!f.bad_type[0].checked && !f.bad_type[1].checked) 
		{
			alert(ctx.message[3]);
			f.bad_type[0].focus();
			return false;
		}

		if (f.bad_type[0].checked)	f.action=ctx.bad_urlpart;
		if (f.bad_type[1].checked)	f.action=ctx.bad_urlpro;
	} 
	else 
	{
		f.action=ctx.bad_urlpart;
	}

	if (f.nuabbd.value == '') 
	{
		alert(ctx.message[0]);
		f.nuabbd.focus();
		return false;
	}
	if (f.nuabbd.value.length > 14) 
	{
		alert(ctx.message[1]);
		f.nuabbd.focus();
		return false;
	}

	if (f.bad_type && f.bad_type[1].checked) 
	{
		if (f.nuusager.value == '') 
		{
		alert(ctx.message[4]);
		f.nuusager.focus();
		return false;
		}
		if (f.nuusager.value.length > 6) 
		{
		alert(ctx.message[5]);
		f.nuusager.focus();
		return false;
		}
	}
	
	if (f.codconf && f.codconf.value == '') 
	{
		alert(ctx.message[2]);
		f.codconf.focus();
		return false;
	}

	
	
	var d = new Date();
	d.setYear(d.getYear()+1);
	MpCookSet('NAB',f.nuabbd.value,d);
	var nbad=MpCookGet('NBAD');
	if (isNaN(nbad)) nbad=1; else nbad++;
	MpCookSet('NBAD',nbad,d);
	var badtype = "";
	if (f.bad_type[1].checked)
		badtype="PRO"
	else
		badtype="PART"
	MpCookSet('BADTYPE',badtype,d);
	MpCookSet('RBCLIENT','oui',d);
	var rUrlTemp=/url_caisseBT/gi;
	if (rUrlTemp.test(f.action)) 
	{
		alert(ctx.message[4]);
		//reset pour Mozilla ...
		rUrlTemp.test();
		return false;
	}
	f.nuabbd.style.color="#ffffff";
	if (f.nuusager) f.nuusager.style.color="#ffffff";
	if (f.codconf) f.codconf.style.color="#ffffff";
	
	gbSubmit=true;
	return true;
}

function clearBAD() {
	if (oBAD) 
	{
		if (gbSubmit) 
		{
			oBAD.nuabbd.value="";
			oBAD.nuabbd.style.color="";
			if (oBAD.nuusager) 
			{
				oBAD.nuusager.value="";
				oBAD.nuusager.style.color="";
			}
			if (oBAD.codconf) 
			{
				oBAD.codconf.value="";
				oBAD.codconf.style.color="";
			}
		}
	}
}
addOnBlur(clearBAD);


//function pour mettre à jour le contenu du pave BAD ouvert...
function resetBAD() {
	var oPave=document.getElementById("oPave");
	if (oPave && oPave.getAttribute("ouvert")!=null) 
	{
		toggleBad();
	}
	//ie sous mac bug ... donc pave toujours ouvert
	else if (/msie[^;]+;\s*mac/gi.test(window.navigator.userAgent))
	{
		var oBad=document.getElementById("oBAD");
		oPave.innerHTML=oBad.innerHTML		
	}
}
addOnLoad(resetBAD);

//functions pour ouvrir popup en direct ...
function openPop() {
	var sLink=this.href.replace(/bth_modele[1-4]/gi,"bth_modele0");
	var oPop=window.open(sLink,'wPop','left=20,top=20,width=680,height=500,resizable=yes,scrollbars=yes')
	oPop.focus();
	return false;
}

function setPop() {
	var oLinks=document.links;
	var rPop=/bth_modele4/gi;
	for (var jj=0;jj<oLinks.length;jj++) {
			if (rPop.test(oLinks[jj].href)) {
				oLinks[jj].onclick=openPop;
				rPop.test();
			}
	}
}
addOnLoad(setPop);

// Fonction qui ajoute dans une URL un paramètre
// entre une ancre et les autres paramètres de l'URL
// afin de conserver l'ancre à la fin de l'URL
function modifPosAncre(sUrl,sChaine)
{
  if(sUrl.length > 0) {
    if(sUrl.indexOf("#") != -1) {
      tabHref = sUrl.split("#");
      sUrl = tabHref[0] + sChaine + "#" + tabHref[1];
    }
    else if(sUrl.indexOf("%23") != -1) {
      tabHref = sUrl.split("%23");
      sUrl = tabHref[0] + sChaine + "%23" + tabHref[1];
    }
  }
  return(sUrl);
}
var gbNS=(navigator.appName=="Netscape" && parseInt(navigator.appVersion)<5)?true:false;
var gbNS6=(navigator.appName=="Netscape" && parseInt(navigator.appVersion)>=5)?true:false;

/****************************************/
/***** Fonctions génériques de base *****/
/****************************************/

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_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if(obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function F_Display()
{
	var nCpt,args=F_Display.arguments,oObj;
	for(nCpt=0;nCpt<args.length-1;nCpt+=2)
	{
		oObj=MM_findObj(args[nCpt]);
		if(args[nCpt+1])
			if(gbNS6)
				oObj.style.display='table-row';
			else
				oObj.style.display='block';
		else
			oObj.style.display='none';
	}
}

function F_Resize()
{
	var nCpt,args=F_Resize.arguments,oObj;
	for(nCpt=0;nCpt<args.length-1;nCpt+=2)
	{
		oObj=MM_findObj(args[nCpt]);
		oObj.style.width=args[nCpt+1];
	}
}

function F_Bad_Type()
{
	var bCook;
	bCook=false;
	
	if (MpCookGet('BADTYPE') == "PART")
	{
			document.getElementsByName("bad_type")[0].checked=true;
			F_Display('tr_usager1',false,'tr_usager2',false,'tr_usager3',false);
			bCook = true;
	}

	if (MpCookGet('BADTYPE') == "PRO")
	{
			document.getElementsByName("bad_type")[1].checked=true;
			F_Resize('nuusager',132);
			F_Display('tr_usager1',true,'tr_usager2',true,'tr_usager3',true);
			bCook=true;
	}

	if (window.ctx && bCook)
	{
		if (window.ctx.cook.pr=='B01') 
		{
			document.getElementsByName("bad_type")[0].checked=true;
			F_Display('tr_usager1',false,'tr_usager2',false,'tr_usager3',false);
		}
		else
		{
			document.getElementsByName("bad_type")[1].checked=true;
			F_Resize('nuusager',132);
			F_Display('tr_usager1',true,'tr_usager2',true,'tr_usager3',true);
		}
	}
}
addOnLoad(F_Bad_Type);



