/* Noheto - jmc - js complémentaires */

/* GESTION DES COOKIES */
function getCookie (name)
{
	var t=document.cookie;
	var nameval;
	var u=t.indexOf(name+"=");
	if (u!=-1) {
		var v=t.indexOf(";",u);
		if (v==-1) nameval = t.substring(u); else nameval = t.substring(u,v);
		return nameval.substring (nameval.indexOf("=")+1);
	}else
		return null;
}
function setCookie (name,val)
{
	var cookie = name+'='+val;
	var expire = new Date();
	var unAn = expire.getTime() + (365*24*60*60*1000);
	if (arguments.length==3)  {
		var tt = arguments[2];
		if (tt!=null && tt!="") var unAn = expire.getTime() + eval(tt);
	}
	expire.setTime(unAn);
	cookie+="; expires="+expire.toGMTString()
	cookie+="; path=/";
	cookie+="; false";		//secure=false, to be able to read this cookie over an insecure connection
	document.cookie=cookie;
}
function deleteCookie(name) 
{
	var cookie = name+'=';
	var d= new Date();
	d.setDate (d.getDate()-1);
	var expdate = "Fri, 02-Jan-1970 00:00:00 GMT";
	cookie+="; path=/";
	cookie += "; expires="+expdate;
	document.cookie=cookie;
}

/* FONCTIONS UTILES */

/*--> position (absolue sur la page) d'un objet */
function FindXY(obj){
	   var x=0,y=0;
	   while (obj!=null){
	    x+=obj.offsetLeft-obj.scrollLeft;
	    y+=obj.offsetTop-obj.scrollTop;
	    obj=obj.offsetParent;
	    }
	   return {x:x,y:y};
}

function mouseLeaves (element, evt) 
{
	if (typeof evt.toElement != 'undefined' && typeof element.contains !=	'undefined') {
		return !element.contains(evt.toElement);
	}
	else if (typeof evt.relatedTarget != 'undefined' && evt.relatedTarget) {
		return !contains(element, evt.relatedTarget);
	}
}

function contains (container, containee) 
{
	while (containee) {
		if (container == containee) {
			return true;
		}
		containee = containee.parentNode;
		alert(containee.tagName)
	}
	return false;
}

function hasLeftObject (element,evt) 
{
	var tg = (window.event) ? evt.srcElement : evt.target;
	var tg=element;
	if (tg.nodeName != element.nodeName) return false;
	var reltg = (evt.relatedTarget) ? evt.relatedTarget : evt.toElement;
	while (reltg != tg && reltg.nodeName.toLowerCase() != 'body')
		reltg= reltg.parentNode
	if (reltg== tg) return true;	
}


/* CLASSES DIVERSES */

var toggleClass = function ()
{
	 this._elts_col=new Array();
	 this._default_display="block";
}
toggleClass._getStyle = function (oElm, strCssRule) {
		var strValue = "";
		if(document.defaultView && document.defaultView.getComputedStyle){
			strValue = document.defaultView.getComputedStyle(oElm, "").getPropertyValue(strCssRule);
		}
		else if(oElm.currentStyle){
			strCssRule = strCssRule.replace(/\-(\w)/g, function (strMatch, p1){
				return p1.toUpperCase();
			});
			strValue = oElm.currentStyle[strCssRule];
		}
		return strValue;
}
toggleClass.toggleElement = function (idElt) {
	var elt;
	if (typeof(idElt)!='string' && typeof(idElt)!='undefined')
		elt=idElt;
	else
		elt=document.getElementById(idElt);
	eltid = (elt.id ? elt.id : elt["id"]);
	if (elt!=null) {
		if (typeof(this._elts_col) == 'undefined'){
			this._elts_col=new Array();
		}
		if (typeof(this._default_display) == 'undefined'){
			this._default_display="block";
		}
		if (!this._elts_col[eltid]){
			this._elts_col[eltid]=new Array();
		}
		try {
			var curStyle = elt.style.display;
			if (curStyle==null) curStyle=this._getStyle(elt,"display");
			if (curStyle!='none') {
				this._elts_col[eltid]["display"] = curStyle;
				elt.style.display='none';
			} else {
				var toapplyStyle;
				toapplyStyle = this._elts_col[eltid]["display"]; 
				if (typeof(toapplyStyle)=='undefined') { 
					if (arguments.length==2) toapplyStyle = arguments[1]; else toapplyStyle = this._default_display;
				}
				this._elts_col[eltid]["display"] = toapplyStyle;
				elt.style.display=toapplyStyle;
			}
		} catch (err) { alert(err)}
	}
}


/*  GESTION DES ERREURS IMAGES (pas de croix rouge sous IE) */

function getReplacementImg()
{
	return document.location.pathname.substring(0,document.location.pathname.indexOf('/',1))  + "/file/sitemodel/barclays/default/img/ftv2blank.gif";
}

function getBasePath()
{
	return document.location.pathname.substring(0,document.location.pathname.indexOf('/',1)) + "/file/sitemodel/barclays/default/";
}
function noImgErrs()
{
	var v = document.images;
	for (var i=0;i<v.length;i++){
		var obj=v[i];
		var test= new Image()
		test.src = obj.src;
		if (!test.complete) obj.src = getReplacementImg();
		/* other method
		obj.onerror = function () {  this.src =  document.location.pathname.substring(0,document.location.pathname.indexOf('/',1))  + "/file/sitemodel/barclays/default/img/ftv2blank.gif"   }		
		obj.src=obj.src;
		*/
	}
	var eltstab = new Array ("div","li","a")
	for (var i=0;i< eltstab.length;i++) bgImgNoErrs(eltstab[i]);	
	inputImgNoErrs();
}

function bgImgNoErrs(eltname) 
{
	//return;
	var stylesheets = document.styleSheets;
	for(var i=0;i<stylesheets.length;i++){
		var rules = document.styleSheets[i].rules ? document.styleSheets[i].rules: document.styleSheets[i].cssRules
		for(var x=0;rules !=null && x<rules.length;x++)  {
			try {
				if (rules[x].style.backgroundImage!="" && rules[x].style.backgroundImage!="none"){
					var val = rules[x].style.backgroundImage;
					var re = /url\(([^\)]+)\)/i;
					if (re.test(val)) {
						if ((getBasePath() + RegExp.$1.replace("../","")).indexOf(".png")==-1){
							var test = new Image();
							var sSrc = getBasePath() + RegExp.$1.replace("../","");
							test.src = sSrc;
							if (!test.complete) {
								alert(test.src)
								rules[x].style.backgroundImage.src = getReplacementImg();
							}
						}
					}
				}
			} catch (anyerr) {alert(  (typeof(anyerr)=="object"?anyerr.description:anyerr)   );}
		}
	}
}

function inputImgNoErrs ()
{
	var c = document.getElementsByTagName("input")
	if (c.length>0){
		for (var j=0;j<c.length;j++){
			if (c[j].type=="image"){
				var test= new Image();
				test.src = c[j].src;
				if (!test.complete) { c[j].src=getReplacementImg(); }
			}
		}
	}
}

var userAgent=navigator.userAgent;
if (userAgent.indexOf('MSIE') != -1) {

	window.onload=function () {
		//noImgErrs();
	}
}