function getObjById(sObjId,win)
{var obj=false;if(!win||win==null)win=window;if(document.getElementById){return win.document.getElementById(sObjId);}else if(document.all){return win.document.all[sObjId];}else if(document.layers){obj=win.document.layers[sObjId];obj.style=win.document.layers[sObjId];}
return obj;}
function getEventObj(evt){evt=(evt)?evt:((window.event)?window.event:"");var newevt=new Object;newevt.type=evt.type;if(evt.target){if(evt.currentTarget&&evt.nodeType!=3){newevt.target=evt.currentTarget;}else{newevt.target=evt.target;}}else{if(evt.srcElement){newevt.target=evt.srcElement;}else{newevt.target='undefined';}}
if(evt.pageX){newevt.pageX=evt.pageX;newevt.pageY=evt.pageY;}else{if(evt.clientX){newevt.pageX=evt.clientX+document.body.scrollLeft;newevt.pageY=evt.clientY+document.body.scrollTop;}else{newevt.pageX=0;newevt.pageY=0;}}
if(!newevt.button){if(evt.which){newevt.button=evt.which;}else{newevt.button="undefined";}}
if(!newevt.keyCode){if(evt.which){newevt.keyCode=evt.which;}else{newevt.keyCode="undefined";}}
return newevt;}
function getWindowSize()
{var size=new Array;if(typeof(window.innerWidth)=='number'){size.x=window.innerWidth;size.y=window.innerHeight;}else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){size.x=document.documentElement.clientWidth;size.y=document.documentElement.clientHeight;}else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){size.x=document.body.clientWidth;size.y=document.body.clientHeight;}
return size;}
function getScrollOffset()
{var offset=new Array;if(self.pageYOffset)
{offset.x=self.pageXOffset;offset.y=self.pageYOffset;}
else if(document.documentElement&&document.documentElement.scrollTop)
{offset.x=document.documentElement.scrollLeft;offset.y=document.documentElement.scrollTop;}
else if(document.body)
{offset.x=document.body.scrollLeft;offset.y=document.body.scrollTop;}
return offset;}
function getMousePosition(event)
{if(!event)event=window.event;var cursorPosition={x:0,y:0};if(event.pageX){cursorPosition.x=event.pageX;cursorPosition.y=event.pageY;}else if(event.clientX){var scrollOffset=getScrollOffset();cursorPosition.x=event.clientX+scrollOffset.x;cursorPosition.y=event.clientY+scrollOffset.y;}
return cursorPosition;}
function getBestDisplayPos(ref,blockSize,zoneSize,margin)
{var bestPos=[0,0];var depassement=0;bestPos[0]=getBestPos(ref[0],blockSize[0],zoneSize[0],margin[0]);bestPos[1]=getBestPos(ref[1],blockSize[1],zoneSize[1],margin[1]);return bestPos;}
function getBestPos(pos,size,range,margin){var best=0;if(pos>(range/2)){if(pos-size-margin>0){best=pos-size-margin;}else{best=margin;}}else{if((pos+size+margin)<=range){best=pos+margin;}else{best=range-margin-size;}}
if(best<0){best=margin;}
return best;}
function addListenner(obj,sEventType,func,bubbling)
{var sOnEventType="on"+sEventType;var newFunc=function(evt){evt=getEventObj(evt);if(window.event)window.event.cancelBubble=!bubbling;return func(evt);};if(sEventType=="mousemove"&&document.captureEvents&&Event){document.captureEvents(Event.MOUSEMOVE);}else if(sEventType=="click"&&document.captureEvents&&Event){document.captureEvents(Event.MOUSEMOVE);}else if(sEventType=="mouseup"&&document.captureEvents&&Event){document.captureEvents(Event.MOUSEUP);}else if(sEventType=="mousedown"&&document.captureEvents&&Event){document.captureEvents(Event.MOUSEDOWN);}
if(document.addEventListener){obj.addEventListener(sEventType,func,bubbling);}else if(document.attachEvent){obj.attachEvent(sOnEventType,newFunc);}else{var oldEvent=obj[sOnEventType];if(typeof obj[sOnEventType]!="function"){obj[sOnEventType]=newFunc;}else{obj[sOnEventType]=function(evt){var test=oldEvent(evt);return newFunc(evt)&&test;};}}
return true;}
function buildQueryVars(vars_array)
{var var_list=[];buildUrlValue=function(path,vars_array)
{for(var i in vars_array){if(typeof vars_array[i]=='array'||typeof vars_array[i]=='object'){buildUrlValue(path+'['+encodeURI(i)+']',vars_array[i]);}else{var_list.push(path+'['+encodeURI(i)+']='+encodeURI(vars_array[i]));}}};for(var i in vars_array)
{if(typeof vars_array[i]=='array'||typeof vars_array[i]=='object'){buildUrlValue(i,vars_array[i]);}else{var_list.push(encodeURI(i)+'='+encodeURI(vars_array[i]));}}
return var_list.join('&');}
var DBG;function DBG_msg(msg,type)
{if(DBG!=null&&DBG.dbgMsg){DBG.dbgMsg(msg,type);}
return true;}
function addClass()
{if(arguments.length>=2){var obj=arguments[0];if(!obj)return false;if(!obj.className)obj.className='';for(var i=1;i<arguments.length;i++){if(obj.className.indexOf(arguments[i])==-1){obj.className+=(obj.className?' ':'')+arguments[i];}}
if(obj.className){obj.className=trim(obj.className);}}}
function removeClass()
{if(arguments.length>=2){obj=arguments[0];if(!obj)return false;for(var i=1;i<arguments.length;i++){if(obj.className){obj.className=obj.className.replace(arguments[i],'');}}
if(obj.className){obj.className=trim(obj.className);}}}
function createRandomName()
{var str='';var letters=range('a','z');letters=letters.concat(range('0','9'));for(var i=0;i<7;i++){str+=letters[getRandomInt(0,34)];}
return str;}
function getRandomInt(min,max){return Math.round(Math.random()*(max-min+1)+min);}
function range(start,end)
{var tab=[];for(var chr=start.charCodeAt(0);chr<=end.charCodeAt(0);chr++){tab.push(String.fromCharCode(chr));}
return tab;}
function printDoc(targetId)
{styles=document.getElementsByTagName('link');var stylesheet=[];for(var i=0;i<styles.length;i++){if(styles[i].rel&&styles[i].rel=='stylesheet'){stylesheet.push(styles[i].href);}}
var console=window.open('','name','height=500,width=700,resizable=yes,scrollbars=yes,menubar=yes');console.document.write(getPrintWindow(stylesheet,targetId));console.document.close();return this;}
function getPrintWindow(stylesheet,targetId)
{var targetnode=document.getElementById(targetId);var popupContent='';popupContent+='<html>\r\n';popupContent+='    <head>\r\n';popupContent+='        <title>Impression de votre document</title>\r\n';for(var i=0;i<stylesheet.length;i++){popupContent+='        <link rel="stylesheet" type="text/css" href="'+stylesheet[i]+'">\r\n';}
popupContent+='    </head>\r\n';popupContent+='    <body style="background : #ffffff;">\r\n';popupContent+='        <div id="print-zone">\r\n';popupContent+='        	<'+targetnode.nodeName+' id="'+targetId+'"';if(targetnode.className){popupContent+=' class="'+targetnode.className+'"';}
popupContent+=' >\r\n';popupContent+=targetnode.innerHTML;popupContent+='        	</'+targetnode.nodeName+'>\r\n';popupContent+='        </div>\r\n';popupContent+='    <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">\r\n';popupContent+='    <!--\r\n';popupContent+='    window.print();\r\n';popupContent+='    window.close();\r\n';popupContent+='    // -->\r\n';popupContent+='    </SCRIPT>\r\n';popupContent+='    </body>\r\n';popupContent+='</html>\r\n';return popupContent;}
function LTrim(value){var re=/\s*((\S+\s*)*)/;return value.replace(re,"$1");}
function RTrim(value){var re=/((\s*\S+)*)\s*/;return value.replace(re,"$1");}
function trim(value){return LTrim(RTrim(value));}
function readForm(form){var aQueryData={};var inputList=form.getElementsByTagName('input');for(var k=0;k<inputList.length;k++){if(inputList[k].type=='checkbox'){aQueryData[inputList[k].name]=0;if(inputList[k].checked){aQueryData[inputList[k].name]=inputList[k].value;}}else if(inputList[k].type=='radio'){if(!aQueryData[inputList[k].name]){aQueryData[inputList[k].name]='';}
if(inputList[k].checked){aQueryData[inputList[k].name]=inputList[k].value;}}else{aQueryData[inputList[k].name]=inputList[k].value;}}
var selectList=form.getElementsByTagName('select');for(var k=0;k<selectList.length;k++){if(typeof selectList[k].selectedIndex=='number'&&typeof selectList[k].name=='string'){aQueryData[selectList[k].name]=selectList[k].options[selectList[k].selectedIndex].value;}}
var selectList=form.getElementsByTagName('textarea');for(var k=0;k<selectList.length;k++){if(typeof selectList[k].innerHTML=='string'&&typeof selectList[k].name=='string'){aQueryData[selectList[k].name]=selectList[k].value;}}
return aQueryData;}
function setForm(postvalues)
{for(var key in postvalues){var inputValue=postvalues[key];var input=document.getElementById(key);if(input){if(input.type=='checkbox'){if(parseInt(inputValue)==1){input.checked=true;}else{input.checked=false;}}else if(input.type=='radio'){if(input.value==inputValue){input.checked=true;}else{input.checked=false;}
var a=1;input=document.getElementById(key+'-'+a);while(input){if(input.value==inputValue){input.checked=true;}else{input.checked=false;}
a++;input=document.getElementById(key+'-'+a);}}else if(input.nodeName=='SELECT'){for(var a=0;a<input.options.length;a++){if(input.options[a].value==parseInt(inputValue)||input.options[a].value==inputValue){input.options[a].selected='selected';}else{input.options[a].selected=null;}}}else{input.value=inputValue;}}}}
function getEventTarget(e)
{var targ;if(!e)var e=window.event;if(e.target)targ=e.target;else if(e.srcElement)targ=e.srcElement;if(targ.nodeType==3)
targ=targ.parentNode;return targ;}
function createLightBoxHtml(bgId,lightBoxId,options)
{var bg=document.createElement('div');bg.id=bgId;bg.style.position='absolute';bg.style.top=0;bg.style.left=0;bg.style.width='100%';bg.style.height='1000px';bg.style.background='#000';bg.style.padding=0;bg.style.margin=0;bg.style.zIndex=900;bg.style.filter='alpha(opacity=80)';bg.style.opacity=.8;var lightBox=document.createElement('div');lightBox.id=lightBoxId;lightBox.style.position='absolute';lightBox.style.overflow='visible';lightBox.style.float='left';lightBox.style.top='50%';lightBox.style.left='50%';if(options.width){lightBox.style.width=options.width;}
if(options.height){lightBox.style.height=options.height;}
lightBox.style.background='#fff';lightBox.style.padding='10px';lightBox.style.margin=0;lightBox.style.zIndex=900;lightBox.style.textAlign='center';lightBox.className='spg_lightBox';if(options.content){lightBox.appendChild(options.content);}
var closeFn=function(){var bg=document.getElementById(bgId);bg.parentNode.removeChild(bg);bg=document.getElementById(lightBoxId);bg.parentNode.removeChild(bg);return false;};if(!options.closeId){var lightBoxClose=document.createElement('a');lightBoxClose.href='#';lightBoxClose.onclick=closeFn;lightBoxClose.style.color='#fff';lightBoxClose.style.fontSize='12px';lightBoxClose.style.display='block';lightBoxClose.style.float='left';lightBoxClose.style.position='absolute';lightBoxClose.style.top='-30px';lightBoxClose.style.right='0';lightBoxClose.style.zIndex='30';lightBoxClose.style.width='auto';lightBoxClose.style.margin=' 0 0 0 0';lightBoxClose.className='fermerLightBox';var closeText='Fermer';if(options.closeText){closeText=options.closeText;}
var textNode=document.createTextNode(closeText);lightBoxClose.appendChild(textNode);lightBox.appendChild(lightBoxClose);}
var body=document.getElementsByTagName('body');if(body[0]){body[0].appendChild(bg);body[0].appendChild(lightBox);}
if(options.closeId){var lightBoxClose=document.getElementById(options.closeId);if(lightBoxClose){lightBoxClose.onclick=closeFn;}}
return{bg:bg,box:lightBox};}
function adaptLightboxPosAndSize(lightBox)
{var whole=document.getElementById('page');if(!whole){return false;}
if(lightBox.bg&&whole.clientHeight){lightBox.bg.style.height=whole.clientHeight+'px';}
if(lightBox.box){var x=0,y=0;var scrolloffset=getScrollOffset();var win=getWindowSize();x=(win.x-lightBox.box.clientWidth)/2;if(win.y>(y+lightBox.box.clientHeight)){y+=(win.y-lightBox.box.clientHeight)/2;}
if(scrolloffset.y){y+=scrolloffset.y;}
lightBox.box.style.top=y+'px';lightBox.box.style.left=x+'px';}
return true;}
function parseLatLng(latLng)
{var lat=47.2494070;var lng=2.5488281;var zoom;if(!latLng||latLng.indexOf(',')<0){return{lat:lat,lng:lng};}
var coor=latLng.split(',');if(parseFloat(coor[0])){coor[0]=parseFloat(coor[0]);}
if(parseFloat(coor[1])){coor[1]=parseFloat(coor[1]);}
if(coor[2]&&parseFloat(coor[2])){coor[2]=parseFloat(coor[2]);}
if(typeof(coor[0])=='number'&&typeof(coor[1])=='number'){lat=coor[0];lng=coor[1];if(coor[2]){zoom=coor[2];}}
var latLng={lat:lat,lng:lng};if(zoom){latLng.zoom=zoom;}
return latLng;}
