//***Cross browser attach event function. For 'evt' pass a string value with the leading "on" omitted
//***e.g. AttachEvent(window,'load',MyFunctionNameWithoutParenthesis,false);
 function AttachEvent(obj,evt,fnc,useCapture){
	if (!useCapture) useCapture=false;
	if (obj.addEventListener) {
		obj.addEventListener(evt,fnc,useCapture);
		return true;
	} else if (obj.attachEvent) return obj.attachEvent("on"+evt,fnc);
	else {
		MyAttachEvent(obj,evt,fnc);
		obj['on'+evt]=function(){ MyFireEvent(obj,evt) };
	}
}
 
//The following are for browsers like NS4 or IE5Mac which don't support either
//attachEvent or addEventListener
function MyAttachEvent(obj,evt,fnc) {
    if (!obj.myEvents) obj.myEvents={};
    if (!obj.myEvents[evt]) obj.myEvents[evt]=[];
    var evts = obj.myEvents[evt];
    evts[evts.length]=fnc;
	}

function MyFireEvent(obj,evt) {
	if (!obj || !obj.myEvents || !obj.myEvents[evt]) return;
	var evts = obj.myEvents[evt];
	for (var i=0,len=evts.length;i<len;i++) evts[i]();
	}

// ------[ Event Registration ]------------------------------------------------- //
// AttachEvent(window,'load',initPanel,false);

//<!-- 
var PageLoad = false;
var isgecko = (document.getElementById && !document.all) ? 1 : 0;
var ismac = (navigator.appVersion.indexOf("Mac") != -1);
var isie = (document.all) ? 1 : 0;
var isns4 = (document.layers) ? 1 : 0;
var isSafari = (navigator.userAgent.toLowerCase().indexOf("safari") != -1);

// ------[ ... ]------------------------------------------------- //

// Exemple Body Event Onload Registration:
AttachEvent(window,'load',init,false);
function init() {
	//alert('page loaded');
	}

// ------[ !!! Roll Over pour NavTop (Obsolete Methode, should be upgrade in Web Standards XHTML/CSS soon...) ]------------------------------------------------- //	
function swap(id,isOn,lang) {
	swap(id,isOn);
}
function swap(id,isOn) {
	if (isOn == "on") return;
	state = (document["n" + id].src.indexOf("_on") == -1) ? "_on" : "_off" ;
	document["n" + id].src = (document["n" + id].src.indexOf("_on") == -1) ?
			document["n" + id].src.replace("_off","_on") :
			document["n" + id].src.replace("_on","_off");
}

// Compile les valeurs MOIS+ANNÉE du formulaire de la section "Télévison / Déjà Client" 
function setDateTelevision() {
	document.forms.reminder.FIN_TELEVISION.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}	
// Compile les valeurs MOIS+ANNÉE du formulaire de la section " Internet / Deja Client"
function setDateInternet() {
	document.forms.reminder.FIN_INTERNETPARTICULIER.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}		
// Compile les valeurs MOIS+ANNÉE du formulaire de la section "Sans-fil(Résidentiel) / Deja Client"
function setDateSansfil() {
	document.forms.reminder.FIN_CELL.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}			
// Compile les valeurs MOIS+ANNÉE du formulaire de la section "Affaires / Télévison / Déjà Client" 
function setDateAffairesTelevision() {
	document.forms.reminder.FIN_TELEVISION_AFFAIRE.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}		
// Compile les valeurs MOIS+ANNÉE du formulaire de la section "Affaires / Téléphonie / Deja Client"
function setDateAffairesTelephonie() {
	document.forms.reminder.FIN_TELEPHONIEAFFAIRE.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}
// Compile les valeurs MOIS+ANNÉE du formulaire de la section "Affaires / Internet / Deja Client"
function setDateAffairesInternet() {
	document.forms.reminder.FIN_INTERNET_AFFAIRE.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}	
/*function setDate() {
	document.forms.reminder.FIN_INTERNET_AFFAIRE.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}	*/	
function setDate() {
	document.forms.reminder.FIN_INTERNETPARTICULIER.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}		
// Compile les valeurs MOIS+ANNÉE du formulaire de la section "Affaires / Sans-fil / Deja Client"
function setDateAffairesSansfil() {
	document.forms.reminder.FIN_SANSFIL_AFFAIRE.value = document.forms.reminder.Fin_month.value + "/" + document.forms.reminder.Fin_year.value ;
	}	

	
// ------[ Changement de langue nouvelle version ]------------------------------------------------- //
function switchLangue(module, langid, lastid, strutsPage, authentifie) {
	var template = document.location.href;
	var	lastParam = ( lastid == "/fr/" ) ? "lang=FRENCH" : "lang=ENGLISH";
	var	langParam = ( langid == "/fr/" ) ? "lang=FRENCH" : "lang=ENGLISH";
	var secur = (template.indexOf("/secur/") != -1) ? "/secur" : "";

	// Exception with strutsPage Action (scope = session)
	if(strutsPage != null && strutsPage != "" && strutsPage.indexOf(".do") == -1 && template.indexOf(".do") != -1) {
		template = "/" + module + secur + "/Forward.do?to=" + strutsPage + "&" + langParam;
	}
	else {
		// si action mais pas Forward.do et pas strutsPage, donc Action (scope = request)
		if (template.indexOf(".do") != -1 && template.indexOf("/Forward.do") == -1) {
			// rediriger vers le bon jsp
			if(template.indexOf("ShortcutLogin.do") != -1) {
				if ( authentifie == "N") {
					template = "/" + module + "/Forward.do?to=" + langid + "votre_compte/index.jsp" + "&" + langParam;
				} else  {
					template = "/" + module + "/secur/Forward.do?to=/secur" + langid + "votre_compte/LoginOk.jsp" + "&" + langParam;
				}
			}
			// autre request action without param lang, add it
			else if (template.indexOf(lastParam) == -1) {
			   template += ((template.indexOf("?") == -1)? "?" : "&") + lastParam;
			}
		}
	}
	
	// changer le parametre indicant la langue
	template = template.replace(lastParam,langParam);
	// changer le repertoire indicant la langue
	template = template.replace(lastid,langid);
	
	document.location.href = template;
	return;
}


	
// ------[ Set the Page Height to the Right Collomn ]------------------------------------------------- //	
function SideBarHeight() {
	divSB = document.getElementById("promoCollumn");
	if(divSB != null) {
		var hc = document.getElementById("ongletContent").offsetHeight;
		if(hc != null) {
			var hs = divSB.offsetHeight;
			if(hc - hs < 0) document.getElementById("ongletContent").style.height = hs+"px";
			else document.getElementById("ongletContent").style.height = "auto";
			}
		}
	}
AttachEvent(window,'load',SideBarHeight,false);	

// ------[ Arrow link for IE /* bug in CSS for the inline background. */ ]------------------------------------------------- //
function initArrowLink() {
	var a = document.getElementsByTagName('a');	
	for (var i = 0; i < a.length; i++) {
		// Allow for multiple class names
		if(a[i].className.indexOf("arrow") != -1) {
			var span = createElement('span');
			a[i].appendChild(span);
			a[i].className = a[i].className.replace("arrow", "arrowIE");
			}
		}
	}
if(isie) AttachEvent(window,'load',initArrowLink,false);	

// ------[ Legal note Display/Hide */ ]------------------------------------------------- //
function initLegalNote() {
	var legal = document.getElementsByTagName('div');	
	for (var j = 0; j < legal.length; j++) {
		if(legal[j].className == "legal") {
			var href = legal[j].getElementsByTagName('a');	
			var notes = legal[j].getElementsByTagName('div');	
			if(href.length && notes.length) {	
				href[0].notes = notes[0];
				href[0].onclick = function() {
					state = (this.notes.style.display == "block") ? "none" : "block";
					this.notes.style.display = state;
					};
				}
			}
		}
	}
AttachEvent(window,'load',initLegalNote,false);	

// ------[ Dynamic Anchor Menu, 2 col. ]------------------------------------------------- //
function initAnchorMenu() {
	var menu = document.getElementById("fx-anchormenu");
	if(menu) {	
		var li = menu.getElementsByTagName("li");
	
		var ulNewOrder = document.createElement('ul');
		var l = Math.ceil(li.length/2);
	
		for(x=0; x<l; x++) {
			var _li = li[x].cloneNode(true);
			ulNewOrder.appendChild(_li);
			
			var y = x+l;
			if(y < li.length) {
				var _li = li[y].cloneNode(true);
				ulNewOrder.appendChild(_li);
				}
			}
		menu.innerHTML = ulNewOrder.innerHTML;
		
		for(x=0; x<li.length; x++) {
			if(x%2) li[x].className = 'r';
			else  li[x].className = 'l';
			}
		}
	}

if(document.getElementById && document.createTextNode) {
	AttachEvent(window,'load',initAnchorMenu,false);
	}		

// ------[ Dynamic Anchor Menu, 4 col. ]------------------------------------------------- //

function initAnchorMenu4Col() {

	var menu = document.getElementById("fx-anchormenu4Col");

	if(menu) {	
		var li = menu.getElementsByTagName("li");	
		
		var ul0 = document.createElement('ul');
			ul0.className = "ul0 " + menu.className;
		var ul1 = document.createElement('ul');
			ul1.className = "ul1 " + menu.className;
		var ul2 = document.createElement('ul');
			ul2.className = "ul2 " + menu.className;
		var ul3 = document.createElement('ul');
			ul3.className = "ul3 " + menu.className;
				
		var ul0 = menu.parentNode.insertBefore(ul0, menu);
		var ul1 = menu.parentNode.insertBefore(ul1, menu);
		var ul2 = menu.parentNode.insertBefore(ul2, menu);
		var ul3 = menu.parentNode.insertBefore(ul3, menu);		
		
		for(x=0; x<li.length; x++) {								
			var ul = eval("ul" + x%4);					
			var _li = li[x].cloneNode(true);
			ul.appendChild(_li);
			}
			
		menu.parentNode.removeChild(menu);
		
		}
		
	}

if(document.getElementById && document.createTextNode) {
	AttachEvent(window,'load',initAnchorMenu4Col,false);
	}		

// ------[ Create Xhtml Element ]------------------------------------------------- //
function createElement(element) {
	if (typeof document.createElementNS != 'undefined') {
		return document.createElementNS('http://www.w3.org/1999/xhtml', element);
		}
	if (typeof document.createElement != 'undefined') {
		return document.createElement(element);
		}
	return false;
	}	
	
// ------[ Generic Popup Window ]------------------------------------------------- //
function popWin(url,w,h,scroll,tools,name,center) {
	var str = "height=" + h + ",innerHeight=" + h;
	str += ",width=" + w + ",innerWidth=" + w;
	if(!center) var center = false;
	if(!scroll) scroll = 0;
	if(!tools) tools = 0;
	if(!name) name = "pop";

	if((window.screen) && (center)) {
		var ah = screen.availHeight - 30;
		var aw = screen.availWidth - 10;

		var xc = (aw - w) / 2;
		var yc = (ah - h) / 2;

		str += ",left=" + xc + ",screenX=" + xc;
		str += ",top=" + yc + ",screenY=" + yc;
		}
		
		window.open(url,name,'toolbar=' + tools + ',location=0,directories=0,status=0,menubar=0,scrollbars=' + scroll + ',resizable=1,' + str).focus();
	}

 /* OBSOLETE TO DELETE WHEN THE TOPNAV WILL BE UPDATED TO XTHML */
 function pop(url,winname,w,h,sc){
	// Nous nommons la fenetre courrante pour pouvoir la rediriger
	//     pour rediriger l'opener vers un nouveau url faire comme suit:
	//     <a href="http://www.voiphouse.co.uk" target="opener" onClick="closeWindow()">Videotron</a>
	self.name = "opener"; // names current window as "opener"
	if (sc==1){w+=16}
	var winleft = (screen.width - w) / 2;
	var wintop = (screen.height - h) / 2;
	
	if(url.indexOf("&") != -1){url = url + "&popup=true";}
	else {url = url + "?popup=true";}	
	
	pfWin = window.open(url, winname, 'width='+w+',height='+h+',left='+winleft+',top='+wintop+',screenX=0,screenY=0,directories=0,resizable=1,location=0,menubar=0,scrollbars='+sc+',status=0,toolbar=0');
	pfWin.focus();
}
	
// ------[ Cookie Handle ]------------------------------------------------- //
var now = new Date();
var expires = now.getTime() + 365 * 24 * 60 * 60 * 1000;
var expires = new Date(expires)
function WriteCookie(name, value) {
	document.cookie = name + "=" + escape(value) + "; expires=" + expires.toGMTString();
	}

function WriteCookieExp(name, value, Exp) {
	var expires = now.getTime() + Exp;
	var expires = new Date(expires)	
	document.cookie = name + "=" + escape(value) + "; expires=" + expires.toGMTString();
	}	

function ReadCookie(Name) {   
	var search = Name + "="   
	if (document.cookie.length > 0) { 					// if there are any cookies      
		offset = document.cookie.indexOf(search)       
		if (offset != -1) { 							// if cookie exists          
			offset += search.length  					// set index of beginning of value         
			end = document.cookie.indexOf(";", offset)	// set index of end of cookie value         
			if (end == -1) end = document.cookie.length         
			return unescape(document.cookie.substring(offset, end))      
			}    
		}
	}	

function WriteCookieFullPath(name, value) {
	document.cookie = name + "=" + escape(value) + "; expires=" + expires.toGMTString() + "; path=/";
}

//-->