(function(){function $(id){return document.getElementById(id);}
function setStyleDisplay(id,status){$(id).style.display=status;}
function goTop(acceleration,time){acceleration=acceleration||0.1;time=time||16;var dx=0;var dy=0;var bx=0;var by=0;var wx=0;var wy=0;if(document.documentElement){dx=document.documentElement.scrollLeft||0;dy=document.documentElement.scrollTop||0;}
if(document.body){bx=document.body.scrollLeft||0;by=document.body.scrollTop||0;}
var wx=window.scrollX||0;var wy=window.scrollY||0;var x=Math.max(wx,Math.max(bx,dx));var y=Math.max(wy,Math.max(by,dy));var speed=1+acceleration;window.scrollTo(Math.floor(x/speed),Math.floor(y/speed));if(x>0||y>0){var invokeFunction="MGJS.goTop("+acceleration+", "+time+")"
window.setTimeout(invokeFunction,time);}}
function switchTab(showPanels,hidePanels,activeTab,activeClass,fadeTab,fadeClass){$(activeTab).className=activeClass;$(fadeTab).className=fadeClass;var panel,panelList;panelList=showPanels.split(',');for(var i=0;i<panelList.length;i++){var panel=panelList[i];if($(panel)){setStyleDisplay(panel,'block');}}
panelList=hidePanels.split(',');for(var i=0;i<panelList.length;i++){panel=panelList[i];if($(panel)){setStyleDisplay(panel,'none');}}}
window['MGJS']={};window['MGJS']['$']=$;window['MGJS']['setStyleDisplay']=setStyleDisplay;window['MGJS']['goTop']=goTop;window['MGJS']['switchTab']=switchTab;})();function switchImage(imageId,imageUrl,linkId,linkUrl,preview,title,alt){if(imageId&&imageUrl){var image=$(imageId);image.src=imageUrl;if(title){image.title=title;}
if(alt){image.alt=alt;}}
if(linkId&&linkUrl){var link=$(linkId);link.href=linkUrl;}}

function com(id){mag=open('gestion/com.php?id='+id,'mag','width=650,height=500,status=no,scrollbars=yes,menubar=no,toolbar=no,location=no');}
function recomand(id){mag=open('gestion/recomand.php?id='+id,'mag','width=500,height=500,status=no,scrollbars=no,menubar=no,toolbar=no,location=no');}
function situation(id){mag=open('gestion/situation.php?id='+id,'mag','width=700,height=530,status=no,scrollbars=YES,menubar=no,toolbar=no,location=no');}
function casser(id){mag=open('gestion/casser.php?id='+id,'mag','width=400,height=450,status=no,scrollbars=YES,menubar=no,toolbar=no,location=no');}
function suppc(n){mag=open('gestion/supp.php?cat='+n+'&t=c','mag','width=500,height=300,status=no,scrollbars=YES,menubar=no,toolbar=no,location=no');}
function validc(n){mag=open('gestion/valid.php?cat='+n+'&t=c','mag','width=500,height=300,status=no,scrollbars=no,menubar=no,toolbar=no,location=no');}
function supp_file(){mag=open('../gestion/supp_file.php','mag','width=500,height=300,status=no,scrollbars=no,menubar=no,toolbar=no,location=no');}
function supps(id){mag=open('gestion/supp.php?id='+id+'&t=s','mag','width=500,height=300,status=no,scrollbars=YES,menubar=no,toolbar=no,location=no');}
function valids(id,prov){mag=open('gestion/valid.php?id='+id+'&t=s&prov='+prov,'mag','width=500,height=300,status=no,scrollbars=no,menubar=no,toolbar=no,location=no');}
function suppcom(id,id_site,SESSID){mag=open('../gestion/supp.php?id='+id+'&id_site='+id_site+'&t=com','mag','width=500,height=300,status=no,scrollbars=YES,menubar=no,toolbar=no,location=no');}
function contact_site(id){mag=open('contacter_site.php?id='+id,'mag','width=590,height=570,status=no,scrollbars=YES,menubar=no,toolbar=no,location=no');}
function creer_vignette(id){mag=open('creer_vignette.php?id='+id,'mag2','width=580,height=610,status=no,scrollbars=YES,menubar=no,toolbar=no,location=no');}
function aller(formulaire,cat){location.href=formulaire.page.options[formulaire.page.selectedIndex].value+"?cat="+cat;}
function aff(champ){document.getElementById(champ).innerHTML="- Vu";}
function SelAll(){for(var i=0;i<document.formu.elements.length;i++){var e=document.formu.elements[i];e.checked=1;}}
function UnSelAll(){for(var i=0;i<document.formu.elements.length;i++){var e=document.formu.elements[i];e.checked=0;}}
function CheckSel(msg){for(var i=0;i<document.formu.elements.length;i++)
if(document.formu.elements[i].checked==1)return true;if(msg!="")alert(msg);return false;}
function InvSelect(){for(var i=0;i<document.formu.elements.length;i++){if(document.formu.elements[i].type=='checkbox'){document.formu.elements[i].checked=!(document.formu.elements[i].checked);}}}
function form_del(err_mess){if(CheckSel("")){centrePop("poplist",400,450);document.formu.target="poplist";document.formu.action="gestion/supp.php";}}
function form_move(err_mess){if(CheckSel("")){centrePop("poplist",400,450);document.formu.target="poplist";document.formu.action="gestion/move.php";}}
function form_valid(err_mess){if(CheckSel("")){centrePop("poplist",400,450);document.formu.target="poplist";document.formu.action="gestion/valid.php";}}
function centrePop(name,largeur,hauteur){var gauche=(screen.width-largeur)/2
var haut=(screen.height-hauteur)/2
window.open("",name,"width="+largeur
+",height="+hauteur+",left="+gauche
+",top="+haut)}
var url='http://';function ChangeInputURL(){if(document.formu.url.disabled==true){document.formu.url.disabled=false;document.formu.url.value=url;}
else{url=document.formu.url.value;document.formu.url.disabled=true;document.formu.url.value="Note Mode - Pas d'Url";}}
function clic(id){document.getElementById(id).innerHTML="- Vu";if(document.images)
(new Image()).src="gestion/out.php?go=no&url_id="+id;return true;}
function clic2(id){if(document.images)
(new Image()).src="gestion/out.php?go=no&url_id="+id;return true;}

(function(){var Class={create:function(){return function(){this.initialize.apply(this,arguments);}}}
var GhostlyMenu=Class.create();GhostlyMenu.prototype={initialize:function(target,align,opacity,offset){this.obj=cleanWhitespace(target);this.align=align||'left';this.opacity=0;this.maxopacity=opacity||1;this.offset=offset||0;this.menu2=this.obj.childNodes
if(this.menu2.length<2){return;}
this.title=this.menu2[0];this.body=this.menu2[1];cleanWhitespace(this.body).firstChild.className='first';if(/MSIE/i.test(navigator.userAgent)){var readers=getElementsByClassName('reader','a',this.body);for(var i=0;i<readers.length;i++){setStyle(readers[i],'cursor','hand');}}
setStyle(this.body,'visibility','hidden');setStyle(this.body,'position','absolute');setStyle(this.body,'overflow','hidden');setStyle(this.body,'display','block');addListener(this.obj,'mouseover',bind(this,this.activate),false);addListener(this.obj,'mouseout',bind(this,this.deactivate),false);},activate:function(){var pos=cumulativeOffset(this.title);var left=pos[0];if(this.align=='right'){var offset=getWidth(this.title)-getWidth(this.body)+this.offset;left+=offset;}
var top=pos[1]+getHeight(this.title);setStyle(this.body,'left',left+'px');setStyle(this.body,'top',top+'px');setStyle(this.body,'visibility','visible');setStyle(this.body,'opacity',this.opacity);setStyle(this.body,'MozOpacity',this.opacity);setStyle(this.body,'KhtmlOpacity',this.opacity);setStyle(this.body,'filter','alpha(opacity='+this.opacity*100+')');if(this.tid){clearTimeout(this.tid);}
this.tid=setInterval(bind(this,this.appear),30);},deactivate:function(){if(this.tid){clearTimeout(this.tid);}
this.tid=setInterval(bind(this,this.fade),30);},appear:function(){this.opacity+=0.1;if(this.opacity>=this.maxopacity){this.opacity=this.maxopacity;clearTimeout(this.tid);}
setStyle(this.body,'opacity',this.opacity);setStyle(this.body,'MozOpacity',this.opacity);setStyle(this.body,'KhtmlOpacity',this.opacity);setStyle(this.body,'filter','alpha(opacity='+this.opacity*100+')');},fade:function(){this.opacity-=0.1;if(this.opacity<=0){this.opacity=0;setStyle(this.body,'visibility','hidden');clearTimeout(this.tid);}
setStyle(this.body,'opacity',this.opacity);setStyle(this.body,'MozOpacity',this.opacity);setStyle(this.body,'KhtmlOpacity',this.opacity);setStyle(this.body,'filter','alpha(opacity='+this.opacity*100+')');}}
$=function(id){return document.getElementById(id);}
$A=function(iterable){if(!iterable){return[];}
if(iterable.toArray){return iterable.toArray();}else{var results=[];for(var i=0;i<iterable.length;i++){results.push(iterable[i]);}
return results;}}
getElementsByClassName=function(className,tag,parent){parent=parent||document;var allTags=(tag=='*'&&parent.all)?parent.all:parent.getElementsByTagName(tag);var matchingElements=new Array();className=className.replace(/\-/g,'\\-');var regex=new RegExp('(^|\\s)'+className+'(\\s|$)');var element;for(var i=0;i<allTags.length;i++){element=allTags[i];if(regex.test(element.className)){matchingElements.push(element);}}
return matchingElements;}
bind=function(){var array=this.$A(arguments);var func=array[array.length-1];var _method=func,args=array,object=args.shift();return function(){return _method.apply(object,args.concat(array));}}
getHeight=function(element){return element.offsetHeight;}
getWidth=function(element){return element.offsetWidth;}
setStyle=function(element,key,value){element.style[key]=value;}
getStyle=function(element,key){return element.style[key];}
cleanWhitespace=function(list){var node=list.firstChild;while(node){var nextNode=node.nextSibling;if(node.nodeType==3&&!/\S/.test(node.nodeValue)){list.removeChild(node);}
node=nextNode;}
return list;}
cumulativeOffset=function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;}while(element);return[valueL,valueT];}
addListener=function(element,name,observer,useCapture){if(element.addEventListener){element.addEventListener(name,observer,useCapture);}else if(element.attachEvent){element.attachEvent('on'+name,observer);}}
function loadMenus(){var subscribe=$('subscribe');if(subscribe){new GhostlyMenu(subscribe,'left',1,1);}
var menubar=$('menus');if(menubar){var list=cleanWhitespace(menubar.childNodes);for(var i=0;i<list.length;i++){new GhostlyMenu(list[i],'left',1,1);}}}
if(document.addEventListener){document.addEventListener("DOMContentLoaded",loadMenus,false);}else if(/MSIE/i.test(navigator.userAgent)){document.write('<script id="__ie_onload_for_inove" defer src="javascript:void(0)"></script>');var script=$('__ie_onload_for_inove');script.onreadystatechange=function(){if(this.readyState=='complete'){loadMenus();}}}else if(/WebKit/i.test(navigator.userAgent)){var _timer=setInterval(function(){if(/loaded|complete/.test(document.readyState)){clearInterval(_timer);loadMenus();}},10);}else{window.onload=function(e){loadMenus();}}
window['MGJS_MENU']={};})();

var LiveValidation=function(element,optionsObj){this.initialize(element,optionsObj);}
LiveValidation.VERSION='1.3 standalone';LiveValidation.TEXTAREA=1;LiveValidation.TEXT=2;LiveValidation.PASSWORD=3;LiveValidation.CHECKBOX=4;LiveValidation.SELECT=5;LiveValidation.FILE=6;LiveValidation.massValidate=function(validations){var returnValue=true;for(var i=0,len=validations.length;i<len;++i){var valid=validations[i].validate();if(returnValue)returnValue=valid;}
return returnValue;}
LiveValidation.prototype={validClass:'LV_valid',invalidClass:'LV_invalid',messageClass:'LV_validation_message',validFieldClass:'LV_valid_field',invalidFieldClass:'LV_invalid_field',initialize:function(element,optionsObj){var self=this;if(!element)throw new Error("LiveValidation::initialize - No element reference or element id has been provided!");this.element=element.nodeName?element:document.getElementById(element);if(!this.element)throw new Error("LiveValidation::initialize - No element with reference or id of '"+element+"' exists!");this.validations=[];this.elementType=this.getElementType();this.form=this.element.form;var options=optionsObj||{};this.validMessage=options.validMessage||'Ok!';var node=options.insertAfterWhatNode||this.element;this.insertAfterWhatNode=node.nodeType?node:document.getElementById(node);this.onValid=options.onValid||function(){this.insertMessage(this.createMessageSpan());this.addFieldClass();};this.onInvalid=options.onInvalid||function(){this.insertMessage(this.createMessageSpan());this.addFieldClass();};this.onlyOnBlur=options.onlyOnBlur||false;this.wait=options.wait||0;this.onlyOnSubmit=options.onlyOnSubmit||false;if(this.form){this.formObj=LiveValidationForm.getInstance(this.form);this.formObj.addField(this);}
this.oldOnFocus=this.element.onfocus||function(){};this.oldOnBlur=this.element.onblur||function(){};this.oldOnClick=this.element.onclick||function(){};this.oldOnChange=this.element.onchange||function(){};this.oldOnKeyup=this.element.onkeyup||function(){};this.element.onfocus=function(e){self.doOnFocus(e);return self.oldOnFocus.call(this,e);}
if(!this.onlyOnSubmit){switch(this.elementType){case LiveValidation.CHECKBOX:this.element.onclick=function(e){self.validate();return self.oldOnClick.call(this,e);}
case LiveValidation.SELECT:case LiveValidation.FILE:this.element.onchange=function(e){self.validate();return self.oldOnChange.call(this,e);}
break;default:if(!this.onlyOnBlur)this.element.onkeyup=function(e){self.deferValidation();return self.oldOnKeyup.call(this,e);}
this.element.onblur=function(e){self.doOnBlur(e);return self.oldOnBlur.call(this,e);}}}},destroy:function(){if(this.formObj){this.formObj.removeField(this);this.formObj.destroy();}
this.element.onfocus=this.oldOnFocus;if(!this.onlyOnSubmit){switch(this.elementType){case LiveValidation.CHECKBOX:this.element.onclick=this.oldOnClick;case LiveValidation.SELECT:case LiveValidation.FILE:this.element.onchange=this.oldOnChange;break;default:if(!this.onlyOnBlur)this.element.onkeyup=this.oldOnKeyup;this.element.onblur=this.oldOnBlur;}}
this.validations=[];this.removeMessageAndFieldClass();},add:function(validationFunction,validationParamsObj){this.validations.push({type:validationFunction,params:validationParamsObj||{}});return this;},remove:function(validationFunction,validationParamsObj){var found=false;for(var i=0,len=this.validations.length;i<len;i++){if(this.validations[i].type==validationFunction){if(this.validations[i].params==validationParamsObj){found=true;break;}}}
if(found)this.validations.splice(i,1);return this;},deferValidation:function(e){if(this.wait>=300)this.removeMessageAndFieldClass();var self=this;if(this.timeout)clearTimeout(self.timeout);this.timeout=setTimeout(function(){self.validate()},self.wait);},doOnBlur:function(e){this.focused=false;this.validate(e);},doOnFocus:function(e){this.focused=true;this.removeMessageAndFieldClass();},getElementType:function(){switch(true){case(this.element.nodeName.toUpperCase()=='TEXTAREA'):return LiveValidation.TEXTAREA;case(this.element.nodeName.toUpperCase()=='INPUT'&&this.element.type.toUpperCase()=='TEXT'):return LiveValidation.TEXT;case(this.element.nodeName.toUpperCase()=='INPUT'&&this.element.type.toUpperCase()=='PASSWORD'):return LiveValidation.PASSWORD;case(this.element.nodeName.toUpperCase()=='INPUT'&&this.element.type.toUpperCase()=='CHECKBOX'):return LiveValidation.CHECKBOX;case(this.element.nodeName.toUpperCase()=='INPUT'&&this.element.type.toUpperCase()=='FILE'):return LiveValidation.FILE;case(this.element.nodeName.toUpperCase()=='SELECT'):return LiveValidation.SELECT;case(this.element.nodeName.toUpperCase()=='INPUT'):throw new Error('LiveValidation::getElementType - Cannot use LiveValidation on an '+this.element.type+' input!');default:throw new Error('LiveValidation::getElementType - Element must be an input, select, or textarea!');}},doValidations:function(){this.validationFailed=false;for(var i=0,len=this.validations.length;i<len;++i){var validation=this.validations[i];switch(validation.type){case Validate.Presence:case Validate.Confirmation:case Validate.Acceptance:this.displayMessageWhenEmpty=true;this.validationFailed=!this.validateElement(validation.type,validation.params);break;default:this.validationFailed=!this.validateElement(validation.type,validation.params);break;}
if(this.validationFailed)return false;}
this.message=this.validMessage;return true;},validateElement:function(validationFunction,validationParamsObj){var value=(this.elementType==LiveValidation.SELECT)?this.element.options[this.element.selectedIndex].value:this.element.value;if(validationFunction==Validate.Acceptance){if(this.elementType!=LiveValidation.CHECKBOX)throw new Error('LiveValidation::validateElement - Element to validate acceptance must be a checkbox!');value=this.element.checked;}
var isValid=true;try{validationFunction(value,validationParamsObj);}catch(error){if(error instanceof Validate.Error){if(value!==''||(value===''&&this.displayMessageWhenEmpty)){this.validationFailed=true;this.message=error.message;isValid=false;}}else{throw error;}}finally{return isValid;}},validate:function(){if(!this.element.disabled){var isValid=this.doValidations();if(isValid){this.onValid();return true;}else{this.onInvalid();return false;}}else{return true;}},enable:function(){this.element.disabled=false;return this;},disable:function(){this.element.disabled=true;this.removeMessageAndFieldClass();return this;},createMessageSpan:function(){var span=document.createElement('span');var textNode=document.createTextNode(this.message);span.appendChild(textNode);return span;},insertMessage:function(elementToInsert){this.removeMessage();if((this.displayMessageWhenEmpty&&(this.elementType==LiveValidation.CHECKBOX||this.element.value==''))||this.element.value!=''){var className=this.validationFailed?this.invalidClass:this.validClass;elementToInsert.className+=' '+this.messageClass+' '+className;if(this.insertAfterWhatNode.nextSibling){this.insertAfterWhatNode.parentNode.insertBefore(elementToInsert,this.insertAfterWhatNode.nextSibling);}else{this.insertAfterWhatNode.parentNode.appendChild(elementToInsert);}}},addFieldClass:function(){this.removeFieldClass();if(!this.validationFailed){if(this.displayMessageWhenEmpty||this.element.value!=''){if(this.element.className.indexOf(this.validFieldClass)==-1)this.element.className+=' '+this.validFieldClass;}}else{if(this.element.className.indexOf(this.invalidFieldClass)==-1)this.element.className+=' '+this.invalidFieldClass;}},removeMessage:function(){var nextEl;var el=this.insertAfterWhatNode;while(el.nextSibling){if(el.nextSibling.nodeType===1){nextEl=el.nextSibling;break;}
el=el.nextSibling;}
if(nextEl&&nextEl.className.indexOf(this.messageClass)!=-1)this.insertAfterWhatNode.parentNode.removeChild(nextEl);},removeFieldClass:function(){if(this.element.className.indexOf(this.invalidFieldClass)!=-1)this.element.className=this.element.className.split(this.invalidFieldClass).join('');if(this.element.className.indexOf(this.validFieldClass)!=-1)this.element.className=this.element.className.split(this.validFieldClass).join(' ');},removeMessageAndFieldClass:function(){this.removeMessage();this.removeFieldClass();}}
var LiveValidationForm=function(element){this.initialize(element);}
LiveValidationForm.instances={};LiveValidationForm.getInstance=function(element){var rand=Math.random()*Math.random();if(!element.id)element.id='formId_'+rand.toString().replace(/\./,'')+new Date().valueOf();if(!LiveValidationForm.instances[element.id])LiveValidationForm.instances[element.id]=new LiveValidationForm(element);return LiveValidationForm.instances[element.id];}
LiveValidationForm.prototype={initialize:function(element){this.name=element.id;this.element=element;this.fields=[];this.oldOnSubmit=this.element.onsubmit||function(){};var self=this;this.element.onsubmit=function(e){return(LiveValidation.massValidate(self.fields))?self.oldOnSubmit.call(this,e||window.event)!==false:false;}},addField:function(newField){this.fields.push(newField);},removeField:function(victim){var victimless=[];for(var i=0,len=this.fields.length;i<len;i++){if(this.fields[i]!==victim)victimless.push(this.fields[i]);}
this.fields=victimless;},destroy:function(force){if(this.fields.length!=0&&!force)return false;this.element.onsubmit=this.oldOnSubmit;LiveValidationForm.instances[this.name]=null;return true;}}
var Validate={Presence:function(value,paramsObj){var paramsObj=paramsObj||{};var message=paramsObj.failureMessage||"A remplir!";if(value===''||value===null||value===undefined){Validate.fail(message);}
return true;},Numericality:function(value,paramsObj){var suppliedValue=value;var value=Number(value);var paramsObj=paramsObj||{};var minimum=((paramsObj.minimum)||(paramsObj.minimum==0))?paramsObj.minimum:null;;var maximum=((paramsObj.maximum)||(paramsObj.maximum==0))?paramsObj.maximum:null;var is=((paramsObj.is)||(paramsObj.is==0))?paramsObj.is:null;var notANumberMessage=paramsObj.notANumberMessage||"Doit être un nombre!";var notAnIntegerMessage=paramsObj.notAnIntegerMessage||"Doit être un entier!";var wrongNumberMessage=paramsObj.wrongNumberMessage||"Doit être "+is+"!";var tooLowMessage=paramsObj.tooLowMessage||"Pas inferieur à "+minimum+"!";var tooHighMessage=paramsObj.tooHighMessage||"Pas supérieur à "+maximum+"!";if(!isFinite(value))Validate.fail(notANumberMessage);if(paramsObj.onlyInteger&&(/\.0+$|\.$/.test(String(suppliedValue))||value!=parseInt(value)))Validate.fail(notAnIntegerMessage);switch(true){case(is!==null):if(value!=Number(is))Validate.fail(wrongNumberMessage);break;case(minimum!==null&&maximum!==null):Validate.Numericality(value,{tooLowMessage:tooLowMessage,minimum:minimum});Validate.Numericality(value,{tooHighMessage:tooHighMessage,maximum:maximum});break;case(minimum!==null):if(value<Number(minimum))Validate.fail(tooLowMessage);break;case(maximum!==null):if(value>Number(maximum))Validate.fail(tooHighMessage);break;}
return true;},Format:function(value,paramsObj){var value=String(value);var paramsObj=paramsObj||{};var message=paramsObj.failureMessage||"Non valide!";var pattern=paramsObj.pattern||/./;var negate=paramsObj.negate||false;if(!negate&&!pattern.test(value))Validate.fail(message);if(negate&&pattern.test(value))Validate.fail(message);return true;},Email:function(value,paramsObj){var paramsObj=paramsObj||{};var message=paramsObj.failureMessage||"Adresse Email non valide!";Validate.Format(value,{failureMessage:message,pattern:/^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i});return true;},Url:function(value,paramsObj){var paramsObj=paramsObj||{};var message=paramsObj.failureMessage||"Adresse url non valide!";Validate.Format(value,{failureMessage:message,pattern:/^(http):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/i});return true;},Length:function(value,paramsObj){var value=String(value);var paramsObj=paramsObj||{};var minimum=((paramsObj.minimum)||(paramsObj.minimum==0))?paramsObj.minimum:null;var maximum=((paramsObj.maximum)||(paramsObj.maximum==0))?paramsObj.maximum:null;var is=((paramsObj.is)||(paramsObj.is==0))?paramsObj.is:null;var wrongLengthMessage=paramsObj.wrongLengthMessage||""+is+" caracteres au moins!";var tooShortMessage=paramsObj.tooShortMessage||"Au moins "+minimum+" caracteres Max!";var tooLongMessage=paramsObj.tooLongMessage||"Pas plus de "+maximum+" caracteres!";switch(true){case(is!==null):if(value.length!=Number(is))Validate.fail(wrongLengthMessage);break;case(minimum!==null&&maximum!==null):Validate.Length(value,{tooShortMessage:tooShortMessage,minimum:minimum});Validate.Length(value,{tooLongMessage:tooLongMessage,maximum:maximum});break;case(minimum!==null):if(value.length<Number(minimum))Validate.fail(tooShortMessage);break;case(maximum!==null):if(value.length>Number(maximum))Validate.fail(tooLongMessage);break;default:throw new Error("Validate::Length - Length(s) to validate against must be provided!");}
return true;},Inclusion:function(value,paramsObj){var paramsObj=paramsObj||{};var message=paramsObj.failureMessage||"Respecter la casse!";var caseSensitive=(paramsObj.caseSensitive===false)?false:true;if(paramsObj.allowNull&&value==null)return true;if(!paramsObj.allowNull&&value==null)Validate.fail(message);var within=paramsObj.within||[];if(!caseSensitive){var lowerWithin=[];for(var j=0,length=within.length;j<length;++j){var item=within[j];if(typeof item=='string')item=item.toLowerCase();lowerWithin.push(item);}
within=lowerWithin;if(typeof value=='string')value=value.toLowerCase();}
var found=false;for(var i=0,length=within.length;i<length;++i){if(within[i]==value)found=true;if(paramsObj.partialMatch){if(value.indexOf(within[i])!=-1)found=true;}}
if((!paramsObj.negate&&!found)||(paramsObj.negate&&found))Validate.fail(message);return true;},Exclusion:function(value,paramsObj){var paramsObj=paramsObj||{};paramsObj.failureMessage=paramsObj.failureMessage||"Doit etre different de la liste!";paramsObj.negate=true;Validate.Inclusion(value,paramsObj);return true;},Confirmation:function(value,paramsObj){if(!paramsObj.match)throw new Error("Validate::Confirmation - Error validating confirmation: Id of element to match must be provided!");var paramsObj=paramsObj||{};var message=paramsObj.failureMessage||"Ne correspond pas!";var match=paramsObj.match.nodeName?paramsObj.match:document.getElementById(paramsObj.match);if(!match)throw new Error("Validate::Confirmation - There is no reference with name of, or element with id of '"+paramsObj.match+"'!");if(value!=match.value){Validate.fail(message);}
return true;},Acceptance:function(value,paramsObj){var paramsObj=paramsObj||{};var message=paramsObj.failureMessage||"Doit etre accepté!";if(!value){Validate.fail(message);}
return true;},Custom:function(value,paramsObj){var paramsObj=paramsObj||{};var against=paramsObj.against||function(){return true;};var args=paramsObj.args||{};var message=paramsObj.failureMessage||"Not valid!";if(!against(value,args))Validate.fail(message);return true;},now:function(validationFunction,value,validationParamsObj){if(!validationFunction)throw new Error("Validate::now - Validation function must be provided!");var isValid=true;try{validationFunction(value,validationParamsObj||{});}catch(error){if(error instanceof Validate.Error){isValid=false;}else{throw error;}}finally{return isValid}},fail:function(errorMessage){throw new Validate.Error(errorMessage);},Error:function(errorMessage){this.message=errorMessage;this.name='ValidationError';}}

function ajouterfavoris()
{var ua=navigator.userAgent.toLowerCase();var konq=(ua.indexOf('konqueror')!=-1);var saf=(ua.indexOf('webkit')!=-1);var mac=(ua.indexOf('mac')!=-1);var ctrlKey=mac?'Command/Cmd':'CTRL';if(window.external&&(!document.createTextNode||(typeof(window.external.AddFavorite)=='unknown'))){window.external.AddFavorite("http://www.webbreton.com/","Annuaire et guide de la Bretagne");}
else if(konq){alert('Veuillez appuyer sur CTRL + B pour ajouter ce site à vos favoris.');}else if(window.opera){void(0);}else if(window.home||saf){alert('Veuillez appuyer sur '+ctrlKey+' + D pour ajouter ce site à vos favoris.');}else if(!window.print||mac){alert('Veuillez appuyer sur Command/Cmd + D pour ajouter ce site à vos favoris.');}else{alert('Votre navigateur internet n\'est pas reconnu, vous devez ajouter ce site manuellement à vos favoris.');}}
