var conciergerie = {
	
	_base16: "0A12B34C56D78E9F",
	_baseClassName:"concierge",

	encode: function (str)
	{
		var retour="";
		for(var i=0;i<str.length;i++)
		{
			var cc=str.charCodeAt(i);
			var ch=cc>>4;
			var cl=cc-(ch*16);
			retour+=this._base16[ch]+this._base16[cl];
		}
		return this._baseClassName+retour;
	},

	decode: function (str)
	{
		var retour="";
		for(var i=0;i<str.length;i+=2)
		{
			var ch=this._base16.indexOf(str.charAt(i));
			var cl=this._base16.indexOf(str.charAt(i+1));
			retour+=String.fromCharCode((ch*16)+cl);
		}
		return retour;
	},
	
	init: function ()
	{
		var tagsA=document.getElementsByTagName("span");
		for(var i=0;i<tagsA.length;i++)
		{
			if (tagsA[i].className.substring(0,this._baseClassName.length)==this._baseClassName)
			{
				var url=this.decode(tagsA[i].className.substring(9));
				//-- If the "concierge" span does not have "invalid" html e.g. a <br/> or <strong> within, create a normal anchor tag --//
				if (tagsA[i].innerHTML.indexOf("<")<=0)
				{
				    var nlink=document.createElement("a");
				    nlink.href=url;	
				    for(var j=0;j<tagsA[i].childNodes.length;j++)
				    {
					    nlink.appendChild(tagsA[i].childNodes[j]);					    
				    }    				
				    tagsA[i].appendChild(nlink);
				}
				else //-- otherwise, create a new div and make it a "link" by setting its "onclick" attribute --//
				{
				    var ndiv=document.createElement("div");
				    // ndiv.setAttribute("onclick","window.location='"+url+"'");
				    
				    ndiv.onclick = Function("window.location='"+url+"';");
				 
				    ndiv.style.cursor="pointer";
				    ndiv.className=this._baseClassName+"-div";
				    ndiv
				    var html = tagsA[i].innerHTML;
    				
				    tagsA[i].innerHTML="";
				    ndiv.innerHTML = html;				    
				    tagsA[i].appendChild(ndiv);
				}
			}
		}
	}	
}

$(document).ready( function () {conciergerie.init();} );