
var Prototype={Version:'1.6.0.3',Browser:{IE:!!(window.attachEvent&&navigator.userAgent.indexOf('Opera')===-1),Opera:navigator.userAgent.indexOf('Opera')>-1,WebKit:navigator.userAgent.indexOf('AppleWebKit/')>-1,Gecko:navigator.userAgent.indexOf('Gecko')>-1&&navigator.userAgent.indexOf('KHTML')===-1,MobileSafari:!!navigator.userAgent.match(/Apple.*Mobile.*Safari/)},BrowserFeatures:{XPath:!!document.evaluate,SelectorsAPI:!!document.querySelector,ElementExtensions:!!window.HTMLElement,SpecificElementExtensions:document.createElement('div')['__proto__']&&document.createElement('div')['__proto__']!==document.createElement('form')['__proto__']},ScriptFragment:'<script[^>]*>([\\S\\s]*?)<\/script>',JSONFilter:/^\/\*-secure-([\s\S]*)\*\/\s*$/,emptyFunction:function(){},K:function(x){return x}};if(Prototype.Browser.MobileSafari)
Prototype.BrowserFeatures.SpecificElementExtensions=false;var Class={create:function(){var parent=null,properties=$A(arguments);if(Object.isFunction(properties[0]))
parent=properties.shift();function klass(){this.initialize.apply(this,arguments);}
Object.extend(klass,Class.Methods);klass.superclass=parent;klass.subclasses=[];if(parent){var subclass=function(){};subclass.prototype=parent.prototype;klass.prototype=new subclass;parent.subclasses.push(klass);}
for(var i=0;i<properties.length;i++)
klass.addMethods(properties[i]);if(!klass.prototype.initialize)
klass.prototype.initialize=Prototype.emptyFunction;klass.prototype.constructor=klass;return klass;}};Class.Methods={addMethods:function(source){var ancestor=this.superclass&&this.superclass.prototype;var properties=Object.keys(source);if(!Object.keys({toString:true}).length)
properties.push("toString","valueOf");for(var i=0,length=properties.length;i<length;i++){var property=properties[i],value=source[property];if(ancestor&&Object.isFunction(value)&&value.argumentNames().first()=="$super"){var method=value;value=(function(m){return function(){return ancestor[m].apply(this,arguments)};})(property).wrap(method);value.valueOf=method.valueOf.bind(method);value.toString=method.toString.bind(method);}
this.prototype[property]=value;}
return this;}};var Abstract={};Object.extend=function(destination,source){for(var property in source)
destination[property]=source[property];return destination;};Object.extend(Object,{inspect:function(object){try{if(Object.isUndefined(object))return'undefined';if(object===null)return'null';return object.inspect?object.inspect():String(object);}catch(e){if(e instanceof RangeError)return'...';throw e;}},toJSON:function(object){var type=typeof object;switch(type){case'undefined':case'function':case'unknown':return;case'boolean':return object.toString();}
if(object===null)return'null';if(object.toJSON)return object.toJSON();if(Object.isElement(object))return;var results=[];for(var property in object){var value=Object.toJSON(object[property]);if(!Object.isUndefined(value))
results.push(property.toJSON()+': '+value);}
return'{'+results.join(', ')+'}';},toQueryString:function(object){return $H(object).toQueryString();},toHTML:function(object){return object&&object.toHTML?object.toHTML():String.interpret(object);},keys:function(object){var keys=[];for(var property in object)
keys.push(property);return keys;},values:function(object){var values=[];for(var property in object)
values.push(object[property]);return values;},clone:function(object){return Object.extend({},object);},isElement:function(object){return!!(object&&object.nodeType==1);},isArray:function(object){return object!=null&&typeof object=="object"&&'splice'in object&&'join'in object;},isHash:function(object){return object instanceof Hash;},isFunction:function(object){return typeof object=="function";},isString:function(object){return typeof object=="string";},isNumber:function(object){return typeof object=="number";},isUndefined:function(object){return typeof object=="undefined";}});Object.extend(Function.prototype,{argumentNames:function(){var names=this.toString().match(/^[\s\(]*function[^(]*\(([^\)]*)\)/)[1].replace(/\s+/g,'').split(',');return names.length==1&&!names[0]?[]:names;},bind:function(){if(arguments.length<2&&Object.isUndefined(arguments[0]))return this;var __method=this,args=$A(arguments),object=args.shift();return function(){return __method.apply(object,args.concat($A(arguments)));}},bindAsEventListener:function(){var __method=this,args=$A(arguments),object=args.shift();return function(event){return __method.apply(object,[event||window.event].concat(args));}},curry:function(){if(!arguments.length)return this;var __method=this,args=$A(arguments);return function(){return __method.apply(this,args.concat($A(arguments)));}},delay:function(){var __method=this,args=$A(arguments),timeout=args.shift()*1000;return window.setTimeout(function(){return __method.apply(__method,args);},timeout);},defer:function(){var args=[0.01].concat($A(arguments));return this.delay.apply(this,args);},wrap:function(wrapper){var __method=this;return function(){return wrapper.apply(this,[__method.bind(this)].concat($A(arguments)));}},methodize:function(){if(this._methodized)return this._methodized;var __method=this;return this._methodized=function(){return __method.apply(null,[this].concat($A(arguments)));};}});Date.prototype.toJSON=function(){return'"'+this.getUTCFullYear()+'-'+
(this.getUTCMonth()+1).toPaddedString(2)+'-'+
this.getUTCDate().toPaddedString(2)+'T'+
this.getUTCHours().toPaddedString(2)+':'+
this.getUTCMinutes().toPaddedString(2)+':'+
this.getUTCSeconds().toPaddedString(2)+'Z"';};var Try={these:function(){var returnValue;for(var i=0,length=arguments.length;i<length;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}
return returnValue;}};RegExp.prototype.match=RegExp.prototype.test;RegExp.escape=function(str){return String(str).replace(/([.*+?^=!:${}()|[\]\/\\])/g,'\\$1');};var PeriodicalExecuter=Class.create({initialize:function(callback,frequency){this.callback=callback;this.frequency=frequency;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},execute:function(){this.callback(this);},stop:function(){if(!this.timer)return;clearInterval(this.timer);this.timer=null;},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.execute();}finally{this.currentlyExecuting=false;}}}});Object.extend(String,{interpret:function(value){return value==null?'':String(value);},specialChar:{'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','\\':'\\\\'}});Object.extend(String.prototype,{gsub:function(pattern,replacement){var result='',source=this,match;replacement=arguments.callee.prepareReplacement(replacement);while(source.length>0){if(match=source.match(pattern)){result+=source.slice(0,match.index);result+=String.interpret(replacement(match));source=source.slice(match.index+match[0].length);}else{result+=source,source='';}}
return result;},sub:function(pattern,replacement,count){replacement=this.gsub.prepareReplacement(replacement);count=Object.isUndefined(count)?1:count;return this.gsub(pattern,function(match){if(--count<0)return match[0];return replacement(match);});},scan:function(pattern,iterator){this.gsub(pattern,iterator);return String(this);},truncate:function(length,truncation){length=length||30;truncation=Object.isUndefined(truncation)?'...':truncation;return this.length>length?this.slice(0,length-truncation.length)+truncation:String(this);},strip:function(){return this.replace(/^\s+/,'').replace(/\s+$/,'');},stripTags:function(){return this.replace(/<\/?[^>]+>/gi,'');},stripScripts:function(){return this.replace(new RegExp(Prototype.ScriptFragment,'img'),'');},extractScripts:function(){var matchAll=new RegExp(Prototype.ScriptFragment,'img');var matchOne=new RegExp(Prototype.ScriptFragment,'im');return(this.match(matchAll)||[]).map(function(scriptTag){return(scriptTag.match(matchOne)||['',''])[1];});},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script)});},escapeHTML:function(){var self=arguments.callee;self.text.data=this;return self.div.innerHTML;},unescapeHTML:function(){var div=new Element('div');div.innerHTML=this.stripTags();return div.childNodes[0]?(div.childNodes.length>1?$A(div.childNodes).inject('',function(memo,node){return memo+node.nodeValue}):div.childNodes[0].nodeValue):'';},toQueryParams:function(separator){var match=this.strip().match(/([^?#]*)(#.*)?$/);if(!match)return{};return match[1].split(separator||'&').inject({},function(hash,pair){if((pair=pair.split('='))[0]){var key=decodeURIComponent(pair.shift());var value=pair.length>1?pair.join('='):pair[0];if(value!=undefined)value=decodeURIComponent(value);if(key in hash){if(!Object.isArray(hash[key]))hash[key]=[hash[key]];hash[key].push(value);}
else hash[key]=value;}
return hash;});},toArray:function(){return this.split('');},succ:function(){return this.slice(0,this.length-1)+
String.fromCharCode(this.charCodeAt(this.length-1)+1);},times:function(count){return count<1?'':new Array(count+1).join(this);},camelize:function(){var parts=this.split('-'),len=parts.length;if(len==1)return parts[0];var camelized=this.charAt(0)=='-'?parts[0].charAt(0).toUpperCase()+parts[0].substring(1):parts[0];for(var i=1;i<len;i++)
camelized+=parts[i].charAt(0).toUpperCase()+parts[i].substring(1);return camelized;},capitalize:function(){return this.charAt(0).toUpperCase()+this.substring(1).toLowerCase();},underscore:function(){return this.gsub(/::/,'/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{1}_#{2}').gsub(/-/,'_').toLowerCase();},dasherize:function(){return this.gsub(/_/,'-');},inspect:function(useDoubleQuotes){var escapedString=this.gsub(/[\x00-\x1f\\]/,function(match){var character=String.specialChar[match[0]];return character?character:'\\u00'+match[0].charCodeAt().toPaddedString(2,16);});if(useDoubleQuotes)return'"'+escapedString.replace(/"/g,'\\"')+'"';return"'"+escapedString.replace(/'/g,'\\\'')+"'";},toJSON:function(){return this.inspect(true);},unfilterJSON:function(filter){return this.sub(filter||Prototype.JSONFilter,'#{1}');},isJSON:function(){var str=this;if(str.blank())return false;str=this.replace(/\\./g,'@').replace(/"[^"\\\n\r]*"/g,'');return(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(str);},evalJSON:function(sanitize){var json=this.unfilterJSON();try{if(!sanitize||json.isJSON())return eval('('+json+')');}catch(e){}
throw new SyntaxError('Badly formed JSON string: '+this.inspect());},include:function(pattern){return this.indexOf(pattern)>-1;},startsWith:function(pattern){return this.indexOf(pattern)===0;},endsWith:function(pattern){var d=this.length-pattern.length;return d>=0&&this.lastIndexOf(pattern)===d;},empty:function(){return this=='';},blank:function(){return/^\s*$/.test(this);},interpolate:function(object,pattern){return new Template(this,pattern).evaluate(object);}});if(Prototype.Browser.WebKit||Prototype.Browser.IE)Object.extend(String.prototype,{escapeHTML:function(){return this.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');},unescapeHTML:function(){return this.stripTags().replace(/&amp;/g,'&').replace(/&lt;/g,'<').replace(/&gt;/g,'>');}});String.prototype.gsub.prepareReplacement=function(replacement){if(Object.isFunction(replacement))return replacement;var template=new Template(replacement);return function(match){return template.evaluate(match)};};String.prototype.parseQuery=String.prototype.toQueryParams;Object.extend(String.prototype.escapeHTML,{div:document.createElement('div'),text:document.createTextNode('')});String.prototype.escapeHTML.div.appendChild(String.prototype.escapeHTML.text);var Template=Class.create({initialize:function(template,pattern){this.template=template.toString();this.pattern=pattern||Template.Pattern;},evaluate:function(object){if(Object.isFunction(object.toTemplateReplacements))
object=object.toTemplateReplacements();return this.template.gsub(this.pattern,function(match){if(object==null)return'';var before=match[1]||'';if(before=='\\')return match[2];var ctx=object,expr=match[3];var pattern=/^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/;match=pattern.exec(expr);if(match==null)return before;while(match!=null){var comp=match[1].startsWith('[')?match[2].gsub('\\\\]',']'):match[1];ctx=ctx[comp];if(null==ctx||''==match[3])break;expr=expr.substring('['==match[3]?match[1].length:match[0].length);match=pattern.exec(expr);}
return before+String.interpret(ctx);});}});Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;var $break={};var Enumerable={each:function(iterator,context){var index=0;try{this._each(function(value){iterator.call(context,value,index++);});}catch(e){if(e!=$break)throw e;}
return this;},eachSlice:function(number,iterator,context){var index=-number,slices=[],array=this.toArray();if(number<1)return array;while((index+=number)<array.length)
slices.push(array.slice(index,index+number));return slices.collect(iterator,context);},all:function(iterator,context){iterator=iterator||Prototype.K;var result=true;this.each(function(value,index){result=result&&!!iterator.call(context,value,index);if(!result)throw $break;});return result;},any:function(iterator,context){iterator=iterator||Prototype.K;var result=false;this.each(function(value,index){if(result=!!iterator.call(context,value,index))
throw $break;});return result;},collect:function(iterator,context){iterator=iterator||Prototype.K;var results=[];this.each(function(value,index){results.push(iterator.call(context,value,index));});return results;},detect:function(iterator,context){var result;this.each(function(value,index){if(iterator.call(context,value,index)){result=value;throw $break;}});return result;},findAll:function(iterator,context){var results=[];this.each(function(value,index){if(iterator.call(context,value,index))
results.push(value);});return results;},grep:function(filter,iterator,context){iterator=iterator||Prototype.K;var results=[];if(Object.isString(filter))
filter=new RegExp(filter);this.each(function(value,index){if(filter.match(value))
results.push(iterator.call(context,value,index));});return results;},include:function(object){if(Object.isFunction(this.indexOf))
if(this.indexOf(object)!=-1)return true;var found=false;this.each(function(value){if(value==object){found=true;throw $break;}});return found;},inGroupsOf:function(number,fillWith){fillWith=Object.isUndefined(fillWith)?null:fillWith;return this.eachSlice(number,function(slice){while(slice.length<number)slice.push(fillWith);return slice;});},inject:function(memo,iterator,context){this.each(function(value,index){memo=iterator.call(context,memo,value,index);});return memo;},invoke:function(method){var args=$A(arguments).slice(1);return this.map(function(value){return value[method].apply(value,args);});},max:function(iterator,context){iterator=iterator||Prototype.K;var result;this.each(function(value,index){value=iterator.call(context,value,index);if(result==null||value>=result)
result=value;});return result;},min:function(iterator,context){iterator=iterator||Prototype.K;var result;this.each(function(value,index){value=iterator.call(context,value,index);if(result==null||value<result)
result=value;});return result;},partition:function(iterator,context){iterator=iterator||Prototype.K;var trues=[],falses=[];this.each(function(value,index){(iterator.call(context,value,index)?trues:falses).push(value);});return[trues,falses];},pluck:function(property){var results=[];this.each(function(value){results.push(value[property]);});return results;},reject:function(iterator,context){var results=[];this.each(function(value,index){if(!iterator.call(context,value,index))
results.push(value);});return results;},sortBy:function(iterator,context){return this.map(function(value,index){return{value:value,criteria:iterator.call(context,value,index)};}).sort(function(left,right){var a=left.criteria,b=right.criteria;return a<b?-1:a>b?1:0;}).pluck('value');},toArray:function(){return this.map();},zip:function(){var iterator=Prototype.K,args=$A(arguments);if(Object.isFunction(args.last()))
iterator=args.pop();var collections=[this].concat(args).map($A);return this.map(function(value,index){return iterator(collections.pluck(index));});},size:function(){return this.toArray().length;},inspect:function(){return'#<Enumerable:'+this.toArray().inspect()+'>';}};Object.extend(Enumerable,{map:Enumerable.collect,find:Enumerable.detect,select:Enumerable.findAll,filter:Enumerable.findAll,member:Enumerable.include,entries:Enumerable.toArray,every:Enumerable.all,some:Enumerable.any});function $A(iterable){if(!iterable)return[];if(iterable.toArray)return iterable.toArray();var length=iterable.length||0,results=new Array(length);while(length--)results[length]=iterable[length];return results;}
if(Prototype.Browser.WebKit){$A=function(iterable){if(!iterable)return[];if(!(typeof iterable==='function'&&typeof iterable.length==='number'&&typeof iterable.item==='function')&&iterable.toArray)
return iterable.toArray();var length=iterable.length||0,results=new Array(length);while(length--)results[length]=iterable[length];return results;};}
Array.from=$A;Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse)Array.prototype._reverse=Array.prototype.reverse;Object.extend(Array.prototype,{_each:function(iterator){for(var i=0,length=this.length;i<length;i++)
iterator(this[i]);},clear:function(){this.length=0;return this;},first:function(){return this[0];},last:function(){return this[this.length-1];},compact:function(){return this.select(function(value){return value!=null;});},flatten:function(){return this.inject([],function(array,value){return array.concat(Object.isArray(value)?value.flatten():[value]);});},without:function(){var values=$A(arguments);return this.select(function(value){return!values.include(value);});},reverse:function(inline){return(inline!==false?this:this.toArray())._reverse();},reduce:function(){return this.length>1?this:this[0];},uniq:function(sorted){return this.inject([],function(array,value,index){if(0==index||(sorted?array.last()!=value:!array.include(value)))
array.push(value);return array;});},intersect:function(array){return this.uniq().findAll(function(item){return array.detect(function(value){return item===value});});},clone:function(){return[].concat(this);},size:function(){return this.length;},inspect:function(){return'['+this.map(Object.inspect).join(', ')+']';},toJSON:function(){var results=[];this.each(function(object){var value=Object.toJSON(object);if(!Object.isUndefined(value))results.push(value);});return'['+results.join(', ')+']';}});if(Object.isFunction(Array.prototype.forEach))
Array.prototype._each=Array.prototype.forEach;if(!Array.prototype.indexOf)Array.prototype.indexOf=function(item,i){i||(i=0);var length=this.length;if(i<0)i=length+i;for(;i<length;i++)
if(this[i]===item)return i;return-1;};if(!Array.prototype.lastIndexOf)Array.prototype.lastIndexOf=function(item,i){i=isNaN(i)?this.length:(i<0?this.length+i:i)+1;var n=this.slice(0,i).reverse().indexOf(item);return(n<0)?n:i-n-1;};Array.prototype.toArray=Array.prototype.clone;function $w(string){if(!Object.isString(string))return[];string=string.strip();return string?string.split(/\s+/):[];}
if(Prototype.Browser.Opera){Array.prototype.concat=function(){var array=[];for(var i=0,length=this.length;i<length;i++)array.push(this[i]);for(var i=0,length=arguments.length;i<length;i++){if(Object.isArray(arguments[i])){for(var j=0,arrayLength=arguments[i].length;j<arrayLength;j++)
array.push(arguments[i][j]);}else{array.push(arguments[i]);}}
return array;};}
Object.extend(Number.prototype,{toColorPart:function(){return this.toPaddedString(2,16);},succ:function(){return this+1;},times:function(iterator,context){$R(0,this,true).each(iterator,context);return this;},toPaddedString:function(length,radix){var string=this.toString(radix||10);return'0'.times(length-string.length)+string;},toJSON:function(){return isFinite(this)?this.toString():'null';}});$w('abs round ceil floor').each(function(method){Number.prototype[method]=Math[method].methodize();});function $H(object){return new Hash(object);};var Hash=Class.create(Enumerable,(function(){function toQueryPair(key,value){if(Object.isUndefined(value))return key;return key+'='+encodeURIComponent(String.interpret(value));}
return{initialize:function(object){this._object=Object.isHash(object)?object.toObject():Object.clone(object);},_each:function(iterator){for(var key in this._object){var value=this._object[key],pair=[key,value];pair.key=key;pair.value=value;iterator(pair);}},set:function(key,value){return this._object[key]=value;},get:function(key){if(this._object[key]!==Object.prototype[key])
return this._object[key];},unset:function(key){var value=this._object[key];delete this._object[key];return value;},toObject:function(){return Object.clone(this._object);},keys:function(){return this.pluck('key');},values:function(){return this.pluck('value');},index:function(value){var match=this.detect(function(pair){return pair.value===value;});return match&&match.key;},merge:function(object){return this.clone().update(object);},update:function(object){return new Hash(object).inject(this,function(result,pair){result.set(pair.key,pair.value);return result;});},toQueryString:function(){return this.inject([],function(results,pair){var key=encodeURIComponent(pair.key),values=pair.value;if(values&&typeof values=='object'){if(Object.isArray(values))
return results.concat(values.map(toQueryPair.curry(key)));}else results.push(toQueryPair(key,values));return results;}).join('&');},inspect:function(){return'#<Hash:{'+this.map(function(pair){return pair.map(Object.inspect).join(': ');}).join(', ')+'}>';},toJSON:function(){return Object.toJSON(this.toObject());},clone:function(){return new Hash(this);}}})());Hash.prototype.toTemplateReplacements=Hash.prototype.toObject;Hash.from=$H;var ObjectRange=Class.create(Enumerable,{initialize:function(start,end,exclusive){this.start=start;this.end=end;this.exclusive=exclusive;},_each:function(iterator){var value=this.start;while(this.include(value)){iterator(value);value=value.succ();}},include:function(value){if(value<this.start)
return false;if(this.exclusive)
return value<this.end;return value<=this.end;}});var $R=function(start,end,exclusive){return new ObjectRange(start,end,exclusive);};var Ajax={getTransport:function(){return Try.these(function(){return new XMLHttpRequest()},function(){return new ActiveXObject('Msxml2.XMLHTTP')},function(){return new ActiveXObject('Microsoft.XMLHTTP')})||false;},activeRequestCount:0};Ajax.Responders={responders:[],_each:function(iterator){this.responders._each(iterator);},register:function(responder){if(!this.include(responder))
this.responders.push(responder);},unregister:function(responder){this.responders=this.responders.without(responder);},dispatch:function(callback,request,transport,json){this.each(function(responder){if(Object.isFunction(responder[callback])){try{responder[callback].apply(responder,[request,transport,json]);}catch(e){}}});}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++},onComplete:function(){Ajax.activeRequestCount--}});Ajax.Base=Class.create({initialize:function(options){this.options={method:'post',asynchronous:true,contentType:'application/x-www-form-urlencoded',encoding:'UTF-8',parameters:'',evalJSON:true,evalJS:true};Object.extend(this.options,options||{});this.options.method=this.options.method.toLowerCase();if(Object.isString(this.options.parameters))
this.options.parameters=this.options.parameters.toQueryParams();else if(Object.isHash(this.options.parameters))
this.options.parameters=this.options.parameters.toObject();}});Ajax.Request=Class.create(Ajax.Base,{_complete:false,initialize:function($super,url,options){$super(options);this.transport=Ajax.getTransport();this.request(url);},request:function(url){this.url=url;this.method=this.options.method;var params=Object.clone(this.options.parameters);if(!['get','post'].include(this.method)){params['_method']=this.method;this.method='post';}
this.parameters=params;if(params=Object.toQueryString(params)){if(this.method=='get')
this.url+=(this.url.include('?')?'&':'?')+params;else if(/Konqueror|Safari|KHTML/.test(navigator.userAgent))
params+='&_=';}
try{var response=new Ajax.Response(this);if(this.options.onCreate)this.options.onCreate(response);Ajax.Responders.dispatch('onCreate',this,response);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous)this.respondToReadyState.bind(this).defer(1);this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();this.body=this.method=='post'?(this.options.postBody||params):null;this.transport.send(this.body);if(!this.options.asynchronous&&this.transport.overrideMimeType)
this.onStateChange();}
catch(e){this.dispatchException(e);}},onStateChange:function(){var readyState=this.transport.readyState;if(readyState>1&&!((readyState==4)&&this._complete))
this.respondToReadyState(this.transport.readyState);},setRequestHeaders:function(){var headers={'X-Requested-With':'XMLHttpRequest','X-Prototype-Version':Prototype.Version,'Accept':'text/javascript, text/html, application/xml, text/xml, */*'};if(this.method=='post'){headers['Content-type']=this.options.contentType+
(this.options.encoding?'; charset='+this.options.encoding:'');if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005)
headers['Connection']='close';}
if(typeof this.options.requestHeaders=='object'){var extras=this.options.requestHeaders;if(Object.isFunction(extras.push))
for(var i=0,length=extras.length;i<length;i+=2)
headers[extras[i]]=extras[i+1];else
$H(extras).each(function(pair){headers[pair.key]=pair.value});}
for(var name in headers)
this.transport.setRequestHeader(name,headers[name]);},success:function(){var status=this.getStatus();return!status||(status>=200&&status<300);},getStatus:function(){try{return this.transport.status||0;}catch(e){return 0}},respondToReadyState:function(readyState){var state=Ajax.Request.Events[readyState],response=new Ajax.Response(this);if(state=='Complete'){try{this._complete=true;(this.options['on'+response.status]||this.options['on'+(this.success()?'Success':'Failure')]||Prototype.emptyFunction)(response,response.headerJSON);}catch(e){this.dispatchException(e);}
var contentType=response.getHeader('Content-type');if(this.options.evalJS=='force'||(this.options.evalJS&&this.isSameOrigin()&&contentType&&contentType.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?\s*$/i)))
this.evalResponse();}
try{(this.options['on'+state]||Prototype.emptyFunction)(response,response.headerJSON);Ajax.Responders.dispatch('on'+state,this,response,response.headerJSON);}catch(e){this.dispatchException(e);}
if(state=='Complete'){this.transport.onreadystatechange=Prototype.emptyFunction;}},isSameOrigin:function(){var m=this.url.match(/^\s*https?:\/\/[^\/]*/);return!m||(m[0]=='#{protocol}//#{domain}#{port}'.interpolate({protocol:location.protocol,domain:document.domain,port:location.port?':'+location.port:''}));},getHeader:function(name){try{return this.transport.getResponseHeader(name)||null;}catch(e){return null}},evalResponse:function(){try{return eval((this.transport.responseText||'').unfilterJSON());}catch(e){this.dispatchException(e);}},dispatchException:function(exception){(this.options.onException||Prototype.emptyFunction)(this,exception);Ajax.Responders.dispatch('onException',this,exception);}});Ajax.Request.Events=['Uninitialized','Loading','Loaded','Interactive','Complete'];Ajax.Response=Class.create({initialize:function(request){this.request=request;var transport=this.transport=request.transport,readyState=this.readyState=transport.readyState;if((readyState>2&&!Prototype.Browser.IE)||readyState==4){this.status=this.getStatus();this.statusText=this.getStatusText();this.responseText=String.interpret(transport.responseText);this.headerJSON=this._getHeaderJSON();}
if(readyState==4){var xml=transport.responseXML;this.responseXML=Object.isUndefined(xml)?null:xml;this.responseJSON=this._getResponseJSON();}},status:0,statusText:'',getStatus:Ajax.Request.prototype.getStatus,getStatusText:function(){try{return this.transport.statusText||'';}catch(e){return''}},getHeader:Ajax.Request.prototype.getHeader,getAllHeaders:function(){try{return this.getAllResponseHeaders();}catch(e){return null}},getResponseHeader:function(name){return this.transport.getResponseHeader(name);},getAllResponseHeaders:function(){return this.transport.getAllResponseHeaders();},_getHeaderJSON:function(){var json=this.getHeader('X-JSON');if(!json)return null;json=decodeURIComponent(escape(json));try{return json.evalJSON(this.request.options.sanitizeJSON||!this.request.isSameOrigin());}catch(e){this.request.dispatchException(e);}},_getResponseJSON:function(){var options=this.request.options;if(!options.evalJSON||(options.evalJSON!='force'&&!(this.getHeader('Content-type')||'').include('application/json'))||this.responseText.blank())
return null;try{return this.responseText.evalJSON(options.sanitizeJSON||!this.request.isSameOrigin());}catch(e){this.request.dispatchException(e);}}});Ajax.Updater=Class.create(Ajax.Request,{initialize:function($super,container,url,options){this.container={success:(container.success||container),failure:(container.failure||(container.success?null:container))};options=Object.clone(options);var onComplete=options.onComplete;options.onComplete=(function(response,json){this.updateContent(response.responseText);if(Object.isFunction(onComplete))onComplete(response,json);}).bind(this);$super(url,options);},updateContent:function(responseText){var receiver=this.container[this.success()?'success':'failure'],options=this.options;if(!options.evalScripts)responseText=responseText.stripScripts();if(receiver=$(receiver)){if(options.insertion){if(Object.isString(options.insertion)){var insertion={};insertion[options.insertion]=responseText;receiver.insert(insertion);}
else options.insertion(receiver,responseText);}
else receiver.update(responseText);}}});Ajax.PeriodicalUpdater=Class.create(Ajax.Base,{initialize:function($super,container,url,options){$super(options);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=container;this.url=url;this.start();},start:function(){this.options.onComplete=this.updateComplete.bind(this);this.onTimerEvent();},stop:function(){this.updater.options.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this,arguments);},updateComplete:function(response){if(this.options.decay){this.decay=(response.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=response.responseText;}
this.timer=this.onTimerEvent.bind(this).delay(this.decay*this.frequency);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});function $(element){if(arguments.length>1){for(var i=0,elements=[],length=arguments.length;i<length;i++)
elements.push($(arguments[i]));return elements;}
if(Object.isString(element))
element=document.getElementById(element);return Element.extend(element);}
if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(expression,parentElement){var results=[];var query=document.evaluate(expression,$(parentElement)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0,length=query.snapshotLength;i<length;i++)
results.push(Element.extend(query.snapshotItem(i)));return results;};}
if(!window.Node)var Node={};if(!Node.ELEMENT_NODE){Object.extend(Node,{ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12});}
(function(){var element=this.Element;this.Element=function(tagName,attributes){attributes=attributes||{};tagName=tagName.toLowerCase();var cache=Element.cache;if(Prototype.Browser.IE&&attributes.name){tagName='<'+tagName+' name="'+attributes.name+'">';delete attributes.name;return Element.writeAttribute(document.createElement(tagName),attributes);}
if(!cache[tagName])cache[tagName]=Element.extend(document.createElement(tagName));return Element.writeAttribute(cache[tagName].cloneNode(false),attributes);};Object.extend(this.Element,element||{});if(element)this.Element.prototype=element.prototype;}).call(window);Element.cache={};Element.Methods={visible:function(element){return $(element).style.display!='none';},toggle:function(element){element=$(element);Element[Element.visible(element)?'hide':'show'](element);return element;},hide:function(element){element=$(element);element.style.display='none';return element;},show:function(element){element=$(element);element.style.display='';return element;},remove:function(element){element=$(element);element.parentNode.removeChild(element);return element;},update:function(element,content){element=$(element);if(content&&content.toElement)content=content.toElement();if(Object.isElement(content))return element.update().insert(content);content=Object.toHTML(content);element.innerHTML=content.stripScripts();content.evalScripts.bind(content).defer();return element;},replace:function(element,content){element=$(element);if(content&&content.toElement)content=content.toElement();else if(!Object.isElement(content)){content=Object.toHTML(content);var range=element.ownerDocument.createRange();range.selectNode(element);content.evalScripts.bind(content).defer();content=range.createContextualFragment(content.stripScripts());}
element.parentNode.replaceChild(content,element);return element;},insert:function(element,insertions){element=$(element);if(Object.isString(insertions)||Object.isNumber(insertions)||Object.isElement(insertions)||(insertions&&(insertions.toElement||insertions.toHTML)))
insertions={bottom:insertions};var content,insert,tagName,childNodes;for(var position in insertions){content=insertions[position];position=position.toLowerCase();insert=Element._insertionTranslations[position];if(content&&content.toElement)content=content.toElement();if(Object.isElement(content)){insert(element,content);continue;}
content=Object.toHTML(content);tagName=((position=='before'||position=='after')?element.parentNode:element).tagName.toUpperCase();childNodes=Element._getContentFromAnonymousElement(tagName,content.stripScripts());if(position=='top'||position=='after')childNodes.reverse();childNodes.each(insert.curry(element));content.evalScripts.bind(content).defer();}
return element;},wrap:function(element,wrapper,attributes){element=$(element);if(Object.isElement(wrapper))
$(wrapper).writeAttribute(attributes||{});else if(Object.isString(wrapper))wrapper=new Element(wrapper,attributes);else wrapper=new Element('div',wrapper);if(element.parentNode)
element.parentNode.replaceChild(wrapper,element);wrapper.appendChild(element);return wrapper;},inspect:function(element){element=$(element);var result='<'+element.tagName.toLowerCase();$H({'id':'id','className':'class'}).each(function(pair){var property=pair.first(),attribute=pair.last();var value=(element[property]||'').toString();if(value)result+=' '+attribute+'='+value.inspect(true);});return result+'>';},recursivelyCollect:function(element,property){element=$(element);var elements=[];while(element=element[property])
if(element.nodeType==1)
elements.push(Element.extend(element));return elements;},ancestors:function(element){return $(element).recursivelyCollect('parentNode');},descendants:function(element){return $(element).select("*");},firstDescendant:function(element){element=$(element).firstChild;while(element&&element.nodeType!=1)element=element.nextSibling;return $(element);},immediateDescendants:function(element){if(!(element=$(element).firstChild))return[];while(element&&element.nodeType!=1)element=element.nextSibling;if(element)return[element].concat($(element).nextSiblings());return[];},previousSiblings:function(element){return $(element).recursivelyCollect('previousSibling');},nextSiblings:function(element){return $(element).recursivelyCollect('nextSibling');},siblings:function(element){element=$(element);return element.previousSiblings().reverse().concat(element.nextSiblings());},match:function(element,selector){if(Object.isString(selector))
selector=new Selector(selector);return selector.match($(element));},up:function(element,expression,index){element=$(element);if(arguments.length==1)return $(element.parentNode);var ancestors=element.ancestors();return Object.isNumber(expression)?ancestors[expression]:Selector.findElement(ancestors,expression,index);},down:function(element,expression,index){element=$(element);if(arguments.length==1)return element.firstDescendant();return Object.isNumber(expression)?element.descendants()[expression]:Element.select(element,expression)[index||0];},previous:function(element,expression,index){element=$(element);if(arguments.length==1)return $(Selector.handlers.previousElementSibling(element));var previousSiblings=element.previousSiblings();return Object.isNumber(expression)?previousSiblings[expression]:Selector.findElement(previousSiblings,expression,index);},next:function(element,expression,index){element=$(element);if(arguments.length==1)return $(Selector.handlers.nextElementSibling(element));var nextSiblings=element.nextSiblings();return Object.isNumber(expression)?nextSiblings[expression]:Selector.findElement(nextSiblings,expression,index);},select:function(){var args=$A(arguments),element=$(args.shift());return Selector.findChildElements(element,args);},adjacent:function(){var args=$A(arguments),element=$(args.shift());return Selector.findChildElements(element.parentNode,args).without(element);},identify:function(element){element=$(element);var id=element.readAttribute('id'),self=arguments.callee;if(id)return id;do{id='anonymous_element_'+self.counter++}while($(id));element.writeAttribute('id',id);return id;},readAttribute:function(element,name){element=$(element);if(Prototype.Browser.IE){var t=Element._attributeTranslations.read;if(t.values[name])return t.values[name](element,name);if(t.names[name])name=t.names[name];if(name.include(':')){return(!element.attributes||!element.attributes[name])?null:element.attributes[name].value;}}
return element.getAttribute(name);},writeAttribute:function(element,name,value){element=$(element);var attributes={},t=Element._attributeTranslations.write;if(typeof name=='object')attributes=name;else attributes[name]=Object.isUndefined(value)?true:value;for(var attr in attributes){name=t.names[attr]||attr;value=attributes[attr];if(t.values[attr])name=t.values[attr](element,value);if(value===false||value===null)
element.removeAttribute(name);else if(value===true)
element.setAttribute(name,name);else element.setAttribute(name,value);}
return element;},getHeight:function(element){return $(element).getDimensions().height;},getWidth:function(element){return $(element).getDimensions().width;},classNames:function(element){return new Element.ClassNames(element);},hasClassName:function(element,className){if(!(element=$(element)))return;var elementClassName=element.className;return(elementClassName.length>0&&(elementClassName==className||new RegExp("(^|\\s)"+className+"(\\s|$)").test(elementClassName)));},addClassName:function(element,className){if(!(element=$(element)))return;if(!element.hasClassName(className))
element.className+=(element.className?' ':'')+className;return element;},removeClassName:function(element,className){if(!(element=$(element)))return;element.className=element.className.replace(new RegExp("(^|\\s+)"+className+"(\\s+|$)"),' ').strip();return element;},toggleClassName:function(element,className){if(!(element=$(element)))return;return element[element.hasClassName(className)?'removeClassName':'addClassName'](className);},cleanWhitespace:function(element){element=$(element);var node=element.firstChild;while(node){var nextNode=node.nextSibling;if(node.nodeType==3&&!/\S/.test(node.nodeValue))
element.removeChild(node);node=nextNode;}
return element;},empty:function(element){return $(element).innerHTML.blank();},descendantOf:function(element,ancestor){element=$(element),ancestor=$(ancestor);if(element.compareDocumentPosition)
return(element.compareDocumentPosition(ancestor)&8)===8;if(ancestor.contains)
return ancestor.contains(element)&&ancestor!==element;while(element=element.parentNode)
if(element==ancestor)return true;return false;},scrollTo:function(element){element=$(element);var pos=element.cumulativeOffset();window.scrollTo(pos[0],pos[1]);return element;},getStyle:function(element,style){element=$(element);style=style=='float'?'cssFloat':style.camelize();var value=element.style[style];if(!value||value=='auto'){var css=document.defaultView.getComputedStyle(element,null);value=css?css[style]:null;}
if(style=='opacity')return value?parseFloat(value):1.0;return value=='auto'?null:value;},getOpacity:function(element){return $(element).getStyle('opacity');},setStyle:function(element,styles){element=$(element);var elementStyle=element.style,match;if(Object.isString(styles)){element.style.cssText+=';'+styles;return styles.include('opacity')?element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]):element;}
for(var property in styles)
if(property=='opacity')element.setOpacity(styles[property]);else
elementStyle[(property=='float'||property=='cssFloat')?(Object.isUndefined(elementStyle.styleFloat)?'cssFloat':'styleFloat'):property]=styles[property];return element;},setOpacity:function(element,value){element=$(element);element.style.opacity=(value==1||value==='')?'':(value<0.00001)?0:value;return element;},getDimensions:function(element){element=$(element);var display=element.getStyle('display');if(display!='none'&&display!=null)
return{width:element.offsetWidth,height:element.offsetHeight};var els=element.style;var originalVisibility=els.visibility;var originalPosition=els.position;var originalDisplay=els.display;els.visibility='hidden';els.position='absolute';els.display='block';var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;els.display=originalDisplay;els.position=originalPosition;els.visibility=originalVisibility;return{width:originalWidth,height:originalHeight};},makePositioned:function(element){element=$(element);var pos=Element.getStyle(element,'position');if(pos=='static'||!pos){element._madePositioned=true;element.style.position='relative';if(Prototype.Browser.Opera){element.style.top=0;element.style.left=0;}}
return element;},undoPositioned:function(element){element=$(element);if(element._madePositioned){element._madePositioned=undefined;element.style.position=element.style.top=element.style.left=element.style.bottom=element.style.right='';}
return element;},makeClipping:function(element){element=$(element);if(element._overflow)return element;element._overflow=Element.getStyle(element,'overflow')||'auto';if(element._overflow!=='hidden')
element.style.overflow='hidden';return element;},undoClipping:function(element){element=$(element);if(!element._overflow)return element;element.style.overflow=element._overflow=='auto'?'':element._overflow;element._overflow=null;return element;},cumulativeOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;}while(element);return Element._returnOffset(valueL,valueT);},positionedOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;if(element){if(element.tagName.toUpperCase()=='BODY')break;var p=Element.getStyle(element,'position');if(p!=='static')break;}}while(element);return Element._returnOffset(valueL,valueT);},absolutize:function(element){element=$(element);if(element.getStyle('position')=='absolute')return element;var offsets=element.positionedOffset();var top=offsets[1];var left=offsets[0];var width=element.clientWidth;var height=element.clientHeight;element._originalLeft=left-parseFloat(element.style.left||0);element._originalTop=top-parseFloat(element.style.top||0);element._originalWidth=element.style.width;element._originalHeight=element.style.height;element.style.position='absolute';element.style.top=top+'px';element.style.left=left+'px';element.style.width=width+'px';element.style.height=height+'px';return element;},relativize:function(element){element=$(element);if(element.getStyle('position')=='relative')return element;element.style.position='relative';var top=parseFloat(element.style.top||0)-(element._originalTop||0);var left=parseFloat(element.style.left||0)-(element._originalLeft||0);element.style.top=top+'px';element.style.left=left+'px';element.style.height=element._originalHeight;element.style.width=element._originalWidth;return element;},cumulativeScrollOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.scrollTop||0;valueL+=element.scrollLeft||0;element=element.parentNode;}while(element);return Element._returnOffset(valueL,valueT);},getOffsetParent:function(element){if(element.offsetParent)return $(element.offsetParent);if(element==document.body)return $(element);while((element=element.parentNode)&&element!=document.body)
if(Element.getStyle(element,'position')!='static')
return $(element);return $(document.body);},viewportOffset:function(forElement){var valueT=0,valueL=0;var element=forElement;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body&&Element.getStyle(element,'position')=='absolute')break;}while(element=element.offsetParent);element=forElement;do{if(!Prototype.Browser.Opera||(element.tagName&&(element.tagName.toUpperCase()=='BODY'))){valueT-=element.scrollTop||0;valueL-=element.scrollLeft||0;}}while(element=element.parentNode);return Element._returnOffset(valueL,valueT);},clonePosition:function(element,source){var options=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});source=$(source);var p=source.viewportOffset();element=$(element);var delta=[0,0];var parent=null;if(Element.getStyle(element,'position')=='absolute'){parent=element.getOffsetParent();delta=parent.viewportOffset();}
if(parent==document.body){delta[0]-=document.body.offsetLeft;delta[1]-=document.body.offsetTop;}
if(options.setLeft)element.style.left=(p[0]-delta[0]+options.offsetLeft)+'px';if(options.setTop)element.style.top=(p[1]-delta[1]+options.offsetTop)+'px';if(options.setWidth)element.style.width=source.offsetWidth+'px';if(options.setHeight)element.style.height=source.offsetHeight+'px';return element;}};Element.Methods.identify.counter=1;Object.extend(Element.Methods,{getElementsBySelector:Element.Methods.select,childElements:Element.Methods.immediateDescendants});Element._attributeTranslations={write:{names:{className:'class',htmlFor:'for'},values:{}}};if(Prototype.Browser.Opera){Element.Methods.getStyle=Element.Methods.getStyle.wrap(function(proceed,element,style){switch(style){case'left':case'top':case'right':case'bottom':if(proceed(element,'position')==='static')return null;case'height':case'width':if(!Element.visible(element))return null;var dim=parseInt(proceed(element,style),10);if(dim!==element['offset'+style.capitalize()])
return dim+'px';var properties;if(style==='height'){properties=['border-top-width','padding-top','padding-bottom','border-bottom-width'];}
else{properties=['border-left-width','padding-left','padding-right','border-right-width'];}
return properties.inject(dim,function(memo,property){var val=proceed(element,property);return val===null?memo:memo-parseInt(val,10);})+'px';default:return proceed(element,style);}});Element.Methods.readAttribute=Element.Methods.readAttribute.wrap(function(proceed,element,attribute){if(attribute==='title')return element.title;return proceed(element,attribute);});}
else if(Prototype.Browser.IE){Element.Methods.getOffsetParent=Element.Methods.getOffsetParent.wrap(function(proceed,element){element=$(element);try{element.offsetParent}
catch(e){return $(document.body)}
var position=element.getStyle('position');if(position!=='static')return proceed(element);element.setStyle({position:'relative'});var value=proceed(element);element.setStyle({position:position});return value;});$w('positionedOffset viewportOffset').each(function(method){Element.Methods[method]=Element.Methods[method].wrap(function(proceed,element){element=$(element);try{element.offsetParent}
catch(e){return Element._returnOffset(0,0)}
var position=element.getStyle('position');if(position!=='static')return proceed(element);var offsetParent=element.getOffsetParent();if(offsetParent&&offsetParent.getStyle('position')==='fixed')
offsetParent.setStyle({zoom:1});element.setStyle({position:'relative'});var value=proceed(element);element.setStyle({position:position});return value;});});Element.Methods.cumulativeOffset=Element.Methods.cumulativeOffset.wrap(function(proceed,element){try{element.offsetParent}
catch(e){return Element._returnOffset(0,0)}
return proceed(element);});Element.Methods.getStyle=function(element,style){element=$(element);style=(style=='float'||style=='cssFloat')?'styleFloat':style.camelize();var value=element.style[style];if(!value&&element.currentStyle)value=element.currentStyle[style];if(style=='opacity'){if(value=(element.getStyle('filter')||'').match(/alpha\(opacity=(.*)\)/))
if(value[1])return parseFloat(value[1])/100;return 1.0;}
if(value=='auto'){if((style=='width'||style=='height')&&(element.getStyle('display')!='none'))
return element['offset'+style.capitalize()]+'px';return null;}
return value;};Element.Methods.setOpacity=function(element,value){function stripAlpha(filter){return filter.replace(/alpha\([^\)]*\)/gi,'');}
element=$(element);var currentStyle=element.currentStyle;if((currentStyle&&!currentStyle.hasLayout)||(!currentStyle&&element.style.zoom=='normal'))
element.style.zoom=1;var filter=element.getStyle('filter'),style=element.style;if(value==1||value===''){(filter=stripAlpha(filter))?style.filter=filter:style.removeAttribute('filter');return element;}else if(value<0.00001)value=0;style.filter=stripAlpha(filter)+'alpha(opacity='+(value*100)+')';return element;};Element._attributeTranslations={read:{names:{'class':'className','for':'htmlFor'},values:{_getAttr:function(element,attribute){return element.getAttribute(attribute,2);},_getAttrNode:function(element,attribute){var node=element.getAttributeNode(attribute);return node?node.value:"";},_getEv:function(element,attribute){attribute=element.getAttribute(attribute);return attribute?attribute.toString().slice(23,-2):null;},_flag:function(element,attribute){return $(element).hasAttribute(attribute)?attribute:null;},style:function(element){return element.style.cssText.toLowerCase();},title:function(element){return element.title;}}}};Element._attributeTranslations.write={names:Object.extend({cellpadding:'cellPadding',cellspacing:'cellSpacing'},Element._attributeTranslations.read.names),values:{checked:function(element,value){element.checked=!!value;},style:function(element,value){element.style.cssText=value?value:'';}}};Element._attributeTranslations.has={};$w('colSpan rowSpan vAlign dateTime accessKey tabIndex '+'encType maxLength readOnly longDesc frameBorder').each(function(attr){Element._attributeTranslations.write.names[attr.toLowerCase()]=attr;Element._attributeTranslations.has[attr.toLowerCase()]=attr;});(function(v){Object.extend(v,{href:v._getAttr,src:v._getAttr,type:v._getAttr,action:v._getAttrNode,disabled:v._flag,checked:v._flag,readonly:v._flag,multiple:v._flag,onload:v._getEv,onunload:v._getEv,onclick:v._getEv,ondblclick:v._getEv,onmousedown:v._getEv,onmouseup:v._getEv,onmouseover:v._getEv,onmousemove:v._getEv,onmouseout:v._getEv,onfocus:v._getEv,onblur:v._getEv,onkeypress:v._getEv,onkeydown:v._getEv,onkeyup:v._getEv,onsubmit:v._getEv,onreset:v._getEv,onselect:v._getEv,onchange:v._getEv});})(Element._attributeTranslations.read.values);}
else if(Prototype.Browser.Gecko&&/rv:1\.8\.0/.test(navigator.userAgent)){Element.Methods.setOpacity=function(element,value){element=$(element);element.style.opacity=(value==1)?0.999999:(value==='')?'':(value<0.00001)?0:value;return element;};}
else if(Prototype.Browser.WebKit){Element.Methods.setOpacity=function(element,value){element=$(element);element.style.opacity=(value==1||value==='')?'':(value<0.00001)?0:value;if(value==1)
if(element.tagName.toUpperCase()=='IMG'&&element.width){element.width++;element.width--;}else try{var n=document.createTextNode(' ');element.appendChild(n);element.removeChild(n);}catch(e){}
return element;};Element.Methods.cumulativeOffset=function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body)
if(Element.getStyle(element,'position')=='absolute')break;element=element.offsetParent;}while(element);return Element._returnOffset(valueL,valueT);};}
if(Prototype.Browser.IE||Prototype.Browser.Opera){Element.Methods.update=function(element,content){element=$(element);if(content&&content.toElement)content=content.toElement();if(Object.isElement(content))return element.update().insert(content);content=Object.toHTML(content);var tagName=element.tagName.toUpperCase();if(tagName in Element._insertionTranslations.tags){$A(element.childNodes).each(function(node){element.removeChild(node)});Element._getContentFromAnonymousElement(tagName,content.stripScripts()).each(function(node){element.appendChild(node)});}
else element.innerHTML=content.stripScripts();content.evalScripts.bind(content).defer();return element;};}
if('outerHTML'in document.createElement('div')){Element.Methods.replace=function(element,content){element=$(element);if(content&&content.toElement)content=content.toElement();if(Object.isElement(content)){element.parentNode.replaceChild(content,element);return element;}
content=Object.toHTML(content);var parent=element.parentNode,tagName=parent.tagName.toUpperCase();if(Element._insertionTranslations.tags[tagName]){var nextSibling=element.next();var fragments=Element._getContentFromAnonymousElement(tagName,content.stripScripts());parent.removeChild(element);if(nextSibling)
fragments.each(function(node){parent.insertBefore(node,nextSibling)});else
fragments.each(function(node){parent.appendChild(node)});}
else element.outerHTML=content.stripScripts();content.evalScripts.bind(content).defer();return element;};}
Element._returnOffset=function(l,t){var result=[l,t];result.left=l;result.top=t;return result;};Element._getContentFromAnonymousElement=function(tagName,html){var div=new Element('div'),t=Element._insertionTranslations.tags[tagName];if(t){div.innerHTML=t[0]+html+t[1];t[2].times(function(){div=div.firstChild});}else div.innerHTML=html;return $A(div.childNodes);};Element._insertionTranslations={before:function(element,node){element.parentNode.insertBefore(node,element);},top:function(element,node){element.insertBefore(node,element.firstChild);},bottom:function(element,node){element.appendChild(node);},after:function(element,node){element.parentNode.insertBefore(node,element.nextSibling);},tags:{TABLE:['<table>','</table>',1],TBODY:['<table><tbody>','</tbody></table>',2],TR:['<table><tbody><tr>','</tr></tbody></table>',3],TD:['<table><tbody><tr><td>','</td></tr></tbody></table>',4],SELECT:['<select>','</select>',1]}};(function(){Object.extend(this.tags,{THEAD:this.tags.TBODY,TFOOT:this.tags.TBODY,TH:this.tags.TD});}).call(Element._insertionTranslations);Element.Methods.Simulated={hasAttribute:function(element,attribute){attribute=Element._attributeTranslations.has[attribute]||attribute;var node=$(element).getAttributeNode(attribute);return!!(node&&node.specified);}};Element.Methods.ByTag={};Object.extend(Element,Element.Methods);if(!Prototype.BrowserFeatures.ElementExtensions&&document.createElement('div')['__proto__']){window.HTMLElement={};window.HTMLElement.prototype=document.createElement('div')['__proto__'];Prototype.BrowserFeatures.ElementExtensions=true;}
Element.extend=(function(){if(Prototype.BrowserFeatures.SpecificElementExtensions)
return Prototype.K;var Methods={},ByTag=Element.Methods.ByTag;var extend=Object.extend(function(element){if(!element||element._extendedByPrototype||element.nodeType!=1||element==window)return element;var methods=Object.clone(Methods),tagName=element.tagName.toUpperCase(),property,value;if(ByTag[tagName])Object.extend(methods,ByTag[tagName]);for(property in methods){value=methods[property];if(Object.isFunction(value)&&!(property in element))
element[property]=value.methodize();}
element._extendedByPrototype=Prototype.emptyFunction;return element;},{refresh:function(){if(!Prototype.BrowserFeatures.ElementExtensions){Object.extend(Methods,Element.Methods);Object.extend(Methods,Element.Methods.Simulated);}}});extend.refresh();return extend;})();Element.hasAttribute=function(element,attribute){if(element.hasAttribute)return element.hasAttribute(attribute);return Element.Methods.Simulated.hasAttribute(element,attribute);};Element.addMethods=function(methods){var F=Prototype.BrowserFeatures,T=Element.Methods.ByTag;if(!methods){Object.extend(Form,Form.Methods);Object.extend(Form.Element,Form.Element.Methods);Object.extend(Element.Methods.ByTag,{"FORM":Object.clone(Form.Methods),"INPUT":Object.clone(Form.Element.Methods),"SELECT":Object.clone(Form.Element.Methods),"TEXTAREA":Object.clone(Form.Element.Methods)});}
if(arguments.length==2){var tagName=methods;methods=arguments[1];}
if(!tagName)Object.extend(Element.Methods,methods||{});else{if(Object.isArray(tagName))tagName.each(extend);else extend(tagName);}
function extend(tagName){tagName=tagName.toUpperCase();if(!Element.Methods.ByTag[tagName])
Element.Methods.ByTag[tagName]={};Object.extend(Element.Methods.ByTag[tagName],methods);}
function copy(methods,destination,onlyIfAbsent){onlyIfAbsent=onlyIfAbsent||false;for(var property in methods){var value=methods[property];if(!Object.isFunction(value))continue;if(!onlyIfAbsent||!(property in destination))
destination[property]=value.methodize();}}
function findDOMClass(tagName){var klass;var trans={"OPTGROUP":"OptGroup","TEXTAREA":"TextArea","P":"Paragraph","FIELDSET":"FieldSet","UL":"UList","OL":"OList","DL":"DList","DIR":"Directory","H1":"Heading","H2":"Heading","H3":"Heading","H4":"Heading","H5":"Heading","H6":"Heading","Q":"Quote","INS":"Mod","DEL":"Mod","A":"Anchor","IMG":"Image","CAPTION":"TableCaption","COL":"TableCol","COLGROUP":"TableCol","THEAD":"TableSection","TFOOT":"TableSection","TBODY":"TableSection","TR":"TableRow","TH":"TableCell","TD":"TableCell","FRAMESET":"FrameSet","IFRAME":"IFrame"};if(trans[tagName])klass='HTML'+trans[tagName]+'Element';if(window[klass])return window[klass];klass='HTML'+tagName+'Element';if(window[klass])return window[klass];klass='HTML'+tagName.capitalize()+'Element';if(window[klass])return window[klass];window[klass]={};window[klass].prototype=document.createElement(tagName)['__proto__'];return window[klass];}
if(F.ElementExtensions){copy(Element.Methods,HTMLElement.prototype);copy(Element.Methods.Simulated,HTMLElement.prototype,true);}
if(F.SpecificElementExtensions){for(var tag in Element.Methods.ByTag){var klass=findDOMClass(tag);if(Object.isUndefined(klass))continue;copy(T[tag],klass.prototype);}}
Object.extend(Element,Element.Methods);delete Element.ByTag;if(Element.extend.refresh)Element.extend.refresh();Element.cache={};};document.viewport={getDimensions:function(){var dimensions={},B=Prototype.Browser;$w('width height').each(function(d){var D=d.capitalize();if(B.WebKit&&!document.evaluate){dimensions[d]=self['inner'+D];}else if(B.Opera&&parseFloat(window.opera.version())<9.5){dimensions[d]=document.body['client'+D]}else{dimensions[d]=document.documentElement['client'+D];}});return dimensions;},getWidth:function(){return this.getDimensions().width;},getHeight:function(){return this.getDimensions().height;},getScrollOffsets:function(){return Element._returnOffset(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft,window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop);}};var Selector=Class.create({initialize:function(expression){this.expression=expression.strip();if(this.shouldUseSelectorsAPI()){this.mode='selectorsAPI';}else if(this.shouldUseXPath()){this.mode='xpath';this.compileXPathMatcher();}else{this.mode="normal";this.compileMatcher();}},shouldUseXPath:function(){if(!Prototype.BrowserFeatures.XPath)return false;var e=this.expression;if(Prototype.Browser.WebKit&&(e.include("-of-type")||e.include(":empty")))
return false;if((/(\[[\w-]*?:|:checked)/).test(e))
return false;return true;},shouldUseSelectorsAPI:function(){if(!Prototype.BrowserFeatures.SelectorsAPI)return false;if(!Selector._div)Selector._div=new Element('div');try{Selector._div.querySelector(this.expression);}catch(e){return false;}
return true;},compileMatcher:function(){var e=this.expression,ps=Selector.patterns,h=Selector.handlers,c=Selector.criteria,le,p,m;if(Selector._cache[e]){this.matcher=Selector._cache[e];return;}
this.matcher=["this.matcher = function(root) {","var r = root, h = Selector.handlers, c = false, n;"];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i in ps){p=ps[i];if(m=e.match(p)){this.matcher.push(Object.isFunction(c[i])?c[i](m):new Template(c[i]).evaluate(m));e=e.replace(m[0],'');break;}}}
this.matcher.push("return h.unique(n);\n}");eval(this.matcher.join('\n'));Selector._cache[this.expression]=this.matcher;},compileXPathMatcher:function(){var e=this.expression,ps=Selector.patterns,x=Selector.xpath,le,m;if(Selector._cache[e]){this.xpath=Selector._cache[e];return;}
this.matcher=['.//*'];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i in ps){if(m=e.match(ps[i])){this.matcher.push(Object.isFunction(x[i])?x[i](m):new Template(x[i]).evaluate(m));e=e.replace(m[0],'');break;}}}
this.xpath=this.matcher.join('');Selector._cache[this.expression]=this.xpath;},findElements:function(root){root=root||document;var e=this.expression,results;switch(this.mode){case'selectorsAPI':if(root!==document){var oldId=root.id,id=$(root).identify();e="#"+id+" "+e;}
results=$A(root.querySelectorAll(e)).map(Element.extend);root.id=oldId;return results;case'xpath':return document._getElementsByXPath(this.xpath,root);default:return this.matcher(root);}},match:function(element){this.tokens=[];var e=this.expression,ps=Selector.patterns,as=Selector.assertions;var le,p,m;while(e&&le!==e&&(/\S/).test(e)){le=e;for(var i in ps){p=ps[i];if(m=e.match(p)){if(as[i]){this.tokens.push([i,Object.clone(m)]);e=e.replace(m[0],'');}else{return this.findElements(document).include(element);}}}}
var match=true,name,matches;for(var i=0,token;token=this.tokens[i];i++){name=token[0],matches=token[1];if(!Selector.assertions[name](element,matches)){match=false;break;}}
return match;},toString:function(){return this.expression;},inspect:function(){return"#<Selector:"+this.expression.inspect()+">";}});Object.extend(Selector,{_cache:{},xpath:{descendant:"//*",child:"/*",adjacent:"/following-sibling::*[1]",laterSibling:'/following-sibling::*',tagName:function(m){if(m[1]=='*')return'';return"[local-name()='"+m[1].toLowerCase()+"' or local-name()='"+m[1].toUpperCase()+"']";},className:"[contains(concat(' ', @class, ' '), ' #{1} ')]",id:"[@id='#{1}']",attrPresence:function(m){m[1]=m[1].toLowerCase();return new Template("[@#{1}]").evaluate(m);},attr:function(m){m[1]=m[1].toLowerCase();m[3]=m[5]||m[6];return new Template(Selector.xpath.operators[m[2]]).evaluate(m);},pseudo:function(m){var h=Selector.xpath.pseudos[m[1]];if(!h)return'';if(Object.isFunction(h))return h(m);return new Template(Selector.xpath.pseudos[m[1]]).evaluate(m);},operators:{'=':"[@#{1}='#{3}']",'!=':"[@#{1}!='#{3}']",'^=':"[starts-with(@#{1}, '#{3}')]",'$=':"[substring(@#{1}, (string-length(@#{1}) - string-length('#{3}') + 1))='#{3}']",'*=':"[contains(@#{1}, '#{3}')]",'~=':"[contains(concat(' ', @#{1}, ' '), ' #{3} ')]",'|=':"[contains(concat('-', @#{1}, '-'), '-#{3}-')]"},pseudos:{'first-child':'[not(preceding-sibling::*)]','last-child':'[not(following-sibling::*)]','only-child':'[not(preceding-sibling::* or following-sibling::*)]','empty':"[count(*) = 0 and (count(text()) = 0)]",'checked':"[@checked]",'disabled':"[(@disabled) and (@type!='hidden')]",'enabled':"[not(@disabled) and (@type!='hidden')]",'not':function(m){var e=m[6],p=Selector.patterns,x=Selector.xpath,le,v;var exclusion=[];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i in p){if(m=e.match(p[i])){v=Object.isFunction(x[i])?x[i](m):new Template(x[i]).evaluate(m);exclusion.push("("+v.substring(1,v.length-1)+")");e=e.replace(m[0],'');break;}}}
return"[not("+exclusion.join(" and ")+")]";},'nth-child':function(m){return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ",m);},'nth-last-child':function(m){return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ",m);},'nth-of-type':function(m){return Selector.xpath.pseudos.nth("position() ",m);},'nth-last-of-type':function(m){return Selector.xpath.pseudos.nth("(last() + 1 - position()) ",m);},'first-of-type':function(m){m[6]="1";return Selector.xpath.pseudos['nth-of-type'](m);},'last-of-type':function(m){m[6]="1";return Selector.xpath.pseudos['nth-last-of-type'](m);},'only-of-type':function(m){var p=Selector.xpath.pseudos;return p['first-of-type'](m)+p['last-of-type'](m);},nth:function(fragment,m){var mm,formula=m[6],predicate;if(formula=='even')formula='2n+0';if(formula=='odd')formula='2n+1';if(mm=formula.match(/^(\d+)$/))
return'['+fragment+"= "+mm[1]+']';if(mm=formula.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(mm[1]=="-")mm[1]=-1;var a=mm[1]?Number(mm[1]):1;var b=mm[2]?Number(mm[2]):0;predicate="[((#{fragment} - #{b}) mod #{a} = 0) and "+"((#{fragment} - #{b}) div #{a} >= 0)]";return new Template(predicate).evaluate({fragment:fragment,a:a,b:b});}}}},criteria:{tagName:'n = h.tagName(n, r, "#{1}", c);      c = false;',className:'n = h.className(n, r, "#{1}", c);    c = false;',id:'n = h.id(n, r, "#{1}", c);           c = false;',attrPresence:'n = h.attrPresence(n, r, "#{1}", c); c = false;',attr:function(m){m[3]=(m[5]||m[6]);return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}", c); c = false;').evaluate(m);},pseudo:function(m){if(m[6])m[6]=m[6].replace(/"/g,'\\"');return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(m);},descendant:'c = "descendant";',child:'c = "child";',adjacent:'c = "adjacent";',laterSibling:'c = "laterSibling";'},patterns:{laterSibling:/^\s*~\s*/,child:/^\s*>\s*/,adjacent:/^\s*\+\s*/,descendant:/^\s/,tagName:/^\s*(\*|[\w\-]+)(\b|$)?/,id:/^#([\w\-\*]+)(\b|$)/,className:/^\.([\w\-\*]+)(\b|$)/,pseudo:/^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis)abled|not)(\((.*?)\))?(\b|$|(?=\s|[:+~>]))/,attrPresence:/^\[((?:[\w]+:)?[\w]+)\]/,attr:/\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\4]*?)\4|([^'"][^\]]*?)))?\]/},assertions:{tagName:function(element,matches){return matches[1].toUpperCase()==element.tagName.toUpperCase();},className:function(element,matches){return Element.hasClassName(element,matches[1]);},id:function(element,matches){return element.id===matches[1];},attrPresence:function(element,matches){return Element.hasAttribute(element,matches[1]);},attr:function(element,matches){var nodeValue=Element.readAttribute(element,matches[1]);return nodeValue&&Selector.operators[matches[2]](nodeValue,matches[5]||matches[6]);}},handlers:{concat:function(a,b){for(var i=0,node;node=b[i];i++)
a.push(node);return a;},mark:function(nodes){var _true=Prototype.emptyFunction;for(var i=0,node;node=nodes[i];i++)
node._countedByPrototype=_true;return nodes;},unmark:function(nodes){for(var i=0,node;node=nodes[i];i++)
node._countedByPrototype=undefined;return nodes;},index:function(parentNode,reverse,ofType){parentNode._countedByPrototype=Prototype.emptyFunction;if(reverse){for(var nodes=parentNode.childNodes,i=nodes.length-1,j=1;i>=0;i--){var node=nodes[i];if(node.nodeType==1&&(!ofType||node._countedByPrototype))node.nodeIndex=j++;}}else{for(var i=0,j=1,nodes=parentNode.childNodes;node=nodes[i];i++)
if(node.nodeType==1&&(!ofType||node._countedByPrototype))node.nodeIndex=j++;}},unique:function(nodes){if(nodes.length==0)return nodes;var results=[],n;for(var i=0,l=nodes.length;i<l;i++)
if(!(n=nodes[i])._countedByPrototype){n._countedByPrototype=Prototype.emptyFunction;results.push(Element.extend(n));}
return Selector.handlers.unmark(results);},descendant:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++)
h.concat(results,node.getElementsByTagName('*'));return results;},child:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++){for(var j=0,child;child=node.childNodes[j];j++)
if(child.nodeType==1&&child.tagName!='!')results.push(child);}
return results;},adjacent:function(nodes){for(var i=0,results=[],node;node=nodes[i];i++){var next=this.nextElementSibling(node);if(next)results.push(next);}
return results;},laterSibling:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++)
h.concat(results,Element.nextSiblings(node));return results;},nextElementSibling:function(node){while(node=node.nextSibling)
if(node.nodeType==1)return node;return null;},previousElementSibling:function(node){while(node=node.previousSibling)
if(node.nodeType==1)return node;return null;},tagName:function(nodes,root,tagName,combinator){var uTagName=tagName.toUpperCase();var results=[],h=Selector.handlers;if(nodes){if(combinator){if(combinator=="descendant"){for(var i=0,node;node=nodes[i];i++)
h.concat(results,node.getElementsByTagName(tagName));return results;}else nodes=this[combinator](nodes);if(tagName=="*")return nodes;}
for(var i=0,node;node=nodes[i];i++)
if(node.tagName.toUpperCase()===uTagName)results.push(node);return results;}else return root.getElementsByTagName(tagName);},id:function(nodes,root,id,combinator){var targetNode=$(id),h=Selector.handlers;if(!targetNode)return[];if(!nodes&&root==document)return[targetNode];if(nodes){if(combinator){if(combinator=='child'){for(var i=0,node;node=nodes[i];i++)
if(targetNode.parentNode==node)return[targetNode];}else if(combinator=='descendant'){for(var i=0,node;node=nodes[i];i++)
if(Element.descendantOf(targetNode,node))return[targetNode];}else if(combinator=='adjacent'){for(var i=0,node;node=nodes[i];i++)
if(Selector.handlers.previousElementSibling(targetNode)==node)
return[targetNode];}else nodes=h[combinator](nodes);}
for(var i=0,node;node=nodes[i];i++)
if(node==targetNode)return[targetNode];return[];}
return(targetNode&&Element.descendantOf(targetNode,root))?[targetNode]:[];},className:function(nodes,root,className,combinator){if(nodes&&combinator)nodes=this[combinator](nodes);return Selector.handlers.byClassName(nodes,root,className);},byClassName:function(nodes,root,className){if(!nodes)nodes=Selector.handlers.descendant([root]);var needle=' '+className+' ';for(var i=0,results=[],node,nodeClassName;node=nodes[i];i++){nodeClassName=node.className;if(nodeClassName.length==0)continue;if(nodeClassName==className||(' '+nodeClassName+' ').include(needle))
results.push(node);}
return results;},attrPresence:function(nodes,root,attr,combinator){if(!nodes)nodes=root.getElementsByTagName("*");if(nodes&&combinator)nodes=this[combinator](nodes);var results=[];for(var i=0,node;node=nodes[i];i++)
if(Element.hasAttribute(node,attr))results.push(node);return results;},attr:function(nodes,root,attr,value,operator,combinator){if(!nodes)nodes=root.getElementsByTagName("*");if(nodes&&combinator)nodes=this[combinator](nodes);var handler=Selector.operators[operator],results=[];for(var i=0,node;node=nodes[i];i++){var nodeValue=Element.readAttribute(node,attr);if(nodeValue===null)continue;if(handler(nodeValue,value))results.push(node);}
return results;},pseudo:function(nodes,name,value,root,combinator){if(nodes&&combinator)nodes=this[combinator](nodes);if(!nodes)nodes=root.getElementsByTagName("*");return Selector.pseudos[name](nodes,value,root);}},pseudos:{'first-child':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(Selector.handlers.previousElementSibling(node))continue;results.push(node);}
return results;},'last-child':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(Selector.handlers.nextElementSibling(node))continue;results.push(node);}
return results;},'only-child':function(nodes,value,root){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++)
if(!h.previousElementSibling(node)&&!h.nextElementSibling(node))
results.push(node);return results;},'nth-child':function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root);},'nth-last-child':function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,true);},'nth-of-type':function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,false,true);},'nth-last-of-type':function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,true,true);},'first-of-type':function(nodes,formula,root){return Selector.pseudos.nth(nodes,"1",root,false,true);},'last-of-type':function(nodes,formula,root){return Selector.pseudos.nth(nodes,"1",root,true,true);},'only-of-type':function(nodes,formula,root){var p=Selector.pseudos;return p['last-of-type'](p['first-of-type'](nodes,formula,root),formula,root);},getIndices:function(a,b,total){if(a==0)return b>0?[b]:[];return $R(1,total).inject([],function(memo,i){if(0==(i-b)%a&&(i-b)/a>=0)memo.push(i);return memo;});},nth:function(nodes,formula,root,reverse,ofType){if(nodes.length==0)return[];if(formula=='even')formula='2n+0';if(formula=='odd')formula='2n+1';var h=Selector.handlers,results=[],indexed=[],m;h.mark(nodes);for(var i=0,node;node=nodes[i];i++){if(!node.parentNode._countedByPrototype){h.index(node.parentNode,reverse,ofType);indexed.push(node.parentNode);}}
if(formula.match(/^\d+$/)){formula=Number(formula);for(var i=0,node;node=nodes[i];i++)
if(node.nodeIndex==formula)results.push(node);}else if(m=formula.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(m[1]=="-")m[1]=-1;var a=m[1]?Number(m[1]):1;var b=m[2]?Number(m[2]):0;var indices=Selector.pseudos.getIndices(a,b,nodes.length);for(var i=0,node,l=indices.length;node=nodes[i];i++){for(var j=0;j<l;j++)
if(node.nodeIndex==indices[j])results.push(node);}}
h.unmark(nodes);h.unmark(indexed);return results;},'empty':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(node.tagName=='!'||node.firstChild)continue;results.push(node);}
return results;},'not':function(nodes,selector,root){var h=Selector.handlers,selectorType,m;var exclusions=new Selector(selector).findElements(root);h.mark(exclusions);for(var i=0,results=[],node;node=nodes[i];i++)
if(!node._countedByPrototype)results.push(node);h.unmark(exclusions);return results;},'enabled':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++)
if(!node.disabled&&(!node.type||node.type!=='hidden'))
results.push(node);return results;},'disabled':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++)
if(node.disabled)results.push(node);return results;},'checked':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++)
if(node.checked)results.push(node);return results;}},operators:{'=':function(nv,v){return nv==v;},'!=':function(nv,v){return nv!=v;},'^=':function(nv,v){return nv==v||nv&&nv.startsWith(v);},'$=':function(nv,v){return nv==v||nv&&nv.endsWith(v);},'*=':function(nv,v){return nv==v||nv&&nv.include(v);},'$=':function(nv,v){return nv.endsWith(v);},'*=':function(nv,v){return nv.include(v);},'~=':function(nv,v){return(' '+nv+' ').include(' '+v+' ');},'|=':function(nv,v){return('-'+(nv||"").toUpperCase()+'-').include('-'+(v||"").toUpperCase()+'-');}},split:function(expression){var expressions=[];expression.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/,function(m){expressions.push(m[1].strip());});return expressions;},matchElements:function(elements,expression){var matches=$$(expression),h=Selector.handlers;h.mark(matches);for(var i=0,results=[],element;element=elements[i];i++)
if(element._countedByPrototype)results.push(element);h.unmark(matches);return results;},findElement:function(elements,expression,index){if(Object.isNumber(expression)){index=expression;expression=false;}
return Selector.matchElements(elements,expression||'*')[index||0];},findChildElements:function(element,expressions){expressions=Selector.split(expressions.join(','));var results=[],h=Selector.handlers;for(var i=0,l=expressions.length,selector;i<l;i++){selector=new Selector(expressions[i].strip());h.concat(results,selector.findElements(element));}
return(l>1)?h.unique(results):results;}});if(Prototype.Browser.IE){Object.extend(Selector.handlers,{concat:function(a,b){for(var i=0,node;node=b[i];i++)
if(node.tagName!=="!")a.push(node);return a;},unmark:function(nodes){for(var i=0,node;node=nodes[i];i++)
node.removeAttribute('_countedByPrototype');return nodes;}});}
function $$(){return Selector.findChildElements(document,$A(arguments));}
var Form={reset:function(form){$(form).reset();return form;},serializeElements:function(elements,options){if(typeof options!='object')options={hash:!!options};else if(Object.isUndefined(options.hash))options.hash=true;var key,value,submitted=false,submit=options.submit;var data=elements.inject({},function(result,element){if(!element.disabled&&element.name){key=element.name;value=$(element).getValue();if(value!=null&&element.type!='file'&&(element.type!='submit'||(!submitted&&submit!==false&&(!submit||key==submit)&&(submitted=true)))){if(key in result){if(!Object.isArray(result[key]))result[key]=[result[key]];result[key].push(value);}
else result[key]=value;}}
return result;});return options.hash?data:Object.toQueryString(data);}};Form.Methods={serialize:function(form,options){return Form.serializeElements(Form.getElements(form),options);},getElements:function(form){return $A($(form).getElementsByTagName('*')).inject([],function(elements,child){if(Form.Element.Serializers[child.tagName.toLowerCase()])
elements.push(Element.extend(child));return elements;});},getInputs:function(form,typeName,name){form=$(form);var inputs=form.getElementsByTagName('input');if(!typeName&&!name)return $A(inputs).map(Element.extend);for(var i=0,matchingInputs=[],length=inputs.length;i<length;i++){var input=inputs[i];if((typeName&&input.type!=typeName)||(name&&input.name!=name))
continue;matchingInputs.push(Element.extend(input));}
return matchingInputs;},disable:function(form){form=$(form);Form.getElements(form).invoke('disable');return form;},enable:function(form){form=$(form);Form.getElements(form).invoke('enable');return form;},findFirstElement:function(form){var elements=$(form).getElements().findAll(function(element){return'hidden'!=element.type&&!element.disabled;});var firstByIndex=elements.findAll(function(element){return element.hasAttribute('tabIndex')&&element.tabIndex>=0;}).sortBy(function(element){return element.tabIndex}).first();return firstByIndex?firstByIndex:elements.find(function(element){return['input','select','textarea'].include(element.tagName.toLowerCase());});},focusFirstElement:function(form){form=$(form);form.findFirstElement().activate();return form;},request:function(form,options){form=$(form),options=Object.clone(options||{});var params=options.parameters,action=form.readAttribute('action')||'';if(action.blank())action=window.location.href;options.parameters=form.serialize(true);if(params){if(Object.isString(params))params=params.toQueryParams();Object.extend(options.parameters,params);}
if(form.hasAttribute('method')&&!options.method)
options.method=form.method;return new Ajax.Request(action,options);}};Form.Element={focus:function(element){$(element).focus();return element;},select:function(element){$(element).select();return element;}};Form.Element.Methods={serialize:function(element){element=$(element);if(!element.disabled&&element.name){var value=element.getValue();if(value!=undefined){var pair={};pair[element.name]=value;return Object.toQueryString(pair);}}
return'';},getValue:function(element){element=$(element);var method=element.tagName.toLowerCase();return Form.Element.Serializers[method](element);},setValue:function(element,value){element=$(element);var method=element.tagName.toLowerCase();Form.Element.Serializers[method](element,value);return element;},clear:function(element){$(element).value='';return element;},present:function(element){return $(element).value!='';},activate:function(element){element=$(element);try{element.focus();if(element.select&&(element.tagName.toLowerCase()!='input'||!['button','reset','submit'].include(element.type)))
element.select();}catch(e){}
return element;},disable:function(element){element=$(element);element.disabled=true;return element;},enable:function(element){element=$(element);element.disabled=false;return element;}};var Field=Form.Element;var $F=Form.Element.Methods.getValue;Form.Element.Serializers={input:function(element,value){switch(element.type.toLowerCase()){case'checkbox':case'radio':return Form.Element.Serializers.inputSelector(element,value);default:return Form.Element.Serializers.textarea(element,value);}},inputSelector:function(element,value){if(Object.isUndefined(value))return element.checked?element.value:null;else element.checked=!!value;},textarea:function(element,value){if(Object.isUndefined(value))return element.value;else element.value=value;},select:function(element,value){if(Object.isUndefined(value))
return this[element.type=='select-one'?'selectOne':'selectMany'](element);else{var opt,currentValue,single=!Object.isArray(value);for(var i=0,length=element.length;i<length;i++){opt=element.options[i];currentValue=this.optionValue(opt);if(single){if(currentValue==value){opt.selected=true;return;}}
else opt.selected=value.include(currentValue);}}},selectOne:function(element){var index=element.selectedIndex;return index>=0?this.optionValue(element.options[index]):null;},selectMany:function(element){var values,length=element.length;if(!length)return null;for(var i=0,values=[];i<length;i++){var opt=element.options[i];if(opt.selected)values.push(this.optionValue(opt));}
return values;},optionValue:function(opt){return Element.extend(opt).hasAttribute('value')?opt.value:opt.text;}};Abstract.TimedObserver=Class.create(PeriodicalExecuter,{initialize:function($super,element,frequency,callback){$super(callback,frequency);this.element=$(element);this.lastValue=this.getValue();},execute:function(){var value=this.getValue();if(Object.isString(this.lastValue)&&Object.isString(value)?this.lastValue!=value:String(this.lastValue)!=String(value)){this.callback(this.element,value);this.lastValue=value;}}});Form.Element.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=Class.create({initialize:function(element,callback){this.element=$(element);this.callback=callback;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=='form')
this.registerFormCallbacks();else
this.registerCallback(this.element);},onElementEvent:function(){var value=this.getValue();if(this.lastValue!=value){this.callback(this.element,value);this.lastValue=value;}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback,this);},registerCallback:function(element){if(element.type){switch(element.type.toLowerCase()){case'checkbox':case'radio':Event.observe(element,'click',this.onElementEvent.bind(this));break;default:Event.observe(element,'change',this.onElementEvent.bind(this));break;}}}});Form.Element.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.serialize(this.element);}});if(!window.Event)var Event={};Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,KEY_INSERT:45,cache:{},relatedTarget:function(event){var element;switch(event.type){case'mouseover':element=event.fromElement;break;case'mouseout':element=event.toElement;break;default:return null;}
return Element.extend(element);}});Event.Methods=(function(){var isButton;if(Prototype.Browser.IE){var buttonMap={0:1,1:4,2:2};isButton=function(event,code){return event.button==buttonMap[code];};}else if(Prototype.Browser.WebKit){isButton=function(event,code){switch(code){case 0:return event.which==1&&!event.metaKey;case 1:return event.which==1&&event.metaKey;default:return false;}};}else{isButton=function(event,code){return event.which?(event.which===code+1):(event.button===code);};}
return{isLeftClick:function(event){return isButton(event,0)},isMiddleClick:function(event){return isButton(event,1)},isRightClick:function(event){return isButton(event,2)},element:function(event){event=Event.extend(event);var node=event.target,type=event.type,currentTarget=event.currentTarget;if(currentTarget&&currentTarget.tagName){if(type==='load'||type==='error'||(type==='click'&&currentTarget.tagName.toLowerCase()==='input'&&currentTarget.type==='radio'))
node=currentTarget;}
if(node.nodeType==Node.TEXT_NODE)node=node.parentNode;return Element.extend(node);},findElement:function(event,expression){var element=Event.element(event);if(!expression)return element;var elements=[element].concat(element.ancestors());return Selector.findElement(elements,expression,0);},pointer:function(event){var docElement=document.documentElement,body=document.body||{scrollLeft:0,scrollTop:0};return{x:event.pageX||(event.clientX+
(docElement.scrollLeft||body.scrollLeft)-
(docElement.clientLeft||0)),y:event.pageY||(event.clientY+
(docElement.scrollTop||body.scrollTop)-
(docElement.clientTop||0))};},pointerX:function(event){return Event.pointer(event).x},pointerY:function(event){return Event.pointer(event).y},stop:function(event){Event.extend(event);event.preventDefault();event.stopPropagation();event.stopped=true;}};})();Event.extend=(function(){var methods=Object.keys(Event.Methods).inject({},function(m,name){m[name]=Event.Methods[name].methodize();return m;});if(Prototype.Browser.IE){Object.extend(methods,{stopPropagation:function(){this.cancelBubble=true},preventDefault:function(){this.returnValue=false},inspect:function(){return"[object Event]"}});return function(event){if(!event)return false;if(event._extendedByPrototype)return event;event._extendedByPrototype=Prototype.emptyFunction;var pointer=Event.pointer(event);Object.extend(event,{target:event.srcElement,relatedTarget:Event.relatedTarget(event),pageX:pointer.x,pageY:pointer.y});return Object.extend(event,methods);};}else{Event.prototype=Event.prototype||document.createEvent("HTMLEvents")['__proto__'];Object.extend(Event.prototype,methods);return Prototype.K;}})();Object.extend(Event,(function(){var cache=Event.cache;function getEventID(element){if(element._prototypeEventID)return element._prototypeEventID[0];arguments.callee.id=arguments.callee.id||1;return element._prototypeEventID=[++arguments.callee.id];}
function getDOMEventName(eventName){if(eventName&&eventName.include(':'))return"dataavailable";return eventName;}
function getCacheForID(id){return cache[id]=cache[id]||{};}
function getWrappersForEventName(id,eventName){var c=getCacheForID(id);return c[eventName]=c[eventName]||[];}
function createWrapper(element,eventName,handler){var id=getEventID(element);var c=getWrappersForEventName(id,eventName);if(c.pluck("handler").include(handler))return false;var wrapper=function(event){if(!Event||!Event.extend||(event.eventName&&event.eventName!=eventName))
return false;Event.extend(event);handler.call(element,event);};wrapper.handler=handler;c.push(wrapper);return wrapper;}
function findWrapper(id,eventName,handler){var c=getWrappersForEventName(id,eventName);return c.find(function(wrapper){return wrapper.handler==handler});}
function destroyWrapper(id,eventName,handler){var c=getCacheForID(id);if(!c[eventName])return false;c[eventName]=c[eventName].without(findWrapper(id,eventName,handler));}
function destroyCache(){for(var id in cache)
for(var eventName in cache[id])
cache[id][eventName]=null;}
if(window.attachEvent){window.attachEvent("onunload",destroyCache);}
if(Prototype.Browser.WebKit){window.addEventListener('unload',Prototype.emptyFunction,false);}
return{observe:function(element,eventName,handler){element=$(element);var name=getDOMEventName(eventName);var wrapper=createWrapper(element,eventName,handler);if(!wrapper)return element;if(element.addEventListener){element.addEventListener(name,wrapper,false);}else{element.attachEvent("on"+name,wrapper);}
return element;},stopObserving:function(element,eventName,handler){element=$(element);var id=getEventID(element),name=getDOMEventName(eventName);if(!handler&&eventName){getWrappersForEventName(id,eventName).each(function(wrapper){element.stopObserving(eventName,wrapper.handler);});return element;}else if(!eventName){Object.keys(getCacheForID(id)).each(function(eventName){element.stopObserving(eventName);});return element;}
var wrapper=findWrapper(id,eventName,handler);if(!wrapper)return element;if(element.removeEventListener){element.removeEventListener(name,wrapper,false);}else{element.detachEvent("on"+name,wrapper);}
destroyWrapper(id,eventName,handler);return element;},fire:function(element,eventName,memo){element=$(element);if(element==document&&document.createEvent&&!element.dispatchEvent)
element=document.documentElement;var event;if(document.createEvent){event=document.createEvent("HTMLEvents");event.initEvent("dataavailable",true,true);}else{event=document.createEventObject();event.eventType="ondataavailable";}
event.eventName=eventName;event.memo=memo||{};if(document.createEvent){element.dispatchEvent(event);}else{element.fireEvent(event.eventType,event);}
return Event.extend(event);}};})());Object.extend(Event,Event.Methods);Element.addMethods({fire:Event.fire,observe:Event.observe,stopObserving:Event.stopObserving});Object.extend(document,{fire:Element.Methods.fire.methodize(),observe:Element.Methods.observe.methodize(),stopObserving:Element.Methods.stopObserving.methodize(),loaded:false});(function(){var timer;function fireContentLoadedEvent(){if(document.loaded)return;if(timer)window.clearInterval(timer);document.fire("dom:loaded");document.loaded=true;}
if(document.addEventListener){if(Prototype.Browser.WebKit){timer=window.setInterval(function(){if(/loaded|complete/.test(document.readyState))
fireContentLoadedEvent();},0);Event.observe(window,"load",fireContentLoadedEvent);}else{document.addEventListener("DOMContentLoaded",fireContentLoadedEvent,false);}}else{document.write("<script id=__onDOMContentLoaded defer src=//:><\/script>");$("__onDOMContentLoaded").onreadystatechange=function(){if(this.readyState=="complete"){this.onreadystatechange=null;fireContentLoadedEvent();}};}})();Hash.toQueryString=Object.toQueryString;var Toggle={display:Element.toggle};Element.Methods.childOf=Element.Methods.descendantOf;var Insertion={Before:function(element,content){return Element.insert(element,{before:content});},Top:function(element,content){return Element.insert(element,{top:content});},Bottom:function(element,content){return Element.insert(element,{bottom:content});},After:function(element,content){return Element.insert(element,{after:content});}};var $continue=new Error('"throw $continue" is deprecated, use "return" instead');var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;},within:function(element,x,y){if(this.includeScrollOffsets)
return this.withinIncludingScrolloffsets(element,x,y);this.xcomp=x;this.ycomp=y;this.offset=Element.cumulativeOffset(element);return(y>=this.offset[1]&&y<this.offset[1]+element.offsetHeight&&x>=this.offset[0]&&x<this.offset[0]+element.offsetWidth);},withinIncludingScrolloffsets:function(element,x,y){var offsetcache=Element.cumulativeScrollOffset(element);this.xcomp=x+offsetcache[0]-this.deltaX;this.ycomp=y+offsetcache[1]-this.deltaY;this.offset=Element.cumulativeOffset(element);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+element.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+element.offsetWidth);},overlap:function(mode,element){if(!mode)return 0;if(mode=='vertical')
return((this.offset[1]+element.offsetHeight)-this.ycomp)/element.offsetHeight;if(mode=='horizontal')
return((this.offset[0]+element.offsetWidth)-this.xcomp)/element.offsetWidth;},cumulativeOffset:Element.Methods.cumulativeOffset,positionedOffset:Element.Methods.positionedOffset,absolutize:function(element){Position.prepare();return Element.absolutize(element);},relativize:function(element){Position.prepare();return Element.relativize(element);},realOffset:Element.Methods.cumulativeScrollOffset,offsetParent:Element.Methods.getOffsetParent,page:Element.Methods.viewportOffset,clone:function(source,target,options){options=options||{};return Element.clonePosition(target,source,options);}};if(!document.getElementsByClassName)document.getElementsByClassName=function(instanceMethods){function iter(name){return name.blank()?null:"[contains(concat(' ', @class, ' '), ' "+name+" ')]";}
instanceMethods.getElementsByClassName=Prototype.BrowserFeatures.XPath?function(element,className){className=className.toString().strip();var cond=/\s/.test(className)?$w(className).map(iter).join(''):iter(className);return cond?document._getElementsByXPath('.//*'+cond,element):[];}:function(element,className){className=className.toString().strip();var elements=[],classNames=(/\s/.test(className)?$w(className):null);if(!classNames&&!className)return elements;var nodes=$(element).getElementsByTagName('*');className=' '+className+' ';for(var i=0,child,cn;child=nodes[i];i++){if(child.className&&(cn=' '+child.className+' ')&&(cn.include(className)||(classNames&&classNames.all(function(name){return!name.toString().blank()&&cn.include(' '+name+' ');}))))
elements.push(Element.extend(child));}
return elements;};return function(className,parentElement){return $(parentElement||document.body).getElementsByClassName(className);};}(Element.Methods);Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(element){this.element=$(element);},_each:function(iterator){this.element.className.split(/\s+/).select(function(name){return name.length>0;})._each(iterator);},set:function(className){this.element.className=className;},add:function(classNameToAdd){if(this.include(classNameToAdd))return;this.set($A(this).concat(classNameToAdd).join(' '));},remove:function(classNameToRemove){if(!this.include(classNameToRemove))return;this.set($A(this).without(classNameToRemove).join(' '));},toString:function(){return $A(this).join(' ');}};Object.extend(Element.ClassNames.prototype,Enumerable);Element.addMethods();String.prototype.parseColor=function(){var color='#';if(this.slice(0,4)=='rgb('){var cols=this.slice(4,this.length-1).split(',');var i=0;do{color+=parseInt(cols[i]).toColorPart()}while(++i<3);}else{if(this.slice(0,1)=='#'){if(this.length==4)for(var i=1;i<4;i++)color+=(this.charAt(i)+this.charAt(i)).toLowerCase();if(this.length==7)color=this.toLowerCase();}}
return(color.length==7?color:(arguments[0]||this));};Element.collectTextNodes=function(element){return $A($(element).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:(node.hasChildNodes()?Element.collectTextNodes(node):''));}).flatten().join('');};Element.collectTextNodesIgnoreClass=function(element,className){return $A($(element).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:((node.hasChildNodes()&&!Element.hasClassName(node,className))?Element.collectTextNodesIgnoreClass(node,className):''));}).flatten().join('');};Element.setContentZoom=function(element,percent){element=$(element);element.setStyle({fontSize:(percent/100)+'em'});if(Prototype.Browser.WebKit)window.scrollBy(0,0);return element;};Element.getInlineOpacity=function(element){return $(element).style.opacity||'';};Element.forceRerendering=function(element){try{element=$(element);var n=document.createTextNode(' ');element.appendChild(n);element.removeChild(n);}catch(e){}};var Effect={_elementDoesNotExistError:{name:'ElementDoesNotExistError',message:'The specified DOM element does not exist, but is required for this effect to operate'},Transitions:{linear:Prototype.K,sinoidal:function(pos){return(-Math.cos(pos*Math.PI)/2)+.5;},reverse:function(pos){return 1-pos;},flicker:function(pos){var pos=((-Math.cos(pos*Math.PI)/4)+.75)+Math.random()/4;return pos>1?1:pos;},wobble:function(pos){return(-Math.cos(pos*Math.PI*(9*pos))/2)+.5;},pulse:function(pos,pulses){return(-Math.cos((pos*((pulses||5)-.5)*2)*Math.PI)/2)+.5;},spring:function(pos){return 1-(Math.cos(pos*4.5*Math.PI)*Math.exp(-pos*6));},none:function(pos){return 0;},full:function(pos){return 1;}},DefaultOptions:{duration:1.0,fps:100,sync:false,from:0.0,to:1.0,delay:0.0,queue:'parallel'},tagifyText:function(element){var tagifyStyle='position:relative';if(Prototype.Browser.IE)tagifyStyle+=';zoom:1';element=$(element);$A(element.childNodes).each(function(child){if(child.nodeType==3){child.nodeValue.toArray().each(function(character){element.insertBefore(new Element('span',{style:tagifyStyle}).update(character==' '?String.fromCharCode(160):character),child);});Element.remove(child);}});},multiple:function(element,effect){var elements;if(((typeof element=='object')||Object.isFunction(element))&&(element.length))
elements=element;else
elements=$(element).childNodes;var options=Object.extend({speed:0.1,delay:0.0},arguments[2]||{});var masterDelay=options.delay;$A(elements).each(function(element,index){new effect(element,Object.extend(options,{delay:index*options.speed+masterDelay}));});},PAIRS:{'slide':['SlideDown','SlideUp'],'blind':['BlindDown','BlindUp'],'appear':['Appear','Fade']},toggle:function(element,effect){element=$(element);effect=(effect||'appear').toLowerCase();var options=Object.extend({queue:{position:'end',scope:(element.id||'global'),limit:1}},arguments[2]||{});Effect[element.visible()?Effect.PAIRS[effect][1]:Effect.PAIRS[effect][0]](element,options);}};Effect.DefaultOptions.transition=Effect.Transitions.sinoidal;Effect.ScopedQueue=Class.create(Enumerable,{initialize:function(){this.effects=[];this.interval=null;},_each:function(iterator){this.effects._each(iterator);},add:function(effect){var timestamp=new Date().getTime();var position=Object.isString(effect.options.queue)?effect.options.queue:effect.options.queue.position;switch(position){case'front':this.effects.findAll(function(e){return e.state=='idle'}).each(function(e){e.startOn+=effect.finishOn;e.finishOn+=effect.finishOn;});break;case'with-last':timestamp=this.effects.pluck('startOn').max()||timestamp;break;case'end':timestamp=this.effects.pluck('finishOn').max()||timestamp;break;}
effect.startOn+=timestamp;effect.finishOn+=timestamp;if(!effect.options.queue.limit||(this.effects.length<effect.options.queue.limit))
this.effects.push(effect);if(!this.interval)
this.interval=setInterval(this.loop.bind(this),15);},remove:function(effect){this.effects=this.effects.reject(function(e){return e==effect});if(this.effects.length==0){clearInterval(this.interval);this.interval=null;}},loop:function(){var timePos=new Date().getTime();for(var i=0,len=this.effects.length;i<len;i++)
this.effects[i]&&this.effects[i].loop(timePos);}});Effect.Queues={instances:$H(),get:function(queueName){if(!Object.isString(queueName))return queueName;return this.instances.get(queueName)||this.instances.set(queueName,new Effect.ScopedQueue());}};Effect.Queue=Effect.Queues.get('global');Effect.Base=Class.create({position:null,start:function(options){function codeForEvent(options,eventName){return((options[eventName+'Internal']?'this.options.'+eventName+'Internal(this);':'')+
(options[eventName]?'this.options.'+eventName+'(this);':''));}
if(options&&options.transition===false)options.transition=Effect.Transitions.linear;this.options=Object.extend(Object.extend({},Effect.DefaultOptions),options||{});this.currentFrame=0;this.state='idle';this.startOn=this.options.delay*1000;this.finishOn=this.startOn+(this.options.duration*1000);this.fromToDelta=this.options.to-this.options.from;this.totalTime=this.finishOn-this.startOn;this.totalFrames=this.options.fps*this.options.duration;this.render=(function(){function dispatch(effect,eventName){if(effect.options[eventName+'Internal'])
effect.options[eventName+'Internal'](effect);if(effect.options[eventName])
effect.options[eventName](effect);}
return function(pos){if(this.state==="idle"){this.state="running";dispatch(this,'beforeSetup');if(this.setup)this.setup();dispatch(this,'afterSetup');}
if(this.state==="running"){pos=(this.options.transition(pos)*this.fromToDelta)+this.options.from;this.position=pos;dispatch(this,'beforeUpdate');if(this.update)this.update(pos);dispatch(this,'afterUpdate');}};})();this.event('beforeStart');if(!this.options.sync)
Effect.Queues.get(Object.isString(this.options.queue)?'global':this.options.queue.scope).add(this);},loop:function(timePos){if(timePos>=this.startOn){if(timePos>=this.finishOn){this.render(1.0);this.cancel();this.event('beforeFinish');if(this.finish)this.finish();this.event('afterFinish');return;}
var pos=(timePos-this.startOn)/this.totalTime,frame=(pos*this.totalFrames).round();if(frame>this.currentFrame){this.render(pos);this.currentFrame=frame;}}},cancel:function(){if(!this.options.sync)
Effect.Queues.get(Object.isString(this.options.queue)?'global':this.options.queue.scope).remove(this);this.state='finished';},event:function(eventName){if(this.options[eventName+'Internal'])this.options[eventName+'Internal'](this);if(this.options[eventName])this.options[eventName](this);},inspect:function(){var data=$H();for(property in this)
if(!Object.isFunction(this[property]))data.set(property,this[property]);return'#<Effect:'+data.inspect()+',options:'+$H(this.options).inspect()+'>';}});Effect.Parallel=Class.create(Effect.Base,{initialize:function(effects){this.effects=effects||[];this.start(arguments[1]);},update:function(position){this.effects.invoke('render',position);},finish:function(position){this.effects.each(function(effect){effect.render(1.0);effect.cancel();effect.event('beforeFinish');if(effect.finish)effect.finish(position);effect.event('afterFinish');});}});Effect.Tween=Class.create(Effect.Base,{initialize:function(object,from,to){object=Object.isString(object)?$(object):object;var args=$A(arguments),method=args.last(),options=args.length==5?args[3]:null;this.method=Object.isFunction(method)?method.bind(object):Object.isFunction(object[method])?object[method].bind(object):function(value){object[method]=value};this.start(Object.extend({from:from,to:to},options||{}));},update:function(position){this.method(position);}});Effect.Event=Class.create(Effect.Base,{initialize:function(){this.start(Object.extend({duration:0},arguments[0]||{}));},update:Prototype.emptyFunction});Effect.Opacity=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout))
this.element.setStyle({zoom:1});var options=Object.extend({from:this.element.getOpacity()||0.0,to:1.0},arguments[1]||{});this.start(options);},update:function(position){this.element.setOpacity(position);}});Effect.Move=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({x:0,y:0,mode:'relative'},arguments[1]||{});this.start(options);},setup:function(){this.element.makePositioned();this.originalLeft=parseFloat(this.element.getStyle('left')||'0');this.originalTop=parseFloat(this.element.getStyle('top')||'0');if(this.options.mode=='absolute'){this.options.x=this.options.x-this.originalLeft;this.options.y=this.options.y-this.originalTop;}},update:function(position){this.element.setStyle({left:(this.options.x*position+this.originalLeft).round()+'px',top:(this.options.y*position+this.originalTop).round()+'px'});}});Effect.MoveBy=function(element,toTop,toLeft){return new Effect.Move(element,Object.extend({x:toLeft,y:toTop},arguments[3]||{}));};Effect.Scale=Class.create(Effect.Base,{initialize:function(element,percent){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:'box',scaleFrom:100.0,scaleTo:percent},arguments[2]||{});this.start(options);},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;this.elementPositioning=this.element.getStyle('position');this.originalStyle={};['top','left','width','height','fontSize'].each(function(k){this.originalStyle[k]=this.element.style[k];}.bind(this));this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;var fontSize=this.element.getStyle('font-size')||'100%';['em','px','%','pt'].each(function(fontSizeType){if(fontSize.indexOf(fontSizeType)>0){this.fontSize=parseFloat(fontSize);this.fontSizeType=fontSizeType;}}.bind(this));this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;this.dims=null;if(this.options.scaleMode=='box')
this.dims=[this.element.offsetHeight,this.element.offsetWidth];if(/^content/.test(this.options.scaleMode))
this.dims=[this.element.scrollHeight,this.element.scrollWidth];if(!this.dims)
this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];},update:function(position){var currentScale=(this.options.scaleFrom/100.0)+(this.factor*position);if(this.options.scaleContent&&this.fontSize)
this.element.setStyle({fontSize:this.fontSize*currentScale+this.fontSizeType});this.setDimensions(this.dims[0]*currentScale,this.dims[1]*currentScale);},finish:function(position){if(this.restoreAfterFinish)this.element.setStyle(this.originalStyle);},setDimensions:function(height,width){var d={};if(this.options.scaleX)d.width=width.round()+'px';if(this.options.scaleY)d.height=height.round()+'px';if(this.options.scaleFromCenter){var topd=(height-this.dims[0])/2;var leftd=(width-this.dims[1])/2;if(this.elementPositioning=='absolute'){if(this.options.scaleY)d.top=this.originalTop-topd+'px';if(this.options.scaleX)d.left=this.originalLeft-leftd+'px';}else{if(this.options.scaleY)d.top=-topd+'px';if(this.options.scaleX)d.left=-leftd+'px';}}
this.element.setStyle(d);}});Effect.Highlight=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({startcolor:'#ffff99'},arguments[1]||{});this.start(options);},setup:function(){if(this.element.getStyle('display')=='none'){this.cancel();return;}
this.oldStyle={};if(!this.options.keepBackgroundImage){this.oldStyle.backgroundImage=this.element.getStyle('background-image');this.element.setStyle({backgroundImage:'none'});}
if(!this.options.endcolor)
this.options.endcolor=this.element.getStyle('background-color').parseColor('#ffffff');if(!this.options.restorecolor)
this.options.restorecolor=this.element.getStyle('background-color');this._base=$R(0,2).map(function(i){return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16)}.bind(this));this._delta=$R(0,2).map(function(i){return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i]}.bind(this));},update:function(position){this.element.setStyle({backgroundColor:$R(0,2).inject('#',function(m,v,i){return m+((this._base[i]+(this._delta[i]*position)).round().toColorPart());}.bind(this))});},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}));}});Effect.ScrollTo=function(element){var options=arguments[1]||{},scrollOffsets=document.viewport.getScrollOffsets(),elementOffsets=$(element).cumulativeOffset();if(options.offset)elementOffsets[1]+=options.offset;return new Effect.Tween(null,scrollOffsets.top,elementOffsets[1],options,function(p){scrollTo(scrollOffsets.left,p.round());});};Effect.Fade=function(element){element=$(element);var oldOpacity=element.getInlineOpacity();var options=Object.extend({from:element.getOpacity()||1.0,to:0.0,afterFinishInternal:function(effect){if(effect.options.to!=0)return;effect.element.hide().setStyle({opacity:oldOpacity});}},arguments[1]||{});return new Effect.Opacity(element,options);};Effect.Appear=function(element){element=$(element);var options=Object.extend({from:(element.getStyle('display')=='none'?0.0:element.getOpacity()||0.0),to:1.0,afterFinishInternal:function(effect){effect.element.forceRerendering();},beforeSetup:function(effect){effect.element.setOpacity(effect.options.from).show();}},arguments[1]||{});return new Effect.Opacity(element,options);};Effect.Puff=function(element){element=$(element);var oldStyle={opacity:element.getInlineOpacity(),position:element.getStyle('position'),top:element.style.top,left:element.style.left,width:element.style.width,height:element.style.height};return new Effect.Parallel([new Effect.Scale(element,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(element,{sync:true,to:0.0})],Object.extend({duration:1.0,beforeSetupInternal:function(effect){Position.absolutize(effect.effects[0].element);},afterFinishInternal:function(effect){effect.effects[0].element.hide().setStyle(oldStyle);}},arguments[1]||{}));};Effect.BlindUp=function(element){element=$(element);element.makeClipping();return new Effect.Scale(element,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(effect){effect.element.hide().undoClipping();}},arguments[1]||{}));};Effect.BlindDown=function(element){element=$(element);var elementDimensions=element.getDimensions();return new Effect.Scale(element,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makeClipping().setStyle({height:'0px'}).show();},afterFinishInternal:function(effect){effect.element.undoClipping();}},arguments[1]||{}));};Effect.SwitchOff=function(element){element=$(element);var oldOpacity=element.getInlineOpacity();return new Effect.Appear(element,Object.extend({duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(effect){new Effect.Scale(effect.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(effect){effect.element.makePositioned().makeClipping();},afterFinishInternal:function(effect){effect.element.hide().undoClipping().undoPositioned().setStyle({opacity:oldOpacity});}});}},arguments[1]||{}));};Effect.DropOut=function(element){element=$(element);var oldStyle={top:element.getStyle('top'),left:element.getStyle('left'),opacity:element.getInlineOpacity()};return new Effect.Parallel([new Effect.Move(element,{x:0,y:100,sync:true}),new Effect.Opacity(element,{sync:true,to:0.0})],Object.extend({duration:0.5,beforeSetup:function(effect){effect.effects[0].element.makePositioned();},afterFinishInternal:function(effect){effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle);}},arguments[1]||{}));};Effect.Shake=function(element){element=$(element);var options=Object.extend({distance:20,duration:0.5},arguments[1]||{});var distance=parseFloat(options.distance);var split=parseFloat(options.duration)/10.0;var oldStyle={top:element.getStyle('top'),left:element.getStyle('left')};return new Effect.Move(element,{x:distance,y:0,duration:split,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance,y:0,duration:split,afterFinishInternal:function(effect){effect.element.undoPositioned().setStyle(oldStyle);}});}});}});}});}});}});};Effect.SlideDown=function(element){element=$(element).cleanWhitespace();var oldInnerBottom=element.down().getStyle('bottom');var elementDimensions=element.getDimensions();return new Effect.Scale(element,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makePositioned();effect.element.down().makePositioned();if(window.opera)effect.element.setStyle({top:''});effect.element.makeClipping().setStyle({height:'0px'}).show();},afterUpdateInternal:function(effect){effect.element.down().setStyle({bottom:(effect.dims[0]-effect.element.clientHeight)+'px'});},afterFinishInternal:function(effect){effect.element.undoClipping().undoPositioned();effect.element.down().undoPositioned().setStyle({bottom:oldInnerBottom});}},arguments[1]||{}));};Effect.SlideUp=function(element){element=$(element).cleanWhitespace();var oldInnerBottom=element.down().getStyle('bottom');var elementDimensions=element.getDimensions();return new Effect.Scale(element,window.opera?0:1,Object.extend({scaleContent:false,scaleX:false,scaleMode:'box',scaleFrom:100,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makePositioned();effect.element.down().makePositioned();if(window.opera)effect.element.setStyle({top:''});effect.element.makeClipping().show();},afterUpdateInternal:function(effect){effect.element.down().setStyle({bottom:(effect.dims[0]-effect.element.clientHeight)+'px'});},afterFinishInternal:function(effect){effect.element.hide().undoClipping().undoPositioned();effect.element.down().undoPositioned().setStyle({bottom:oldInnerBottom});}},arguments[1]||{}));};Effect.Squish=function(element){return new Effect.Scale(element,window.opera?1:0,{restoreAfterFinish:true,beforeSetup:function(effect){effect.element.makeClipping();},afterFinishInternal:function(effect){effect.element.hide().undoClipping();}});};Effect.Grow=function(element){element=$(element);var options=Object.extend({direction:'center',moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.full},arguments[1]||{});var oldStyle={top:element.style.top,left:element.style.left,height:element.style.height,width:element.style.width,opacity:element.getInlineOpacity()};var dims=element.getDimensions();var initialMoveX,initialMoveY;var moveX,moveY;switch(options.direction){case'top-left':initialMoveX=initialMoveY=moveX=moveY=0;break;case'top-right':initialMoveX=dims.width;initialMoveY=moveY=0;moveX=-dims.width;break;case'bottom-left':initialMoveX=moveX=0;initialMoveY=dims.height;moveY=-dims.height;break;case'bottom-right':initialMoveX=dims.width;initialMoveY=dims.height;moveX=-dims.width;moveY=-dims.height;break;case'center':initialMoveX=dims.width/2;initialMoveY=dims.height/2;moveX=-dims.width/2;moveY=-dims.height/2;break;}
return new Effect.Move(element,{x:initialMoveX,y:initialMoveY,duration:0.01,beforeSetup:function(effect){effect.element.hide().makeClipping().makePositioned();},afterFinishInternal:function(effect){new Effect.Parallel([new Effect.Opacity(effect.element,{sync:true,to:1.0,from:0.0,transition:options.opacityTransition}),new Effect.Move(effect.element,{x:moveX,y:moveY,sync:true,transition:options.moveTransition}),new Effect.Scale(effect.element,100,{scaleMode:{originalHeight:dims.height,originalWidth:dims.width},sync:true,scaleFrom:window.opera?1:0,transition:options.scaleTransition,restoreAfterFinish:true})],Object.extend({beforeSetup:function(effect){effect.effects[0].element.setStyle({height:'0px'}).show();},afterFinishInternal:function(effect){effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle);}},options));}});};Effect.Shrink=function(element){element=$(element);var options=Object.extend({direction:'center',moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.none},arguments[1]||{});var oldStyle={top:element.style.top,left:element.style.left,height:element.style.height,width:element.style.width,opacity:element.getInlineOpacity()};var dims=element.getDimensions();var moveX,moveY;switch(options.direction){case'top-left':moveX=moveY=0;break;case'top-right':moveX=dims.width;moveY=0;break;case'bottom-left':moveX=0;moveY=dims.height;break;case'bottom-right':moveX=dims.width;moveY=dims.height;break;case'center':moveX=dims.width/2;moveY=dims.height/2;break;}
return new Effect.Parallel([new Effect.Opacity(element,{sync:true,to:0.0,from:1.0,transition:options.opacityTransition}),new Effect.Scale(element,window.opera?1:0,{sync:true,transition:options.scaleTransition,restoreAfterFinish:true}),new Effect.Move(element,{x:moveX,y:moveY,sync:true,transition:options.moveTransition})],Object.extend({beforeStartInternal:function(effect){effect.effects[0].element.makePositioned().makeClipping();},afterFinishInternal:function(effect){effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle);}},options));};Effect.Pulsate=function(element){element=$(element);var options=arguments[1]||{},oldOpacity=element.getInlineOpacity(),transition=options.transition||Effect.Transitions.linear,reverser=function(pos){return 1-transition((-Math.cos((pos*(options.pulses||5)*2)*Math.PI)/2)+.5);};return new Effect.Opacity(element,Object.extend(Object.extend({duration:2.0,from:0,afterFinishInternal:function(effect){effect.element.setStyle({opacity:oldOpacity});}},options),{transition:reverser}));};Effect.Fold=function(element){element=$(element);var oldStyle={top:element.style.top,left:element.style.left,width:element.style.width,height:element.style.height};element.makeClipping();return new Effect.Scale(element,5,Object.extend({scaleContent:false,scaleX:false,afterFinishInternal:function(effect){new Effect.Scale(element,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(effect){effect.element.hide().undoClipping().setStyle(oldStyle);}});}},arguments[1]||{}));};Effect.Morph=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({style:{}},arguments[1]||{});if(!Object.isString(options.style))this.style=$H(options.style);else{if(options.style.include(':'))
this.style=options.style.parseStyle();else{this.element.addClassName(options.style);this.style=$H(this.element.getStyles());this.element.removeClassName(options.style);var css=this.element.getStyles();this.style=this.style.reject(function(style){return style.value==css[style.key];});options.afterFinishInternal=function(effect){effect.element.addClassName(effect.options.style);effect.transforms.each(function(transform){effect.element.style[transform.style]='';});};}}
this.start(options);},setup:function(){function parseColor(color){if(!color||['rgba(0, 0, 0, 0)','transparent'].include(color))color='#ffffff';color=color.parseColor();return $R(0,2).map(function(i){return parseInt(color.slice(i*2+1,i*2+3),16);});}
this.transforms=this.style.map(function(pair){var property=pair[0],value=pair[1],unit=null;if(value.parseColor('#zzzzzz')!='#zzzzzz'){value=value.parseColor();unit='color';}else if(property=='opacity'){value=parseFloat(value);if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout))
this.element.setStyle({zoom:1});}else if(Element.CSS_LENGTH.test(value)){var components=value.match(/^([\+\-]?[0-9\.]+)(.*)$/);value=parseFloat(components[1]);unit=(components.length==3)?components[2]:null;}
var originalValue=this.element.getStyle(property);return{style:property.camelize(),originalValue:unit=='color'?parseColor(originalValue):parseFloat(originalValue||0),targetValue:unit=='color'?parseColor(value):value,unit:unit};}.bind(this)).reject(function(transform){return((transform.originalValue==transform.targetValue)||(transform.unit!='color'&&(isNaN(transform.originalValue)||isNaN(transform.targetValue))));});},update:function(position){var style={},transform,i=this.transforms.length;while(i--)
style[(transform=this.transforms[i]).style]=transform.unit=='color'?'#'+
(Math.round(transform.originalValue[0]+
(transform.targetValue[0]-transform.originalValue[0])*position)).toColorPart()+
(Math.round(transform.originalValue[1]+
(transform.targetValue[1]-transform.originalValue[1])*position)).toColorPart()+
(Math.round(transform.originalValue[2]+
(transform.targetValue[2]-transform.originalValue[2])*position)).toColorPart():(transform.originalValue+
(transform.targetValue-transform.originalValue)*position).toFixed(3)+
(transform.unit===null?'':transform.unit);this.element.setStyle(style,true);}});Effect.Transform=Class.create({initialize:function(tracks){this.tracks=[];this.options=arguments[1]||{};this.addTracks(tracks);},addTracks:function(tracks){tracks.each(function(track){track=$H(track);var data=track.values().first();this.tracks.push($H({ids:track.keys().first(),effect:Effect.Morph,options:{style:data}}));}.bind(this));return this;},play:function(){return new Effect.Parallel(this.tracks.map(function(track){var ids=track.get('ids'),effect=track.get('effect'),options=track.get('options');var elements=[$(ids)||$$(ids)].flatten();return elements.map(function(e){return new effect(e,Object.extend({sync:true},options))});}).flatten(),this.options);}});Element.CSS_PROPERTIES=$w('backgroundColor backgroundPosition borderBottomColor borderBottomStyle '+'borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth '+'borderRightColor borderRightStyle borderRightWidth borderSpacing '+'borderTopColor borderTopStyle borderTopWidth bottom clip color '+'fontSize fontWeight height left letterSpacing lineHeight '+'marginBottom marginLeft marginRight marginTop markerOffset maxHeight '+'maxWidth minHeight minWidth opacity outlineColor outlineOffset '+'outlineWidth paddingBottom paddingLeft paddingRight paddingTop '+'right textIndent top width wordSpacing zIndex');Element.CSS_LENGTH=/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;String.__parseStyleElement=document.createElement('div');String.prototype.parseStyle=function(){var style,styleRules=$H();if(Prototype.Browser.WebKit)
style=new Element('div',{style:this}).style;else{String.__parseStyleElement.innerHTML='<div style="'+this+'"></div>';style=String.__parseStyleElement.childNodes[0].style;}
Element.CSS_PROPERTIES.each(function(property){if(style[property])styleRules.set(property,style[property]);});if(Prototype.Browser.IE&&this.include('opacity'))
styleRules.set('opacity',this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1]);return styleRules;};if(document.defaultView&&document.defaultView.getComputedStyle){Element.getStyles=function(element){var css=document.defaultView.getComputedStyle($(element),null);return Element.CSS_PROPERTIES.inject({},function(styles,property){styles[property]=css[property];return styles;});};}else{Element.getStyles=function(element){element=$(element);var css=element.currentStyle,styles;styles=Element.CSS_PROPERTIES.inject({},function(results,property){results[property]=css[property];return results;});if(!styles.opacity)styles.opacity=element.getOpacity();return styles;};}
Effect.Methods={morph:function(element,style){element=$(element);new Effect.Morph(element,Object.extend({style:style},arguments[2]||{}));return element;},visualEffect:function(element,effect,options){element=$(element);var s=effect.dasherize().camelize(),klass=s.charAt(0).toUpperCase()+s.substring(1);new Effect[klass](element,options);return element;},highlight:function(element,options){element=$(element);new Effect.Highlight(element,options);return element;}};$w('fade appear grow shrink fold blindUp blindDown slideUp slideDown '+'pulsate shake puff squish switchOff dropOut').each(function(effect){Effect.Methods[effect]=function(element,options){element=$(element);Effect[effect.charAt(0).toUpperCase()+effect.substring(1)](element,options);return element;};});$w('getInlineOpacity forceRerendering setContentZoom collectTextNodes collectTextNodesIgnoreClass getStyles').each(function(f){Effect.Methods[f]=Element[f];});Element.addMethods(Effect.Methods);var Builder={NODEMAP:{AREA:'map',CAPTION:'table',COL:'table',COLGROUP:'table',LEGEND:'fieldset',OPTGROUP:'select',OPTION:'select',PARAM:'object',TBODY:'table',TD:'table',TFOOT:'table',TH:'table',THEAD:'table',TR:'table'},node:function(elementName){elementName=elementName.toUpperCase();var parentTag=this.NODEMAP[elementName]||'div';var parentElement=document.createElement(parentTag);try{parentElement.innerHTML="<"+elementName+"></"+elementName+">";}catch(e){}
var element=parentElement.firstChild||null;if(element&&(element.tagName.toUpperCase()!=elementName))
element=element.getElementsByTagName(elementName)[0];if(!element)element=document.createElement(elementName);if(!element)return;if(arguments[1])
if(this._isStringOrNumber(arguments[1])||(arguments[1]instanceof Array)||arguments[1].tagName){this._children(element,arguments[1]);}else{var attrs=this._attributes(arguments[1]);if(attrs.length){try{parentElement.innerHTML="<"+elementName+" "+
attrs+"></"+elementName+">";}catch(e){}
element=parentElement.firstChild||null;if(!element){element=document.createElement(elementName);for(attr in arguments[1])
element[attr=='class'?'className':attr]=arguments[1][attr];}
if(element.tagName.toUpperCase()!=elementName)
element=parentElement.getElementsByTagName(elementName)[0];}}
if(arguments[2])
this._children(element,arguments[2]);return $(element);},_text:function(text){return document.createTextNode(text);},ATTR_MAP:{'className':'class','htmlFor':'for'},_attributes:function(attributes){var attrs=[];for(attribute in attributes)
attrs.push((attribute in this.ATTR_MAP?this.ATTR_MAP[attribute]:attribute)+'="'+attributes[attribute].toString().escapeHTML().gsub(/"/,'&quot;')+'"');return attrs.join(" ");},_children:function(element,children){if(children.tagName){element.appendChild(children);return;}
if(typeof children=='object'){children.flatten().each(function(e){if(typeof e=='object')
element.appendChild(e);else
if(Builder._isStringOrNumber(e))
element.appendChild(Builder._text(e));});}else
if(Builder._isStringOrNumber(children))
element.appendChild(Builder._text(children));},_isStringOrNumber:function(param){return(typeof param=='string'||typeof param=='number');},build:function(html){var element=this.node('div');$(element).update(html.strip());return element.down();},dump:function(scope){if(typeof scope!='object'&&typeof scope!='function')scope=window;var tags=("A ABBR ACRONYM ADDRESS APPLET AREA B BASE BASEFONT BDO BIG BLOCKQUOTE BODY "+"BR BUTTON CAPTION CENTER CITE CODE COL COLGROUP DD DEL DFN DIR DIV DL DT EM FIELDSET "+"FONT FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HR HTML I IFRAME IMG INPUT INS ISINDEX "+"KBD LABEL LEGEND LI LINK MAP MENU META NOFRAMES NOSCRIPT OBJECT OL OPTGROUP OPTION P "+"PARAM PRE Q S SAMP SCRIPT SELECT SMALL SPAN STRIKE STRONG STYLE SUB SUP TABLE TBODY TD "+"TEXTAREA TFOOT TH THEAD TITLE TR TT U UL VAR").split(/\s+/);tags.each(function(tag){scope[tag]=function(){return Builder.node.apply(Builder,[tag].concat($A(arguments)));};});}};if(typeof Effect=='undefined')
throw("controls.js requires including script.aculo.us' effects.js library");var Autocompleter={};Autocompleter.Base=Class.create({baseInitialize:function(element,update,options){element=$(element);this.element=element;this.update=$(update);this.hasFocus=false;this.changed=false;this.active=false;this.index=0;this.entryCount=0;this.oldElementValue=this.element.value;if(this.setOptions)
this.setOptions(options);else
this.options=options||{};this.options.paramName=this.options.paramName||this.element.name;this.options.tokens=this.options.tokens||[];this.options.frequency=this.options.frequency||0.4;this.options.minChars=this.options.minChars||1;this.options.onShow=this.options.onShow||function(element,update){if(!update.style.position||update.style.position=='absolute'){update.style.position='absolute';Position.clone(element,update,{setHeight:false,offsetTop:element.offsetHeight});}
Effect.Appear(update,{duration:0.15});};this.options.onHide=this.options.onHide||function(element,update){new Effect.Fade(update,{duration:0.15})};if(typeof(this.options.tokens)=='string')
this.options.tokens=new Array(this.options.tokens);if(!this.options.tokens.include('\n'))
this.options.tokens.push('\n');this.observer=null;this.element.setAttribute('autocomplete','off');Element.hide(this.update);Event.observe(this.element,'keydown',this.onKeyPress.bindAsEventListener(this));},show:function(){try{if(Element.getStyle(this.update,'display')=='none')this.options.onShow(this.element,this.update);}
catch(e){this.options.onShow(this.element,this.update);}
if(!this.iefix&&(Prototype.Browser.IE)&&(Element.getStyle(this.update,'position')=='absolute')){new Insertion.After(this.update,'<iframe id="'+this.update.id+'_iefix" '+'style="display:none;position:absolute;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);" '+'src="javascript:false;" frameborder="0" scrolling="no"></iframe>');this.iefix=$(this.update.id+'_iefix');}
if(this.iefix)setTimeout(this.fixIEOverlapping.bind(this),50);},fixIEOverlapping:function(){Position.clone(this.update,this.iefix,{setTop:(!this.update.style.height)});this.iefix.style.zIndex=1;this.update.style.zIndex=200;Element.show(this.iefix);},hide:function(){this.stopIndicator();if(Element.getStyle(this.update,'display')!='none')this.options.onHide(this.element,this.update);if(this.iefix)Element.hide(this.iefix);},startIndicator:function(){if(this.options.indicator)Element.show(this.options.indicator);},stopIndicator:function(){if(this.options.indicator)Element.hide(this.options.indicator);},onKeyPress:function(event){if(this.active)
switch(event.keyCode){case Event.KEY_TAB:case Event.KEY_RETURN:this.selectEntry();Event.stop(event);case Event.KEY_ESC:this.hide();this.active=false;Event.stop(event);return;case Event.KEY_LEFT:case Event.KEY_RIGHT:return;case Event.KEY_UP:this.markPrevious();this.render();Event.stop(event);return;case Event.KEY_DOWN:this.markNext();this.render();Event.stop(event);return;}
else
if(event.keyCode==Event.KEY_TAB||event.keyCode==Event.KEY_RETURN||(Prototype.Browser.WebKit>0&&event.keyCode==0))return;this.changed=true;this.hasFocus=true;if(this.observer)clearTimeout(this.observer);this.observer=setTimeout(this.onObserverEvent.bind(this),this.options.frequency*1000);},activate:function(){this.changed=false;this.hasFocus=true;this.getUpdatedChoices();},onHover:function(event){var element=Event.findElement(event,'LI');if(this.index!=element.autocompleteIndex)
{this.index=element.autocompleteIndex;this.render();}
Event.stop(event);},onClick:function(event){var element=Event.findElement(event,'LI');this.index=element.autocompleteIndex;this.selectEntry();this.hide();},onBlur:function(event){setTimeout(this.hide.bind(this),250);this.hasFocus=false;this.active=false;},render:function(){if(this.entryCount>0){for(var i=0;i<this.entryCount;i++)
this.index==i?Element.addClassName(this.getEntry(i),"selected"):Element.removeClassName(this.getEntry(i),"selected");if(this.hasFocus){this.show();this.active=true;}}else{this.active=false;this.hide();}},markPrevious:function(){if(this.index>0)this.index--;else this.index=this.entryCount-1;this.getEntry(this.index).scrollIntoView(false);setClassForCurr(this.getEntry(this.index),"IamSelected");},markNext:function(){if(this.index<this.entryCount-1)this.index++;else this.index=0;this.getEntry(this.index).scrollIntoView(false);setClassForCurr(this.getEntry(this.index),"IamSelected");},getEntry:function(index){return this.update.firstChild.childNodes[index];},getCurrentEntry:function(){return this.getEntry(this.index);},selectEntry:function(){this.active=false;this.updateElement(this.getCurrentEntry());},updateElement:function(selectedElement){if(this.options.updateElement){this.options.updateElement(selectedElement);return;}
var value='';if(this.options.select){var nodes=$(selectedElement).select('.'+this.options.select)||[];if(nodes.length>0)value=Element.collectTextNodes(nodes[0],this.options.select);}else
value=Element.collectTextNodesIgnoreClass(selectedElement,'informal');var bounds=this.getTokenBounds();if(bounds[0]!=-1){var newValue=this.element.value.substr(0,bounds[0]);var whitespace=this.element.value.substr(bounds[0]).match(/^\s+/);if(whitespace)
newValue+=whitespace[0];this.element.value=newValue+value+this.element.value.substr(bounds[1]);}else{this.element.value=value;}
this.oldElementValue=this.element.value;this.element.focus();if(this.options.afterUpdateElement)
this.options.afterUpdateElement(this.element,selectedElement);},updateChoices:function(choices){if(!this.changed&&this.hasFocus){this.update.innerHTML=choices;if(choices.length==0){this.update.style.display="none";}
Element.cleanWhitespace(this.update);Element.cleanWhitespace(this.update.down());if(this.update.firstChild&&this.update.down().childNodes){this.entryCount=this.update.down().childNodes.length;for(var i=0;i<this.entryCount;i++){var entry=this.getEntry(i);entry.autocompleteIndex=i;this.addObservers(entry);}}else{this.entryCount=0;}
this.stopIndicator();this.index=0;if(this.entryCount==1&&this.options.autoSelect){this.selectEntry();this.hide();}else{this.render();}}},addObservers:function(element){Event.observe(element,"mouseover",this.onHover.bindAsEventListener(this));Event.observe(element,"click",this.onClick.bindAsEventListener(this));},onObserverEvent:function(){this.changed=false;this.tokenBounds=null;if(this.getToken().length>=this.options.minChars){this.getUpdatedChoices();}else{this.active=false;this.hide();}
this.oldElementValue=this.element.value;},getToken:function(){var bounds=this.getTokenBounds();return this.element.value.substring(bounds[0],bounds[1]).strip();},getTokenBounds:function(){if(null!=this.tokenBounds)return this.tokenBounds;var value=this.element.value;if(value.strip().empty())return[-1,0];var diff=arguments.callee.getFirstDifferencePos(value,this.oldElementValue);var offset=(diff==this.oldElementValue.length?1:0);var prevTokenPos=-1,nextTokenPos=value.length;var tp;for(var index=0,l=this.options.tokens.length;index<l;++index){tp=value.lastIndexOf(this.options.tokens[index],diff+offset-1);if(tp>prevTokenPos)prevTokenPos=tp;tp=value.indexOf(this.options.tokens[index],diff+offset);if(-1!=tp&&tp<nextTokenPos)nextTokenPos=tp;}
return(this.tokenBounds=[prevTokenPos+1,nextTokenPos]);}});Autocompleter.Base.prototype.getTokenBounds.getFirstDifferencePos=function(newS,oldS){var boundary=Math.min(newS.length,oldS.length);for(var index=0;index<boundary;++index)
if(newS[index]!=oldS[index])
return index;return boundary;};Ajax.Autocompleter=Class.create(Autocompleter.Base,{initialize:function(element,update,url,options){this.baseInitialize(element,update,options);this.options.asynchronous=true;this.options.onComplete=this.onComplete.bind(this);this.options.defaultParams=this.options.parameters||null;this.url=url;},getUpdatedChoices:function(){this.startIndicator();var entry=encodeURIComponent(this.options.paramName)+'='+
encodeURIComponent(this.getToken());this.options.parameters=this.options.callback?this.options.callback(this.element,entry):entry;if(this.options.defaultParams)
this.options.parameters+='&'+this.options.defaultParams;new Ajax.Request(this.url,this.options);},onComplete:function(request){this.updateChoices(request.responseText);}});Autocompleter.Local=Class.create(Autocompleter.Base,{initialize:function(element,update,array,options){this.baseInitialize(element,update,options);this.options.array=array;},getUpdatedChoices:function(){this.updateChoices(this.options.selector(this));},setOptions:function(options){this.options=Object.extend({choices:30,partialSearch:true,partialChars:2,ignoreCase:true,fullSearch:false,selector:function(instance){var ret=[];var partial=[];var entry=instance.getToken();var count=0;for(var i=0;i<instance.options.array.length&&ret.length<instance.options.choices;i++){var elem=instance.options.array[i];var foundPos=instance.options.ignoreCase?elem.toLowerCase().indexOf(entry.toLowerCase()):elem.indexOf(entry);while(foundPos!=-1){if(foundPos==0&&elem.length!=entry.length){ret.push("<li><strong>"+elem.substr(0,entry.length)+"</strong>"+
elem.substr(entry.length)+"</li>");break;}
else if(entry.length>=instance.options.partialChars&&instance.options.partialSearch&&foundPos!=-1){if(instance.options.fullSearch||/\s/.test(elem.substr(foundPos-1,1))){partial.push("<li>"+elem.substr(0,foundPos)+"<strong>"+
elem.substr(foundPos,entry.length)+"</strong>"+elem.substr(foundPos+entry.length)+"</li>");break;}}
foundPos=instance.options.ignoreCase?elem.toLowerCase().indexOf(entry.toLowerCase(),foundPos+1):elem.indexOf(entry,foundPos+1);}}
if(partial.length)
ret=ret.concat(partial.slice(0,instance.options.choices-ret.length));return"<ul>"+ret.join('')+"</ul>";},getChangeEntry:function(instance){if(instance.options.charChange=="saint"){var value2="";if(instance.element.value.substring(0,3)=="st"){instance.element.value="saint";}else if(instance.options.value.substring(0,3)=="sa"){instance.element.value="st";}
instance.options.selector(instance);}}},options||{});}});Field.scrollFreeActivate=function(field){setTimeout(function(){Field.activate(field);},1);};Ajax.InPlaceEditor=Class.create({initialize:function(element,url,options){this.url=url;this.element=element=$(element);this.prepareOptions();this._controls={};arguments.callee.dealWithDeprecatedOptions(options);Object.extend(this.options,options||{});if(!this.options.formId&&this.element.id){this.options.formId=this.element.id+'-inplaceeditor';if($(this.options.formId))
this.options.formId='';}
if(this.options.externalControl)
this.options.externalControl=$(this.options.externalControl);if(!this.options.externalControl)
this.options.externalControlOnly=false;this._originalBackground=this.element.getStyle('background-color')||'transparent';this.element.title=this.options.clickToEditText;this._boundCancelHandler=this.handleFormCancellation.bind(this);this._boundComplete=(this.options.onComplete||Prototype.emptyFunction).bind(this);this._boundFailureHandler=this.handleAJAXFailure.bind(this);this._boundSubmitHandler=this.handleFormSubmission.bind(this);this._boundWrapperHandler=this.wrapUp.bind(this);this.registerListeners();},checkForEscapeOrReturn:function(e){if(!this._editing||e.ctrlKey||e.altKey||e.shiftKey)return;if(Event.KEY_ESC==e.keyCode)
this.handleFormCancellation(e);else if(Event.KEY_RETURN==e.keyCode)
this.handleFormSubmission(e);},createControl:function(mode,handler,extraClasses){var control=this.options[mode+'Control'];var text=this.options[mode+'Text'];if('button'==control){var btn=document.createElement('input');btn.type='submit';btn.value=text;btn.className='editor_'+mode+'_button';if('cancel'==mode)
btn.onclick=this._boundCancelHandler;this._form.appendChild(btn);this._controls[mode]=btn;}else if('link'==control){var link=document.createElement('a');link.href='#';link.appendChild(document.createTextNode(text));link.onclick='cancel'==mode?this._boundCancelHandler:this._boundSubmitHandler;link.className='editor_'+mode+'_link';if(extraClasses)
link.className+=' '+extraClasses;this._form.appendChild(link);this._controls[mode]=link;}},createEditField:function(){var text=(this.options.loadTextURL?this.options.loadingText:this.getText());var fld;if(1>=this.options.rows&&!/\r|\n/.test(this.getText())){fld=document.createElement('input');fld.type='text';var size=this.options.size||this.options.cols||0;if(0<size)fld.size=size;}else{fld=document.createElement('textarea');fld.rows=(1>=this.options.rows?this.options.autoRows:this.options.rows);fld.cols=this.options.cols||40;}
fld.name=this.options.paramName;fld.value=text;fld.className='editor_field';if(this.options.submitOnBlur)
fld.onblur=this._boundSubmitHandler;this._controls.editor=fld;if(this.options.loadTextURL)
this.loadExternalText();this._form.appendChild(this._controls.editor);},createForm:function(){var ipe=this;function addText(mode,condition){var text=ipe.options['text'+mode+'Controls'];if(!text||condition===false)return;ipe._form.appendChild(document.createTextNode(text));};this._form=$(document.createElement('form'));this._form.id=this.options.formId;this._form.addClassName(this.options.formClassName);this._form.onsubmit=this._boundSubmitHandler;this.createEditField();if('textarea'==this._controls.editor.tagName.toLowerCase())
this._form.appendChild(document.createElement('br'));if(this.options.onFormCustomization)
this.options.onFormCustomization(this,this._form);addText('Before',this.options.okControl||this.options.cancelControl);this.createControl('ok',this._boundSubmitHandler);addText('Between',this.options.okControl&&this.options.cancelControl);this.createControl('cancel',this._boundCancelHandler,'editor_cancel');addText('After',this.options.okControl||this.options.cancelControl);},destroy:function(){if(this._oldInnerHTML)
this.element.innerHTML=this._oldInnerHTML;this.leaveEditMode();this.unregisterListeners();},enterEditMode:function(e){if(this._saving||this._editing)return;this._editing=true;this.triggerCallback('onEnterEditMode');if(this.options.externalControl)
this.options.externalControl.hide();this.element.hide();this.createForm();this.element.parentNode.insertBefore(this._form,this.element);if(!this.options.loadTextURL)
this.postProcessEditField();if(e)Event.stop(e);},enterHover:function(e){if(this.options.hoverClassName)
this.element.addClassName(this.options.hoverClassName);if(this._saving)return;this.triggerCallback('onEnterHover');},getText:function(){return this.element.innerHTML.unescapeHTML();},handleAJAXFailure:function(transport){this.triggerCallback('onFailure',transport);if(this._oldInnerHTML){this.element.innerHTML=this._oldInnerHTML;this._oldInnerHTML=null;}},handleFormCancellation:function(e){this.wrapUp();if(e)Event.stop(e);},handleFormSubmission:function(e){var form=this._form;var value=$F(this._controls.editor);this.prepareSubmission();var params=this.options.callback(form,value)||'';if(Object.isString(params))
params=params.toQueryParams();params.editorId=this.element.id;if(this.options.htmlResponse){var options=Object.extend({evalScripts:true},this.options.ajaxOptions);Object.extend(options,{parameters:params,onComplete:this._boundWrapperHandler,onFailure:this._boundFailureHandler});new Ajax.Updater({success:this.element},this.url,options);}else{var options=Object.extend({method:'get'},this.options.ajaxOptions);Object.extend(options,{parameters:params,onComplete:this._boundWrapperHandler,onFailure:this._boundFailureHandler});new Ajax.Request(this.url,options);}
if(e)Event.stop(e);},leaveEditMode:function(){this.element.removeClassName(this.options.savingClassName);this.removeForm();this.leaveHover();this.element.style.backgroundColor=this._originalBackground;this.element.show();if(this.options.externalControl)
this.options.externalControl.show();this._saving=false;this._editing=false;this._oldInnerHTML=null;this.triggerCallback('onLeaveEditMode');},leaveHover:function(e){if(this.options.hoverClassName)
this.element.removeClassName(this.options.hoverClassName);if(this._saving)return;this.triggerCallback('onLeaveHover');},loadExternalText:function(){this._form.addClassName(this.options.loadingClassName);this._controls.editor.disabled=true;var options=Object.extend({method:'get'},this.options.ajaxOptions);Object.extend(options,{parameters:'editorId='+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(transport){this._form.removeClassName(this.options.loadingClassName);var text=transport.responseText;if(this.options.stripLoadedTextTags)
text=text.stripTags();this._controls.editor.value=text;this._controls.editor.disabled=false;this.postProcessEditField();}.bind(this),onFailure:this._boundFailureHandler});new Ajax.Request(this.options.loadTextURL,options);},postProcessEditField:function(){var fpc=this.options.fieldPostCreation;if(fpc)
$(this._controls.editor)['focus'==fpc?'focus':'activate']();},prepareOptions:function(){this.options=Object.clone(Ajax.InPlaceEditor.DefaultOptions);Object.extend(this.options,Ajax.InPlaceEditor.DefaultCallbacks);[this._extraDefaultOptions].flatten().compact().each(function(defs){Object.extend(this.options,defs);}.bind(this));},prepareSubmission:function(){this._saving=true;this.removeForm();this.leaveHover();this.showSaving();},registerListeners:function(){this._listeners={};var listener;$H(Ajax.InPlaceEditor.Listeners).each(function(pair){listener=this[pair.value].bind(this);this._listeners[pair.key]=listener;if(!this.options.externalControlOnly)
this.element.observe(pair.key,listener);if(this.options.externalControl)
this.options.externalControl.observe(pair.key,listener);}.bind(this));},removeForm:function(){if(!this._form)return;this._form.remove();this._form=null;this._controls={};},showSaving:function(){this._oldInnerHTML=this.element.innerHTML;this.element.innerHTML=this.options.savingText;this.element.addClassName(this.options.savingClassName);this.element.style.backgroundColor=this._originalBackground;this.element.show();},triggerCallback:function(cbName,arg){if('function'==typeof this.options[cbName]){this.options[cbName](this,arg);}},unregisterListeners:function(){$H(this._listeners).each(function(pair){if(!this.options.externalControlOnly)
this.element.stopObserving(pair.key,pair.value);if(this.options.externalControl)
this.options.externalControl.stopObserving(pair.key,pair.value);}.bind(this));},wrapUp:function(transport){this.leaveEditMode();this._boundComplete(transport,this.element);}});Object.extend(Ajax.InPlaceEditor.prototype,{dispose:Ajax.InPlaceEditor.prototype.destroy});Ajax.InPlaceCollectionEditor=Class.create(Ajax.InPlaceEditor,{initialize:function($super,element,url,options){this._extraDefaultOptions=Ajax.InPlaceCollectionEditor.DefaultOptions;$super(element,url,options);},createEditField:function(){var list=document.createElement('select');list.name=this.options.paramName;list.size=1;this._controls.editor=list;this._collection=this.options.collection||[];if(this.options.loadCollectionURL)
this.loadCollection();else
this.checkForExternalText();this._form.appendChild(this._controls.editor);},loadCollection:function(){this._form.addClassName(this.options.loadingClassName);this.showLoadingText(this.options.loadingCollectionText);var options=Object.extend({method:'get'},this.options.ajaxOptions);Object.extend(options,{parameters:'editorId='+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(transport){var js=transport.responseText.strip();if(!/^\[.*\]$/.test(js))
throw('Server returned an invalid collection representation.');this._collection=eval(js);this.checkForExternalText();}.bind(this),onFailure:this.onFailure});new Ajax.Request(this.options.loadCollectionURL,options);},showLoadingText:function(text){this._controls.editor.disabled=true;var tempOption=this._controls.editor.firstChild;if(!tempOption){tempOption=document.createElement('option');tempOption.value='';this._controls.editor.appendChild(tempOption);tempOption.selected=true;}
tempOption.update((text||'').stripScripts().stripTags());},checkForExternalText:function(){this._text=this.getText();if(this.options.loadTextURL)
this.loadExternalText();else
this.buildOptionList();},loadExternalText:function(){this.showLoadingText(this.options.loadingText);var options=Object.extend({method:'get'},this.options.ajaxOptions);Object.extend(options,{parameters:'editorId='+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(transport){this._text=transport.responseText.strip();this.buildOptionList();}.bind(this),onFailure:this.onFailure});new Ajax.Request(this.options.loadTextURL,options);},buildOptionList:function(){this._form.removeClassName(this.options.loadingClassName);this._collection=this._collection.map(function(entry){return 2===entry.length?entry:[entry,entry].flatten();});var marker=('value'in this.options)?this.options.value:this._text;var textFound=this._collection.any(function(entry){return entry[0]==marker;}.bind(this));this._controls.editor.update('');var option;this._collection.each(function(entry,index){option=document.createElement('option');option.value=entry[0];option.selected=textFound?entry[0]==marker:0==index;option.appendChild(document.createTextNode(entry[1]));this._controls.editor.appendChild(option);}.bind(this));this._controls.editor.disabled=false;Field.scrollFreeActivate(this._controls.editor);}});Ajax.InPlaceEditor.prototype.initialize.dealWithDeprecatedOptions=function(options){if(!options)return;function fallback(name,expr){if(name in options||expr===undefined)return;options[name]=expr;};fallback('cancelControl',(options.cancelLink?'link':(options.cancelButton?'button':options.cancelLink==options.cancelButton==false?false:undefined)));fallback('okControl',(options.okLink?'link':(options.okButton?'button':options.okLink==options.okButton==false?false:undefined)));fallback('highlightColor',options.highlightcolor);fallback('highlightEndColor',options.highlightendcolor);};Object.extend(Ajax.InPlaceEditor,{DefaultOptions:{ajaxOptions:{},autoRows:3,cancelControl:'link',cancelText:'cancel',clickToEditText:'Click to edit',externalControl:null,externalControlOnly:false,fieldPostCreation:'activate',formClassName:'inplaceeditor-form',formId:null,highlightColor:'#ffff99',highlightEndColor:'#ffffff',hoverClassName:'',htmlResponse:true,loadingClassName:'inplaceeditor-loading',loadingText:'Loading...',okControl:'button',okText:'ok',paramName:'value',rows:1,savingClassName:'inplaceeditor-saving',savingText:'Saving...',size:0,stripLoadedTextTags:false,submitOnBlur:false,textAfterControls:'',textBeforeControls:'',textBetweenControls:''},DefaultCallbacks:{callback:function(form){return Form.serialize(form);},onComplete:function(transport,element){new Effect.Highlight(element,{startcolor:this.options.highlightColor,keepBackgroundImage:true});},onEnterEditMode:null,onEnterHover:function(ipe){ipe.element.style.backgroundColor=ipe.options.highlightColor;if(ipe._effect)
ipe._effect.cancel();},onFailure:function(transport,ipe){alert('Error communication with the server: '+transport.responseText.stripTags());},onFormCustomization:null,onLeaveEditMode:null,onLeaveHover:function(ipe){ipe._effect=new Effect.Highlight(ipe.element,{startcolor:ipe.options.highlightColor,endcolor:ipe.options.highlightEndColor,restorecolor:ipe._originalBackground,keepBackgroundImage:true});}},Listeners:{click:'enterEditMode',keydown:'checkForEscapeOrReturn',mouseover:'enterHover',mouseout:'leaveHover'}});Ajax.InPlaceCollectionEditor.DefaultOptions={loadingCollectionText:'Loading options...'};Form.Element.DelayedObserver=Class.create({initialize:function(element,delay,callback){this.delay=delay||0.5;this.element=$(element);this.callback=callback;this.timer=null;this.lastValue=$F(this.element);Event.observe(this.element,'keyup',this.delayedListener.bindAsEventListener(this));},delayedListener:function(event){if(this.lastValue==$F(this.element))return;if(this.timer)clearTimeout(this.timer);this.timer=setTimeout(this.onTimerEvent.bind(this),this.delay*1000);this.lastValue=$F(this.element);},onTimerEvent:function(){this.timer=null;this.callback(this.element,$F(this.element));}});if(Object.isUndefined(Effect))
throw("dragdrop.js requires including script.aculo.us' effects.js library");var Droppables={drops:[],remove:function(element){this.drops=this.drops.reject(function(d){return d.element==$(element)});},add:function(element){element=$(element);var options=Object.extend({greedy:true,hoverclass:null,tree:false},arguments[1]||{});if(options.containment){options._containers=[];var containment=options.containment;if(Object.isArray(containment)){containment.each(function(c){options._containers.push($(c))});}else{options._containers.push($(containment));}}
if(options.accept)options.accept=[options.accept].flatten();Element.makePositioned(element);options.element=element;this.drops.push(options);},findDeepestChild:function(drops){deepest=drops[0];for(i=1;i<drops.length;++i)
if(Element.isParent(drops[i].element,deepest.element))
deepest=drops[i];return deepest;},isContained:function(element,drop){var containmentNode;if(drop.tree){containmentNode=element.treeNode;}else{containmentNode=element.parentNode;}
return drop._containers.detect(function(c){return containmentNode==c});},isAffected:function(point,element,drop){return((drop.element!=element)&&((!drop._containers)||this.isContained(element,drop))&&((!drop.accept)||(Element.classNames(element).detect(function(v){return drop.accept.include(v)})))&&Position.within(drop.element,point[0],point[1]));},deactivate:function(drop){if(drop.hoverclass)
Element.removeClassName(drop.element,drop.hoverclass);this.last_active=null;},activate:function(drop){if(drop.hoverclass)
Element.addClassName(drop.element,drop.hoverclass);this.last_active=drop;},show:function(point,element){if(!this.drops.length)return;var drop,affected=[];this.drops.each(function(drop){if(Droppables.isAffected(point,element,drop))
affected.push(drop);});if(affected.length>0)
drop=Droppables.findDeepestChild(affected);if(this.last_active&&this.last_active!=drop)this.deactivate(this.last_active);if(drop){Position.within(drop.element,point[0],point[1]);if(drop.onHover)
drop.onHover(element,drop.element,Position.overlap(drop.overlap,drop.element));if(drop!=this.last_active)Droppables.activate(drop);}},fire:function(event,element){if(!this.last_active)return;Position.prepare();if(this.isAffected([Event.pointerX(event),Event.pointerY(event)],element,this.last_active))
if(this.last_active.onDrop){this.last_active.onDrop(element,this.last_active.element,event);return true;}},reset:function(){if(this.last_active)
this.deactivate(this.last_active);}};var Draggables={drags:[],observers:[],register:function(draggable){if(this.drags.length==0){this.eventMouseUp=this.endDrag.bindAsEventListener(this);this.eventMouseMove=this.updateDrag.bindAsEventListener(this);this.eventKeypress=this.keyPress.bindAsEventListener(this);Event.observe(document,"mouseup",this.eventMouseUp);Event.observe(document,"mousemove",this.eventMouseMove);Event.observe(document,"keypress",this.eventKeypress);}
this.drags.push(draggable);},unregister:function(draggable){this.drags=this.drags.reject(function(d){return d==draggable});if(this.drags.length==0){Event.stopObserving(document,"mouseup",this.eventMouseUp);Event.stopObserving(document,"mousemove",this.eventMouseMove);Event.stopObserving(document,"keypress",this.eventKeypress);}},activate:function(draggable){if(draggable.options.delay){this._timeout=setTimeout(function(){Draggables._timeout=null;window.focus();Draggables.activeDraggable=draggable;}.bind(this),draggable.options.delay);}else{window.focus();this.activeDraggable=draggable;}},deactivate:function(){this.activeDraggable=null;},updateDrag:function(event){if(!this.activeDraggable)return;var pointer=[Event.pointerX(event),Event.pointerY(event)];if(this._lastPointer&&(this._lastPointer.inspect()==pointer.inspect()))return;this._lastPointer=pointer;this.activeDraggable.updateDrag(event,pointer);},endDrag:function(event){if(this._timeout){clearTimeout(this._timeout);this._timeout=null;}
if(!this.activeDraggable)return;this._lastPointer=null;this.activeDraggable.endDrag(event);this.activeDraggable=null;},keyPress:function(event){if(this.activeDraggable)
this.activeDraggable.keyPress(event);},addObserver:function(observer){this.observers.push(observer);this._cacheObserverCallbacks();},removeObserver:function(element){this.observers=this.observers.reject(function(o){return o.element==element});this._cacheObserverCallbacks();},notify:function(eventName,draggable,event){if(this[eventName+'Count']>0)
this.observers.each(function(o){if(o[eventName])o[eventName](eventName,draggable,event);});if(draggable.options[eventName])draggable.options[eventName](draggable,event);},_cacheObserverCallbacks:function(){['onStart','onEnd','onDrag'].each(function(eventName){Draggables[eventName+'Count']=Draggables.observers.select(function(o){return o[eventName];}).length;});}};var Draggable=Class.create({initialize:function(element){var defaults={handle:false,reverteffect:function(element,top_offset,left_offset){var dur=Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02;new Effect.Move(element,{x:-left_offset,y:-top_offset,duration:dur,queue:{scope:'_draggable',position:'end'}});},endeffect:function(element){var toOpacity=Object.isNumber(element._opacity)?element._opacity:1.0;new Effect.Opacity(element,{duration:0.2,from:0.7,to:toOpacity,queue:{scope:'_draggable',position:'end'},afterFinish:function(){Draggable._dragging[element]=false}});},zindex:1000,revert:false,quiet:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,snap:false,delay:0};if(!arguments[1]||Object.isUndefined(arguments[1].endeffect))
Object.extend(defaults,{starteffect:function(element){element._opacity=Element.getOpacity(element);Draggable._dragging[element]=true;new Effect.Opacity(element,{duration:0.2,from:element._opacity,to:0.7});}});var options=Object.extend(defaults,arguments[1]||{});this.element=$(element);if(options.handle&&Object.isString(options.handle))
this.handle=this.element.down('.'+options.handle,0);if(!this.handle)this.handle=$(options.handle);if(!this.handle)this.handle=this.element;if(options.scroll&&!options.scroll.scrollTo&&!options.scroll.outerHTML){options.scroll=$(options.scroll);this._isScrollChild=Element.childOf(this.element,options.scroll);}
Element.makePositioned(this.element);this.options=options;this.dragging=false;this.eventMouseDown=this.initDrag.bindAsEventListener(this);Event.observe(this.handle,"mousedown",this.eventMouseDown);Draggables.register(this);},destroy:function(){Event.stopObserving(this.handle,"mousedown",this.eventMouseDown);Draggables.unregister(this);},currentDelta:function(){return([parseInt(Element.getStyle(this.element,'left')||'0'),parseInt(Element.getStyle(this.element,'top')||'0')]);},initDrag:function(event){if(!Object.isUndefined(Draggable._dragging[this.element])&&Draggable._dragging[this.element])return;if(Event.isLeftClick(event)){var src=Event.element(event);if((tag_name=src.tagName.toUpperCase())&&(tag_name=='INPUT'||tag_name=='SELECT'||tag_name=='OPTION'||tag_name=='BUTTON'||tag_name=='TEXTAREA'))return;var pointer=[Event.pointerX(event),Event.pointerY(event)];var pos=Position.cumulativeOffset(this.element);this.offset=[0,1].map(function(i){return(pointer[i]-pos[i])});Draggables.activate(this);Event.stop(event);}},startDrag:function(event){this.dragging=true;if(!this.delta)
this.delta=this.currentDelta();if(this.options.zindex){this.originalZ=parseInt(Element.getStyle(this.element,'z-index')||0);this.element.style.zIndex=this.options.zindex;}
if(this.options.ghosting){this._clone=this.element.cloneNode(true);this._originallyAbsolute=(this.element.getStyle('position')=='absolute');if(!this._originallyAbsolute)
Position.absolutize(this.element);this.element.parentNode.insertBefore(this._clone,this.element);}
if(this.options.scroll){if(this.options.scroll==window){var where=this._getWindowScroll(this.options.scroll);this.originalScrollLeft=where.left;this.originalScrollTop=where.top;}else{this.originalScrollLeft=this.options.scroll.scrollLeft;this.originalScrollTop=this.options.scroll.scrollTop;}}
Draggables.notify('onStart',this,event);if(this.options.starteffect)this.options.starteffect(this.element);},updateDrag:function(event,pointer){if(!this.dragging)this.startDrag(event);if(!this.options.quiet){Position.prepare();Droppables.show(pointer,this.element);}
Draggables.notify('onDrag',this,event);this.draw(pointer);if(this.options.change)this.options.change(this);if(this.options.scroll){this.stopScrolling();var p;if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){p=[left,top,left+width,top+height];}}else{p=Position.page(this.options.scroll);p[0]+=this.options.scroll.scrollLeft+Position.deltaX;p[1]+=this.options.scroll.scrollTop+Position.deltaY;p.push(p[0]+this.options.scroll.offsetWidth);p.push(p[1]+this.options.scroll.offsetHeight);}
var speed=[0,0];if(pointer[0]<(p[0]+this.options.scrollSensitivity))speed[0]=pointer[0]-(p[0]+this.options.scrollSensitivity);if(pointer[1]<(p[1]+this.options.scrollSensitivity))speed[1]=pointer[1]-(p[1]+this.options.scrollSensitivity);if(pointer[0]>(p[2]-this.options.scrollSensitivity))speed[0]=pointer[0]-(p[2]-this.options.scrollSensitivity);if(pointer[1]>(p[3]-this.options.scrollSensitivity))speed[1]=pointer[1]-(p[3]-this.options.scrollSensitivity);this.startScrolling(speed);}
if(Prototype.Browser.WebKit)window.scrollBy(0,0);Event.stop(event);},finishDrag:function(event,success){this.dragging=false;if(this.options.quiet){Position.prepare();var pointer=[Event.pointerX(event),Event.pointerY(event)];Droppables.show(pointer,this.element);}
if(this.options.ghosting){if(!this._originallyAbsolute)
Position.relativize(this.element);delete this._originallyAbsolute;Element.remove(this._clone);this._clone=null;}
var dropped=false;if(success){dropped=Droppables.fire(event,this.element);if(!dropped)dropped=false;}
if(dropped&&this.options.onDropped)this.options.onDropped(this.element);Draggables.notify('onEnd',this,event);var revert=this.options.revert;if(revert&&Object.isFunction(revert))revert=revert(this.element);var d=this.currentDelta();if(revert&&this.options.reverteffect){if(dropped==0||revert!='failure')
this.options.reverteffect(this.element,d[1]-this.delta[1],d[0]-this.delta[0]);}else{this.delta=d;}
if(this.options.zindex)
this.element.style.zIndex=this.originalZ;if(this.options.endeffect)
this.options.endeffect(this.element);Draggables.deactivate(this);Droppables.reset();},keyPress:function(event){if(event.keyCode!=Event.KEY_ESC)return;this.finishDrag(event,false);Event.stop(event);},endDrag:function(event){if(!this.dragging)return;this.stopScrolling();this.finishDrag(event,true);Event.stop(event);},draw:function(point){var pos=Position.cumulativeOffset(this.element);if(this.options.ghosting){var r=Position.realOffset(this.element);pos[0]+=r[0]-Position.deltaX;pos[1]+=r[1]-Position.deltaY;}
var d=this.currentDelta();pos[0]-=d[0];pos[1]-=d[1];if(this.options.scroll&&(this.options.scroll!=window&&this._isScrollChild)){pos[0]-=this.options.scroll.scrollLeft-this.originalScrollLeft;pos[1]-=this.options.scroll.scrollTop-this.originalScrollTop;}
var p=[0,1].map(function(i){return(point[i]-pos[i]-this.offset[i])}.bind(this));if(this.options.snap){if(Object.isFunction(this.options.snap)){p=this.options.snap(p[0],p[1],this);}else{if(Object.isArray(this.options.snap)){p=p.map(function(v,i){return(v/this.options.snap[i]).round()*this.options.snap[i]}.bind(this));}else{p=p.map(function(v){return(v/this.options.snap).round()*this.options.snap}.bind(this));}}}
var style=this.element.style;if((!this.options.constraint)||(this.options.constraint=='horizontal'))
style.left=p[0]+"px";if((!this.options.constraint)||(this.options.constraint=='vertical'))
style.top=p[1]+"px";if(style.visibility=="hidden")style.visibility="";},stopScrolling:function(){if(this.scrollInterval){clearInterval(this.scrollInterval);this.scrollInterval=null;Draggables._lastScrollPointer=null;}},startScrolling:function(speed){if(!(speed[0]||speed[1]))return;this.scrollSpeed=[speed[0]*this.options.scrollSpeed,speed[1]*this.options.scrollSpeed];this.lastScrolled=new Date();this.scrollInterval=setInterval(this.scroll.bind(this),10);},scroll:function(){var current=new Date();var delta=current-this.lastScrolled;this.lastScrolled=current;if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){if(this.scrollSpeed[0]||this.scrollSpeed[1]){var d=delta/1000;this.options.scroll.scrollTo(left+d*this.scrollSpeed[0],top+d*this.scrollSpeed[1]);}}}else{this.options.scroll.scrollLeft+=this.scrollSpeed[0]*delta/1000;this.options.scroll.scrollTop+=this.scrollSpeed[1]*delta/1000;}
Position.prepare();Droppables.show(Draggables._lastPointer,this.element);Draggables.notify('onDrag',this);if(this._isScrollChild){Draggables._lastScrollPointer=Draggables._lastScrollPointer||$A(Draggables._lastPointer);Draggables._lastScrollPointer[0]+=this.scrollSpeed[0]*delta/1000;Draggables._lastScrollPointer[1]+=this.scrollSpeed[1]*delta/1000;if(Draggables._lastScrollPointer[0]<0)
Draggables._lastScrollPointer[0]=0;if(Draggables._lastScrollPointer[1]<0)
Draggables._lastScrollPointer[1]=0;this.draw(Draggables._lastScrollPointer);}
if(this.options.change)this.options.change(this);},_getWindowScroll:function(w){var T,L,W,H;with(w.document){if(w.document.documentElement&&documentElement.scrollTop){T=documentElement.scrollTop;L=documentElement.scrollLeft;}else if(w.document.body){T=body.scrollTop;L=body.scrollLeft;}
if(w.innerWidth){W=w.innerWidth;H=w.innerHeight;}else if(w.document.documentElement&&documentElement.clientWidth){W=documentElement.clientWidth;H=documentElement.clientHeight;}else{W=body.offsetWidth;H=body.offsetHeight;}}
return{top:T,left:L,width:W,height:H};}});Draggable._dragging={};var SortableObserver=Class.create({initialize:function(element,observer){this.element=$(element);this.observer=observer;this.lastValue=Sortable.serialize(this.element);},onStart:function(){this.lastValue=Sortable.serialize(this.element);},onEnd:function(){Sortable.unmark();if(this.lastValue!=Sortable.serialize(this.element))
this.observer(this.element)}});var Sortable={SERIALIZE_RULE:/^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/,sortables:{},_findRootElement:function(element){while(element.tagName.toUpperCase()!="BODY"){if(element.id&&Sortable.sortables[element.id])return element;element=element.parentNode;}},options:function(element){element=Sortable._findRootElement($(element));if(!element)return;return Sortable.sortables[element.id];},destroy:function(element){element=$(element);var s=Sortable.sortables[element.id];if(s){Draggables.removeObserver(s.element);s.droppables.each(function(d){Droppables.remove(d)});s.draggables.invoke('destroy');delete Sortable.sortables[s.element.id];}},create:function(element){element=$(element);var options=Object.extend({element:element,tag:'li',dropOnEmpty:false,tree:false,treeTag:'ul',overlap:'vertical',constraint:'vertical',containment:element,handle:false,only:false,delay:0,hoverclass:null,ghosting:false,quiet:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,format:this.SERIALIZE_RULE,elements:false,handles:false,onChange:Prototype.emptyFunction,onUpdate:Prototype.emptyFunction},arguments[1]||{});this.destroy(element);var options_for_draggable={revert:true,quiet:options.quiet,scroll:options.scroll,scrollSpeed:options.scrollSpeed,scrollSensitivity:options.scrollSensitivity,delay:options.delay,ghosting:options.ghosting,constraint:options.constraint,handle:options.handle};if(options.starteffect)
options_for_draggable.starteffect=options.starteffect;if(options.reverteffect)
options_for_draggable.reverteffect=options.reverteffect;else
if(options.ghosting)options_for_draggable.reverteffect=function(element){element.style.top=0;element.style.left=0;};if(options.endeffect)
options_for_draggable.endeffect=options.endeffect;if(options.zindex)
options_for_draggable.zindex=options.zindex;var options_for_droppable={overlap:options.overlap,containment:options.containment,tree:options.tree,hoverclass:options.hoverclass,onHover:Sortable.onHover};var options_for_tree={onHover:Sortable.onEmptyHover,overlap:options.overlap,containment:options.containment,hoverclass:options.hoverclass};Element.cleanWhitespace(element);options.draggables=[];options.droppables=[];if(options.dropOnEmpty||options.tree){Droppables.add(element,options_for_tree);options.droppables.push(element);}
(options.elements||this.findElements(element,options)||[]).each(function(e,i){var handle=options.handles?$(options.handles[i]):(options.handle?$(e).select('.'+options.handle)[0]:e);options.draggables.push(new Draggable(e,Object.extend(options_for_draggable,{handle:handle})));Droppables.add(e,options_for_droppable);if(options.tree)e.treeNode=element;options.droppables.push(e);});if(options.tree){(Sortable.findTreeElements(element,options)||[]).each(function(e){Droppables.add(e,options_for_tree);e.treeNode=element;options.droppables.push(e);});}
this.sortables[element.id]=options;Draggables.addObserver(new SortableObserver(element,options.onUpdate));},findElements:function(element,options){return Element.findChildren(element,options.only,options.tree?true:false,options.tag);},findTreeElements:function(element,options){return Element.findChildren(element,options.only,options.tree?true:false,options.treeTag);},onHover:function(element,dropon,overlap){if(Element.isParent(dropon,element))return;if(overlap>.33&&overlap<.66&&Sortable.options(dropon).tree){return;}else if(overlap>0.5){Sortable.mark(dropon,'before');if(dropon.previousSibling!=element){var oldParentNode=element.parentNode;element.style.visibility="hidden";dropon.parentNode.insertBefore(element,dropon);if(dropon.parentNode!=oldParentNode)
Sortable.options(oldParentNode).onChange(element);Sortable.options(dropon.parentNode).onChange(element);}}else{Sortable.mark(dropon,'after');var nextElement=dropon.nextSibling||null;if(nextElement!=element){var oldParentNode=element.parentNode;element.style.visibility="hidden";dropon.parentNode.insertBefore(element,nextElement);if(dropon.parentNode!=oldParentNode)
Sortable.options(oldParentNode).onChange(element);Sortable.options(dropon.parentNode).onChange(element);}}},onEmptyHover:function(element,dropon,overlap){var oldParentNode=element.parentNode;var droponOptions=Sortable.options(dropon);if(!Element.isParent(dropon,element)){var index;var children=Sortable.findElements(dropon,{tag:droponOptions.tag,only:droponOptions.only});var child=null;if(children){var offset=Element.offsetSize(dropon,droponOptions.overlap)*(1.0-overlap);for(index=0;index<children.length;index+=1){if(offset-Element.offsetSize(children[index],droponOptions.overlap)>=0){offset-=Element.offsetSize(children[index],droponOptions.overlap);}else if(offset-(Element.offsetSize(children[index],droponOptions.overlap)/2)>=0){child=index+1<children.length?children[index+1]:null;break;}else{child=children[index];break;}}}
dropon.insertBefore(element,child);Sortable.options(oldParentNode).onChange(element);droponOptions.onChange(element);}},unmark:function(){if(Sortable._marker)Sortable._marker.hide();},mark:function(dropon,position){var sortable=Sortable.options(dropon.parentNode);if(sortable&&!sortable.ghosting)return;if(!Sortable._marker){Sortable._marker=($('dropmarker')||Element.extend(document.createElement('DIV'))).hide().addClassName('dropmarker').setStyle({position:'absolute'});document.getElementsByTagName("body").item(0).appendChild(Sortable._marker);}
var offsets=Position.cumulativeOffset(dropon);Sortable._marker.setStyle({left:offsets[0]+'px',top:offsets[1]+'px'});if(position=='after')
if(sortable.overlap=='horizontal')
Sortable._marker.setStyle({left:(offsets[0]+dropon.clientWidth)+'px'});else
Sortable._marker.setStyle({top:(offsets[1]+dropon.clientHeight)+'px'});Sortable._marker.show();},_tree:function(element,options,parent){var children=Sortable.findElements(element,options)||[];for(var i=0;i<children.length;++i){var match=children[i].id.match(options.format);if(!match)continue;var child={id:encodeURIComponent(match?match[1]:null),element:element,parent:parent,children:[],position:parent.children.length,container:$(children[i]).down(options.treeTag)};if(child.container)
this._tree(child.container,options,child);parent.children.push(child);}
return parent;},tree:function(element){element=$(element);var sortableOptions=this.options(element);var options=Object.extend({tag:sortableOptions.tag,treeTag:sortableOptions.treeTag,only:sortableOptions.only,name:element.id,format:sortableOptions.format},arguments[1]||{});var root={id:null,parent:null,children:[],container:element,position:0};return Sortable._tree(element,options,root);},_constructIndex:function(node){var index='';do{if(node.id)index='['+node.position+']'+index;}while((node=node.parent)!=null);return index;},sequence:function(element){element=$(element);var options=Object.extend(this.options(element),arguments[1]||{});return $(this.findElements(element,options)||[]).map(function(item){return item.id.match(options.format)?item.id.match(options.format)[1]:'';});},setSequence:function(element,new_sequence){element=$(element);var options=Object.extend(this.options(element),arguments[2]||{});var nodeMap={};this.findElements(element,options).each(function(n){if(n.id.match(options.format))
nodeMap[n.id.match(options.format)[1]]=[n,n.parentNode];n.parentNode.removeChild(n);});new_sequence.each(function(ident){var n=nodeMap[ident];if(n){n[1].appendChild(n[0]);delete nodeMap[ident];}});},serialize:function(element){element=$(element);var options=Object.extend(Sortable.options(element),arguments[1]||{});var name=encodeURIComponent((arguments[1]&&arguments[1].name)?arguments[1].name:element.id);if(options.tree){return Sortable.tree(element,arguments[1]).children.map(function(item){return[name+Sortable._constructIndex(item)+"[id]="+
encodeURIComponent(item.id)].concat(item.children.map(arguments.callee));}).flatten().join('&');}else{return Sortable.sequence(element,arguments[1]).map(function(item){return name+"[]="+encodeURIComponent(item);}).join('&');}}};Element.isParent=function(child,element){if(!child.parentNode||child==element)return false;if(child.parentNode==element)return true;return Element.isParent(child.parentNode,element);};Element.findChildren=function(element,only,recursive,tagName){if(!element.hasChildNodes())return null;tagName=tagName.toUpperCase();if(only)only=[only].flatten();var elements=[];$A(element.childNodes).each(function(e){if(e.tagName&&e.tagName.toUpperCase()==tagName&&(!only||(Element.classNames(e).detect(function(v){return only.include(v)}))))
elements.push(e);if(recursive){var grandchildren=Element.findChildren(e,only,recursive,tagName);if(grandchildren)elements.push(grandchildren);}});return(elements.length>0?elements.flatten():[]);};Element.offsetSize=function(element,type){return element['offset'+((type=='vertical'||type=='height')?'Height':'Width')];};if(!Control)var Control={};Control.Slider=Class.create({initialize:function(handle,track,options){var slider=this;if(Object.isArray(handle)){this.handles=handle.collect(function(e){return $(e)});}else{this.handles=[$(handle)];}
this.track=$(track);this.options=options||{};this.axis=this.options.axis||'horizontal';this.increment=this.options.increment||1;this.step=parseInt(this.options.step||'1');this.range=this.options.range||$R(0,1);this.value=0;this.values=this.handles.map(function(){return 0});this.spans=this.options.spans?this.options.spans.map(function(s){return $(s)}):false;this.options.startSpan=$(this.options.startSpan||null);this.options.endSpan=$(this.options.endSpan||null);this.restricted=this.options.restricted||false;this.maximum=this.options.maximum||this.range.end;this.minimum=this.options.minimum||this.range.start;this.alignX=parseInt(this.options.alignX||'0');this.alignY=parseInt(this.options.alignY||'0');this.trackLength=this.maximumOffset()-this.minimumOffset();this.handleLength=this.isVertical()?(this.handles[0].offsetHeight!=0?this.handles[0].offsetHeight:this.handles[0].style.height.replace(/px$/,"")):(this.handles[0].offsetWidth!=0?this.handles[0].offsetWidth:this.handles[0].style.width.replace(/px$/,""));this.active=false;this.dragging=false;this.disabled=false;if(this.options.disabled)this.setDisabled();this.allowedValues=this.options.values?this.options.values.sortBy(Prototype.K):false;if(this.allowedValues){this.minimum=this.allowedValues.min();this.maximum=this.allowedValues.max();}
this.eventMouseDown=this.startDrag.bindAsEventListener(this);this.eventMouseUp=this.endDrag.bindAsEventListener(this);this.eventMouseMove=this.update.bindAsEventListener(this);this.handles.each(function(h,i){i=slider.handles.length-1-i;slider.setValue(parseFloat((Object.isArray(slider.options.sliderValue)?slider.options.sliderValue[i]:slider.options.sliderValue)||slider.range.start),i);h.makePositioned().observe("mousedown",slider.eventMouseDown);});this.track.observe("mousedown",this.eventMouseDown);document.observe("mouseup",this.eventMouseUp);document.observe("mousemove",this.eventMouseMove);this.initialized=true;},dispose:function(){var slider=this;Event.stopObserving(this.track,"mousedown",this.eventMouseDown);Event.stopObserving(document,"mouseup",this.eventMouseUp);Event.stopObserving(document,"mousemove",this.eventMouseMove);this.handles.each(function(h){Event.stopObserving(h,"mousedown",slider.eventMouseDown);});},setDisabled:function(){this.disabled=true;},setEnabled:function(){this.disabled=false;},getNearestValue:function(value){if(this.allowedValues){if(value>=this.allowedValues.max())return(this.allowedValues.max());if(value<=this.allowedValues.min())return(this.allowedValues.min());var offset=Math.abs(this.allowedValues[0]-value);var newValue=this.allowedValues[0];this.allowedValues.each(function(v){var currentOffset=Math.abs(v-value);if(currentOffset<=offset){newValue=v;offset=currentOffset;}});return newValue;}
if(value>this.range.end)return this.range.end;if(value<this.range.start)return this.range.start;return value;},setValue:function(sliderValue,handleIdx){if(!this.active){this.activeHandleIdx=handleIdx||0;this.activeHandle=this.handles[this.activeHandleIdx];this.updateStyles();}
handleIdx=handleIdx||this.activeHandleIdx||0;if(this.initialized&&this.restricted){if((handleIdx>0)&&(sliderValue<this.values[handleIdx-1]))
sliderValue=this.values[handleIdx-1];if((handleIdx<(this.handles.length-1))&&(sliderValue>this.values[handleIdx+1]))
sliderValue=this.values[handleIdx+1];}
sliderValue=this.getNearestValue(sliderValue);this.values[handleIdx]=sliderValue;this.value=this.values[0];this.handles[handleIdx].style[this.isVertical()?'top':'left']=this.translateToPx(sliderValue);this.drawSpans();if(!this.dragging||!this.event)this.updateFinished();},setValueBy:function(delta,handleIdx){this.setValue(this.values[handleIdx||this.activeHandleIdx||0]+delta,handleIdx||this.activeHandleIdx||0);},translateToPx:function(value){return Math.round(((this.trackLength-this.handleLength)/(this.range.end-this.range.start))*(value-this.range.start))+"px";},translateToValue:function(offset){return((offset/(this.trackLength-this.handleLength)*(this.range.end-this.range.start))+this.range.start);},getRange:function(range){var v=this.values.sortBy(Prototype.K);range=range||0;return $R(v[range],v[range+1]);},minimumOffset:function(){return(this.isVertical()?this.alignY:this.alignX);},maximumOffset:function(){return(this.isVertical()?(this.track.offsetHeight!=0?this.track.offsetHeight:this.track.style.height.replace(/px$/,""))-this.alignY:(this.track.offsetWidth!=0?this.track.offsetWidth:this.track.style.width.replace(/px$/,""))-this.alignX);},isVertical:function(){return(this.axis=='vertical');},drawSpans:function(){var slider=this;if(this.spans)
$R(0,this.spans.length-1).each(function(r){slider.setSpan(slider.spans[r],slider.getRange(r))});if(this.options.startSpan)
this.setSpan(this.options.startSpan,$R(0,this.values.length>1?this.getRange(0).min():this.value));if(this.options.endSpan)
this.setSpan(this.options.endSpan,$R(this.values.length>1?this.getRange(this.spans.length-1).max():this.value,this.maximum));},setSpan:function(span,range){if(this.isVertical()){span.style.top=this.translateToPx(range.start);span.style.height=this.translateToPx(range.end-range.start+this.range.start);}else{span.style.left=this.translateToPx(range.start);span.style.width=this.translateToPx(range.end-range.start+this.range.start);}},updateStyles:function(){this.handles.each(function(h){Element.removeClassName(h,'selected')});Element.addClassName(this.activeHandle,'selected');},startDrag:function(event){if(Event.isLeftClick(event)){if(!this.disabled){this.active=true;var handle=Event.element(event);var pointer=[Event.pointerX(event),Event.pointerY(event)];var track=handle;if(track==this.track){var offsets=Position.cumulativeOffset(this.track);this.event=event;this.setValue(this.translateToValue((this.isVertical()?pointer[1]-offsets[1]:pointer[0]-offsets[0])-(this.handleLength/2)));var offsets=Position.cumulativeOffset(this.activeHandle);this.offsetX=(pointer[0]-offsets[0]);this.offsetY=(pointer[1]-offsets[1]);}else{while((this.handles.indexOf(handle)==-1)&&handle.parentNode)
handle=handle.parentNode;if(this.handles.indexOf(handle)!=-1){this.activeHandle=handle;this.activeHandleIdx=this.handles.indexOf(this.activeHandle);this.updateStyles();var offsets=Position.cumulativeOffset(this.activeHandle);this.offsetX=(pointer[0]-offsets[0]);this.offsetY=(pointer[1]-offsets[1]);}}}
Event.stop(event);}},update:function(event){if(this.active){if(!this.dragging)this.dragging=true;this.draw(event);if(Prototype.Browser.WebKit)window.scrollBy(0,0);Event.stop(event);}},draw:function(event){var pointer=[Event.pointerX(event),Event.pointerY(event)];var offsets=Position.cumulativeOffset(this.track);pointer[0]-=this.offsetX+offsets[0];pointer[1]-=this.offsetY+offsets[1];this.event=event;this.setValue(this.translateToValue(this.isVertical()?pointer[1]:pointer[0]));if(this.initialized&&this.options.onSlide)
this.options.onSlide(this.values.length>1?this.values:this.value,this);},endDrag:function(event){if(this.active&&this.dragging){this.finishDrag(event,true);Event.stop(event);}
this.active=false;this.dragging=false;},finishDrag:function(event,success){this.active=false;this.dragging=false;this.updateFinished();},updateFinished:function(){if(this.initialized&&this.options.onChange)
this.options.onChange(this.values.length>1?this.values:this.value,this);this.event=null;}});Sound={tracks:{},_enabled:true,template:new Template('<embed style="height:0" id="sound_#{track}_#{id}" src="#{url}" loop="false" autostart="true" hidden="true"/>'),enable:function(){Sound._enabled=true;},disable:function(){Sound._enabled=false;},play:function(url){if(!Sound._enabled)return;var options=Object.extend({track:'global',url:url,replace:false},arguments[1]||{});if(options.replace&&this.tracks[options.track]){$R(0,this.tracks[options.track].id).each(function(id){var sound=$('sound_'+options.track+'_'+id);sound.Stop&&sound.Stop();sound.remove();});this.tracks[options.track]=null;}
if(!this.tracks[options.track])
this.tracks[options.track]={id:0};else
this.tracks[options.track].id++;options.id=this.tracks[options.track].id;$$('body')[0].insert(Prototype.Browser.IE?new Element('bgsound',{id:'sound_'+options.track+'_'+options.id,src:options.url,loop:1,autostart:true}):Sound.template.evaluate(options));}};if(Prototype.Browser.Gecko&&navigator.userAgent.indexOf("Win")>0){if(navigator.plugins&&$A(navigator.plugins).detect(function(p){return p.name.indexOf('QuickTime')!=-1}))
Sound.template=new Template('<object id="sound_#{track}_#{id}" width="0" height="0" type="audio/mpeg" data="#{url}"/>');else
Sound.play=function(){};}
Event.simulateMouse=function(element,eventName){var options=Object.extend({pointerX:0,pointerY:0,buttons:0,ctrlKey:false,altKey:false,shiftKey:false,metaKey:false},arguments[2]||{});var oEvent=document.createEvent("MouseEvents");oEvent.initMouseEvent(eventName,true,true,document.defaultView,options.buttons,options.pointerX,options.pointerY,options.pointerX,options.pointerY,options.ctrlKey,options.altKey,options.shiftKey,options.metaKey,0,$(element));if(this.mark)Element.remove(this.mark);this.mark=document.createElement('div');this.mark.appendChild(document.createTextNode(" "));document.body.appendChild(this.mark);this.mark.style.position='absolute';this.mark.style.top=options.pointerY+"px";this.mark.style.left=options.pointerX+"px";this.mark.style.width="5px";this.mark.style.height="5px;";this.mark.style.borderTop="1px solid red;";this.mark.style.borderLeft="1px solid red;";if(this.step)
alert('['+new Date().getTime().toString()+'] '+eventName+'/'+Test.Unit.inspect(options));$(element).dispatchEvent(oEvent);};Event.simulateKey=function(element,eventName){var options=Object.extend({ctrlKey:false,altKey:false,shiftKey:false,metaKey:false,keyCode:0,charCode:0},arguments[2]||{});var oEvent=document.createEvent("KeyEvents");oEvent.initKeyEvent(eventName,true,true,window,options.ctrlKey,options.altKey,options.shiftKey,options.metaKey,options.keyCode,options.charCode);$(element).dispatchEvent(oEvent);};Event.simulateKeys=function(element,command){for(var i=0;i<command.length;i++){Event.simulateKey(element,'keypress',{charCode:command.charCodeAt(i)});}};var Test={};Test.Unit={};Test.Unit.inspect=Object.inspect;Test.Unit.Logger=Class.create();Test.Unit.Logger.prototype={initialize:function(log){this.log=$(log);if(this.log){this._createLogTable();}},start:function(testName){if(!this.log)return;this.testName=testName;this.lastLogLine=document.createElement('tr');this.statusCell=document.createElement('td');this.nameCell=document.createElement('td');this.nameCell.className="nameCell";this.nameCell.appendChild(document.createTextNode(testName));this.messageCell=document.createElement('td');this.lastLogLine.appendChild(this.statusCell);this.lastLogLine.appendChild(this.nameCell);this.lastLogLine.appendChild(this.messageCell);this.loglines.appendChild(this.lastLogLine);},finish:function(status,summary){if(!this.log)return;this.lastLogLine.className=status;this.statusCell.innerHTML=status;this.messageCell.innerHTML=this._toHTML(summary);this.addLinksToResults();},message:function(message){if(!this.log)return;this.messageCell.innerHTML=this._toHTML(message);},summary:function(summary){if(!this.log)return;this.logsummary.innerHTML=this._toHTML(summary);},_createLogTable:function(){this.log.innerHTML='<div id="logsummary"></div>'+'<table id="logtable">'+'<thead><tr><th>Status</th><th>Test</th><th>Message</th></tr></thead>'+'<tbody id="loglines"></tbody>'+'</table>';this.logsummary=$('logsummary');this.loglines=$('loglines');},_toHTML:function(txt){return txt.escapeHTML().replace(/\n/g,"<br/>");},addLinksToResults:function(){$$("tr.failed .nameCell").each(function(td){td.title="Run only this test";Event.observe(td,'click',function(){window.location.search="?tests="+td.innerHTML;});});$$("tr.passed .nameCell").each(function(td){td.title="Run all tests";Event.observe(td,'click',function(){window.location.search="";});});}};Test.Unit.Runner=Class.create();Test.Unit.Runner.prototype={initialize:function(testcases){this.options=Object.extend({testLog:'testlog'},arguments[1]||{});this.options.resultsURL=this.parseResultsURLQueryParameter();this.options.tests=this.parseTestsQueryParameter();if(this.options.testLog){this.options.testLog=$(this.options.testLog)||null;}
if(this.options.tests){this.tests=[];for(var i=0;i<this.options.tests.length;i++){if(/^test/.test(this.options.tests[i])){this.tests.push(new Test.Unit.Testcase(this.options.tests[i],testcases[this.options.tests[i]],testcases["setup"],testcases["teardown"]));}}}else{if(this.options.test){this.tests=[new Test.Unit.Testcase(this.options.test,testcases[this.options.test],testcases["setup"],testcases["teardown"])];}else{this.tests=[];for(var testcase in testcases){if(/^test/.test(testcase)){this.tests.push(new Test.Unit.Testcase(this.options.context?' -> '+this.options.titles[testcase]:testcase,testcases[testcase],testcases["setup"],testcases["teardown"]));}}}}
this.currentTest=0;this.logger=new Test.Unit.Logger(this.options.testLog);setTimeout(this.runTests.bind(this),1000);},parseResultsURLQueryParameter:function(){return window.location.search.parseQuery()["resultsURL"];},parseTestsQueryParameter:function(){if(window.location.search.parseQuery()["tests"]){return window.location.search.parseQuery()["tests"].split(',');};},getResult:function(){var hasFailure=false;for(var i=0;i<this.tests.length;i++){if(this.tests[i].errors>0){return"ERROR";}
if(this.tests[i].failures>0){hasFailure=true;}}
if(hasFailure){return"FAILURE";}else{return"SUCCESS";}},postResults:function(){if(this.options.resultsURL){new Ajax.Request(this.options.resultsURL,{method:'get',parameters:'result='+this.getResult(),asynchronous:false});}},runTests:function(){var test=this.tests[this.currentTest];if(!test){this.postResults();this.logger.summary(this.summary());return;}
if(!test.isWaiting){this.logger.start(test.name);}
test.run();if(test.isWaiting){this.logger.message("Waiting for "+test.timeToWait+"ms");setTimeout(this.runTests.bind(this),test.timeToWait||1000);}else{this.logger.finish(test.status(),test.summary());this.currentTest++;this.runTests();}},summary:function(){var assertions=0;var failures=0;var errors=0;var messages=[];for(var i=0;i<this.tests.length;i++){assertions+=this.tests[i].assertions;failures+=this.tests[i].failures;errors+=this.tests[i].errors;}
return((this.options.context?this.options.context+': ':'')+
this.tests.length+" tests, "+
assertions+" assertions, "+
failures+" failures, "+
errors+" errors");}};Test.Unit.Assertions=Class.create();Test.Unit.Assertions.prototype={initialize:function(){this.assertions=0;this.failures=0;this.errors=0;this.messages=[];},summary:function(){return(this.assertions+" assertions, "+
this.failures+" failures, "+
this.errors+" errors"+"\n"+
this.messages.join("\n"));},pass:function(){this.assertions++;},fail:function(message){this.failures++;this.messages.push("Failure: "+message);},info:function(message){this.messages.push("Info: "+message);},error:function(error){this.errors++;this.messages.push(error.name+": "+error.message+"("+Test.Unit.inspect(error)+")");},status:function(){if(this.failures>0)return'failed';if(this.errors>0)return'error';return'passed';},assert:function(expression){var message=arguments[1]||'assert: got "'+Test.Unit.inspect(expression)+'"';try{expression?this.pass():this.fail(message);}
catch(e){this.error(e);}},assertEqual:function(expected,actual){var message=arguments[2]||"assertEqual";try{(expected==actual)?this.pass():this.fail(message+': expected "'+Test.Unit.inspect(expected)+'", actual "'+Test.Unit.inspect(actual)+'"');}
catch(e){this.error(e);}},assertInspect:function(expected,actual){var message=arguments[2]||"assertInspect";try{(expected==actual.inspect())?this.pass():this.fail(message+': expected "'+Test.Unit.inspect(expected)+'", actual "'+Test.Unit.inspect(actual)+'"');}
catch(e){this.error(e);}},assertEnumEqual:function(expected,actual){var message=arguments[2]||"assertEnumEqual";try{$A(expected).length==$A(actual).length&&expected.zip(actual).all(function(pair){return pair[0]==pair[1]})?this.pass():this.fail(message+': expected '+Test.Unit.inspect(expected)+', actual '+Test.Unit.inspect(actual));}
catch(e){this.error(e);}},assertNotEqual:function(expected,actual){var message=arguments[2]||"assertNotEqual";try{(expected!=actual)?this.pass():this.fail(message+': got "'+Test.Unit.inspect(actual)+'"');}
catch(e){this.error(e);}},assertIdentical:function(expected,actual){var message=arguments[2]||"assertIdentical";try{(expected===actual)?this.pass():this.fail(message+': expected "'+Test.Unit.inspect(expected)+'", actual "'+Test.Unit.inspect(actual)+'"');}
catch(e){this.error(e);}},assertNotIdentical:function(expected,actual){var message=arguments[2]||"assertNotIdentical";try{!(expected===actual)?this.pass():this.fail(message+': expected "'+Test.Unit.inspect(expected)+'", actual "'+Test.Unit.inspect(actual)+'"');}
catch(e){this.error(e);}},assertNull:function(obj){var message=arguments[1]||'assertNull';try{(obj==null)?this.pass():this.fail(message+': got "'+Test.Unit.inspect(obj)+'"');}
catch(e){this.error(e);}},assertMatch:function(expected,actual){var message=arguments[2]||'assertMatch';var regex=new RegExp(expected);try{(regex.exec(actual))?this.pass():this.fail(message+' : regex: "'+Test.Unit.inspect(expected)+' did not match: '+Test.Unit.inspect(actual)+'"');}
catch(e){this.error(e);}},assertHidden:function(element){var message=arguments[1]||'assertHidden';this.assertEqual("none",element.style.display,message);},assertNotNull:function(object){var message=arguments[1]||'assertNotNull';this.assert(object!=null,message);},assertType:function(expected,actual){var message=arguments[2]||'assertType';try{(actual.constructor==expected)?this.pass():this.fail(message+': expected "'+Test.Unit.inspect(expected)+'", actual "'+(actual.constructor)+'"');}
catch(e){this.error(e);}},assertNotOfType:function(expected,actual){var message=arguments[2]||'assertNotOfType';try{(actual.constructor!=expected)?this.pass():this.fail(message+': expected "'+Test.Unit.inspect(expected)+'", actual "'+(actual.constructor)+'"');}
catch(e){this.error(e);}},assertInstanceOf:function(expected,actual){var message=arguments[2]||'assertInstanceOf';try{(actual instanceof expected)?this.pass():this.fail(message+": object was not an instance of the expected type");}
catch(e){this.error(e);}},assertNotInstanceOf:function(expected,actual){var message=arguments[2]||'assertNotInstanceOf';try{!(actual instanceof expected)?this.pass():this.fail(message+": object was an instance of the not expected type");}
catch(e){this.error(e);}},assertRespondsTo:function(method,obj){var message=arguments[2]||'assertRespondsTo';try{(obj[method]&&typeof obj[method]=='function')?this.pass():this.fail(message+": object doesn't respond to ["+method+"]");}
catch(e){this.error(e);}},assertReturnsTrue:function(method,obj){var message=arguments[2]||'assertReturnsTrue';try{var m=obj[method];if(!m)m=obj['is'+method.charAt(0).toUpperCase()+method.slice(1)];m()?this.pass():this.fail(message+": method returned false");}
catch(e){this.error(e);}},assertReturnsFalse:function(method,obj){var message=arguments[2]||'assertReturnsFalse';try{var m=obj[method];if(!m)m=obj['is'+method.charAt(0).toUpperCase()+method.slice(1)];!m()?this.pass():this.fail(message+": method returned true");}
catch(e){this.error(e);}},assertRaise:function(exceptionName,method){var message=arguments[2]||'assertRaise';try{method();this.fail(message+": exception expected but none was raised");}
catch(e){((exceptionName==null)||(e.name==exceptionName))?this.pass():this.error(e);}},assertElementsMatch:function(){var expressions=$A(arguments),elements=$A(expressions.shift());if(elements.length!=expressions.length){this.fail('assertElementsMatch: size mismatch: '+elements.length+' elements, '+expressions.length+' expressions');return false;}
elements.zip(expressions).all(function(pair,index){var element=$(pair.first()),expression=pair.last();if(element.match(expression))return true;this.fail('assertElementsMatch: (in index '+index+') expected '+expression.inspect()+' but got '+element.inspect());}.bind(this))&&this.pass();},assertElementMatches:function(element,expression){this.assertElementsMatch([element],expression);},benchmark:function(operation,iterations){var startAt=new Date();(iterations||1).times(operation);var timeTaken=((new Date())-startAt);this.info((arguments[2]||'Operation')+' finished '+
iterations+' iterations in '+(timeTaken/1000)+'s');return timeTaken;},_isVisible:function(element){element=$(element);if(!element.parentNode)return true;this.assertNotNull(element);if(element.style&&Element.getStyle(element,'display')=='none')
return false;return this._isVisible(element.parentNode);},assertNotVisible:function(element){this.assert(!this._isVisible(element),Test.Unit.inspect(element)+" was not hidden and didn't have a hidden parent either. "+(""||arguments[1]));},assertVisible:function(element){this.assert(this._isVisible(element),Test.Unit.inspect(element)+" was not visible. "+(""||arguments[1]));},benchmark:function(operation,iterations){var startAt=new Date();(iterations||1).times(operation);var timeTaken=((new Date())-startAt);this.info((arguments[2]||'Operation')+' finished '+
iterations+' iterations in '+(timeTaken/1000)+'s');return timeTaken;}};Test.Unit.Testcase=Class.create();Object.extend(Object.extend(Test.Unit.Testcase.prototype,Test.Unit.Assertions.prototype),{initialize:function(name,test,setup,teardown){Test.Unit.Assertions.prototype.initialize.bind(this)();this.name=name;if(typeof test=='string'){test=test.gsub(/(\.should[^\(]+\()/,'#{0}this,');test=test.gsub(/(\.should[^\(]+)\(this,\)/,'#{1}(this)');this.test=function(){eval('with(this){'+test+'}');}}else{this.test=test||function(){};}
this.setup=setup||function(){};this.teardown=teardown||function(){};this.isWaiting=false;this.timeToWait=1000;},wait:function(time,nextPart){this.isWaiting=true;this.test=nextPart;this.timeToWait=time;},run:function(){try{try{if(!this.isWaiting)this.setup.bind(this)();this.isWaiting=false;this.test.bind(this)();}finally{if(!this.isWaiting){this.teardown.bind(this)();}}}
catch(e){this.error(e);}}});Test.setupBDDExtensionMethods=function(){var METHODMAP={shouldEqual:'assertEqual',shouldNotEqual:'assertNotEqual',shouldEqualEnum:'assertEnumEqual',shouldBeA:'assertType',shouldNotBeA:'assertNotOfType',shouldBeAn:'assertType',shouldNotBeAn:'assertNotOfType',shouldBeNull:'assertNull',shouldNotBeNull:'assertNotNull',shouldBe:'assertReturnsTrue',shouldNotBe:'assertReturnsFalse',shouldRespondTo:'assertRespondsTo'};var makeAssertion=function(assertion,args,object){this[assertion].apply(this,(args||[]).concat([object]));};Test.BDDMethods={};$H(METHODMAP).each(function(pair){Test.BDDMethods[pair.key]=function(){var args=$A(arguments);var scope=args.shift();makeAssertion.apply(scope,[pair.value,args,this]);};});[Array.prototype,String.prototype,Number.prototype,Boolean.prototype].each(function(p){Object.extend(p,Test.BDDMethods)});};Test.context=function(name,spec,log){Test.setupBDDExtensionMethods();var compiledSpec={};var titles={};for(specName in spec){switch(specName){case"setup":case"teardown":compiledSpec[specName]=spec[specName];break;default:var testName='test'+specName.gsub(/\s+/,'-').camelize();var body=spec[specName].toString().split('\n').slice(1);if(/^\{/.test(body[0]))body=body.slice(1);body.pop();body=body.map(function(statement){return statement.strip()});compiledSpec[testName]=body.join('\n');titles[testName]=specName;}}
new Test.Unit.Runner(compiledSpec,{titles:titles,testLog:log||'testlog',context:name});};validate_email=function(email){var regexEmail=/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i
return regexEmail.test(email);}
Autocompleter.LocalAdvanced=Class.create(Autocompleter.Base,{initialize:function(element,update,array,options){this.baseInitialize(element,update,options);this.options.array=array;this.wrapper=$(this.element.parentNode);if(!this.element.hacks){this.element.should_use_borderless_hack=Prototype.Browser.WebKit;this.element.should_use_shadow_hack=Prototype.Browser.IE||Prototype.Browser.Opera;this.element.hacks=true;}
if(this.element.should_use_borderless_hack||this.element.should_use_shadow_hack){this.wrapper.addClassName('tokenizer_input_borderless');}
this.options.onShow=function(element,update){Position.clone(element.parentNode.parentNode,update,{setHeight:false,setWidth:false,offsetTop:element.parentNode.parentNode.offsetHeight});update.show();}
this.options.onHide=function(element,update){update.hide()};},getUpdatedChoices:function(){this.updateChoices(this.options.selector(this));},onBlur:function($super,event){$super();if(this.wrapper.nextSiblings().length>0){this.wrapper.nextSiblings().last().insert({after:this.wrapper});}},set_input_size:function(size){size=size||20;this.element.setStyle({width:size+"px"});},onKeyPress:function(event){var new_size=20+(this.element.value.length*7);if(new_size<=340){this.set_input_size(new_size);}else{this.set_input_size(340);}
if(this.active)
switch(event.keyCode){case Event.KEY_TAB:case Event.KEY_RETURN:this.selectEntry();Event.stop(event);case Event.KEY_ESC:this.hide();this.active=false;Event.stop(event);return;case Event.KEY_LEFT:case Event.KEY_RIGHT:return;case Event.KEY_UP:this.markPrevious();this.render();Event.stop(event);return;case Event.KEY_DOWN:this.markNext();this.render();Event.stop(event);return;}
else{if(event.keyCode==Event.KEY_TAB||event.keyCode==Event.KEY_RETURN||(Prototype.Browser.WebKit>0&&event.keyCode==0)||event.keyCode==44||event.keyCode==188){var email_addr=this.element.value.strip().sub(',','')
if(validate_email(email_addr)){addEmailToList(email_addr);Event.stop(event);}
this.element.value="";this.set_input_size();return false;}
switch(event.keyCode){case Event.KEY_LEFT:case Event.KEY_BACKSPACE:if(this.element.value==""&&typeof this.wrapper.previous().token!="undefined"){this.wrapper.previous().token.select();}
return;case Event.KEY_RIGHT:if(this.element.value==""&&this.wrapper.next()&&typeof this.wrapper.next().token!="undefined"){this.wrapper.next().token.select();}}}
this.changed=true;this.hasFocus=true;if(this.observer)clearTimeout(this.observer);this.observer=setTimeout(this.onObserverEvent.bind(this),this.options.frequency*1000);},setOptions:function(options){this.options=Object.extend({choices:10,partialSearch:true,partialChars:2,ignoreCase:true,fullSearch:false,selector:function(instance){var ret=[];var partial=[];var entry=instance.getToken();var count=0;for(var i=0;i<instance.options.array.length&&ret.length<instance.options.choices;i++){var elem=instance.options.array[i];var elem_name=elem[instance.options.search_field];var foundPos=instance.options.ignoreCase?elem_name.toLowerCase().indexOf(entry.toLowerCase()):elem_name.indexOf(entry);while(foundPos!=-1){if(foundPos==0&&elem_name.length!=entry.length){var value="<strong>"+elem_name.substr(0,entry.length)+"</strong>"+elem_name.substr(entry.length);ret.push("<li value='"+i+"'>"+"<div>"+value+"</div>"
+"<div>"+elem.email+"</div>"+"</li>");break;}else if(entry.length>=instance.options.partialChars&&instance.options.partialSearch&&foundPos!=-1){if(instance.options.fullSearch||/\s/.test(elem_name.substr(foundPos-1,1))){var value=elem_name.substr(0,foundPos)+"<strong>"+
elem_name.substr(foundPos,entry.length)+"</strong>"+elem_name.substr(foundPos+entry.length)
partial.push("<li value='"+i+"'>"+"<div>"+value+"</div>"
+"<div>"+elem.email+"</div>"+"</li>");break;}}
foundPos=instance.options.ignoreCase?elem_name.toLowerCase().indexOf(entry.toLowerCase(),foundPos+1):elem_name.indexOf(entry,foundPos+1);}}
if(partial.length)
ret=ret.concat(partial.slice(0,instance.options.choices-ret.length));return"<ul>"+ret.join('')+"</ul>";}},options||{});}});HiddenInput=Class.create({initialize:function(element,auto_complete){this.element=$(element);this.auto_complete=auto_complete;this.token;Event.observe(this.element,'keydown',this.onKeyPress.bindAsEventListener(this));},onKeyPress:function(event){if(this.token.selected){switch(event.keyCode){case Event.KEY_LEFT:this.token.element.insert({before:this.auto_complete.wrapper})
this.token.deselect();this.auto_complete.element.focus();return false;case Event.KEY_RIGHT:this.token.element.insert({after:this.auto_complete.wrapper})
this.token.deselect();this.auto_complete.element.focus();return false;case Event.KEY_BACKSPACE:case Event.KEY_DELETE:this.token.element.remove();this.auto_complete.element.focus();return false;}}}})
Token=Class.create({initialize:function(element,hidden_input){this.element=$(element);this.hidden_input=hidden_input;this.element.token=this;this.selected=false;Event.observe(document,'click',this.onclick.bindAsEventListener(this));},select:function(){this.hidden_input.token=this;this.hidden_input.element.activate();this.selected=true;this.element.addClassName('token_selected');},deselect:function(){this.hidden_input.token=undefined;this.selected=false;this.element.removeClassName('token_selected')},onclick:function(event){if(this.detect(event)&&!this.selected){this.select();}else{this.deselect();}},detect:function(e){var eventTarget=e.target?e.target:e.srcElement;var token=eventTarget.token;var candidate=eventTarget;while(token==null&&candidate.parentNode){candidate=candidate.parentNode;token=candidate.token;}
return token!=null&&token.element==this.element;}});addContactToList=function(item){$('autocomplete_input').value="";var token=Builder.node('a',{"class":'token',href:"#",tabindex:"-1"},Builder.node('span',Builder.node('span',Builder.node('span',Builder.node('span',{},[Builder.node('input',{type:"hidden",name:"ids[]",value:item.lastChild.innerHTML}),contacts[Element.readAttribute(item,'value')].name,Builder.node('span',{"class":'x',onmouseout:"this.className='x'",onmouseover:"this.className='x_hover'",onclick:"this.parentNode.parentNode.parentNode.parentNode.parentNode.remove(true); return false;"}," ")])))));$(token).down(4).next().innerHTML="&nbsp;";new Token(token,hidden_input);$('autocomplete_display').insert({before:token});}
addEmailToList=function(email){var token=Builder.node('a',{"class":'token',href:"#",tabindex:"-1"},Builder.node('span',Builder.node('span',Builder.node('span',Builder.node('span',{},[Builder.node('input',{type:"hidden",name:"emails[]",value:email}),email,Builder.node('span',{"class":'x',onmouseout:"this.className='x'",onmouseover:"this.className='x_hover'",onclick:"this.parentNode.parentNode.parentNode.parentNode.parentNode.remove(true); return false;"}," ")])))));$(token).down(4).next().innerHTML="&nbsp;";new Token(token,hidden_input);$('autocomplete_display').insert({before:token});}
var SortableTree=Class.create({initialize:function(element,options){this.element=$(element);this.root=new SortableTree.Node(this,null,element,options);this.isSortable=false;},toggleSortable:function(){this.isSortable?this.setUnsortable():this.setSortable();},setSortable:function(){Element.addClassName(this.root.element,'sortable');this.root.setSortable();this.isSortable=true;},setUnsortable:function(){Element.removeClassName(this.root.element,'sortable');this.root.setUnsortable();this.isSortable=false;},find:function(element){return this.root.find($(element));},unmark_all:function(){this.root.unmark();}});SortableTree.Node=Class.create({initialize:function(tree,parent,element,options){this.tree=tree;this.parent=parent;this.element=$(element);this.options=Object.extend({tagName:'LI',containerTagName:'UL',droppable:{},draggable:{}},options||{});this.droppable_options=Object.extend({onHover:function(drag,drop,overlap){this.onHover(drag,drop,overlap);}.bind(this),onDrop:function(drag,drop,event){this.onDrop(drag,drop,event);}.bind(this),overlap:'vertical',hoverclass:'drop_hover'},options.droppable);this.draggable_options=Object.extend({ghosting:true,revert:true,constraint:'vertical',reverteffect:function(element,top_offset,left_offset){element.setStyle({left:'0px',top:'0px'});new Effect.Highlight(element,{startcolor:'#FFFF99'})}},options.draggable);this.initChildren();},id:function(){if(!this._id){var match=this.element.id.match(/^[\w]+_([\d]*)$/);this._id=encodeURIComponent(match?match[1]:null);}
return this._id;},previousSibling:function(){var pos=this.parent.children.indexOf(this);return pos>0?this.parent.children[pos-1]:null;},initChildren:function(){this.children=[];var container=this.findContainer(this.element);if(container){$A(container.childNodes).each(function(child){if(this.acceptTagName(child)){this.children.push(new SortableTree.Node(this.tree,this,child,this.options));}}.bind(this));}},acceptTagName:function(element){return element.tagName&&element.tagName.toUpperCase()==this.options.tagName;},setSortable:function(){Droppables.add(this.element,this.droppable_options);this.draggable=new Draggable(this.element,this.draggable_options);this.children.each(function(child){child.setSortable();});},setUnsortable:function(){Droppables.remove(this.element);this.draggable.destroy();this.children.each(function(child){child.setUnsortable();});},find:function(element){if(element==this.element)return this;for(var i=0;i<this.children.length;i++){var node=this.children[i].find(element);if(node)return node;}},findContainer:function(element){if(element.tagName!=this.options.containerTagName){element=$A(element.childNodes).detect(function(node){return node.tagName==this.options.containerTagName;}.bind(this));}
return element;},findOrCreateContainer:function(element){var container=this.findContainer(element);if(!container){container=document.createElement(this.options.containerTagName);element.appendChild(container);}
return container;},onHover:function(drag,drop,overlap){if(this.canContainChildren(drop)){this.dropPosition=overlap<0.33?'bottom':overlap>0.77?'top':'insert';}else{this.dropPosition=overlap<0.5?'bottom':'top';}
this.mark(drop);if(this.options.onHover)this.options.onHover(drag,drop,overlap);},canContainChildren:function(element){if(this.options.droppable.container){return element.match(this.options.droppable.container);}
return true;},onDrop:function(drag,drop,event){drag=this.tree.find(drag);drop=this.tree.find(drop);if(drop.parent||this.dropPosition=='insert'){switch(this.dropPosition){case'top':drop.parent.insertBefore(drag,drop);break;case'bottom':drop.parent.insertBefore(drag,drop.nextSibling());break;case'insert':this.insertBefore(drag,this.firstChild());break;}}
if(this.options.onDrop)this.options.onDrop(drag,drop,event);},mark:function(element,position){this.tree.unmark_all();Element.addClassName(element,'drop_'+this.dropPosition);},unmark:function(){['drop_top','drop_bottom','drop_insert'].each(function(classname){Element.removeClassName(this.element,classname);}.bind(this));this.children.each(function(child){child.unmark();});},to_params:function(name){name=name||this.tree.element.id;var leftNode=this.previousSibling();return name+'['+this.id()+'][parent_id]='+this.parent.id()+'&'+
name+'['+this.id()+'][left_id]='+(leftNode?leftNode.id():'');},firstChild:function(){return this.children.length>0?this.children[0]:null;},previousSibling:function(){var pos=this.parent.children.indexOf(this);return pos>0?this.parent.children[pos-1]:null;},nextSibling:function(){var pos=this.parent.children.indexOf(this);return pos+1<this.parent.children.length?this.parent.children[pos+1]:null;},removeChild:function(node){this.children.splice(this.children.indexOf(node),1);node.element.parentNode.removeChild(node.element);},insertBefore:function(node,sibling){if(node==sibling)return;node.parent.removeChild(node);node.parent=this;var pos=sibling?this.children.indexOf(sibling):this.children.length;this.children.splice(pos,0,node);this.findOrCreateContainer(this.element).insertBefore(node.element,sibling?sibling.element:null);}});var Resizeable=Class.create();Resizeable.prototype={initialize:function(element){var options=Object.extend({top:6,bottom:6,left:6,right:6,minHeight:0,minWidth:0,zindex:1000,resize:null,duringresize:null},arguments[1]||{});this.element=$(element);this.handle=this.element;Element.makePositioned(this.element);this.options=options;this.active=false;this.resizing=false;this.currentDirection='';this.eventMouseDown=this.startResize.bindAsEventListener(this);this.eventMouseUp=this.endResize.bindAsEventListener(this);this.eventMouseMove=this.update.bindAsEventListener(this);this.eventCursorCheck=this.cursor.bindAsEventListener(this);this.eventKeypress=this.keyPress.bindAsEventListener(this);this.registerEvents();},destroy:function(){Event.stopObserving(this.handle,"mousedown",this.eventMouseDown);this.unregisterEvents();},registerEvents:function(){Event.observe(document,"mouseup",this.eventMouseUp);Event.observe(document,"mousemove",this.eventMouseMove);Event.observe(document,"keypress",this.eventKeypress);Event.observe(this.handle,"mousedown",this.eventMouseDown);Event.observe(this.element,"mousemove",this.eventCursorCheck);},unregisterEvents:function(){},startResize:function(event){if(Event.isLeftClick(event)){var src=Event.element(event);if(src.tagName&&(src.tagName=='INPUT'||src.tagName=='SELECT'||src.tagName=='BUTTON'||src.tagName=='TEXTAREA'))return;var dir=this.directions(event);if(dir.length>0){this.active=true;var offsets=Position.cumulativeOffset(this.element);this.startTop=offsets[1];this.startLeft=offsets[0];this.startWidth=parseInt(Element.getStyle(this.element,'width'));this.startHeight=parseInt(Element.getStyle(this.element,'height'));this.startX=event.clientX+document.body.scrollLeft+document.documentElement.scrollLeft;this.startY=event.clientY+document.body.scrollTop+document.documentElement.scrollTop;this.currentDirection=dir;Event.stop(event);}}},finishResize:function(event,success){this.active=false;this.resizing=false;if(this.options.zindex)
this.element.style.zIndex=this.originalZ;if(this.options.resize){this.options.resize(this.element);}},keyPress:function(event){if(this.active){if(event.keyCode==Event.KEY_ESC){this.finishResize(event,false);Event.stop(event);}}},endResize:function(event){if(this.active&&this.resizing){this.finishResize(event,true);Event.stop(event);}
this.active=false;this.resizing=false;},draw:function(event){var pointer=[Event.pointerX(event),Event.pointerY(event)];var style=this.element.style;if(this.currentDirection.indexOf('n')!=-1){var pointerMoved=this.startY-pointer[1];var margin=Element.getStyle(this.element,'margin-top')||"0";var newHeight=this.startHeight+pointerMoved;if(newHeight>this.options.minHeight){style.height=newHeight+"px";style.top=(this.startTop-pointerMoved-parseInt(margin))+"px";}}
if(this.currentDirection.indexOf('w')!=-1){var pointerMoved=this.startX-pointer[0];var margin=Element.getStyle(this.element,'margin-left')||"0";var newWidth=this.startWidth+pointerMoved;if(newWidth>this.options.minWidth){style.left=(this.startLeft-pointerMoved-parseInt(margin))+"px";style.width=newWidth+"px";}}
if(this.currentDirection.indexOf('s')!=-1){var newHeight=this.startHeight+pointer[1]-this.startY;if(newHeight>this.options.minHeight){style.height=newHeight+"px";}}
if(this.currentDirection.indexOf('e')!=-1){var newWidth=this.startWidth+pointer[0]-this.startX;if(newWidth>this.options.minWidth){style.width=newWidth+"px";}}
if(style.visibility=="hidden")style.visibility="";},between:function(val,low,high){return(val>=low&&val<high);},directions:function(event){var pointer=[Event.pointerX(event),Event.pointerY(event)];var offsets=Position.cumulativeOffset(this.element);var cursor='';if(this.between(pointer[1]-offsets[1],0,this.options.top))cursor+='n';if(this.between((offsets[1]+this.element.offsetHeight)-pointer[1],0,this.options.bottom))cursor+='s';if(this.between(pointer[0]-offsets[0],0,this.options.left))cursor+='w';if(this.between((offsets[0]+this.element.offsetWidth)-pointer[0],0,this.options.right))cursor+='e';return cursor;},cursor:function(event){var cursor=this.directions(event);if(cursor.length>0){cursor+='-resize';}else{cursor='';}
this.element.style.cursor=cursor;},update:function(event){if(this.active){if(!this.resizing){var style=this.element.style;this.resizing=true;if(Element.getStyle(this.element,'position')=='')
style.position="relative";if(this.options.zindex){this.originalZ=parseInt(Element.getStyle(this.element,'z-index')||0);style.zIndex=this.options.zindex;}}
this.draw(event);if(this.options.duringresize){this.options.duringresize(this.element);}
if(navigator.appVersion.indexOf('AppleWebKit')>0)window.scrollBy(0,0);Event.stop(event);return false;}}}
function OBJDate(chaine){this.jour=null;this.mois=null;this.annee=null;this.str=null;OBJDate.prototype.definition=function(str){if(!str){var dte=new Date();var str=dte.getDate()+"/"+(dte.getMonth()+1)+"/"+dte.getFullYear();}
str=new String(str);if(str.length==6){this.jour=str.substr(0,2);this.mois=str.substr(2,2);this.annee="20"+str.substr(4,2);}else{tab=str.split("/");if(!tab[1]||tab[1].length==0){tab=str.split("-");if(!tab[1]||tab[1].length==0){tab=str.split(".");if(!tab[1]||tab[1].length==0){tab[0]=str.substr(0,2);tab[1]=str.substr(2,2);tab[2]=str.substr(4,4);}}}
if(tab[2].length==2)tab[2]=parseInt(2000+Number(tab[2]));this.str=new String(str);this.jour=tab[0];this.mois=tab[1];this.annee=tab[2];}}
if(chaine)this.definition(chaine);OBJDate.prototype.setDateByInfos=function(j,m,a){this.jour=j;this.mois=m;this.annee=a;}
OBJDate.prototype.ajoutJour=function(nbj){var msPerDay=24*60*60*1000;var quatreheurePourChgtHr=4*60*60*1000;var d=Date.UTC(this.annee,(Number(this.mois)-1),this.jour);var d=Date.parse(Number(this.mois)+"/"+this.jour+"/"+this.annee);var d2=parseInt(d+(Number(nbj)*msPerDay)+quatreheurePourChgtHr);var dte=new Date();dte.setTime(d2);this.jour=dte.getDate();this.mois=dte.getMonth()+1;this.annee=dte.getFullYear();}
OBJDate.prototype.enleveJour=function(nbj){var msPerDay=24*60*60*1000;var quatreheurePourChgtHr=4*60*60*1000;var d=Date.UTC(this.annee,(Number(this.mois)-1),this.jour);var d=Date.parse(Number(this.mois)+"/"+this.jour+"/"+this.annee);var d2=parseInt(d-(Number(nbj)*msPerDay)+quatreheurePourChgtHr);var dte=new Date();dte.setTime(d2);this.jour=dte.getDate();this.mois=dte.getMonth()+1;this.annee=dte.getFullYear();}
OBJDate.prototype.getMoisSuivant=function(){if(this.mois==12){this.mois=1;this.annee++;}
else this.mois++;}
OBJDate.prototype.getMoisPrecedent=function(){if(this.mois==1){this.mois=12;this.annee--;}
else this.mois--;}
OBJDate.prototype.estMoisCourant=function(){var dte=new Date();return(this.mois==(dte.getMonth()+1));}
OBJDate.prototype.estAnneeCourante=function(){var dte=new Date();return(this.annee==dte.getFullYear());}
OBJDate.prototype.ajoutMois=function(nb){if(nb<0)this.retireMois(nb*(-1));else{for(var i=1;i<=nb;i++){this.getMoisSuivant();}}}
OBJDate.prototype.retireMois=function(nb){for(var i=1;i<=nb;i++){this.getMoisPrecedent();}}
OBJDate.prototype.getJour=function(){return this.jour;}
OBJDate.prototype.getMois=function(){return this.mois;}
OBJDate.prototype.getAnnee=function(){return this.annee;}
OBJDate.prototype.getLibelleJour=function(){var tabJ=new Array("Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi");return tabJ[this.getJourSemaine()];}
OBJDate.prototype.getJourSemaine=function(){return new Date(this.mois+"/"+this.jour+"/"+this.annee).getDay();}
OBJDate.prototype.getJSONLblJourWeek=function(langue){var tabJr;switch(langue){case"ANGLAIS":tabJr=[{"libelle":"Sunday","libelle_court":"Su"},{"libelle":"Monday","libelle_court":"Mo"},{"libelle":"Tuesday","libelle_court":"Tu"},{"libelle":"Wednesday","libelle_court":"We"},{"libelle":"Thursday","libelle_court":"Th"},{"libelle":"Friday","libelle_court":"Fr"},{"libelle":"Saturday","libelle_court":"Sa"}];break;case"ALLEMAND":tabJr=[{"libelle":"Sonntag","libelle_court":"So"},{"libelle":"Montag","libelle_court":"Mo"},{"libelle":"Dienstag","libelle_court":"Di"},{"libelle":"Mittwoch","libelle_court":"Mi"},{"libelle":"Donnerstag","libelle_court":"Do"},{"libelle":"Freitag","libelle_court":"Fr"},{"libelle":"Samstag","libelle_court":"Sa"}];break;case"HOLLANDAIS":tabJr=[{"libelle":"Zondag","libelle_court":"Zo"},{"libelle":"Maandag","libelle_court":"Ma"},{"libelle":"Dinsdag","libelle_court":"Di"},{"libelle":"Woensdag","libelle_court":"Wo"},{"libelle":"Donderdag","libelle_court":"Do"},{"libelle":"Vrijdag","libelle_court":"Vr"},{"libelle":"Zaterdag","libelle_court":"Za"}];break;case"ESPAGNOL":tabJr=[{"libelle":"Domingo","libelle_court":"Do"},{"libelle":"Lunes","libelle_court":"Lu"},{"libelle":"Martes","libelle_court":"Ma"},{"libelle":"Mi&eacute;rcoles","libelle_court":"Mi"},{"libelle":"Jueves","libelle_court":"Ju"},{"libelle":"Viernes","libelle_court":"Vi"},{"libelle":"S&aacute;bado","libelle_court":"S&aacute;"}];break;case"ITALIEN":tabJr=[{"libelle":"Domenica","libelle_court":"Do"},{"libelle":"Lunedì","libelle_court":"Lu"},{"libelle":"Martedì","libelle_court":"Ma"},{"libelle":"Mercoledì","libelle_court":"Me"},{"libelle":"Giovedì","libelle_court":"Gi"},{"libelle":"Venerdì","libelle_court":"Ve"},{"libelle":"Sabato","libelle_court":"Sa"}];break;case"FRANCAIS":default:tabJr=[{"libelle":"Dimanche","libelle_court":"Di"},{"libelle":"Lundi","libelle_court":"Lu"},{"libelle":"Mardi","libelle_court":"Ma"},{"libelle":"Mercredi","libelle_court":"Me"},{"libelle":"Jeudi","libelle_court":"Je"},{"libelle":"Vendredi","libelle_court":"Ve"},{"libelle":"Samedi","libelle_court":"Sa"}];break;}
return tabJr;}
OBJDate.prototype.getTabMois=function(langue){var tabM=new Array();switch(langue){case"ANGLAIS":tabM[1]="January";tabM[2]="Februar";tabM[3]="March";tabM[4]="April";tabM[5]="May";tabM[6]="June";tabM[7]="July";tabM[8]="August";tabM[9]="September";tabM[10]="October";tabM[11]="November";tabM[12]="December";break;case"ALLEMAND":tabM[1]="Januar";tabM[2]="Februar";tabM[3]="M&auml;rz";tabM[4]="April";tabM[5]="Mai";tabM[6]="Juni";tabM[7]="Juli";tabM[8]="August";tabM[9]="September";tabM[10]="Oktober";tabM[11]="November";tabM[12]="Dezember";break;case"HOLLANDAIS":tabM[1]="Januari";tabM[2]="Februari";tabM[3]="Maart";tabM[4]="April";tabM[5]="Mei";tabM[6]="Juni";tabM[7]="Juli";tabM[8]="Augustus";tabM[9]="September";tabM[10]="Oktober";tabM[11]="November ";tabM[12]="December";break;case"ESPAGNOL":tabM[1]="Eenero ";tabM[2]="Ebrero";tabM[3]="Marzo";tabM[4]="Abril";tabM[5]="Mayo";tabM[6]="Junio";tabM[7]="Julio";tabM[8]="Agosto";tabM[9]="Septiembre";tabM[10]="Octubre";tabM[11]="Noviembre ";tabM[12]="Diciembre";break;case"ITALIEN":tabM[1]="Gennaio";tabM[2]="Febbraio";tabM[3]="Marzo";tabM[4]="Aprile";tabM[5]="Maggio";tabM[6]="Giugno";tabM[7]="Luglio";tabM[8]="Agosto";tabM[9]="Settembre";tabM[10]="Ottobre";tabM[11]="Novembre ";tabM[12]="Dicembre";break;case"FRANCAIS":default:tabM[1]="Janvier";tabM[2]="F&eacute;vrier";tabM[3]="Mars";tabM[4]="Avril";tabM[5]="Mai";tabM[6]="Juin";tabM[7]="Juillet";tabM[8]="Aout";tabM[9]="Septembre";tabM[10]="Octobre";tabM[11]="Novembre";tabM[12]="D&eacute;cembre";break;}
return tabM;}
OBJDate.prototype.getLibelleMois=function(langue){if(!langue)langue="FRANCAIS";var tabM=this.getTabMois(langue);return tabM[this.getMois()];}
OBJDate.prototype.toString=function(format){if(!format)format="dd/mm/yyyy";var strDate;var jr=parseInt(this.getJour(),10);var mois=parseInt(this.getMois(),10);var j=new String((jr<10)?"0"+jr:jr);var m=new String((mois<10)?"0"+mois:mois);var a4=new String(this.getAnnee());var a2=new String(parseInt((this.getAnnee()-2000),10));switch(format){case"dd/mm/yyyy":return(j+"/"+m+"/"+a4);case"dd/mm/yy":return(j+"/"+m+"/"+a2);case"ddmmyyyy":return(j+m+a4);case"yyyymmdd":return(a4+m+j);case"ddmmyy":return(j+m+a2);case"dd":return j;default:return(j+"/"+m+"/"+a4);}}
OBJDate.prototype.getNbjMois=function(){return this.getNbjMoisAutre(this.mois);}
OBJDate.prototype.getNbjMoisAutre=function(mois){if(mois==1||mois==3||mois==5||mois==7||mois==8||mois==10||mois==12)
return 31;if(mois==4||mois==6||mois==9||mois==11)
return 30;if(mois==2&&this.estBissextile(this.annee))return 29;else return 28;}
OBJDate.prototype.estBissextile=function(annee){return(annee%4==0&&(annee%100!=0||(annee%100==0&&annee%400==0)));}
OBJDate.prototype.estAvant=function(dte){obj=new OBJDate(dte);return(this.getTimeStamp()<=obj.getTimeStamp());}
OBJDate.prototype.estAvantOBJDate=function(dte){return(this.getTimeStamp()<=dte.getTimeStamp());}
OBJDate.prototype.estEgale=function(dte){obj=new OBJDate();obj.definition(dte);return(this.getTimeStamp()==obj.getTimeStamp());}
OBJDate.prototype.estApres=function(dte){obj=new OBJDate(dte);return(this.getTimeStamp()>=obj.getTimeStamp());}
OBJDate.prototype.estApresOBJDate=function(dte){return(this.getTimeStamp()>=dte.getTimeStamp());}
OBJDate.prototype.estComprisEntre=function(dteDeb,dteFin){return(this.estAvant(dteFin)&&this.estApres(dteDeb));}
OBJDate.prototype.getTimeStamp=function(){return new Date(this.mois+"/"+this.jour+"/"+this.annee).getTime();}
OBJDate.prototype.getNbJourEcartWithOBJDate=function(dte,positif){var nbj1=this.getTimeStamp()/86400000;var nbj2=dte.getTimeStamp()/86400000;var nbj=Math.round(nbj1-nbj2);if(positif!="N"&&nbj<0)nbj=nbj*(-1);return nbj;}}
function setCalendrierForResa(divForCalend,ident,typeGite,tabChambre,langue,modeAff,nbMois){var today=new OBJDate();today.definition();var moisCurr=$("mois").value;if(moisCurr==0)moisCurr=today.getMois();if(parseInt(moisCurr,10)<10&&moisCurr.substr(0,1)=="0")moisCurr=moisCurr.substr(1,1);var anneeCurr=$("annee").value;if(anneeCurr==0)anneeCurr=today.getAnnee();var fctClic=function(evt,jour,mois,annee,etat){if(parseInt(jour,10)<10&&jour.substr(0,1)=="0")jour=jour.substr(1,1);$("jour").value=jour;$("mois").value=mois;$("annee").value=annee;Effect.BlindUp(divForCalend);$(divForCalend).showing=false;if(verifSaisieDatesLocation()===false){setHTMLById("div_msgClient_dateSejour",$("id_msgPasDates").value);$("div_msgClient_dateSejour").addClassName("msgClientAffiche");if("div_saisieDatesSejour")effaceEtapesApres("div_saisieDatesSejour");}};if(!typeGite&&tabChambre&&tabChambre.length>0)typeGite="H";if(!typeGite)typeGite="G";if(!tabChambre)tabChambre=new Array();setCalendrierToDiv(divForCalend,{"langue":langue,"moisDebut":moisCurr,"anneeDebut":anneeCurr,"firstWeekDay":2,"nbMois":nbMois,"ident":ident,"typeGite":typeGite,"tabChambre":tabChambre,"afficheJrArrivee":true,"afficheDispos":true,"duree":$("duree").value,"clic":fctClic,"modeAff":modeAff});}
function setCalendrierForResaGP(divForCalend,code,typeProd,langue,modeAff,nbMois,tabStock,instance,request){var today=new OBJDate();today.definition();var moisCurr=$("mois").value;if(moisCurr==0)moisCurr=today.getMois();if(parseInt(moisCurr,10)<10&&moisCurr.substr(0,1)=="0")moisCurr=moisCurr.substr(1,1);var anneeCurr=$("annee").value;if(anneeCurr==0)anneeCurr=today.getAnnee();if($("duree"))var duree=$("duree").value;else var duree=1;if(!tabStock)tabStock={};var fctClic=function(evt,jour,mois,annee,etat){$("jour").value=jour;$("mois").value=mois;$("annee").value=annee;Effect.BlindUp(divForCalend);$(divForCalend).showing=false;if(verifSaisieDatesSejourGP()===false){setHTMLById("div_msgClient_dateSejour",$("id_msgPasDates").value);$("div_msgClient_dateSejour").addClassName("msgClientAffiche");if("div_saisieDatesSejour")effaceEtapesApresGP("div_saisieDatesSejour");}};setCalendrierToDivGP(divForCalend,{"langue":langue,"moisDebut":moisCurr,"anneeDebut":anneeCurr,"firstWeekDay":2,"nbMois":nbMois,"code":code,"instance":instance,"typeProd":typeProd,"tabStock":tabStock,"request":request,"afficheJrArrivee":true,"afficheDispos":true,"duree":duree,"clic":fctClic});}
function setCalendrierToDivForDispoProd(nomdiv,ident,tabStock,nbMois,request,typeProd,linkToResa){if(!$(nomdiv).showing){var fctClic=function(evt,jour,mois,annee,etat){Effect.BlindUp(nomdiv);$(nomdiv).showing=false;if(linkToResa)document.location.href=linkToResa+"&jour_calend="+jour+"&mois_calend="+mois+"&annee_calend="+annee;};$(nomdiv).hide();if(!nbMois)nbMois=3;ident=new String(ident);var tabInfos=ident.split(".");var instance=tabInfos[0];var code=tabInfos[2];setCalendrierToDivGP(nomdiv,{"firstWeekDay":1,"nbMois":nbMois,"code":code,"instance":instance,"typeProd":typeProd,"tabStock":tabStock,"request":request,"afficheJrArrivee":true,"afficheDispos":true,"clic":fctClic});Effect.BlindDown(nomdiv,{duration:0.5});$(nomdiv).showing=true;$(nomdiv).addClassName("div_dispos_showing");}else{Effect.BlindUp(nomdiv);$(nomdiv).showing=false;$(nomdiv).removeClassName("div_dispos_showing");}}
function setCalendrierForRecherche(instance,idf,ident,langue,typeGite){var today=new OBJDate();today.definition();var moisCurr=$("mois").value;if(moisCurr==0)moisCurr=today.getMois();if(parseInt(moisCurr,10)<10&&moisCurr.substr(0,1)=="0")moisCurr=moisCurr.substr(1,1);var anneeCurr=$("annee").value;if(anneeCurr==0)anneeCurr=today.getAnnee();if(!typeGite)typeGite="G";var fctClic=function(evt,jour,mois,annee,etat){if(parseInt(jour,10)<10&&jour.substr(0,1)=="0")jour=jour.substr(1,1);$("jour").value=jour;$("mois").value=mois;$("annee").value=annee;$("calendrierRecherche").style.display="none";};setCalendrierToDiv("calendrierRecherche",{"langue":langue,"moisDebut":moisCurr,"anneeDebut":anneeCurr,"firstWeekDay":2,"nbMois":1,"ident":ident,"instance":instance,"id_famille":idf,"afficheJrArrivee":true,"afficheDispos":true,"typeGite":typeGite,"duree":$("duree").value,"clic":fctClic});}
function setCalendrierGeneral(instance,idf,langue,typeGite,idDivCalend,fctClic,idDate,idMois,idAnnee,idDuree,nbMois,firstWeekDay,jrEnAvant,dateDebSej,nbjSej,fcQdFini){var today=new OBJDate();today.definition();var moisCurr=0;var anneeCurr=0;if(idDate&&$(idDate)){var dateCurr=new OBJDate();dateCurr.definition($(idDate).value);moisCurr=dateCurr.getMois();anneeCurr=dateCurr.getAnnee();}else{if(idMois&&$(idMois)&&idAnnee&&$(idAnnee)){moisCurr=$(idMois).value;anneeCurr=$(idAnnee).value;}}
if(idDuree&&$(idDuree))duree=$(idDuree).value;if(moisCurr==0)moisCurr=today.getMois();if(parseInt(moisCurr,10)<10&&moisCurr.substr(0,1)=="0")moisCurr=moisCurr.substr(1,1);if(anneeCurr==0)anneeCurr=today.getAnnee();if(!typeGite)typeGite="G";if(!nbMois)nbMois="1";if(!firstWeekDay)firstWeekDay="2";if(!duree&&typeGite=="G")var duree="7";if(!duree)var duree="1";if(!jrEnAvant)var jrEnAvant=0;if(!dateDebSej)nbjSej=null;setCalendrierToDiv(idDivCalend,{"langue":langue,"moisDebut":moisCurr,"anneeDebut":anneeCurr,"firstWeekDay":firstWeekDay,"nbMois":nbMois,"instance":instance,"id_famille":idf,"afficheJrArrivee":true,"afficheDispos":true,"typeGite":typeGite,"duree":duree,"clic":fctClic,"jrEnAvant":jrEnAvant,"dateDebSej":dateDebSej,"nbjSej":nbjSej,"fcQdFini":fcQdFini});}
function setCalendrierToDivForDispoStruct(nomdiv,ident,tabChambre,linkToResa,nbMois,modeVenteGeGs,afficheDisposParAnnee,tabAnneesActives,reference,afficheNavChambre,langue,cliquable){if(!$(nomdiv).showing){var fctClic;if('function'==typeof(clickSurJourDsPlanningFiche))fctClic=window.clickSurJourDsPlanningFiche;else{}
$(nomdiv).hide();if(!nbMois)nbMois=3;setCalendrierToDiv(nomdiv,{'duree':'0','firstWeekDay':1,'nbMois':nbMois,'ident':ident,'afficheJrArrivee':false,'afficheDispos':true,"tabChambre":tabChambre,"clic":fctClic,"modeVenteGeGs":modeVenteGeGs,"afficheDisposParAnnee":afficheDisposParAnnee,"linkToResa":linkToResa,"langue":langue,"reference":reference,"afficheNavChambre":afficheNavChambre,"tabAnneesActives":tabAnneesActives,"nonCliquable":cliquable});Effect.BlindDown(nomdiv,{duration:0.5});$(nomdiv).showing=true;$(nomdiv).addClassName("div_dispos_showing");}else{Effect.BlindUp(nomdiv,{duration:0.5});$(nomdiv).showing=false;$(nomdiv).removeClassName("div_dispos_showing");}}
function initPlanning(nomdiv,titreDivResa,afficheDisposParAnnee,afficheNavChambre){if($(nomdiv)){var obj=$(nomdiv);var ident=obj.getAttribute("ident");var nbMois=obj.getAttribute("nbMois");var langue=obj.getAttribute("langue");var nonCliquable=obj.getAttribute('noncliquable');var tabChambre;if(!obj.getAttribute("tabChambre"))tabChambre=new Array();else tabChambre=eval(obj.getAttribute("tabChambre"));var linkToResa=obj.getAttribute("linkToResa");var modeVenteGeGs=obj.getAttribute("modeVenteGeGs");var tabAnneesActives;if(!obj.getAttribute("tabAnneesActives"))tabAnneesActives=new Array();else tabAnneesActives=eval(obj.getAttribute("tabAnneesActives"));var reference=obj.getAttribute("reference");if(titreDivResa)window.nomDivResaPopIn=titreDivResa;setCalendrierToDivForDispoStruct(nomdiv,ident,tabChambre,linkToResa,nbMois,modeVenteGeGs,afficheDisposParAnnee,tabAnneesActives,reference,afficheNavChambre,langue,nonCliquable);var idDivGene=obj.getAttribute("idDivGene");if(idDivGene)setActionsSurListeChambres(tabChambre,ident,linkToResa,nbMois,modeVenteGeGs,idDivGene);else setActionsSurListeChambres(tabChambre,ident,linkToResa,nbMois,modeVenteGeGs);}}
function setActionsSurListeChambres(tabChambre,ident,linkToResa,nbMois,modeVenteGeGs,idDivGene){if(tabChambre.length>0){var objGraph=$("divGraph_fenetre");if(objGraph)var styleDivGraph=objGraph.style.display;else var styleDivGraph=null;if($("select_fiche_dispos_fngf_v4_chmbAnnee")&&styleDivGraph!="none")var id="select_fiche_dispos_fngf_v4_chmbAnnee";else var id="select_fiche_dispos_fngf_v4_chmb";var objId=$(id);if(objId){objId.onchange=function(evt){if(!idDivGene){var idDivGeneForSetClasse=this.nextSibling.firstChild.firstChild.childNodes[1].firstChild.getAttribute("idDivGene");}
else var idDivGeneForSetClasse=idDivGene;if(this.value=="G"){calendrier_setClasseForDispos(idDivGeneForSetClasse);calendrier_setClasseForJourArr(idDivGeneForSetClasse);}
else calendrier_setClasseForDisposForChambre(idDivGeneForSetClasse,tabChambre.length);}}}}
function calendrier_getXHTMLForAfficheInDivAvecTransparenceAvecChargChambres(nomdiv,ident,linkToResa,nbMois,modeVenteGeGs,afficheDisposParAnnee,tabAnneesActives,obj,reference,titreDivResa,langue){var url="/lib_2/ajax/infosDist.php";var vars;var html_calend;vars="info=TABCHB&ident="+ident;var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var contenu=xhr_local.responseText;var tabChambre=eval(contenu);html_calend=calendrier_getXHTMLForAfficheInDivAvecTransparence(nomdiv,ident,tabChambre,linkToResa,nbMois,modeVenteGeGs,afficheDisposParAnnee,tabAnneesActives,reference,titreDivResa,langue);$("divGraph_fenetre").innerHTML=html_calend;setActionsApresChargementDispo(nomdiv,ident,obj);}}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(vars);}
function calendrier_getXHTMLForAfficheInDivAvecTransparence(nomdiv,ident,tabChambre,linkToResa,nbMois,modeVenteGeGs,afficheDisposParAnnee,tabAnneesActives,reference,titreDivResa,langue,duree){var fctClic=calendrier_redirectFrmToResa;var html;window.nomDivResaPopIn=titreDivResa;html="<div class='calendIteaBtFermer' id='div_planningBtFermer_calendItea_"+nomdiv+"' onclick=effaceDivAvecTransparence();></div>";html+=setCalendrierToDiv(nomdiv,{'moisDebut':1,'firstWeekDay':1,'nePasChargerMotCles':true,'nbMois':nbMois,'ident':ident,'afficheJrArrivee':false,'afficheDispos':true,"tabChambre":tabChambre,"clic":fctClic,"modeVenteGeGs":modeVenteGeGs,"afficheDisposParAnnee":afficheDisposParAnnee,"tabAnneesActives":tabAnneesActives,"linkToResa":linkToResa,"reference":reference,"langue":langue,"duree":duree},true);trackMe(ident,"DISPO");return html;}
function calendrier_redirectFrmToResa(linkToResa,sending,width,height){if(!sending)sending="";var ouvertureResa=getParamSite("mode_ouverture_resa");if(ouvertureResa=="POPUP"){window.popupReservation=window.open(linkToResa+"?"+sending,"blank");}else{if(!width)width=780;if(!height)height=600;effaceDivAvecTransparence();showResaInPopIn(linkToResa,sending,width,height,window.nomDivResaPopIn);}}
function setActionsApresChargementDispo(nomdiv,ident,obj){if(obj){$$('.div_planningSelect').each(function(elt){elt.removeClassName('div_planningSelect');})
var indice=obj.getAttribute("indice");var idListe="liLst_elem_"+indice;if($(idListe)){$(idListe).addClassName("div_planningSelect");}}
calendrier_chargeMotCleDeLaLegende(nomdiv);var idDivForChargeMotCle="calendItea_"+nomdiv;calendrier_chargeMotCleDansCalendrier(idDivForChargeMotCle);ident=new String(ident);var tabInfos=ident.split(".");var typeProd=tabInfos[3];if(typeProd=="G"||typeProd=="H")setActionsSurMois(ident);}
function setCalendrierToDiv(idDiv,params,getXHTML){if(!params.typeGite&&params.tabChambre&&params.tabChambre.length>0&&params.modeVenteGeGs!="G")params.typeGite="H";if(!params.typeGite)params.typeGite="G";if(!params.tabChambre)params.tabChambre=new Array();if(!params.langue)params.langue="FRANCAIS";if(!params.modeAff)params.modeAff="CARRE";if(!params.afficheNavChambre)params.afficheNavChambre=false;if(params.modeVenteGeGs=="?"){if(params.modeAff=="LIGNE")params.typeGite="H";else params.typeGite="G";}
if(!params.tabAnneesActives)params.tabAnneesActives=new Array();var html="";div=$(idDiv);if(div){var changeAff="";if((params.typeGite=="H"||params.modeVenteGeGs=="H"||params.modeVenteGeGs=="?")&&params.ident){var affSelect;if(params.modeAff=="LIGNE")affSelect="CARRE";else affSelect="LIGNE";changeAff="<p class='saisieDatesSejour changeModeAffCalendrier' id='saisieDatesSejour_changeAff_"+idDiv+"'></p>";}
if(getXHTML)html+=calendrier_getXHTML(params,idDiv,true)+changeAff;else{if(params.afficheDisposParAnnee=="true")div.innerHTML=calendrier_getXHTML(params,idDiv,true)+changeAff;else div.innerHTML=calendrier_getXHTML(params,idDiv)+changeAff;}
if(!params.nePasChargerMotCles)calendrier_chargeMotCleDeLaLegende(idDiv);if(!params.ident&&(params.typeGite=="H"||!params.instance))calendrier_setClasseForJourArrTous("calendItea_"+idDiv,params.dateDebSej);else affMsgAttenteParDessusInDiv(idDiv);if((params.typeGite=="H"||params.modeVenteGeGs=="H"||params.modeVenteGeGs=="?")&&$("saisieDatesSejour_changeAff_"+idDiv)){if(!params.nePasChargerMotCles){if(params.modeVenteGeGs=="?")chargeMotCleDsDiv("saisieDatesSejour_changeAff_"+idDiv,"LBL_AFFCALENDGEGSINCONNU_"+affSelect);else chargeMotCleDsDiv("saisieDatesSejour_changeAff_"+idDiv,"LBL_AFFCALEND_"+affSelect);}
else{var txt="";if(params.modeVenteGeGs=="?"){if(affSelect=="CARRE")txt="Disponibilit&eacute;s de l'h&eacute;bergement complet";else txt="Disponibilit&eacute;s par chambre";}
else{if(affSelect=="CARRE")txt="Affichage cumul&eacute;";else txt="Affichage &agrave; la chambre";}
if(getXHTML)html+=txt;else $("saisieDatesSejour_changeAff_"+idDiv).innerHTML=txt;}
$("saisieDatesSejour_changeAff_"+idDiv).onclick=function(evt){params.modeAff=affSelect;setCalendrierToDiv(idDiv,params);}}
div.firstChild.foncQdClicGauche=params.clic;div.firstChild.foncQdChangeMois=params.foncQdChangeMois;}
if(params.fcQdFini)params.fcQdFini();if(getXHTML)return html;}
function calendrier_getXHTML_Navig(params){var htmlNavig="";var html="<div class='calendIteaDivNavig'>";var nextMonth="{'nbMois':"+params.nbMois+",'mois':"+parseInt(params.moisDebut+1)+",'annee':"+params.annee+",'firstWeekDay':"+params.firstWeekDay+"}";html+="</div>"}
function calendrier_getXHTML(params,idDiv,calendAvecSaison){var html="";if(params.nbMois)nbMois=params.nbMois;else nbMois=1;var today=new OBJDate();today.definition();if(!params.moisDebut)params.moisDebut=today.getMois();if(!params.anneeDebut)params.anneeDebut=today.getAnnee();var mois=params.moisDebut;var annee=params.anneeDebut;if(params.afficheDisposParAnnee=="true"){var mois=1;if(today.getAnnee()==annee)nbMois=12-mois+1;else nbMois=12;var nb_annees=params.tabAnneesActives.length;var annee_prec=0;var annee_suiv=0;var annee_min=0;if(annee_min<=today.getAnnee())annee_min=today.getAnnee();else annee_min=params.tabAnneesActives[0];var annee_max=params.tabAnneesActives[nb_annees-1];if(annee<annee_max&&annee>annee_min){annee_prec=annee-1;annee_suiv=annee-1;}
else if(annee==annee_min)
if(annee_max!=annee_min)annee_suiv=parseInt(annee)+1;else if(annee==annee_max)
if(annee_min!=annee_max)annee_prec=parseInt(annee)-1;}
var langue=params.langue;if(!langue)langue="FRANCAIS";var typeGite=params.typeGite;if(!typeGite)typeGite="G";var nb_chambre=params.tabChambre.length;var classeAlternee;if(params.ident)var ident=params.ident;else var ident="";if(params.instance)var instance=params.instance;else var instance="";if(params.linkToResa)var linkToResa=params.linkToResa;else var linkToResa="";if(calendAvecSaison)html="<div class='calendIteaAvSaison' id='calendItea_"+idDiv+"' ident='"+ident+"' linkToResa='"+linkToResa+"'>";else html="<div class='calendItea calendItea_"+params.modeAff+"' id='calendItea_"+idDiv+"' ident='"+ident+"' linkToResa='"+linkToResa+"'>";if((params.afficheDisposParAnnee||params.afficheNavChambre==true)&&(typeGite=="H"||params.modeVenteGeGs=="?")){if(nb_chambre>1){html+="<select class='fiche_dispos_fngf_v4_chmb' id='select_fiche_dispos_fngf_v4_chmbAnnee'>";if(params.modeVenteGeGs=="?")
html+="<option value='G' class='fiche_dispos_fngf_v4_chmb' id='option_dispo_chmb_G'>A la structure</option>";if(params.langue=="ANGLAIS")html+="<option value='0' class='fiche_dispos_fngf_v4_chmb' id='option_dispo_chmb_0'>All rooms</option>";else html+="<option value='0' class='fiche_dispos_fngf_v4_chmb' id='option_dispo_chmb_0'>Toutes les chambres</option>";for(var j=0;j<nb_chambre;j++){html+="<option value='"+params.tabChambre[j].numero_chambre+"' class='fiche_dispos_fngf_v4_chmb' id='option_dispo_chmb_"+params.tabChambre[j].numero_chambre+"'>"+params.tabChambre[j].nom+"</option>";}
html+="</select>";}}
html+="<div class='calendItea_navigEtCalend'>";html+="<div class='calendItea_navig calendItea_navigGauche' id='calendIteaNavigGauche_calendItea_"+idDiv+"'>";if(!params.afficheDisposParAnnee){html+="<a onclick=calendrier_moisAutre(this.parentNode.nextSibling.firstChild,-1)>";html+="<";html+="</a>";}
else{if(annee_prec!=0){html+="<a class='calendItea_navigGauche_lien' href='#dispoPrecedent' onclick=calendrier_moisAutre(this.parentNode.nextSibling.nextSibling.nextSibling.firstChild,-1)>";html+="<span id='lblDisponibilitesNavigGauche_calendItea_"+idDiv+"'></span>&nbsp;";html+="<span id='valDisponibilitesNavigGauche_calendItea_"+idDiv+"'>"+annee_prec+"</span>";html+="</a>";}}
html+="</div>";if(params.afficheDisposParAnnee=="true"){var identForRef=new String(ident);var tabInfos=identForRef.split(".");var numHeber=tabInfos[2];if(params.reference)numHeber=params.reference;html+="<div class='calendItea_navig calendItea_anneeCourante'>";html+="<span id='lblDisponibilitesRefInterne_calendItea_"+idDiv+"'></span>&nbsp;";html+="<span id='disponibilitesRefInterne_calendItea_"+idDiv+"'>"+numHeber+"</span>&nbsp;";html+="<span id='lblDisponibilitesAnneeCourante_calendItea_"+idDiv+"'></span>&nbsp;";html+="<span id='valDisponibilitesAnneeCourante_calendItea_"+idDiv+"'>"+annee+"</span>";html+="</div>";}
if(params.afficheDisposParAnnee=="true"){html+="<div class='calendItea_navig calendItea_navigDroite' id='calendIteaNavigDroite_calendItea_"+idDiv+"'>";if(annee_suiv!=0){html+="<a class='calendItea_navigDroite_lien' href='#dispoSuivant' onclick=calendrier_moisAutre(this.parentNode.nextSibling.firstChild,1)>";html+="<span id='lblDisponibilitesNavigDroite_calendItea_"+idDiv+"'></span>&nbsp;";html+="<span id='valDisponibilitesNavigDroite_calendItea_"+idDiv+"'>"+annee_suiv+"</span>";html+="</a>";}
html+="</div>";}
html+="<div class=calendItea_listMois>";html+="<ul id='ul_calendItea_"+idDiv+"' class='calendItea_ul calendItea_ul_"+params.modeAff+"' moisDeb='"+mois+"' annee='"+annee+"' nbMois='"+nbMois+"' firstWeekDay='"+params.firstWeekDay+"' idDivGene='calendItea_"+idDiv+"' typeGite='"+typeGite+"' nb_chambre='"+nb_chambre+"' langue='"+langue+"' modeAff='"+params.modeAff+"' ident='"+ident+"' instance='"+instance+"' afficheDisposParAnnee='"+params.afficheDisposParAnnee+"' annee_min='"+annee_min+"' annee_max='"+annee_max+"' jrEnAvant='"+params.jrEnAvant+"' dateDebSej='"+params.dateDebSej+"' nbjSej='"+params.nbjSej+"' nonCliquable='"+params.nonCliquable+"' >";moisCurr=mois;anneeCurr=annee;for(var i=0;i<nbMois;i++){if(i%2==0)classeAlternee="calendItea_liPaire";else classeAlternee="calendItea_liImpaire";if(moisCurr<today.getMois()&&anneeCurr<=today.getAnnee())classeInit="moisNonInit";else classeInit="";html+="<li class='calendItea_li "+classeAlternee+" "+classeInit+"'>";params.moisCurr=moisCurr;params.anneeCurr=anneeCurr;params.nb_chambre=nb_chambre;if(params.modeAff=="LIGNE")
html+=calendrier_getXHTML_1moisLineaire(params,"calendItea_"+idDiv);else html+=calendrier_getXHTML_1mois(params,"calendItea_"+idDiv);html+="</li>";moisCurr++;if(moisCurr>12){moisCurr=1;anneeCurr++;}}
html+="</ul>";html+="</div>";if(!params.afficheDisposParAnnee){html+="<div class='calendItea_navig calendItea_navigDroite'>";html+="<a onclick=calendrier_moisAutre(this.parentNode.previousSibling.firstChild,1)>";html+=">";html+="</a>";html+="</div>";}
html+="</div>";if(params.ident){html+="<div class='calendItea_legende'>";html+="<ul class='ul_legendeCalend'>";html+="<li class='calendItea_li_legende' id='li_legende_cliquable'>";html+="<span class='spanCalendVisuel spanCalendCliquable'>1</span><span class='spanCalendLibelle definition_legendeCalendCliquable' id='legendeCliquable_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendItea_li_legende' id='li_legende_libre'>";html+="<span class='spanCalendVisuel spanCalendJour_libre'>1</span><span class='spanCalendLibelle definition_legendeCalendLibre' id='legendeLibre_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendItea_li_legende' id='li_legende_sejour'>";html+="<span class='spanCalendVisuel spanDateSejourSelect'>1</span><span class='spanCalendLibelle definition_legendeCalendSejourSelect' id='legendeSelect_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendItea_li_legende' id='li_legende_occupe'>";html+="<span class='spanCalendVisuel spanCalendJour_occupe'>1</span><span class='spanCalendLibelle definition_legendeCalendSejourOccupe' id='legendeOccupe_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendItea_li_legende' id='li_legende_contact'>";html+="<span class='spanCalendVisuel spanCalendJour_contact'>1</span><span class='spanCalendLibOu' id='legendeContactOu_"+idDiv+"'></span><span class='spanCalendVisuel spanCalendJour_inconnu'>1</span><span class='spanCalendLibelle definition_legendeCalendSejourContactProp' id='legendeContact_"+idDiv+"'></span>";html+="</li>";if(params.modeVenteGeGs=="?"){html+="<li class='calendItea_li_legende' id='li_legende_gegs_mode_vente'>";html+="<span class='spanCalendVisuel spanCalendJour_mode_vte_GEGS_H'>1</span><span class='spanCalendLibelle definition_legendeCalendSejourContactProp' id='legendeModeVenteGeGsChambre_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendItea_li_legende' id='li_legende_cliquable_gegs_mode_vente'>";html+="<span class='spanCalendVisuel spanCalendJour_mode_vte_GEGS_G'>1</span><span class='spanCalendLibelle definition_legendeCalendSejourContactProp' id='legendeModeVenteGeGsGite_"+idDiv+"'></span>";html+="</li>";}
html+="</ul>";html+="</div>";}
if(params.afficheDisposParAnnee=="true"){html+="<div class='calendItea_clicMois' id='legende_clicMois_calendItea_"+idDiv+"''></div>";}
html+="</div>";calendrier_setDispoEtJourArrivee(params,"calendItea_"+idDiv);return html;}
function setActionsSurMois(ident){for(var i=1;i<=12;i++){var idCurr="calendItea_libMois_"+i;if($(idCurr)){$(idCurr).onclick=function(evt){objCaracCal=this.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode;var paramsSais=new Array();paramsSais.moisCurr=this.parentNode.getAttribute("mois");paramsSais.anneeCurr=this.parentNode.getAttribute("annee");paramsSais.langue="FRANCAIS";afficheDivAvecTransparence(calendrier_getXHTML_1mois_saison(paramsSais.moisCurr,paramsSais.anneeCurr,paramsSais.langue,objCaracCal.id,0,ident),250,180,"sais");var url="/lib_2/ajax/contenuFenetre.php";var vars="element=elemObjProd&typeInfo=afficheTarifParSaison-"+ident+"-"+paramsSais.moisCurr+"-"+paramsSais.anneeCurr;affUrlInDiv("div_tarifSais",url,vars,"aucun",majIdSaisonForUnMois);}}}}
function majIdSaisonForUnMois(){var sais=$("chaine_sais_id").getAttribute("chaineSais");var idDivGene=$("div_tarifSais").getAttribute("idDivGene");var moisCurr=$("div_tarifSais").getAttribute("moisCurr");var anneeCurr=$("div_tarifSais").getAttribute("anneeCurr");calendrier_chargeMotCleDansCalendrierSais(idDivGene);calendrier_setClasseForCalSais(sais,idDivGene,moisCurr,anneeCurr);}
function calendrier_chargeMotCleDeLaLegende(idDiv){chargeMotCleDansDiv("legendeCliquable_"+idDiv,"LBL_LEGENDE_CALEND_ARRIVEE");chargeMotCleDansDiv("legendeLibre_"+idDiv,"LBL_LEGENDE_CALEND_LIBRE");chargeMotCleDansDiv("legendeSelect_"+idDiv,"LBL_LEGENDE_CALEND_SELECT");chargeMotCleDansDiv("legendeOccupe_"+idDiv,"LBL_LEGENDE_CALEND_OCCUPE");chargeMotCleDansDiv("legendeContact_"+idDiv,"LBL_LEGENDE_CALEND_CONTACTPROP");chargeMotCleDansDiv("legendeContactOu_"+idDiv,"LBL_LEGENDE_CALEND_OU");chargeMotCleDansDiv("legendeModeVenteGeGsGite_"+idDiv,"LBL_LEGENDE_MODE_VENTE_GITE");chargeMotCleDansDiv("legendeModeVenteGeGsChambre_"+idDiv,"LBL_LEGENDE_MODE_VENTE_CHAMBRE");}
function calendrier_chargeMotCleDansCalendrier(idDiv){chargeMotCleDansDiv("lblDisponibilitesNavigGauche_"+idDiv,"LBL_DISPONIBILITES");chargeMotCleDansDiv("lblDisponibilitesNavigDroite_"+idDiv,"LBL_DISPONIBILITES");chargeMotCleDansDiv("lblDisponibilitesAnneeCourante_"+idDiv,"LBL_DISPONIBILITES");chargeMotCleDansDiv("lblDisponibilitesRefInterne_"+idDiv,"LBL_NUM_HEBERGEMENT_PLANNING");chargeMotCleDansDiv("legende_clicMois_"+idDiv,"LBL_PLANNINGCLICSURMOIS");chargeMotCleDansDiv("div_planningBtFermer_"+idDiv,"LBL_PLANNINGFERMER");}
function calendrier_chargeMotCleDansCalendrierSais(idDiv){chargeMotCleDansDiv("div_planningBtFermerSais_"+idDiv,"LBL_PLANNINGFERMER");}
function calendrier_moisAutre(tableCal,increment){var obj=$(tableCal);var moisCurr=parseInt(obj.getAttribute("moisDeb"));var anneeCurr=parseInt(obj.getAttribute("annee"));var firstWeekDay=obj.getAttribute("firstWeekDay");var nbMois=parseInt(obj.getAttribute("nbMois"));var idDivGene=obj.getAttribute("idDivGene");var typeGite=obj.getAttribute("typeGite");var nb_chambre=obj.getAttribute("nb_chambre");var langue=obj.getAttribute("langue");var modeAff=obj.getAttribute("modeAff");var ident=obj.getAttribute("ident");var instance=obj.getAttribute("instance");var afficheDisposParAnnee=obj.getAttribute("afficheDisposParAnnee");var annee_min=obj.getAttribute("annee_min");var annee_max=obj.getAttribute("annee_max");var jrEnAvant=obj.getAttribute("jrEnAvant");var dateDebSej=obj.getAttribute("dateDebSej");var nbjSej=obj.getAttribute("nbjSej");var nonCliquable=obj.getAttribute('noncliquable');var classeAlternee;moisCurr+=(nbMois*increment);if(moisCurr>12){moisCurr=moisCurr-12;anneeCurr++;}
if(moisCurr<1){moisCurr=12+moisCurr;anneeCurr--;}
var today=new OBJDate();today.definition();if(afficheDisposParAnnee=="true"){nbMois=12;idDiv="valDisponibilitesAnneeCourante_"+idDivGene;div=$(idDiv);if(div)div.innerHTML=anneeCurr;var annee_prec=0;var annee_suiv=0;if(anneeCurr<annee_max&&anneeCurr>annee_min){annee_prec=anneeCurr-1;annee_suiv=anneeCurr+1;}
else if(anneeCurr==annee_min){if(annee_max!=annee_min)annee_suiv=parseInt(anneeCurr)+1;}
else if(anneeCurr==annee_max){if(annee_min!=annee_max)annee_prec=parseInt(anneeCurr)-1;}
var idDivNavigGauche="calendIteaNavigGauche_"+idDivGene;if($(idDivNavigGauche)){var objG=$(idDivNavigGauche);if(annee_prec!=0){var htmlNavigGauche="<a class='calendItea_navigGauche_lien' href='#dispoPrecedent' onclick=calendrier_moisAutre(this.parentNode.nextSibling.nextSibling.nextSibling.firstChild,-1)>";htmlNavigGauche+="<span id='lblDisponibilitesNavigGauche_"+idDivGene+"'></span>&nbsp;";htmlNavigGauche+="<span id='valDisponibilitesNavigGauche_"+idDivGene+"'>"+annee_prec+"</span>";htmlNavigGauche+="</a>";objG.innerHTML=htmlNavigGauche;}
else objG.innerHTML="";}
var idDivNavigDroite="calendIteaNavigDroite_"+idDivGene;if($(idDivNavigDroite)){var objD=$(idDivNavigDroite);if(annee_suiv!=0){var htmlNavigDroite="<a class='calendItea_navigDroite_lien' href='#dispoSuivant' onclick=calendrier_moisAutre(this.parentNode.nextSibling.firstChild,1)>";htmlNavigDroite+="<span id='lblDisponibilitesNavigDroite_"+idDivGene+"'></span>&nbsp;";htmlNavigDroite+="<span id='valDisponibilitesNavigDroite_"+idDivGene+"'>"+annee_suiv+"</span>";htmlNavigDroite+="</a>";objD.innerHTML=htmlNavigDroite;}
else objD.innerHTML="";}}
var html="<ul id='ul_"+idDivGene+"' class='calendItea_ul calendItea_ul_"+modeAff+"' moisDeb='"+moisCurr+"' annee='"+anneeCurr+"' nbMois='"+nbMois+"' firstWeekDay='"+firstWeekDay+"' idDivGene='"+idDivGene+"' typeGite='"+typeGite+"' nb_chambre='"+nb_chambre+"' langue='"+langue+"' modeAff='"+modeAff+"' ident='"+ident+"' instance='"+instance+"' afficheDisposParAnnee='"+afficheDisposParAnnee+"' annee_min='"+annee_min+"' annee_max='"+annee_max+"' jrEnAvant='"+jrEnAvant+"' dateDebSej='"+dateDebSej+"' nbjSej='"+nbjSej+"' nonCliquable='"+nonCliquable+"'>";var params={"firstWeekDay":firstWeekDay,"nbMois":nbMois,"nonCliquable":nonCliquable};for(var i=0;i<nbMois;i++){if(moisCurr>12){moisCurr=moisCurr-12;anneeCurr++;}
if(moisCurr<1){moisCurr=12+moisCurr;anneeCurr--;}
if(i%2==0)classeAlternee="calendItea_liPaire";else classeAlternee="calendItea_liImpaire";if(moisCurr<today.getMois()&&anneeCurr<=today.getAnnee())classeInit="moisNonInit";else classeInit="";html+="<li class='calendItea_li "+classeAlternee+" "+classeInit+"'>";params.moisCurr=moisCurr;params.anneeCurr=anneeCurr;params.langue=langue;params.nb_chambre=nb_chambre;params.typeGite=typeGite;params.afficheDisposParAnnee=afficheDisposParAnnee;params.jrEnAvant=jrEnAvant;params.dateDebSej=dateDebSej;params.nbjSej=nbjSej;if(modeAff=="LIGNE")html+=calendrier_getXHTML_1moisLineaire(params,idDivGene);else html+=calendrier_getXHTML_1mois(params,idDivGene);html+="</li>";moisCurr++;}
html+="</ul>";obj.parentNode.innerHTML=html;var selectChambre;if($("select_fiche_dispos_fngf_v4_chmbAnnee"))var id="select_fiche_dispos_fngf_v4_chmbAnnee";else var id="select_fiche_dispos_fngf_v4_chmb";var objId=$(id);if(objId)selectChambre=objId.value;if(selectChambre>0||selectChambre==0||typeGite=="H"||(!ident&&!instance)){if(nb_chambre>0)calendrier_setClasseForDisposForChambre(idDivGene,nb_chambre,modeAff);else calendrier_setClasseForJourArrTous(idDivGene);}else{if(ident)calendrier_setClasseForDispos(idDivGene);calendrier_setClasseForJourArr(idDivGene);}
if(afficheDisposParAnnee=="true"){effaceDivAvecTransparence('sais');calendrier_chargeMotCleDansCalendrier(idDivGene);ident=new String(ident);var tabInfos=ident.split(".");var typeProd=tabInfos[3];if(typeProd=="G"||typeProd=="H")setActionsSurMois(ident);}
if($(idDivGene).foncQdChangeMois)$(idDivGene).foncQdChangeMois(moisCurr,anneeCurr);}
function calendrier_moisAllerA(tableCal,moisDemande,anneeDemandee){var obj=$(tableCal);var moisCurr=parseInt(obj.getAttribute("moisDeb"));var anneeCurr=parseInt(obj.getAttribute("annee"));var firstWeekDay=obj.getAttribute("firstWeekDay");var nbMois=parseInt(obj.getAttribute("nbMois"));var idDivGene=obj.getAttribute("idDivGene");var typeGite=obj.getAttribute("typeGite");var nb_chambre=obj.getAttribute("nb_chambre");var langue=obj.getAttribute("langue");var modeAff=obj.getAttribute("modeAff");var ident=obj.getAttribute("ident");var instance=obj.getAttribute("instance");var classeAlternee;moisCurr=moisDemande;anneeCurr=anneeDemandee;var html="<ul id='ul_"+idDivGene+"' class='calendItea_ul calendItea_ul_"+modeAff+"' moisDeb='"+moisCurr+"' annee='"+anneeCurr+"' nbMois='"+nbMois+"' firstWeekDay='"+firstWeekDay+"' idDivGene='"+idDivGene+"' typeGite='"+typeGite+"' nb_chambre='"+nb_chambre+"' langue='"+langue+"' modeAff='"+modeAff+"' ident='"+ident+"' instance='"+instance+"'>";var params={"firstWeekDay":firstWeekDay,"nbMois":nbMois};for(var i=0;i<nbMois;i++){if(moisCurr>12){moisCurr=moisCurr-12;anneeCurr++;}
if(moisCurr<1){moisCurr=12+moisCurr;anneeCurr--;}
if(i%2==0)classeAlternee="calendItea_liPaire";else classeAlternee="calendItea_liImpaire";html+="<li class='calendItea_li "+classeAlternee+"'>";params.moisCurr=moisCurr;params.anneeCurr=anneeCurr;params.langue=langue;params.nb_chambre=nb_chambre;params.typeGite=typeGite;if(modeAff=="LIGNE")html+=calendrier_getXHTML_1moisLineaire(params,idDivGene);else html+=calendrier_getXHTML_1mois(params,idDivGene);html+="</li>";moisCurr++;}
html+="</ul>";obj.parentNode.innerHTML=html;if(typeGite=="H"||(!ident&&!instance)){if(nb_chambre>0)calendrier_setClasseForDisposForChambre(idDivGene,nb_chambre,modeAff);else calendrier_setClasseForJourArrTous(idDivGene);}else{if(ident)calendrier_setClasseForDispos(idDivGene);calendrier_setClasseForJourArr(idDivGene);}}
function calendrier_getXHTML_1mois(params,idDivGene){var date=new OBJDate("15/"+params.moisCurr+"/"+params.anneeCurr);var html="";var tabLbl=date.getJSONLblJourWeek(params.langue,1);if(params.firstDayWeek)var idJour=params.firstDayWeek;var idJour=1;var mois=params.moisCurr;var annee=params.anneeCurr;var dateCurr;var jourSelect=0;var moisSelect=0;var anneeSelect=0;var dureeSelect=0;if($("mois"))moisSelect=$("mois").value;if($("annee"))anneeSelect=$("annee").value;if($("jour"))jourSelect=$("jour").value;if($("duree"))dureeSelect=$("duree").value;var dateSelect=new OBJDate(jourSelect+"/"+moisSelect+"/"+anneeSelect);var dateFinSejourSelect=new OBJDate(jourSelect+"/"+moisSelect+"/"+anneeSelect);dateFinSejourSelect.ajoutJour(dureeSelect);html+="<table class='calend' mois='"+mois+"' annee='"+annee+"' firstWeekDay='"+params.firstWeekDay+"' nbMois='"+params.nbMois+"'>";if(params.afficheDisposParAnnee=="true")html+="<caption id='calendItea_libMois_"+mois+"'>"+date.getLibelleMois(params.langue)+"</caption>";else html+="<caption>"+date.getLibelleMois(params.langue)+" "+annee+"</caption>";html+="<thead>";html+="<tr>";var j_curr=idJour;do{html+="<th class='calend_jour_"+j_curr+"'>";html+=tabLbl[j_curr].libelle_court.charAt(0);html+="</th>";j_curr=(j_curr+1)%7;}while(j_curr!=idJour);html+="</tr>";html+="</thead>";html+="<tbody>";var grille=calendrier_getTabGrille(params);for(var i=0;i<grille.length;i++){html+="<tr>";for(j=0;j<grille[i].length;j++){var jr=grille[i][j];html+="<td class='calend_jour_"+idJour+"'>";if(jr){jr=parseInt(jr);var j2=new String((jr<10)?"0"+jr:jr);var m2=new String((mois<10)?"0"+mois:mois);var a2=new String(annee);dateCurr=new OBJDate(j2+"/"+m2+"/"+a2);if(params.nonCliquable==1){html+="<span id='"+idDivGene+"_id_"+j2+m2+a2+"' etat='"+"' class='";}else{html+="<span id='"+idDivGene+"_id_"+j2+m2+a2+"' etat='"+"' class='classeInit";}
var dateduJour=new OBJDate();dateduJour.definition()
if(dateCurr.getJourSemaine()==params.jrEnAvant){if(dateduJour.estAvantOBJDate(dateCurr))html+=" spanDateSejourMiseEnAvant";}
if(params.dateDebSej){dateSelect=new OBJDate(params.dateDebSej);dateFinSejourSelect=new OBJDate(params.dateDebSej);}
if(params.nbjSej&&dateFinSejourSelect)dateFinSejourSelect.ajoutJour(params.nbjSej);if(dateFinSejourSelect.toString()==dateCurr.toString())html+=" spanDateFinSelect";if(dateSelect.toString("ddmmyyyy")==(j2+m2+a2))html+=" spanDateArriveeSelect";else{if(dateCurr.estComprisEntre(dateSelect,dateFinSejourSelect))html+=" spanDateSejourSelect";}
html+="'>";html+=jr;html+="</span>";idJour=(idJour+1)%7;}else html+="&nbsp;";html+="</td>";}
html+="</tr>";}
html+="</tbody>";html+="</table>";return html;}
function calendrier_getXHTML_1moisLineaire(params,idDivGene){var date=new OBJDate("15/"+params.moisCurr+"/"+params.anneeCurr);var html="";var mois=params.moisCurr;var annee=params.anneeCurr;var dateCurr;var jourSelect=0;var moisSelect=0;var anneeSelect=0;var dureeSelect=0;if($("mois"))moisSelect=$("mois").value;if($("annee"))anneeSelect=$("annee").value;if($("jour"))jourSelect=$("jour").value;if($("duree"))dureeSelect=$("duree").value;var dateSelect=new OBJDate(jourSelect+"/"+moisSelect+"/"+anneeSelect);var dateFinSejourSelect=new OBJDate(jourSelect+"/"+moisSelect+"/"+anneeSelect);dateFinSejourSelect.ajoutJour(dureeSelect);html+="<table class='calend' mois='"+mois+"' annee='"+annee+"' firstWeekDay='"+params.firstWeekDay+"' nbMois='"+params.nbMois+"'>";if(params.afficheDisposParAnnee=="true")html+="<caption>"+date.getLibelleMois(params.langue)+"</caption>";else html+="<caption>"+date.getLibelleMois(params.langue)+" "+annee+"</caption>";html+="<thead>";html+="<tr>";if(params.typeGite=="H")html+="<th class='calend_idLigne'></th>";var j_curr=1;do{html+="<th class='calend_jour_"+j_curr+"'>";html+=j_curr;html+="</th>";j_curr++;}while(j_curr<=date.getNbjMois());html+="</tr>";html+="</thead>";html+="<tbody>";var nb_chambre=params.nb_chambre;if(!nb_chambre)nb_chambre=1;for(var i=1;i<=nb_chambre;i++){html+="<tr>";if(params.typeGite=="H")html+="<th class='calend_idLigne'>Chambre n°"+i+"</th>";for(j=1;j<=date.getNbjMois();j++){html+="<td class='calend_jour_"+j+"'>";jr=parseInt(j);var j2=(jr<10)?"0"+jr:jr;var m2=(mois<10)?"0"+mois:mois;var a2=annee;if(params.typeGite=="H")var idCurr=idDivGene+"_id_"+j2+m2+a2+"_"+i;else var idCurr=idDivGene+"_id_"+j2+m2+a2;html+="<span id='"+idCurr+"' etat='' class='classeInit";if(dateSelect.toString("ddmmyyyy")==(j2+m2+a2))html+=" spanDateArriveeSelect";else{dateCurr=new OBJDate(j2+"/"+m2+"/"+a2);if(dateCurr.estComprisEntre(dateSelect,dateFinSejourSelect))html+=" spanDateSejourSelect";}
html+="'> </span>";html+="</td>";}
html+="</tr>";}
html+="</tbody>";html+="</table>";return html;}
function calendrier_getXHTML_1mois_saison(moisCurr,anneeCurr,langueCurr,idDivGene,increment,ident){var date=new OBJDate("15/"+moisCurr+"/"+anneeCurr);var html="";var tabLbl=date.getJSONLblJourWeek(langueCurr);var idJour=1;var mois=moisCurr;var annee=anneeCurr;var dateCurr;var jourSelect=0;var moisSelect=0;var anneeSelect=0;var dureeSelect=0;if($("mois"))moisSelect=$("mois").value;if($("annee"))anneeSelect=$("annee").value;if($("jour"))jourSelect=$("jour").value;if($("duree"))dureeSelect=$("duree").value;var dateSelect=new OBJDate(jourSelect+"/"+moisSelect+"/"+anneeSelect);var dateFinSejourSelect=new OBJDate(jourSelect+"/"+moisSelect+"/"+anneeSelect);dateFinSejourSelect.ajoutJour(dureeSelect);html+="<div id='div_calend_sais_1'></div>";html+="<div id='div_calend_sais_2'></div>";html+="<div id='div_calendSais_content'>";html+="<div id='titre_tarif_calend_saison'><span id='sp_titre_tarif_calend_saison'>Détail des tarifs</span></div>";html+="<div class='calendItea_navig calendItea_navigGauche' id='calendIteaNavigGauche_calendItea_"+idDivGene+"'>";html+="<a id='a_click_navig_gauche_saison' onClick=actionSurNavigCalendSaison('"+moisCurr+"','"+anneeCurr+"','"+langueCurr+"','"+idDivGene+"',-1,'"+ident+"');>";html+="<";html+="</a>";html+="</div>";html+="<div class='calendItea_navig calendItea_navigDroite' id='calendIteaNavigDroite_calendItea_"+idDivGene+"'>";html+="<a id='a_click_navig_droite_saison' onClick=actionSurNavigCalendSaison('"+moisCurr+"','"+anneeCurr+"','"+langueCurr+"','"+idDivGene+"',1,'"+ident+"');>";html+=">";html+="</a>";html+="</div>";html+="<div class='calendIteaBtFermer' id='div_planningBtFermerSais_"+idDivGene+"' onclick=effaceDivAvecTransparence('sais');></div>";html+="<table class='calend' mois='"+mois+"' annee='"+annee+"' firstWeekDay='' nbMois=''>";html+="<caption>"+date.getLibelleMois(langueCurr)+" "+annee+"</caption>";html+="<thead>";html+="<tr>";var j_curr=idJour;do{html+="<th class='calend_jour_"+j_curr+"'>";html+=tabLbl[j_curr].libelle_court[0];html+="</th>";j_curr=(j_curr+1)%7;}while(j_curr!=idJour);html+="</tr>";html+="</thead>";html+="<tbody>";var paramsSais=new Array();paramsSais.moisCurr=moisCurr;paramsSais.anneeCurr=anneeCurr;paramsSais.langue=langueCurr;var grille=calendrier_getTabGrille(paramsSais);for(var i=0;i<grille.length;i++){html+="<tr>";for(j=0;j<grille[i].length;j++){var jr=grille[i][j];html+="<td class='calend_jourSais_"+idJour+"'>";if(jr){jr=parseInt(jr);var j2=(jr<10)?"0"+jr:jr;var m2=(mois<10)?"0"+mois:mois;var a2=annee;html+="<span id='sais_"+idDivGene+"_id_"+j2+m2+a2+"' saison='"+"' class='classeInit";if(dateSelect.toString("ddmmyyyy")==(j2+m2+a2))html+=" spanDateArriveeSelect";else{dateCurr=new OBJDate(j2+"/"+m2+"/"+a2);if(dateCurr.estComprisEntre(dateSelect,dateFinSejourSelect))html+=" spanDateSejourSelect";}
html+="'>";html+=jr;html+="</span>";idJour=(idJour+1)%7;}else html+="&nbsp;";html+="</td>";}
html+="</tr>";}
html+="</tbody>";html+="</table>";html+="<div class='tarifSais' moisCurr='"+mois+"' anneeCurr='"+annee+"' idDivGene='"+idDivGene+"' id='div_tarifSais'></div>";html+="</div>";html+="<div id='div_calend_sais_3'></div>";html+="<div id='div_calend_sais_4'></div>";return html;}
function actionSurNavigCalendSaison(moisCurr,anneeCurr,langueCurr,idDivGene,increment,ident){var moisTmp=parseInt(moisCurr)+increment;if(moisTmp>12){moisCurr=1;anneeCurr++;}
else if(moisTmp<1){moisCurr=12;anneeCurr--;}
else moisCurr=moisTmp;$("divGraph_fenetresais").innerHTML=calendrier_getXHTML_1mois_saison(moisCurr,anneeCurr,langueCurr,idDivGene,increment,ident);var url="/lib_2/ajax/contenuFenetre.php";var vars="element=elemObjProd&typeInfo=afficheTarifParSaison-"+ident+"-"+moisCurr+"-"+anneeCurr;affUrlInDiv("div_tarifSais",url,vars,"aucun",majIdSaisonForUnMois);}
function calendrier_getTabGrille(params){if(params.firstWeekDay)var premJour=params.firstWeekDay;var premJour=1;var date=new OBJDate("01/"+params.moisCurr+"/"+params.anneeCurr);var numJrDebut=date.getJourSemaine();var nbVideDebut=numJrDebut-premJour;if(nbVideDebut<0)nbVideDebut+=7;var nbjMois=date.getNbjMois();var nb_ln=parseInt(nbjMois/7)+2;var tabGrilleMois=new Array();var jour=1;for(var i=0;i<nb_ln&&jour<=nbjMois;i++){if(!tabGrilleMois[i])tabGrilleMois[i]=new Array();for(j=0;j<7&&jour<=nbjMois;j++){if(j<nbVideDebut)tabGrilleMois[i][j]=null;else{tabGrilleMois[i][j]=jour;jour++;}}
nbVideDebut=-1;}
return tabGrilleMois;}
function calendrier_setDispoEtJourArrivee(params,idDivGene){var url="/lib_2/ajax/infosDist.php";if(params.ident){if(params.typeGite=="H"){var sending="info=DISPOS&ident="+params.ident;if(params.apresToday)sending+="&apresToday="+params.apresToday;else sending+="&apresToday=true";var vars;var nb_planningRecupere=0;var nb_chambre=params.tabChambre.length;for(var i=0;i<nb_chambre;i++){vars=sending+"&numero_chambre="+params.tabChambre[i].numero_chambre;appelAjaxToFunc(url,vars,function(reponseAjax){calendrier_recupDisposForChambre(reponseAjax,idDivGene);nb_planningRecupere++;if(nb_chambre==nb_planningRecupere){if(params.afficheDisposParAnnee||params.afficheNavChamvre)
setActionsSurListeChambres(params.tabChambre,params.ident,params.linkToResa,nbMois,params.modeVenteGeGs,idDivGene);calendrier_setClasseForDisposForChambre(idDivGene,nb_chambre,params.modeAff);}});}}else{var sending="info=DISPOS&ident="+params.ident;if(params.apresToday)sending+="&apresToday="+params.apresToday;else sending+="&apresToday=true";appelAjaxToFunc(url,sending,function(reponseAjax){calendrier_recupDispos(reponseAjax,idDivGene);calendrier_setClasseForDispos(idDivGene);calendrier_recupByAjaxEtAffJourArrivee(params,idDivGene);});if(params.modeVenteGeGs=="?"){var vars;var nb_planningRecupere=0;var nb_chambre=params.tabChambre.length;for(var i=0;i<nb_chambre;i++){vars=sending+"&numero_chambre="+params.tabChambre[i].numero_chambre;appelAjaxToFunc(url,vars,function(reponseAjax){calendrier_recupDisposForChambre(reponseAjax,idDivGene);nb_planningRecupere++;if(nb_chambre==nb_planningRecupere){if(params.afficheDisposParAnnee)
setActionsSurListeChambres(params.tabChambre,params.ident,params.linkToResa,nbMois,params.modeVenteGeGs,idDivGene);}});}}}}else if(params.typeGite!="H")calendrier_recupByAjaxEtAffJourArrivee(params,idDivGene);}
function calendrier_recupByAjaxEtAffJourArrivee(params,idDivGene){var url="/lib_2/ajax/infosDist.php";var sending="info=JOURARR";if(params.ident)sending+="&ident="+params.ident;if(params.instance)sending+="&instance="+params.instance;if(params.id_famille)sending+="&id_famille="+params.id_famille;if(params.duree)sending+="&nbj="+params.duree;if(params.apresToday)sending+="&apresToday="+params.apresToday;else sending+="&apresToday=false";if(params.instance||params.ident){appelAjaxToFunc(url,sending,function(reponseAjax){calendrier_recupJourArr(reponseAjax,idDivGene);calendrier_setClasseForJourArr(idDivGene);});}}
function calendrier_recupDispos(tabDispo,idDivGene){eval("var infosDispo="+tabDispo);var dte=new String(infosDispo.date_deb);var dispos=new String(infosDispo.chaineDispo);var apresToday=infosDispo.apresToday;if($(idDivGene)){$(idDivGene).setAttribute("dispos",dispos);$(idDivGene).setAttribute("dteDispos",dte);$(idDivGene).setAttribute("apresToday",apresToday);}}
function calendrier_recupDisposForChambre(tabDispo,idDivGene){eval("var infosDispo="+tabDispo);var dte=new String(infosDispo.date_deb);var dispos=new String(infosDispo.chaineDispo);var apresToday=infosDispo.apresToday;var numero_chambre=infosDispo.numero_chambre;if($(idDivGene)){$(idDivGene).setAttribute("dispos_"+numero_chambre,dispos);$(idDivGene).setAttribute("dteDispos",dte);$(idDivGene).setAttribute("apresToday",apresToday);}}
function calendrier_setClasseForDispos(idDivGene){effaceMsgAttenteParDessus();var cliquable;var idCurr;var dispo;if($(idDivGene)){var dispos=$(idDivGene).getAttribute("dispos");var dte=new OBJDate($(idDivGene).getAttribute("dteDispos"));var apresToday=$(idDivGene).getAttribute("apresToday");}
var today=new OBJDate();today.definition();if(dispos){for(var i=0;i<dispos.length;i++){idCurr=idDivGene+"_id_"+dte.toString("ddmmyyyy");if($(idCurr)){if((apresToday&&dte.estApresOBJDate(today))||!apresToday){dispo=dispos.charAt(i);if($(idCurr).hasClassName("classeInit")&&dispo==".")cliquable=true;else{cliquable=false;if(dispo!="."&&$(idCurr).hasClassName("spanCalendCliquable")){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onclick=null;}}
if($(idCurr).hasClassName("classeInit"))$(idCurr).removeClassName("classeInit");$(idCurr).setAttribute("etat",dispo);if(dispo=="X")$(idCurr).addClassName("spanCalendJour_mode_vte_GEGS_H");else $(idCurr).addClassName(calendrier_getClassForJour(dispo,false,cliquable));if($(idCurr).hasClassName("classeMobile")&&cliquable){cliquable=false;$(idCurr).removeClassName("classeMobile");}
if(cliquable)$(idCurr).onclick=function(evt){calendrier_clicDate(evt,this);}}}
dte.ajoutJour(1);}}}
function calendrier_setClasseForCalSais(calsais,idDivGene,moisCurr,anneeCurr){effaceMsgAttenteParDessus();var idCurr;var idDivDispo;var calsais;var dteCurr="01/"+moisCurr+"/"+anneeCurr;var dte=new OBJDate(dteCurr);var classeSaison;var periodeIndispo;if(calsais){for(var i=0;i<=calsais.length;i++){idCurr="sais_"+idDivGene+"_id_"+dte.toString("ddmmyyyy");if($(idCurr)){sais=calsais.charAt(i);$(idCurr).setAttribute("saison",sais);classeSaison="jour_saison_"+sais;idDivDispo=idDivGene+"_id_"+dte.toString("ddmmyyyy");if($(idDivDispo)){if(($(idDivDispo).getAttribute("etat")=="n"||$(idDivDispo).getAttribute("etat")=="r")&&!$(idDivDispo).hasClassName("spanCalendJour_libre")){classeSaison="jour_saison_n";periodeIndispo=true;}}
$(idCurr).addClassName(classeSaison);}
dte.ajoutJour(1);}}
if($("div_legende_indispo_saison_unMois")){if(!(periodeIndispo))$("div_legende_indispo_saison_unMois").style.display="none";}}
function calendrier_setClasseForDisposForChambre(idDivGene,nb_chambre,modeAff){effaceMsgAttenteParDessus();var objGraph=$("divGraph_fenetre");if(objGraph)var styleDivGraph=objGraph.style.display;else var styleDivGraph=null;if($("select_fiche_dispos_fngf_v4_chmbAnnee")&&styleDivGraph!="none")var id="select_fiche_dispos_fngf_v4_chmbAnnee";else var id="select_fiche_dispos_fngf_v4_chmb";var objId=$(id);if(objId&&objId.value>0){calendrier_setClasseForDisposForChoixChambre(idDivGene,objId.value);}
else{var cliquable;var idCurr;var dispo;var numero_chambre;for(var c=1;c<=nb_chambre;c++){numero_chambre=c;if($(idDivGene)){var dispos=$(idDivGene).getAttribute("dispos_"+numero_chambre);var dte=new OBJDate($(idDivGene).getAttribute("dteDispos"));var apresToday=$(idDivGene).getAttribute("apresToday");}
var today=new OBJDate();today.definition();if(dispos){for(var i=0;i<dispos.length;i++){idCurr=idDivGene+"_id_"+dte.toString("ddmmyyyy");if(modeAff=="LIGNE")idCurr+="_"+numero_chambre;cliquable=false;if($(idCurr)){if((apresToday&&dte.estApresOBJDate(today))||!apresToday){dispo=dispos.charAt(i);if(dispo==".")cliquable=true;if($(idCurr).hasClassName("classeInit"))$(idCurr).removeClassName("classeInit");var planningMobile=false;if($(idCurr).hasClassName("classeMobile")&&cliquable){var planningMobile=true;}
$(idCurr).setAttribute("etat",dispo);if(cliquable||dispo=="X"){setClassForObj($(idCurr),"");}
if(!$(idCurr).hasClassName("spanCalendCliquable")){if(dispo=="X")$(idCurr).addClassName("spanCalendJour_mode_vte_GEGS_G");else $(idCurr).addClassName(calendrier_getClassForJour(dispo,false,cliquable));}
if(planningMobile){$(idCurr).addClassName("smart_jourCalendrier");$(idCurr).addClassName("classeMobile");cliquable=false;}
if(cliquable){$(idCurr).onclick=function(evt){calendrier_clicDate(evt,this,modeAff);}}}}
dte.ajoutJour(1);}}}}}
function calendrier_setClasseForDisposForChoixChambre(idDivGene,numero_chambre){effaceMsgAttenteParDessus();var cliquable;var idCurr;var dispo;if($(idDivGene)){var dispos=$(idDivGene).getAttribute("dispos_"+numero_chambre);var dte=new OBJDate($(idDivGene).getAttribute("dteDispos"));var apresToday=$(idDivGene).getAttribute("apresToday");}
var today=new OBJDate();today.definition();if(dispos){for(var i=0;i<dispos.length;i++){idCurr=idDivGene+"_id_"+dte.toString("ddmmyyyy");cliquable=false;if($(idCurr)){if((apresToday&&dte.estApresOBJDate(today))||!apresToday){dispo=dispos.charAt(i);if(dispo==".")cliquable=true;$(idCurr).setAttribute("class","classeInit");if($(idCurr).hasClassName("classeInit"))$(idCurr).removeClassName("classeInit");$(idCurr).setAttribute("etat",dispo);if(dispo=="X")$(idCurr).addClassName("spanCalendJour_mode_vte_GEGS_G");else $(idCurr).addClassName(calendrier_getClassForJour(dispo,false,cliquable));if(cliquable){setClassForObj($(idCurr),"");}
if(!$(idCurr).hasClassName("spanCalendCliquable")){if(dispo=="X")$(idCurr).addClassName("spanCalendJour_mode_vte_GEGS_G");else $(idCurr).addClassName(calendrier_getClassForJour(dispo,false,cliquable));}
if(cliquable){$(idCurr).onclick=function(evt){var modeAff="CARRE";calendrier_clicDate(evt,this,modeAff);}}}}
dte.ajoutJour(1);}}}
function calendrier_recupJourArr(tabJourArr,idDivGene){effaceMsgAttenteParDessus();eval("var infosJrArr="+tabJourArr);var dte=new String(infosJrArr.date_deb);var jourArr=new String(infosJrArr.chaineJourArr);var nbjMini=parseInt(infosJrArr.nbjMini,10);var apresToday=infosJrArr.apresToday;if(infosJrArr.duree){var duree=parseInt(infosJrArr.duree,10);var chaineWE=new String(infosJrArr.chaineWE);var nbjminWE=new String(infosJrArr.nbjminWE);var nbjmaxWE=new String(infosJrArr.nbjmaxWE);}
if($(idDivGene)){$(idDivGene).setAttribute("jourArr",jourArr);$(idDivGene).setAttribute("dteJrArr",dte);$(idDivGene).setAttribute("nbjMini",nbjMini);$(idDivGene).setAttribute("apresToday",apresToday);$(idDivGene).setAttribute("duree",duree);$(idDivGene).setAttribute("chaineWE",chaineWE);$(idDivGene).setAttribute("nbjminWE",nbjminWE);$(idDivGene).setAttribute("nbjmaxWE",nbjmaxWE);}}
function calendrier_setClasseForJourArr(idDivGene){var jourArr=$(idDivGene).getAttribute("jourArr");var dte=new OBJDate($(idDivGene).getAttribute("dteJrArr"));var nbjMini=$(idDivGene).getAttribute("nbjMini");var duree=$(idDivGene).getAttribute("duree");var apresToday=$(idDivGene).getAttribute("apresToday");var ident=$(idDivGene).getAttribute("ident");if(duree){var chaineWE=$(idDivGene).getAttribute("chaineWE");var nbjminWE=$(idDivGene).getAttribute("nbjminWE");var nbjmaxWE=$(idDivGene).getAttribute("nbjmaxWE");}else duree=7;var idCurr;var idJour;var jr_arr;var we_nbjMin;var we_nbjMax;var jr_WE;var today=new OBJDate();today.definition();if(nbjMini)today.ajoutJour(nbjMini);if(duree<7&&chaineWE){var dateMiniWE=new OBJDate();dateMiniWE.definition();if(nbjminWE)we_nbjMin=nbjminWE;else we_nbjMin=0;dateMiniWE.ajoutJour(we_nbjMin);var dateMaxiWE=new OBJDate();dateMaxiWE.definition();if(nbjmaxWE>0)we_nbjMax=nbjmaxWE;else we_nbjMax=999;dateMaxiWE.ajoutJour(we_nbjMax);}
if(jourArr)
for(var i=0;i<jourArr.length;i++){idJour=dte.getJourSemaine();idCurr=idDivGene+"_id_"+dte.toString("ddmmyyyy");if($(idCurr)){var etat_curr=$(idCurr).getAttribute("etat");jr_arr=jourArr.charAt(i);if(duree<7&&chaineWE){jr_WE=chaineWE.charAt(i);if(dte.estComprisEntre(dateMiniWE.toString(),dateMaxiWE.toString())){duree=parseInt(duree,10);switch(duree){case 0:if((!ident||(ident&&etat_curr))&&$(idCurr).hasClassName("classeInit")&&(idJour=="1"||idJour=="5"||jr_arr==idJour||jr_arr=="7")&&(jr_WE=="O"||jr_WE=="W"||jr_WE=="M"||jr_WE=="T"||jr_WE=="N")){$(idCurr).addClassName("spanCalendCliquable");$(idCurr).onmousedown=function(evt){calendrier_clicDate(evt,this);}}else{if($(idCurr).hasClassName("spanCalendCliquable")&&jr_arr!=idJour&&jr_arr!="7"){switch(idJour){case 1:if(jr_WE!="O"&&jr_WE!="M"&&jr_WE!="T"&&jr_WE!="X"){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onmousedown=null;}
break;case 5:if(jr_WE!="O"&&jr_WE!="M"&&jr_WE!="W"&&jr_WE!="T"&&jr_WE!="X"){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onmousedown=null;}
break;case 0:if(jr_WE!="O"&&jr_WE!="W"&&jr_WE!="T"&&jr_WE!="X"){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onmousedown=null;}else{$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onmousedown=null;}
break;default:$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onmousedown=null;break;}}}
break;case 2:if((!ident||(ident&&etat_curr))&&$(idCurr).hasClassName("classeInit")&&(idJour=="5"||jr_arr==idJour||jr_arr=="7")&&(jr_WE=="O"||jr_WE=="W"||jr_WE=="T")){$(idCurr).addClassName("spanCalendCliquable");$(idCurr).onclick=function(evt){calendrier_clicDate(evt,this);}}else{if($(idCurr).hasClassName("spanCalendCliquable")&&((idJour!="5"&&jr_arr!=idJour&&jr_arr!="7")||(jr_WE!="O"&&jr_WE!="W"&&jr_WE!="T"))){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onclick=null;}}
break;case 4:if((!ident||(ident&&etat_curr))&&$(idCurr).hasClassName("classeInit")&&(idJour=="1"||jr_arr==idJour||jr_arr=="7")&&(jr_WE=="O"||jr_WE=="M"||jr_WE=="T")){$(idCurr).addClassName("spanCalendCliquable");$(idCurr).onclick=function(evt){calendrier_clicDate(evt,this);}}else{if($(idCurr).hasClassName("spanCalendCliquable")&&((idJour!="1"&&jr_arr!=idJour&&jr_arr!="7")||(jr_WE!="O"&&jr_WE!="M"&&jr_WE!="T"))){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onclick=null;}}
break;default:if($(idCurr).hasClassName("spanCalendCliquable")&&(jr_arr==idJour||jr_arr=="7")&&jr_WE=="T"){$(idCurr).addClassName("spanCalendCliquable");$(idCurr).onclick=function(evt){calendrier_clicDate(evt,this);}}else{if($(idCurr).hasClassName("spanCalendCliquable")&&((jr_arr!=idJour&&jr_arr!="7")||jr_WE!="T")){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onclick=null;}}
break;}}
else if($(idCurr).hasClassName("spanCalendCliquable")&&jr_arr!=idJour&&jr_arr!="7"){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onclick=null;}}else{if((!ident||(ident&&etat_curr))&&$(idCurr).hasClassName("classeInit")&&(jr_arr==idJour||jr_arr=="7")){if((apresToday&&dte.estApresOBJDate(today))||!apresToday){$(idCurr).addClassName("spanCalendCliquable");$(idCurr).onclick=function(evt){calendrier_clicDate(evt,this);}}}else{if((jr_arr!=idJour&&jr_arr!="7")&&$(idCurr).hasClassName("spanCalendCliquable")){$(idCurr).removeClassName("spanCalendCliquable");$(idCurr).onclick=null;}}}
if($(idCurr).hasClassName("classeInit"))$(idCurr).removeClassName("classeInit");}
dte.ajoutJour(1);}}
function calendrier_setClasseForJourArrTous(idDivGene,dateDebSej){var dte=new OBJDate();dte.definition();var idCurr;var today=new OBJDate();today.definition();for(var i=0;i<731;i++){idCurr=idDivGene+"_id_"+dte.toString("ddmmyyyy");if($(idCurr)){if($(idCurr).hasClassName("classeInit")&&dte.estApresOBJDate(today)){$(idCurr).addClassName("spanCalendCliquable");$(idCurr).removeClassName("classeInit");$(idCurr).onclick=function(evt){calendrier_clicDate(evt,this);}}}
dte.ajoutJour(1);}}
function calendrier_setClasseForJourArrTousGP(idDivGene){var dte=new OBJDate();dte.definition();var idCurr;var today=new OBJDate();today.definition();for(var i=0;i<731;i++){idCurr=idDivGene+"_id_"+dte.toString("ddmmyyyy");if($(idCurr)){if($(idCurr).hasClassName("classeInit")&&dte.estApresOBJDate(today)){$(idCurr).addClassName("spanCalendCliquable");$(idCurr).removeClassName("classeInit");$(idCurr).onclick=function(evt){calendrier_clicDateGP(evt,this,false);}}}
dte.ajoutJour(1);}}
function calendrier_getClassForJour(etat,differencieEtats,cliquable){var tabClass;var classEtat;if(differencieEtats)tabClass=calendrier_getTabClassEtatsDifferencies();else tabClass=calendrier_getTabClassEtat();var classe="spanCalendJour_"+tabClass.getEtatLong(etat);if(cliquable&&etat==".")classe+=" spanCalendCliquable";return classe;}
function calendrier_getClassForJourForParamSais(etat,differencieEtats,cliquable){var tabClass;var classEtat;if(differencieEtats)tabClass=calendrier_getTabClassEtatsDifferencies();else tabClass=calendrier_getTabClassEtat();var classe="spanCalendJour_"+tabClass.getEtatLong(etat);if(cliquable&&etat==".")classe+=" spanCalendCliquable";return classe;}
function calendrier_getTabClassEtatsDifferencies(){var tabEtat={"getEtatLong":function(etat){switch(etat){case"i":return"intention";case"o":return"option";case"r":return"resa";case"I":return"preintention";case"O":return"preoption";case"R":return"preresa";case"n":return"ferme";case"N":return"nonautorise";case"a":return"allotement";case"L":return"limite";case".":return"libre";case"?":return"inconnu";case"G":return"modeVenteGEGS_G";case"H":return"modeVenteGEGS_H";case"X":return"bloque";}}};return tabEtat;}
function calendrier_getTabClassEtat(){var tabEtat={"getEtatLong":function(etat){switch(etat){case"i":return"contact";case"o":return"option";case"r":return"occupe";case"I":return"contact";case"O":return"option";case"R":return"occupe";case"n":return"occupe";case"N":return"occupe";case"a":return"contact";case"L":return"contact";case".":return"libre";case"?":return"inconnu";case"X":return"mode_vte_GEGS";}}};return tabEtat;}
function calendrier_clicDate(evt,obj,modeAff){if(!modeAff)modeAff="CARRE";var tabClass=calendrier_getTabClassEtatsDifferencies();var etat=tabClass.getEtatLong(obj.getAttribute("etat"));var tabId=obj.id.split("_");if(modeAff=="LIGNE")var chaine=new String(tabId[tabId.length-2]);else var chaine=new String(tabId[tabId.length-1]);var jour=chaine.substr(0,2);var mois=chaine.substr(2,2);var annee=chaine.substr(4,4);var objetDate=new OBJDate(chaine);var jrSemaine=objetDate.getJourSemaine();var linkToResa=obj.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.getAttribute('linkToResa');if(obj.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.foncQdClicGauche){obj.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.foncQdClicGauche(evt,jour,mois,annee,etat,jrSemaine);}else if(linkToResa){var parts=linkToResa.split("?");var adr=parts[0];var sending=parts[1];var reg1=new RegExp("(resaGl/sejour.php)","g");if(adr.match(reg1)){if(jour)sending+="&jour="+jour;if(mois)sending+="&mois="+mois;if(annee)sending+="&annee="+annee;}
var reg2=new RegExp("(resa_externe.php)","g");if(adr.match(reg2)){sending+="&reinit=O";if(jour)sending+="&jour="+jour;if(mois)sending+="&mois="+mois;if(annee)sending+="&annee="+annee;}
calendrier_redirectFrmToResa(adr,sending);}}
function setCalendrierToDivGP(idDiv,params){if(!params.langue)params.langue="FRANCAIS";div=$(idDiv);if(div){div.innerHTML=calendrier_getXHTMLForGP(params,idDiv);if(!params.nePasChargerMotCles)calendrier_chargeMotCleDeLaLegendeGP(idDiv);affMsgAttenteParDessusInDiv(idDiv);div.firstChild.foncQdClicGauche=params.clic;}}
function calendrier_getXHTMLForGP(params,idDiv){var html="";if(params.nbMois)nbMois=params.nbMois;else nbMois=1;var today=new OBJDate();today.definition();if(!params.moisDebut)params.moisDebut=today.getMois();if(!params.anneeDebut)params.anneeDebut=today.getAnnee();var mois=params.moisDebut;var annee=params.anneeDebut;var langue=params.langue;if(!langue)langue="FRANCAIS";var classeAlternee;if(params.code)var code=params.code;else var code="";var request=params.request;if(!params.request)request="N";var nb_stock=params.tabStock.length;html="<div class='calendItea calendIteaGP' id='calendItea_"+idDiv+"'>";html+="<div class='calendItea_navig calendItea_navigGauche'>";html+="<a onclick=calendrier_moisAutreGP(this.parentNode.nextSibling.firstChild,-1)><</a>";html+="</div>";html+="<div class=calendIteaGP_listMois>";html+="<ul class='calendIteaGP_ul calendItea_ul' moisDeb='"+mois+"' annee='"+annee+"' nbMois='"+nbMois+"' firstWeekDay='"+params.firstWeekDay+"' idDivGene='calendItea_"+idDiv+"' nb_stock='"+nb_stock+"' langue='"+langue+"' code='"+code+"' instance='"+params.instance+"'  request='"+request+"' tabStock='"+params.tabStock.toJSON()+"'>";moisCurr=mois;anneeCurr=annee;for(var i=0;i<nbMois;i++){if(i%2==0)classeAlternee="calendIteaGP_liPaire";else classeAlternee="calendIteaGP_liImpaire";html+="<li class='calendIteaGP_li "+classeAlternee+"'>";params.moisCurr=moisCurr;params.anneeCurr=anneeCurr;params.nb_stock=nb_stock;html+=calendrier_getXHTML_1moisLineaireGP(params,"calendItea_"+idDiv);html+="</li>";moisCurr++;if(moisCurr>12){moisCurr=1;anneeCurr++;}}
html+="</ul>";html+="</div>";html+="<div class='calendIteaGP_navig calendItea_navigDroite'>";html+="<a onclick=calendrier_moisAutreGP(this.parentNode.previousSibling.firstChild,1)>></a>";html+="</div>";if(params.code){html+="<div class='calendIteaGP_legende'>";html+="<ul class='ul_legendeCalendGP'>";html+="<li class='calendIteaGP_li_legende'>";html+="<span class='spanCalendCliquableResaGP'>&nbsp;</span><span class='definition_legendeCalendCliquableResaGP' id='legendeCliquableResa_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendIteaGP_li_legende'>";html+="<span class='spanCalendJourGP_libre'>&nbsp;</span><span class='definition_legendeCalendLibreGP' id='legendeLibre_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendIteaGP_li_legende'>";html+="<span class='spanDateSejourOccupeGP'>&nbsp;</span><span class='definition_legendeCalendSejourOccupeGP' id='legendeOccupe_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendIteaGP_li_legende'>";html+="<span class='spanCalendCliquableDevisGP'>&nbsp;</span><span class='definition_legendeCalendCliquableDevisGP' id='legendeCliquableDevis_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendIteaGP_li_legende'>";html+="<span class='spanDateSejourDevisGP'>&nbsp;</span><span class='definition_legendeCalendSejourDevisGP' id='legendeDevis_"+idDiv+"'></span>";html+="</li>";html+="<li class='calendIteaGP_li_legende'>";html+="<span class='spanDateSejourSelectGP'>&nbsp;</span><span class='definition_legendeCalendSejourSelectGP' id='legendeSelect_"+idDiv+"'></span>";html+="</li>";html+="</ul>";html+="</div>";}
html+="</div>";calendrier_setDispoEtJourArriveeGP(params,"calendItea_"+idDiv);return html;}
function calendrier_chargeMotCleDeLaLegendeGP(idDiv){chargeMotCleDsDiv("legendeCliquableResa_"+idDiv,"LBL_LEGENDE_CALEND_ARRIVEE_RESA");chargeMotCleDsDiv("legendeLibre_"+idDiv,"LBL_LEGENDE_CALEND_LIBRE");chargeMotCleDsDiv("legendeOccupe_"+idDiv,"LBL_LEGENDE_CALEND_OCCUPE");chargeMotCleDsDiv("legendeCliquableDevis_"+idDiv,"LBL_LEGENDE_CALEND_ARRIVEE_DEVIS");chargeMotCleDsDiv("legendeDevis_"+idDiv,"LBL_LEGENDE_CALEND_DEVIS");chargeMotCleDsDiv("legendeSelect_"+idDiv,"LBL_LEGENDE_CALEND_SELECT");}
function calendrier_setPeriodeInClass(idDiv,classname,jdeb,mdeb,adeb,jfin,mfin,afin){var dteDeb=new OBJDate();dteDeb.definition();dteDeb.setDateByInfos(jdeb,mdeb,adeb);var dteFin=new OBJDate();dteFin.definition();dteFin.setDateByInfos(jfin,mfin,afin);$$("."+classname).each(function(obj){obj.removeClassName(classname)});var idCurr;for(var i=0;i<731;i++){idCurr="calendItea_"+idDiv+"_id_"+dteDeb.toString("ddmmyyyy");if($(idCurr)){if(dteFin.estApresOBJDate(dteDeb)){$(idCurr).addClassName(classname);}}
dteDeb.ajoutJour(1);}}
function calendrier_getXHTML_1moisLineaireGP(params,idDivGene){var date=new OBJDate("15/"+params.moisCurr+"/"+params.anneeCurr);var html="";var mois=params.moisCurr;var annee=params.anneeCurr;var dateCurr;var jourSelect=0;var moisSelect=0;var anneeSelect=0;var dureeSelect=0;if($("mois"))moisSelect=$("mois").value;if($("annee"))anneeSelect=$("annee").value;if($("jour"))jourSelect=$("jour").value;if($("duree"))dureeSelect=$("duree").value;var dateSelect=new OBJDate(jourSelect+"/"+moisSelect+"/"+anneeSelect);var dateFinSejourSelect=new OBJDate(jourSelect+"/"+moisSelect+"/"+anneeSelect);dateFinSejourSelect.ajoutJour(dureeSelect);html+="<table class='calendGP' mois='"+mois+"' annee='"+annee+"' firstWeekDay='"+params.firstWeekDay+"' nbMois='"+params.nbMois+"'>";html+="<caption>"+date.getLibelleMois(params.langue)+" "+annee+"</caption>";html+="<thead>";html+="<tr>";html+="<th class='calend_idLigne'></th>";var j_curr=1;var tabJour=date.getJSONLblJourWeek(params.langue);do{var j1=(j_curr<10)?"0"+j_curr:j_curr;var m1=(mois<10)?"0"+mois:mois;var a1=annee;dateCurr=new OBJDate(j1+"/"+m1+"/"+a1);lblJour=tabJour[dateCurr.getJourSemaine()].libelle_court;html+="<th class='calend_jour_"+j_curr+"'>";html+="<span class='calend_jour_lbl'>"+lblJour+"</span>";html+="<span class='calend_jour_numero'>"+j_curr+"</span>";html+="</th>";j_curr++;}while(j_curr<=date.getNbjMois());html+="</tr>";html+="</thead>";html+="<tbody>";var nb_stock=params.nb_stock;for(var i=0;i<nb_stock;i++){html+="<tr>";html+="<th class='calendGP_idLigne'>"+params.tabStock[i].lbl+"</th>";for(j=1;j<=date.getNbjMois();j++){html+="<td class='calendGP_jour_"+j+"'>";jr=parseInt(j);var j2=(jr<10)?"0"+jr:jr;var m2=(mois<10)?"0"+mois:mois;var a2=annee;var code_stock=new String(params.tabStock[i].code);var idCurr=idDivGene+"_id_"+j2+m2+a2+"_"+code_stock.replace("/","_slash_");html+="<span id='"+idCurr+"' etat='' class='classeInit";if(dateSelect.toString("ddmmyyyy")==(j2+m2+a2))html+=" spanDateArriveeSelect";else{dateCurr=new OBJDate(j2+"/"+m2+"/"+a2);if(dateCurr.estComprisEntre(dateSelect,dateFinSejourSelect))html+=" spanDateSejourSelect";}
html+="'> </span>";html+="</td>";}
html+="</tr>";}
html+="</tbody>";html+="</table>";return html;}
function calendrier_moisAutreGP(tableCal,increment){var obj=$(tableCal);var moisCurr=parseInt(obj.getAttribute("moisDeb"));var anneeCurr=parseInt(obj.getAttribute("annee"));var firstWeekDay=obj.getAttribute("firstWeekDay");var nbMois=parseInt(obj.getAttribute("nbMois"));var idDivGene=obj.getAttribute("idDivGene");var nb_stock=obj.getAttribute("nb_stock");var langue=obj.getAttribute("langue");var instance=obj.getAttribute("instance");var code=obj.getAttribute("code");var request=obj.getAttribute("request");eval("var tabStock="+obj.getAttribute("tabStock"));var classeAlternee;moisCurr+=(nbMois*increment);if(moisCurr>12){moisCurr=moisCurr-12;anneeCurr++;}
if(moisCurr<1){moisCurr=12+moisCurr;anneeCurr--;}
var html="<ul class='calendIteaGP_ul calendItea_ul' moisDeb='"+moisCurr+"' annee='"+anneeCurr+"' nbMois='"+nbMois+"' firstWeekDay='"+firstWeekDay+"' idDivGene='"+idDivGene+"' nb_stock='"+nb_stock+"' langue='"+langue+"' code='"+code+"' instance='"+instance+"' request='"+request+"' tabStock='"+tabStock.toJSON()+"'>";var params={"firstWeekDay":firstWeekDay,"nbMois":nbMois};for(var i=0;i<nbMois;i++){if(moisCurr>12){moisCurr=moisCurr-12;anneeCurr++;}
if(moisCurr<1){moisCurr=12+moisCurr;anneeCurr--;}
if(i%2==0)classeAlternee="calendIteaGP_liPaire";else classeAlternee="calendIteaGP_liImpaire";html+="<li class='calendIteaGP_li "+classeAlternee+"'>";params.moisCurr=moisCurr;params.anneeCurr=anneeCurr;params.langue=langue;params.nb_stock=nb_stock;params.instance=instance;params.tabStock=tabStock;params.code=code;params.request=request;html+=calendrier_getXHTML_1moisLineaireGP(params,idDivGene);html+="</li>";moisCurr++;}
html+="</ul>";obj.parentNode.innerHTML=html;calendrier_setClasseForDisposForProd(idDivGene,nb_stock,tabStock,request);calendrier_setClasseForJourArrGP(idDivGene,nb_stock,tabStock,request);}
function calendrier_setDispoEtJourArriveeGP(params,idDivGene){var url="/lib_2/ajax/infosDist.php";if(params.code){var sending="info=DISPOS_GP&code="+params.code+"&instance="+params.instance;if(params.apresToday)sending+="&apresToday="+params.apresToday;else sending+="&apresToday=true";var vars;var nb_planningRecupere=0;var nb_stock=params.tabStock.length;for(var i=0;i<nb_stock;i++){vars=sending+"&code_stock="+params.tabStock[i].code;appelAjaxToFunc(url,vars,function(reponseAjax){calendrier_recupDisposForProd(reponseAjax,idDivGene);nb_planningRecupere++;if(nb_stock==nb_planningRecupere)calendrier_setClasseForDisposForProd(idDivGene,nb_stock,params.tabStock,params.request);});}}
if(params.code){var sending="info=JOURARR_GP&instance="+params.instance+"&code="+params.code;if(params.apresToday)sending+="&apresToday="+params.apresToday;else sending+="&apresToday=true";appelAjaxToFunc(url,sending,function(reponseAjax){calendrier_recupJourArrGP(reponseAjax,idDivGene);calendrier_setClasseForJourArrGP(idDivGene,nb_stock,params.tabStock,params.request);});}}
function calendrier_recupDisposForProd(tabDispo,idDivGene){eval("var infosDispo="+tabDispo);var dte=new String(infosDispo.date_deb);var dispos=new String(infosDispo.chaineDispo);var apresToday=infosDispo.apresToday;var code_stock=new String(infosDispo.code_stock);if($(idDivGene)){$(idDivGene).setAttribute("dispos_"+code_stock.replace("/","_slash_"),dispos);$(idDivGene).setAttribute("dteDispos",dte);$(idDivGene).setAttribute("apresToday",apresToday);}}
function calendrier_recupJourArrGP(tabJourArr,idDivGene){effaceMsgAttenteParDessus();eval("var infosJrArr="+tabJourArr);var dte=new String(infosJrArr.date_deb);var jourArr=new String(infosJrArr.jourArr);var apresToday=infosJrArr.apresToday;var nbjMini=infosJrArr.nbjMini;if($(idDivGene)){$(idDivGene).setAttribute("jourArr",jourArr);$(idDivGene).setAttribute("dteJrArr",dte);$(idDivGene).setAttribute("apresToday",apresToday);$(idDivGene).setAttribute("nbjMini",nbjMini);}}
function calendrier_setClasseForDisposForProd(idDivGene,nb_stock,tabStock,request){effaceMsgAttenteParDessus();var cliquable;var idCurr;var dispo;var code_stock;for(var c=0;c<nb_stock;c++){code_stock=new String(tabStock[c].code);code_stock=code_stock.replace("/","_slash_");if($(idDivGene)){var dispos=$(idDivGene).getAttribute("dispos_"+code_stock);var dte=new OBJDate($(idDivGene).getAttribute("dteDispos"));var apresToday=$(idDivGene).getAttribute("apresToday");}
var today=new OBJDate();today.definition();if(dispos){for(var i=0;i<dispos.length;i++){idCurr=idDivGene+"_id_"+dte.toString("ddmmyyyy");idCurr+="_"+code_stock;cliquable=false;if($(idCurr)){if((apresToday&&dte.estApresOBJDate(today))||!apresToday){dispo=dispos.charAt(i);if($(idCurr).hasClassName("classeInit")&&(dispo=="1"||(dispo=="0"&&request=="O")))cliquable=true;else{cliquable=false;if(dispo!="1"&&request!="O"&&$(idCurr).hasClassName("spanCalendCliquableGP")){$(idCurr).removeClassName("spanCalendCliquableGP");$(idCurr).onclick=null;}}
if($(idCurr).hasClassName("classeInit"))$(idCurr).removeClassName("classeInit");$(idCurr).setAttribute("etat",dispo);$(idCurr).addClassName(calendrier_getClassForJourGP(dispo,request,cliquable));if(cliquable){$(idCurr).onclick=function(evt){calendrier_clicDateGP(evt,this,request);}}}}
dte.ajoutJour(1);}}}}
function calendrier_setClasseForJourArrGP(idDivGene,nb_stock,tabStock,request){var jourArr=$(idDivGene).getAttribute("jourArr");var dte=new OBJDate($(idDivGene).getAttribute("dteJrArr"));var nbjMini=$(idDivGene).getAttribute("nbjMini");var apresToday=$(idDivGene).getAttribute("apresToday");var idCurr;var jr_arr;var today=new OBJDate();today.definition();if(nbjMini)today.ajoutJour(nbjMini);for(var i=0;i<jourArr.length;i++){for(var j=0;j<nb_stock;j++){var code_stock=new String(tabStock[j].code);idCurr=idDivGene+"_id_"+dte.toString("ddmmyyyy")+"_"+code_stock.replace("/","_slash_");if($(idCurr)){jr_arr=jourArr.charAt(i);if($(idCurr).hasClassName("classeInit")&&jr_arr=="A"){if((apresToday&&dte.estApresOBJDate(today))||!apresToday){$(idCurr).addClassName("spanCalendCliquableGP");$(idCurr).onclick=function(evt){calendrier_clicDateGP(evt,this,request);}}}else{if(jr_arr!="A"&&$(idCurr).hasClassName("spanCalendCliquableGP")){$(idCurr).removeClassName("spanCalendCliquableGP");$(idCurr).onclick=null;}}
if($(idCurr).hasClassName("classeInit"))$(idCurr).removeClassName("classeInit");}}
dte.ajoutJour(1);}}
function calendrier_getClassForJourGP(etat,request,cliquable){var classEtat;var tabClass=calendrier_getTabClassEtatsGP(request);var classe="spanCalendJourGP_"+tabClass.getEtatLong(etat);if(cliquable&&(etat=="1"||(etat=="0"&&request=="O")))classe+=" spanCalendCliquableGP";return classe;}
function calendrier_getTabClassEtatsGP(request){var tabClass={"getEtatLong":function(etat){switch(etat){case"1":return"libre";case"0":if(request=="O")return"devis";else return"occupe";}}};return tabClass;}
function calendrier_clicDateGP(evt,obj,request){var tabClass=calendrier_getTabClassEtatsGP(request);var etat=tabClass.getEtatLong(obj.getAttribute("etat"));var idCurr=new String(obj.id);idCurr=idCurr.replace("_slash_","/");var tabId=idCurr.split("_");var chaine=new String(tabId[tabId.length-2]);var jour=chaine.substr(0,2);var mois=chaine.substr(2,2);var annee=chaine.substr(4,4);obj.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.foncQdClicGauche(evt,jour,mois,annee,etat);}
function creeObjHttpRequest(){var xhr_local=null;if(window.XMLHttpRequest)
xhr_local=new XMLHttpRequest();else if(window.ActiveXObject){try{xhr_local=new ActiveXObject("Msxml2.XMLHTTP");}catch(e){xhr_local=new ActiveXObject("Microsoft.XMLHTTP");}}
return xhr_local;}
function go(c){if(!c.data.replace(/\s/g,""))
c.parentNode.removeChild(c);}
function clean(d){var bal=d.getElementsByTagName("*");for(i=0;i<bal.length;i++){a=bal[i].previousSibling;if(a&&a.nodeType==3)
go(a);b=bal[i].nextSibling;if(b&&b.nodeType==3)
go(b);}
return d;}
function urlCentreByAjaxFromCGI(url,cgis,htmlAttente){var xhr_local=creeObjHttpRequest();if(htmlAttente)var objMsg=getDivSurPageWithHtml(htmlAttente);xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var contenuVisuStruct=xhr_local.responseText;var xhr_head=creeObjHttpRequest();xhr_head.onreadystatechange=function(){if(xhr_head.readyState==4&&xhr_head.status==200){var contenuHead=xhr_head.responseText;document.getElementsByTagName("head").item(0).innerHTML=contenuHead;document.getElementById("page").innerHTML=contenuVisuStruct;effaceDivSurPage();}}
xhr_head.open("POST","/lib/ajax/contenuFenetre.php",true);xhr_head.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_head.send("typeInfo=HEAD");}}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(cgis+"&JUSTE_LE_CENTRE=JLC");}
function listeByAjaxFromCGI(cgis,htmlAttente){urlCentreByAjaxFromCGI("/liste",cgis,htmlAttente);}
function listeByAjaxFromForm(idForm,htmlAttente){var objForm=document.getElementById(idForm);if(!objForm)return;var tabForm=getTabChmpForm(objForm);var query="";for(var i=0;i<tabForm.length;i++){query+="&"+tabForm[i].id+"="+tabForm[i].value;}
urlCentreByAjaxFromCGI("/liste",query,htmlAttente);}
function urlDsPageCurrByAjaxAvecMsgAttente(url,cgi,htmlAttente){}
function affUrlInDiv(nomDiv,url,vars,msgAttente,foncQdFini){var idx=url.indexOf("?");if(idx>0){vars+=url.substr(idx+1);url=url.substr(0,idx);}
vars+=getInfoSession("PHPSESSID");var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=xhr_local.responseText;var elem=$(nomDiv);if(elem)elem.innerHTML=reponse;if(foncQdFini)foncQdFini(elem);}
if(xhr_local.readyState==4&&xhr_local.status!=200){if(foncQdFini)foncQdFini(elem);}}
if(msgAttente!="aucun"){var elem=document.getElementById(nomDiv);if(elem&&msgAttente)elem.innerHTML=msgAttente;else affMsgAttenteInDiv(nomDiv);}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(vars);}
function affUrlInDivFromHtml(html,foncQdFini){var data=html;var idx_debhtml=data.indexOf("-->");if(idx_debhtml>0){var js=data.substr(4,idx_debhtml-4);if(js.substr(0,14)=="JS_affUrlInDiv"){var tabInfos=js.split("&#164;");affUrlInDiv(tabInfos[1],tabInfos[2],tabInfos[3],"",foncQdFini);}else{if(window.foncQdFini)window.foncQdFini(false);}}}
function affUrlSsTourInDivAvecMsgAttente(nomDiv,url,query_string,html_attente){var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var contenu=xhr_local.responseText;document.getElementById(nomdiv).innerHTML=contenu;}}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(query_string);}
function chargeAdresseHTMLDansDiv(nomdiv,url,query_string){var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var contenu=xhr_local.responseText;document.getElementById(nomdiv).innerHTML=contenu;}}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(query_string);}
function appelAjaxToFunc(url,query_string,foncQdFini){var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var contenu=xhr_local.responseText;if(foncQdFini)foncQdFini(contenu);}}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(query_string);}
function appelAjaxXMLToFunc(url,query_string,foncQdFini){var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var contenu=clean(xhr_local.responseXML.documentElement);if(foncQdFini)foncQdFini(contenu);}}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(query_string);}
function appelAdrAjaxInDivAvecTransparence(adr,sending,msg,w,h){var html_init="<div id='divChargementAjx'><img src=/config_v3/imgs_defaut/loading/roue16x16.gif /><br />"+msg+"</div>";if(!w)w=200;if(!h)h=150;afficheDivAvecTransparence(html_init,w,h);var objStatus=document.getElementById("divChargementAjx");var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){reponse=xhr_local.responseText;objStatus.innerHTML=reponse;}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function affParamCGICurrInObjById(idDiv,param,acc,chaineAvant,chaineApres){var obj=document.getElementById(idDiv);if(obj){var url="/lib/ajax/infosCGI.php";var vars="typeInfo="+param+"&val="+acc;vars+=getInfoSession("PHPSESSID");var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=new String(xhr_local.responseText);var ch="";if(reponse.length>0){if(chaineAvant)ch=chaineAvant;ch=ch+reponse;if(chaineApres)ch=ch+chaineApres;obj.innerHTML=ch;}}}
obj.innerHTML="<img src=/config_v3/imgs_defaut/chargement_3Points.gif id=imgChargementAffParamCGI width=10/>";xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(vars);}}
function setCGIByAjax(querystring,rechargeListe,foncQdFini,paramFcQdFini){var url="/lib/ajax/setInfosCgi.php";var vars="query_string="+escape(querystring);if(rechargeListe)vars+="&reloadList=O";vars+=getInfoSession("PHPSESSID");var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=new String(xhr_local.responseText);if(foncQdFini&&paramFcQdFini)foncQdFini(reponse=="OK",paramFcQdFini);else if(foncQdFini)foncQdFini(reponse=="OK");}}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(vars);}
function chargeMotCleDsDiv(idDiv,motCle){if(!window.jsonMotcle)window.jsonMotcle=[];for(var i=0;i<window.jsonMotcle.length;i++){if(window.jsonMotcle[i].motcle==motCle){if($(idDiv))$(idDiv).innerHTML=window.jsonMotcle[i].content;return;}}
var adr="/lib_2/ajax/contenuFenetre.php";var sending=getInfoSession()+"&element=motCle&typeInfo=motcle&val="+motCle;appelAjaxToFunc(adr,sending,function(reponse){window.jsonMotcle.push({'motcle':motCle,'content':reponse});window.jsonMotcle.uniq();if($(idDiv))$(idDiv).innerHTML=reponse;});}
function cleanAllAJAXcall(){}function checkForm(frm,funcQdFini){if(!funcQdFini)funcQdFini=function(){if(frm.action.substr(0,5)=="https"&&window.pageTracker)pageTracker._linkByPost(frm);frm.submit();}
var tabChkInput=getTabChmpForm(frm);var nbVerifAFaire=0;nbChampVerifie=0;for(var i=0;i<tabChkInput.length;i++){if(tabChkInput[i].getAttribute("modecheck"))nbVerifAFaire++;}
for(var i=0;i<tabChkInput.length;i++){var chpInputControl=null;var chpControle=tabChkInput[i].getAttribute("chpcontrol");if(chpControle){chpInputControl=$(chpControle);if(!chpInputControl)chpInputControl=chpControle;}
var modechk=tabChkInput[i].getAttribute("modecheck")
if(modechk){checkByInput(tabChkInput[i],modechk,chpInputControl,funcQdFini,nbVerifAFaire);}}}
function checkByInput(chpInput,mode,chpInputControl,funcQdFini,nbVerifAFaire){if(!chpInput)return;if(!mode)return;var adr="/lib/ajax/checkForm.php";var xhr_local=creeObjHttpRequest();var sending="mode="+mode+"&value="+chpInput.value;if(chpInputControl){chpInput.chpInputControl=chpInputControl;if(chpInputControl.tagName=="INPUT")sending+="&valueControle="+chpInputControl.value;else sending+="&valueControle="+chpInputControl;}
chpInput.modecheck=mode;chpInput.disabled=true;xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=clean(xhr_local.responseXML.documentElement);var retour=reponse.childNodes[0].childNodes[0].nodeValue;chpInput.retourVerif=retour;chpInput.disabled=false;if(retour!="OK"){if(chpInput.type=="password")chpInput.type="text";$(chpInput).addClassName("chpInptErreurDetecte");$(chpInput).removeClassName("chpInptAucuneErreur");chpInput.value=reponse.childNodes[1].childNodes[0].nodeValue;if($("div_AttenteVerifClient"))setHTMLById("div_AttenteVerifClient","");if($("a_validationCoordonnees")&&$("a_validationCoordonnees").hasClassName("validationCoordonnees_enCours"))$("a_validationCoordonnees").removeClassName("validationCoordonnees_enCours");if(window.onErrorOnCheckInput)window.onErrorOnCheckInput(chpInput);}else{$(chpInput).addClassName("chpInptAucuneErreur");if(funcQdFini&&nbVerifAFaire){nbChampVerifie++;if(nbVerifAFaire==nbChampVerifie){funcQdFini();}}}}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function viderChp(chpInput){$(chpInput).removeClassName("chpInptErreurDetecte");$(chpInput).removeClassName("chpInptAucuneErreur");var msg=chpInput.value.substring(2);var idx_debmsg=msg.indexOf("--");if(idx_debmsg>0){var reste=msg.substring(idx_debmsg+2);chpInput.value=reste;}}
function checkFormMotMagique(frm,frmMotMagique){var frmSubmit=true;if(frmMotMagique.motmagique.value){var message="Vous avez saisi un code promotion, merci de le valider avant de passer &agrave; l'&eacute;tape suivante.";alertAMalibu(message);frmSubmit=false;}
if(frmSubmit)frm.submit();}
function checkFormMotMagiqueByLien(frmMotMagique){if(frmMotMagique.motmagique.value){var message="Vous avez saisi un code promotion, merci de le valider avant de passer &agrave; l'&eacute;tape suivante.";alertAMalibu(message);return false;}
else{return true;}}
function verifConnexionB2B(){var login=$("login_b2B").value;var mdp=$("mdp_b2B").value;var categorie;if($("CATEGORIE_CLIENT")!=null){categorie=$("CATEGORIE_CLIENT").value;}else{categorie="vincent";}
var addr="/lib/ajax/checkForm.php";var sending=getInfoSession()+"&MODE=checkConnexionB2B&VALUE="+login+"&VALUECONTROLE="+mdp;if(categorie!=undefined){sending+="&CATEGORIE_CLIENT="+categorie;}
appelAjaxXMLToFunc(addr,sending,traiteVerifConnexionB2B);}
function traiteVerifConnexionB2B(reponse){var retour=reponse.childNodes[0].childNodes[0].nodeValue;var formulaire=$("formIdent");var msg=unescape($("msgErr").value);if(retour=="OK")formulaire.submit();else alertAMalibu(msg);}
function verifBonB2B(){if($("div_errNumBon"))$("div_errNumBon").innerHTML="";var addr="/lib/ajax/checkForm.php";var sending=getInfoSession()+"&MODE=checkBonB2B&VALUE="+$("numero_bon").value;appelAjaxXMLToFunc(addr,sending,traiteVerifBonB2B);}
function traiteVerifBonB2B(reponse){var retour=reponse.childNodes[0].childNodes[0].nodeValue;if(retour=="OK"){effaceDivAvecTransparence();rechargeEnteteBon();}else{if($("div_errNumBon"))$("div_errNumBon").innerHTML=reponse.childNodes[1].childNodes[0].nodeValue;else alertAMalibu(reponse.childNodes[1].childNodes[0].nodeValue);}}
function rechargeEnteteBon(){var adr="/lib/ajax/contenuFenetre.php";var sending=getInfoSession()+"&element=criteres_prod&typeInfo=rechargeEnteteBon";var msgAttente="Rechargement en cours";var foncQdFini;var idDivGene="divLst_generale";if($(idDivGene))foncQdFini=rechargeListe;if($("div_recapAssur_bonTO"))foncQdFini=validFormAssurance;affUrlInDiv("div_globalEnteteAgence",adr,sending,msgAttente,foncQdFini);}
function rechargeListe(){setListByForm($("frmBonTO"));}
function validFormAssurance(){$("frm_assur").submit();}
function checkFormAvecFuncQdFini(frm,funcQdFini){var tabChkInput=getTabChmpForm(frm);var nbVerifAFaire=0;nbChampVerifie=0;for(var i=0;i<tabChkInput.length;i++){if(tabChkInput[i].getAttribute("modecheck"))nbVerifAFaire++;}
for(var i=0;i<tabChkInput.length;i++){var chpInputControl=null;var chpControle=tabChkInput[i].getAttribute("chpcontrol");if(chpControle){chpInputControl=$(chpControle);if(!chpInputControl)chpInputControl=chpControle;}
var modechk=tabChkInput[i].getAttribute("modecheck")
if(modechk){checkByInput(tabChkInput[i],modechk,chpInputControl,funcQdFini,nbVerifAFaire);}}}var nbChampVerifie;function getVersionIE(){if(!(navigator.appName=='Microsoft Internet Explorer'))return 999;else{var ua=navigator.userAgent;var re=new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");if(re.exec(ua)!=null){return parseFloat(RegExp.$1);}}
return 999;}
function format_nb(valeur,decimal,separateur){var deci=Math.round(Math.pow(10,decimal)*(Math.abs(valeur)-Math.floor(Math.abs(valeur))));var val=Math.floor(Math.abs(valeur));if((decimal==0)||(deci==Math.pow(10,decimal))){val=Math.floor(Math.abs(valeur));deci=0;}
var val_format=val+"";var nb=val_format.length;for(var i=1;i<4;i++){if(val>=Math.pow(10,(3*i))){val_format=val_format.substring(0,nb-(3*i))+separateur+val_format.substring(nb-(3*i));}}
if(decimal>0){var decim="";for(var j=0;j<(decimal-deci.toString().length);j++){decim+="0";}
deci=decim+deci.toString();val_format=val_format+"."+deci;}
if(parseFloat(valeur)<0){val_format="-"+val_format;}
return val_format;}
function setWindowForInclude(){window.tabFileForInclude=new Array();window.tabFileOfInclude=new Array();window.tabFileForInclude[0]="/lib_2/js/foncs/test.js";}
function execute(nom_function){window.tabFileForInclude.each(function(file){if(!in_array(window.tabFileOfInclude,nom_function)){var res=include(file,"body",nom_function,nom_function);if(res){window.tabFileOfInclude[window.tabFileOfInclude.length+1]=file;window.foncQdLoaded();}}});}
function include(fileName,typeBaliseToAdd,nomFoncToCheck,foncQdLoaded){var retour=false;var objToAdd;if(!typeBaliseToAdd)typeBaliseToAdd="head";if(document.getElementsByTagName)objToAdd=document.getElementsByTagName(typeBaliseToAdd);else if(document.$$)objToAdd=$$(typeBaliseToAdd);if(objToAdd){var script=document.createElement("script");script.type="text/javascript";script.src=fileName;objToAdd[0].appendChild(script);}
if(nomFoncToCheck){var ok=false;eval("ok=window."+nomFoncToCheck);var rep=window.test;rep=window.addfavoris;if(ok){retour=true;}
else{window.optsForInclude={};window.optsForInclude.fileName=fileName;window.optsForInclude.foncQdLoaded=foncQdLoaded;window.optsForInclude.nomFoncToCheck=nomFoncToCheck;window.optsForInclude.intervForInclude=setInterval(function(){eval("ok=window."+window.optsForInclude.nomFoncToCheck);if(ok){clearInterval(window.optsForInclude.intervForInclude);window.optsForInclude.foncQdLoaded();retour=true;}},500);}}
return retour;}
function in_array(array,p_val){for(var i=0,l=array.length;i<l;i++){if(array[i]==p_val){rowid=i;return true;}}
return false;}
function is_array(input){return(typeof(input)=='object'&&(input instanceof Array));}
function array_push(array,vars){if(!is_array(array))array=new Array();var length=array.length;array[length]=vars;return array;}
function addfavoris(url,title){if(!url){if(document.documentURI)url=document.documentURI;else url=document.location;}
if(!title)title=document.title;if(navigator.userAgent.indexOf('Safari')!=-1){if(navigator.appVersion.indexOf("Mac",0)>0)alertAMalibu("Utilisez POMME + D \n pour ajouter "+title+" dans vos favoris");else alertAMalibu("Utilisez CTRL + D \n pour ajouter "+title+" dans vos favoris");}
if(getVersionIE()<9&&window.external)window.external.AddFavorite(url,title);else if(window.sidebar.addPanel)window.sidebar.addPanel(title,url,"");}
function printContentObj(obj){obj=$(obj);var ident=obj.id;var links="";var objLinks=document.getElementsByTagName('link');for(var i=0;i<objLinks.length;i++){links+="<link rel='stylesheet' media='"+objLinks[i].getAttribute("media")+"' href='"+objLinks[i].getAttribute("href")+"' />";}
var contentFrame="<html><head>"+links+"</head><body>"+obj.innerHTML+"</body></html>";var windowToPrint=window.open("","windowToPrint");windowToPrint.document.open();windowToPrint.document.write(contentFrame);windowToPrint.document.close();windowToPrint.print();windowToPrint.close();}
function reloadJs(){var i,a,s;a=document.getElementsByTagName('script');for(i=0;i<a.length;i++){s=a[i];if(s.type.toLowerCase().indexOf('text/javascript')>=0&&s.src){var h=s.src.replace(/(&|%5C?)reload=\d+/,'');s.src=h+(h.indexOf('?')>=0?'&':'?')+'reload='+getUniqueId();}}}
function gaTrack(url){if(window.pageTracker)window.pageTracker.push(['_trackPageview',url]);if(window.pageTrackerItea)window.pageTrackerItea.push(['_trackPageview',url]);}
function gTracking_addTrans(numero_resa,affiliation,prix_total,prix_taxes,prix_expedition,ville,region,pays){if(window.pageTracker)
window.pageTracker.push(['_addTrans',numero_resa,affiliation,prix_total,prix_taxes,prix_expedition,ville,region,pays]);}
function gTracking_addItem(numero_resa,code_prod,nom_prod,categorie_prod,prix_unit,quantite){if(window.pageTracker)
window.pageTracker.push(['_addItem',numero_resa,code_prod,nom_prod,categorie_prod,prix_unit,quantite]);}
function gTracking_trackTrans(){if(window.pageTracker)window.pageTracker.push(['_trackTrans']);}
function gTracking_conversionPage(id,langue,format,color,label,mntTotal){if(id){var google_conversion_id=id;var google_conversion_language=langue;var google_conversion_format=format;var google_conversion_color=color;var google_conversion_label=label;if(mntTotal){var google_conversion_value=mntTotal;}
include("http://www.googleadservices.com/pagead/conversion.js","body");}}
function initSiteWeb(){checkPageForDivDynamique();setForNavigPage();if(window.oninit)oninit();if(window.oninit1)oninit1();if(window.oninit2)oninit2();if(window.oninit3)oninit3();checkPageSiAfficheVraiPrixDansListe();checkPageSiDivForChargePrixInLst();traiteInformationInfosBulle();verifNavigateur();setActionSurDiaporama();initClicBody();}
function initClicBody(){var zone="init";$$('.ITEA_clicOutBody').each(function(elt){elt.onmouseout=function(evt){zone="out";}
elt.onmouseover=function(evt){zone="in";}});$("bodyPage").observe("click",function(evt){if(zone!="in"&&zone!="init"){$$('.ITEA_clicOutBody').each(function(elt){elt.style.display="none";zone="init";});}
else if(zone=="init")zone="out";});}
function traiteInformationInfosBulle(){if($$(".itea_survolInfosBulle")){$$(".itea_survolInfosBulle").each(function(elt){var id_survol=elt.getAttribute("id_survol");if(id_survol.length>0){$(id_survol).style.position="absolute";elt.onmouseover=function(evt){$(id_survol).style.display="block";};elt.onmouseout=function(evt){$(id_survol).style.display="none";};}});}}
function traiteInformationByAncre(){var ancre=getAncreInQuery();if(ancre.substr(0,3)=="js:"){var infos=ancre.split(":");var infosAExec=infos[1];eval(infosAExec);}}
function checkPageForDivDynamique(){checkForListeDivDynamique();checkForBlocDivDynamique();}
function checkForBlocDivDynamique(){$$(".iteaV4Bloc").each(function(obj){var url="/media.php";var vars="file=/bloc/"+obj.getAttribute("bloc");var foncQdFini=null;var params=obj.getAttribute("params");if(params)vars+="&"+params;if(obj.getAttribute("foncQdFini"))foncQdFini=eval(obj.getAttribute("foncQdFini"));if(!obj.id)obj.setAttribute("id","id-"+getUniqueId())
affUrlInDiv(obj.id,url,vars,"aucun",foncQdFini);})}
function boomEffectSite(){var objs=document.getElementsByTagName("DIV");for(var i=0;i<objs.length;i++){if(objs[i].childNodes&&objs[i].childNodes.length<3){var x,y,duree,multiplicateur;if(i%2==0)multiplicateur=-1;else multiplicateur=1
x=Math.random()*500*multiplicateur;y=Math.random()*500*multiplicateur;duree=Math.random()*3;objs[i].setAttribute("x_move",x);objs[i].setAttribute("y_move",y);new Effect.Move(objs[i],{x:x,y:y,duration:duree,mode:'relative'});}}}
function deboomEffectSite(){var objs=document.getElementsByTagName("DIV");for(var i=0;i<objs.length;i++){if(objs[i].childNodes&&objs[i].childNodes.length<3){var x,y,duree,multiplicateur;x=objs[i].getAttribute("x_move")*-1;y=objs[i].getAttribute("y_move")*-1;duree=Math.random()*3;objs[i].setAttribute("x_move","");objs[i].setAttribute("y_move","");new Effect.Move(objs[i],{x:x,y:y,duration:duree,mode:'relative'});}}}
function getUniqueId(max){var deb;if(!max)deb=0;else deb=(18-max);return((new Date()).getTime()+""+Math.floor(Math.random()*1000000)).substr(deb,18)}
function afficheNbRepInDivByForm(nomFrm,nomDiv){var objFrm=document.getElementById(nomFrm);if(!objFrm)return;var tabChp=getTabChmpForm(objFrm);for(var i=0;i<tabChp.length;i++){tabChp[i].onchange=function(evt){var url="/lib/ajax/traiteRequete.php";var vars="getNbInListCurr=ok";for(var i=0;i<tabChp.length;i++){vars+="&"+tabChp[i].name+"="+tabChp[i].value;}
affUrlInDiv(nomDiv,url,vars);}}
var url="/lib/ajax/traiteRequete.php";var vars="getNbInListCurr=ok";for(var i=0;i<tabChp.length;i++){vars+="&"+tabChp[i].name+"="+tabChp[i].value;}
affUrlInDiv(nomDiv,url,vars);}
function encodeHTML(html){var encodedHtml=escape(html);encodedHtml=encodedHtml.replace(/\//g,"%2F");encodedHtml=encodedHtml.replace(/\?/g,"%3F");encodedHtml=encodedHtml.replace(/=/g,"%3D");encodedHtml=encodedHtml.replace(/&/g,"%26");encodedHtml=encodedHtml.replace(/@/g,"%40");return encodedHtml;}
function getInfoSession(nomvar){var vars="";if(!nomvar)nomvar="SESSID";var sess=getQueryStringVal("PHPSESSID");tabSess=sess.split("#");sess=tabSess[0];if(sess)vars+="&"+nomvar+"="+sess;else{vars="";var info=document.cookie;}
return vars;}
function setVarEnSessionAjx(tag,val){var adr="/lib/ajax/miseEnSession.php";var xhr_local=creeObjHttpRequest();var sending=getInfoSession()+"&tag="+tag+"&val="+val
xhr_local.onreadystatechange=function(){if(xhr_local&&xhr_local.readyState==4){reponse=xhr_local.responseText;}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function setClassForObj(obj,classe){if(obj){obj.setAttribute("class",classe);obj.setAttribute("className",classe);}}
function setClassForObj_uniqClass(obj,classe){if(obj){var classAvant=obj.getAttribute("class");var objs=$$("."+classe);for(var i=0;i<objs.length;i++)setClassForObj(objs[i],classAvant);setClassForObj(obj,classe);}}
function getHtmlMessageFromForm(formToTransform){var form=formToTransform.cloneNode(true);form=transformChmpFormToSpan(form);return form.innerHTML;}
function envoiMailByAjaxByForm(nomIdForm,nomIdRetourMsg,transformFormulaire){var adr="/lib/ajax/envoiMail.php";var xhr_local=creeObjHttpRequest();var sending="";var message="";var form=document.getElementById(nomIdForm);if(form){if(form.destinataire)sending+="&destinataire="+escape(form.destinataire.value);if(form.expediteur)sending+="&expediteur="+escape(form.expediteur.value);if(form.sujet)sending+="&sujet="+escape(form.sujet.value);if(form.enteteMessage)sending+="&enteteMessage="+escape(form.enteteMessage.value);if(form.piedMessage)sending+="&piedMessage="+escape(form.piedMessage.value);if(form.msgEnvoiOK)sending+="&msgEnvoiOK="+escape(form.msgEnvoiOK.value);if(form.msgEnvoiKO)sending+="&msgEnvoiKO="+escape(form.msgEnvoiKO.value);sending+="&urlCurr="+document.location;if(transformFormulaire){message=getHtmlMessageFromForm(form);}else{if(form.message)message=form.message.value;if(form.messages){for(var i=0;i<form.messages.length;i++){message+=form.messages[i].value;}}}
sending+="&message="+escape(message);}else return;var html="<div id=divMsgEnvoiRetour><img src='/config_v3/imgs_defaut/roue_grise.gif' /></div>";xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=xhr_local.responseText;var divReponse=document.getElementById("divMsgEnvoiRetour");divReponse.innerHTML=unescape(reponse);}}
var divMsg=document.getElementById(nomIdRetourMsg);if(divMsg)divMsg.innerHTML=html;else form.innerHTML=html;xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function envoiMailAmiByAjaxByForm(form){var adr="/lib_2/ajax/envoiMail.php";var typeMail="AMI";var prenom_expediteur=$('prenomDeLaPart').value;var email_expediteur=$('emailDeLaPart').value;var sujet_mail=$('emailObjet').value;var message_mail=$('emailMessage').value;var ami1_mail=$('email1').value;var ami2_mail=$('email2').value;var ami3_mail=$('email3').value;var urlPageCurr=$('div_urlPageCourante').innerHTML;var motcleLien=$('div_messageAvantLien').innerHTML;var msgEnvoiOK=$('div_messageEnvoiOK').innerHTML;var msgEnvoiKO=$('div_messageEnvoiKO').innerHTML;if(ami1_mail.length>0){var xhr_local=creeObjHttpRequest();var sending="&typeMail="+typeMail;sending+="&prenomExpediteur="+escape(prenom_expediteur);sending+="&expediteur="+escape(email_expediteur);sending+="&sujet="+escape(sujet_mail);sending+="&messageMail="+escape(message_mail);sending+="&emailDest1="+escape(ami1_mail);sending+="&emailDest2="+escape(ami2_mail);sending+="&emailDest3="+escape(ami3_mail);sending+="&urlCurr="+escape(urlPageCurr);sending+="&motcleLien="+escape(motcleLien);sending+="&msgEnvoiOK="+escape(msgEnvoiOK);sending+="&msgEnvoiKO="+escape(msgEnvoiKO);xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=xhr_local.responseText;var divReponse=$('div_messageEnvoiMail');divReponse.innerHTML=unescape(reponse);divReponse.addClassName("messageAffiche")}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}}
function envoiMailContactPropByAjaxByForm(){var adr="/lib_2/ajax/envoiMail.php";var typeMail="CONTACTPROP";var prenomExpediteur=$('inpt_formPropmailNom').value;var email_expediteur=$('inpt_formPropmailFrom').value;var telExpediteur=$('inpt_formPropmailTel').value;var sujet_mail=$('emailObjet').value;var date_deb=$('inpt_formPropmailDate').value;var duree_sej=$('inpt_formPropmailDuree').value;var nb_participant=$('inpt_formPropmailPers').value;var message_mail=$('textarea_formPropMessage').value;var destinataire=$('destinataire').value;var infoProd=$('div_infosSuppStructure').innerHTML;var msgEnvoiOK=$('div_messageEnvoiOK').innerHTML;var msgEnvoiKO=$('div_messageEnvoiKO').innerHTML;if(email_expediteur.length>0){var xhr_local=creeObjHttpRequest();var sending="&typeMail="+typeMail;sending+="&prenomExpediteur="+escape(prenomExpediteur);sending+="&expediteur="+escape(email_expediteur);sending+="&sujet="+escape(sujet_mail);sending+="&dateDeb="+escape(date_deb);sending+="&dureeSej="+escape(duree_sej);sending+="&telExpediteur="+escape(telExpediteur);sending+="&nbParticipant="+escape(nb_participant);sending+="&destinataire="+escape(destinataire);if($('inpt_formSendItToMe').checked)sending+="&copie="+escape(email_expediteur);sending+="&messageMail="+escape(message_mail);sending+="&infoProd="+escape(infoProd);sending+="&msgEnvoiOK="+escape(msgEnvoiOK);sending+="&msgEnvoiKO="+escape(msgEnvoiKO);xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=xhr_local.responseText;var divReponse=$('div_messageEnvoiMail');divReponse.innerHTML=unescape(reponse);divReponse.addClassName("messageAffiche");}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);var divValid=$("div_submitForm");if(divValid)divValid.style.display="none";}}
function envoiMailByAjax(dest,exp,cc,sujet,body,nomIdRetourMsg,msgEnvoiOK,msgEnvoiKO,sessid){var adr="/lib/ajax/envoiMail.php";var xhr_local=creeObjHttpRequest();var sending="";if(dest)sending+="&destinataire="+escape(dest);if(cc)sending+="&copie="+escape(cc);if(exp)sending+="&expediteur="+escape(exp);if(sujet)sending+="&sujet="+escape(sujet);if(body)sending+="&message="+escape(body);if(msgEnvoiOK)sending+="&msgEnvoiOK="+escape(msgEnvoiOK);if(msgEnvoiKO)sending+="&msgEnvoiKO="+escape(msgEnvoiKO);if(sessid)sending+=sessid;var html="<div id=divMsgEnvoiRetour><img src='/config_v3/imgs_defaut/roue_grise.gif' /></div>";var divMsg=document.getElementById(nomIdRetourMsg);if(divMsg)divMsg.innerHTML=html;xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=xhr_local.responseText;var divReponse=document.getElementById("divMsgEnvoiRetour");divReponse.innerHTML=unescape(reponse);}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function setCookie(name,value,expires,path,domain,secure){document.cookie=name+'='+escape(value)+
((expires)?'; expires='+expires.toGMTString():'')+
((path)?'; path='+path:'')+((domain)?'; domain='+domain:'')+((secure)?'; secure':'');}
function getCookie(name){if(document.cookie.length>0){var deb=document.cookie.indexOf(name+'=');if(deb!=-1){deb=deb+name.length+1;var fin=document.cookie.indexOf(';',deb);if(fin==-1)fin=document.cookie.length;return unescape(document.cookie.substring(deb,fin));}}
return'';}
function getQueryString(){var lDoc=String(document.location);var n1=lDoc.indexOf("?");if(n1<=0)return"";var n2=lDoc.indexOf("#");if(n2<=0)n2=lDoc.length;var qs=lDoc.substring(n1+1,n2);return qs;}
function getAncreInQuery(){var lDoc=String(document.location);var n2=lDoc.indexOf("#")+1;var ancre=lDoc.substring(n2);return ancre;}
function getQueryStringVal(lQuery){var lDoc=String(document.location);var lSignet="";var n1=lDoc.indexOf("?");if(n1>0){var n2=lDoc.indexOf("?"+lQuery+"=",n1);if(n2<n1)
n2=lDoc.indexOf("&"+lQuery+"=",n1);if(n2>=n1){n2=n2+("?"+lQuery+"=").length;var n3=lDoc.indexOf("&",n2+1);if(n3>n2)
lSignet=lDoc.substring(n2,n3);else
lSignet=lDoc.substring(n2);}}
return lSignet;}
function getTabValInQueryString(){var loc=String(document.location);var n1=loc.indexOf("?");var tabOut=new Array();if(n1<0)return tabOut;var qs=loc.substring(n1+1);var vars=qs.split("&");for(var i=0;i<vars.length;i++){tabOut.push(vars[i].split("="));}
return tabOut;}
function getQueryStringByForm(form){var sending="";if(form){var elts=form.elements;for(var i=0;i<elts.length;i++){var elt=elts[i];var param=new String(elt.name).toLowerCase();if(param.length>0&&elt&&elt.value&&elt.value.length>0){switch(elt.type){case"radio":case"checkbox":if(elt.checked)sending+="&"+param+"="+escape(elt.value);break;default:case"select":sending+="&"+param+"="+escape(elt.value);break;}}}}
return sending;}
function getQueryStringByClassName(classe){var sending="";if(classe){$$('.'+classe).each(function(obj){if(obj.tagName=="SELECT")sending+="&"+obj.getAttribute("cgi")+"="+obj.value;else sending+="&"+obj.getAttribute("cgi")+"="+obj.getAttribute("valeur");});}
return sending;}
function desactiveForm(form){var suff=form.id;if(!suff)suff=form.name;affMsgAttenteParDessusInDiv(form,suff);if(form){var objForm=$(form);var elts=objForm.elements;for(var i=0;i<elts.length;i++)elts[i].disabled=true;}}
function reactiveForm(form){var suff=form.id;if(!suff)suff=form.name;effaceMsgAttenteParDessus(suff);if(form){var objForm=$(form);var elts=objForm.elements;for(var i=0;i<elts.length;i++)elts[i].disabled=false;}}
function scrollToAncre(nomAncre){self.location.hash="#"+nomAncre;}
function bloqueTouche(e){var DisableCtrlKeys=Array(67,86);var ie=window.event;if(ie){e=window.event;}
if(e.ctrlKey){for(i=0;i<DisableCtrlKeys.length;i++){if(e.keyCode==DisableCtrlKeys[i]){if((ie&&e.srcElement.id=='eMailConfirm')||(e.target&&e.target.id=='eMailConfirm')){if(ie){e.keyCode=0;e.returnValue=false;}
return false;}}}}}
document.onkeydown=bloqueTouche;function getValueById(id){return document.getElementById(id).value;}
function setHTMLById(id,html){if(id){var obj=document.getElementById(id);if(obj)obj.innerHTML=html;else var stop=1;}}
function controleSaisiePaiementCptCli(form,msgPasNumeroCB,msgPasMoisCB,msgPasAnneeCB,msgPasCryptoCB,msgCarteNonValide){var aujourdhui=new Date();if((isNaN(form.numero_cb.value))||(form.numero_cb.value=='')){alertAMalibu(msgPasNumeroCB);return false;}
if((isNaN(form.mois_cb.value))||(form.mois_cb.value<1)||(form.mois_cb.value>12)||((form.mois_cb.value<(aujourdhui.getMonth()+1))&&(form.annee_cb.value==aujourdhui.getFullYear()))){alertAMalibu(msgPasMoisCB);return false;}
if((isNaN(form.annee_cb.value))||(form.annee_cb.value<aujourdhui.getFullYear())||(form.annee_cb.value>2020)){alertAMalibu(msgPasAnneeCB);return false;}
if((isNaN(form.crypto_cb.value))||(form.crypto_cb.value=='')||(form.crypto_cb.value.length!=3)){alertAMalibu(msgPasCryptoCB);return false;}
verif=0;numcb=form.numero_cb.value;for(i=0;i<numcb.length;i=i+2)
{nomb=numcb.substring(i,i+1)*2;if(nomb>9)
{nomb=nomb-9;}
verif=verif+nomb;}
for(i=1;i<(numcb.length+1);i=i+2)
{nomb=eval(numcb.substring(i,i+1));verif=verif+nomb;}
result=verif%10;if(result!=0)
{alertAMalibu(msgCarteNonValide);return false;}
form.submit();return true;}
function jslog(txt){var nomDivLog="div_itea_log_javascript";var objLog=$(nomDivLog);if(!objLog){objLog=getNewDivToBody(nomDivLog,"logItea");objLog.style.position="fixed";objLog.style.overflow="auto";objLog.style.font="10px arial #000000";objLog.style.zIndex="100000";objLog.style.left="10px";objLog.style.top="10px";objLog.style.width="350px";objLog.style.height="180px";objLog.style.border="2px #000000 solid";objLog.style.backgroundColor="#FFFFFF";new Draggable($(objLog));}
var content=objLog.innerHTML;content+="> "+txt+"<br>";objLog.innerHTML=content;}
function setClassForCurr(obj,classname){$$("."+classname).each(function(elem){elem.removeClassName(classname);});$(obj).addClassName(classname);}
function upload_addFileToList(objInptFile,ulLstFile){var e=new Element('li',{'class':'liFileAUpload'});var elemNomfile=new Element('span',{'class':'spanUploadListNomFile'}).update(objInptFile.value.split("/").pop());var elemForSuppr=new Element('span',{'class':'spanUploadListSuppr'}).update("<img src=/config_v3/imgs_defaut/prop/deconnecter.gif width=10 height=10>");e.insert(elemNomfile,{postion:'bottom'});e.insert(elemForSuppr,{postion:'bottom'});$(ulLstFile).insert(e,{postion:'bottom'});elemForSuppr.observe("click",function(evt){objInptFile.value="";e.remove();});var newInpt=$(objInptFile).cloneNode(true);newInpt.name="inptUploadFile_"+getUniqueId();newInpt.style.display="none";setClassForCurr(newInpt,"inptUploadFile");if(navigator.userAgent.indexOf('Firefox')>-1)objInptFile.value="";$("divLst_inptsUpload").insert(newInpt);}
function uploadGo(objForm){$(objForm).submit();$$('li.liFileAUpload').each(function(obj){obj.remove();});$$('input.inptUploadFile').each(function(obj){obj.remove();});}
function uploadChoixFile(objForm){var objinptId=$(objForm).select('.inptFileUpload').last().id;document.getElementById(objinptId).select();}
function ajoutMessageIE6(div){if(div){div.style.display='none';div.insert("<div id='avertissementTitre'>CONSEIL VISITEUR&nbsp;</div>\n");var div_croix_avertissement=new Element("div",{"id":"div_croix_avertissement"});var a_croix=new Element("a",{"href":"#"});Event.observe(a_croix,'click',function(){new Effect.BlindUp('div_avertissementIE6',1);});var img=new Element("img",{"src":"/config_v3/imgs_defaut/ie6/close.png","class":"img_navigateur"});a_croix.insert(img);div_croix_avertissement.insert(a_croix);div.insert(div_croix_avertissement);div.insert("<div id='avertissementText'>vous utilisez une version obselète d’Internet Explorer. Au delà des risques de sécurité que votre ordinateur encourt, nous vous informons que notre site Internet n’est plus optimisé pour cette version. Nous vous invitons à mettre à jour au plus vite votre navigateur ou à utiliser ceux préconisées :</div>\n");var div_logoNavig=new Element("div",{"id":"logoNavigateur"});var a_chrome=new Element("a",{"href":"http://www.google.fr/chrome","target":"_blank"});var img_chrome=new Element("img",{"src":"/config_v3/imgs_defaut/ie6/chrome.jpg","class":"img_navigateur"});a_chrome.insert(img_chrome);div_logoNavig.insert(a_chrome);div_logoNavig.insert("&nbsp;");var a_firefox=new Element("a",{"href":"http://www.mozilla-europe.org/fr/firefox/","target":"_blank"});var img_firefox=new Element("img",{"src":"/config_v3/imgs_defaut/ie6/ff.jpg","class":"img_navigateur"});a_firefox.insert(img_firefox);div_logoNavig.insert(a_firefox);div_logoNavig.insert("&nbsp;");var a_ie=new Element("a",{"href":"http://www.microsoft.com/france/windows/ie","target":"_blank"});var img_ie=new Element("img",{"src":"/config_v3/imgs_defaut/ie6/ie.jpg","class":"img_navigateur"});a_ie.insert(img_ie);div_logoNavig.insert(a_ie);div.insert(div_logoNavig);}}
function verifNavigateur(moduleProp){if($('div_avertissementIE6')){if(getVersionIE()<7){ajoutMessageIE6($('div_avertissementIE6'));new Effect.BlindDown('div_avertissementIE6',1);}}}
function masquerAvertissement(){new Effect.BlindUp('div_avertissementIE6',1);}
function ouvrirFermerDiv(nomDiv){if($(nomDiv).showing==true){Effect.BlindUp(nomDiv);$(nomDiv).showing=false;}
else{Effect.BlindDown(nomDiv);$(nomDiv).showing=true;}}
function afficheBulleAvecDiv(evt,txt,largMax,suffixe){var bulle=document.getElementById("divInfoBulleAvecDiv");if(!bulle)bulle=getNewDivToBody("divInfoBulleAvecDiv","divInfoBulleAvecDiv");bulle.style.position="absolute";bulle.style.color="#000000";bulle.style.zIndex="10000001";var txt2;txt2="<div class='div_bulle_haut' id='div_bulle_haut_"+suffixe+"'></div>";txt2+="<div class='div_bulle_gauche' id='div_bulle_gauche_"+suffixe+"'></div>";txt2+="<div class='div_bulle_content' id='div_bulle_content_"+suffixe+"'>";txt2+=txt;txt2+="</div>";txt2+="<div class='div_bulle_droite' id='div_bulle_droite_"+suffixe+"'></div>";txt2+="<div class='div_bulle_bas' id='div_bulle_bas_"+suffixe+"'></div>";bulle.innerHTML=unescape(txt2);bulle.style.visibility="visible";setPositionObjBySouris(evt,bulle,15,25);}
function effaceBulleAvecDiv(evt){var bulle=document.getElementById("divInfoBulleAvecDiv");if(bulle)bulle.style.visibility="hidden";}
function getParamSite(nomParam){switch(nomParam){case"mode_recherche_carte":if($('divParametre_ModeRechercheCarte')){return $('divParametre_ModeRechercheCarte').innerHTML;}
break;case"mode_ouverture_resa":if($('divParametre_ModeAffichageResa')){return $('divParametre_ModeAffichageResa').innerHTML;}
break;}}
function sendThisContentToFriend(){var cmd="envoi2ami";var w=620;var h=500;var titreDiv="Envoyer à un ami";var objet="MSG_FORMAIL_OBJET_MAIL_ENVOI_AMI_CONTENT";var url=document.location.href;var lien="MSG_MESSAGE_ENVOI_LIEN_CONTENT";var message="MSG_CORP_MAIL_ENVOIAMI_CONTENT";sendThisToFriend(cmd,w,h,titreDiv,objet,url,lien,message);}
function sendThisToFriend(cmd,w,h,titreDiv,objet,url,lien,message){if(getVersionIE()<7)return false;if(!w||!h){if(getVersionIE()<9){w=parseInt(document.documentElement.clientWidth)*0.9;h=parseInt(document.documentElement.clientHeight)*0.9;}else{w=parseInt(window.innerWidth)*0.9;h=parseInt(window.innerHeight)*0.9;}
if(!w)w=800;if(!h)h=600;}
var adr="/lib_2/ajax/contenuFenetre.php";var xhr_local=creeObjHttpRequest();var html_init="<div id='div_sendMailToFriend'><img src=/config_v3/imgs_defaut/loading/roue16x16.gif /><br /></div>";afficheDivAvecTransparence(html_init,w,h,null,titreDiv);var sending=getInfoSession()+"&element="+cmd+"&motClesObjetMail="+escape(objet)+"&URL="+url+"&motClesLien="+escape(lien)+"&motClesMessage="+escape(message);xhr_local.onreadystatechange=function(){if(xhr_local&&xhr_local.readyState==4){html=xhr_local.responseText;if($('div_sendMailToFriend'))$('div_sendMailToFriend').innerHTML=html;}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function sendThisToProp(ident,w,h,titreDiv,mailALaCentrale){if(!mailALaCentrale)mailALaCentrale="N"
if(getVersionIE()<7)return false;trackMe(ident,"FORM_MAIL_PROP");if(!w||!h){if(getVersionIE()<9){w=parseInt(document.documentElement.clientWidth)*0.9;h=parseInt(document.documentElement.clientHeight)*0.9;}else{w=parseInt(window.innerWidth)*0.9;h=parseInt(window.innerHeight)*0.9;}
if(!w)w=800;if(!h)h=600;}
var adr="/lib_2/ajax/contenuFenetre.php";var sending="&element=xhtmlEnvoiProp&ident="+ident+"&mailALaCentrale="+mailALaCentrale;var html_init="<div id='div_sendMailToProp'><img src=/config_v3/imgs_defaut/loading/roue16x16.gif /><br /></div>";afficheDivAvecTransparence(html_init,w,h,null,titreDiv);var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local&&xhr_local.readyState==4){html=xhr_local.responseText;if($('div_sendMailToProp'))$('div_sendMailToProp').innerHTML=html;}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function verifEtEnvoiMailAmi(){if($('formMailToFriend')){var form=$('formMailToFriend');checkForm(form,envoiMailAmiByAjaxByForm);}}
function verifEtEnvoiMailContactProp(){if($('form_envoiMailProp')){var form=$('form_envoiMailProp');checkForm(form,envoiMailContactPropByAjaxByForm);}}
function initAllCalendrierItea(){$$("div.calendrierITEANbMois").each(function(objCal){objCal.hide();var btPrec=objCal.select("span.calendrierITEA_navig_previous").first();var btSuiv=objCal.select("span.calendrierITEA_navig_next").first();var nbMois=objCal.getAttribute("nbMois");var div1mois=objCal.select("div.calendrierITEA1Mois").first();var objUl=objCal.select("ul.calendrierITEA_list").first();if(objUl){objUl.style.position="absolute";objUl.style.width="50000px";objCal.style.overflow="hidden";setScrollHorizontalOnDiv(objCal,objUl,{"nextButton":btSuiv,"prevButton":btPrec,"nbLiDecal":nbMois});}
objCal.show();});}
function setScrollHorizontalOnDiv(idDiv,idUl,params){if(!$(params.nextButton)||!$(params.prevButton)){return false;}
var btSuiv=$(params.nextButton);var btPrec=$(params.prevButton);var decal;if(!params.noResizeToLi){if($(idDiv)&&$(idUl)&&$(idUl).firstChild){$(idDiv).style.width=$(idUl).firstChild.offsetWidth+'px';$(idUl).style.padding='0px';}}
if(btSuiv){btSuiv.onclick=function(evt){if(params.decalage)decal=params.decalage;else if(params.nbLiDecal){var unLi=idUl.childNodes[1].offsetLeft;decal=unLi*params.nbLiDecal;}else decal=$(idDiv).getWidth();var posXLastChild=$(idUl).childElements().last().positionedOffset(idUl).left;var posX0=$(idUl).positionedOffset(idDiv).left;var posX1=posXLastChild+$(idUl).childElements().last().getWidth()+posX0;var posFinal=posXLastChild+$(idUl).childElements().last().getWidth();if(posX1-decal<decal){decal=posX1-decal;}
if(btPrec)btPrec.style.visibility="visible";if(params.scrollSansEffet){var position=$(idUl).positionedOffset(idDiv).left;$(idUl).style.left=(position+(decal*-1))+"px";if(position*-1==posFinal)btSuiv.style.visibility="hidden";if($(params.ulJumelle))$(params.ulJumelle).style.left=$(params.ulJumelle).positionedOffset(idDiv).left+(decal*-1);}else{new Effect.Move(idUl,{x:decal*-1,mode:'relative'})
if($(params.ulJumelle))new Effect.Move(params.ulJumelle,{x:decal*-1,mode:'relative'})}}}
if(btPrec){btPrec.onclick=function(evt){if(params.decalage)decal=params.decalage;else if(params.objDecalage){decal=params.objDecalage.getWidth();if(params.multipDecal)decal*=params.multipDecal;}
else decal=$(idDiv).getWidth();var posX=$(idUl).positionedOffset(idDiv).left;if(posX+decal>0){decal=posX*-1;}
if(btSuiv)btSuiv.style.visibility="visible";if(params.scrollSansEffet){var position=$(idUl).positionedOffset(idDiv).left;$(idUl).style.left=(position+decal)+"px";if((position+decal)==0)btPrec.style.visibility="hidden";if($(params.ulJumelle))$(params.ulJumelle).style.left=$(params.ulJumelle).positionedOffset(idDiv).left+decal;}else{new Effect.Move(idUl,{x:decal,mode:'relative'})
if($(params.ulJumelle))new Effect.Move(params.ulJumelle,{x:decal,mode:'relative'})}}}
return true;}
function setScrollVerticalOnDiv(idDiv,idUl,params){var btSuiv=$(params.nextButton);var btPrec=$(params.prevButton);var decal;if(!params.noResizeToLi){if($(idDiv)&&$(idUl)&&$(idUl).firstChild){var tailleMax=normaliseTaille(idDiv,idUl+" li","fieldset",{"height":true,"width":true,"conteneur":"li"});if(getVersionIE()<9){var hauteurMax=parseInt(tailleMax['h'])+10;var largeurMax=parseInt(tailleMax['w'])+20;}else{var largeurMax=parseInt(tailleMax['w'])+15;var hauteurMax=parseInt(tailleMax['h'])+10;}
if(!params.nbLi){$(idDiv).style.width=largeurMax*2+'px';$(idDiv).style.height=hauteurMax*3+'px';$(idUl).style.width=(largeurMax-5)*2+'px';}else{if(parseInt(params.nbLi)<=2){$(idDiv).style.height=hauteurMax+'px';if(parseInt(params.nbLi)<=1){$(idDiv).style.width=largeurMax+'px';$(idUl).style.width=largeurMax-5+'px';}
else{$(idDiv).style.width=largeurMax*2+'px';$(idUl).style.width=(largeurMax-5)*2+'px';}}else if(parseInt(params.nbLi)>2&&(parseInt(params.nbLi)<7)){$(idDiv).style.height=hauteurMax*(Math.ceil(params.nbLi/2))+'px';$(idDiv).style.width=largeurMax*2+'px'
$(idUl).style.width=(largeurMax-5)*2+'px';}else{$(idDiv).style.width=largeurMax*2+'px'
$(idDiv).style.height=hauteurMax*3+'px';$(idUl).style.width=(largeurMax-5)*2+'px'}}
$(idUl).style.padding='0px';}}
if(btSuiv){btSuiv.onclick=function(evt){if(params.decalage)decal=params.decalage;else if(params.nbLiDecal){var unLi=$(idUl).childNodes[1].offsetHeight;decal=unLi*params.nbLiDecal;}else if(params.listeBulle){if($(idUl).positionedOffset(idDiv).top>0){if(getVersionIE()<9)decal=hauteurMax+25;else decal=hauteurMax+20;}
else{decal=hauteurMax+2;}}else decal=$(idDiv).getHeight();var posYLastChild=$(idUl).childElements().last().positionedOffset(idUl).top;var posY0=$(idUl).positionedOffset(idDiv).top;var posY1=posYLastChild+$(idUl).childElements().last().getHeight()+posY0;if(posY1-decal<decal){decal=posY1-decal;}
if(params.scrollSansEffet){$(idUl).style.top=($(idUl).positionedOffset(idDiv).top+(decal*-1))+"px";if($(params.ulJumelle))$(params.ulJumelle).style.top=$(params.ulJumelle).positionedOffset(idDiv).top+(decal*-1);}else{new Effect.Move(idUl,{y:decal*-1,mode:'relative'})
if($(params.ulJumelle))new Effect.Move(params.ulJumelle,{y:decal*-1,mode:'relative'})}}}
if(btPrec){btPrec.onclick=function(evt){if(params.decalage)decal=params.decalage;else if(params.objDecalage){decal=params.objDecalage.getHeight();if(params.multipDecal)decal*=params.multipDecal;}else if(params.listeBulle){if($(idUl).positionedOffset(idDiv).top>0){if(getVersionIE()<9)decal=hauteurMax+20;else decal=hauteurMax+20;}
else decal=hauteurMax+2;}
else decal=$(idDiv).getHeight();var posY=$(idUl).positionedOffset(idDiv).top;if(posY+decal>0){decal=posY*-1;}
if(params.scrollSansEffet){$(idUl).style.top=($(idUl).positionedOffset(idDiv).top+decal)+"px";if($(params.ulJumelle))$(params.ulJumelle).style.top=$(params.ulJumelle).positionedOffset(idDiv).top+decal;}else{new Effect.Move(idUl,{y:decal,mode:'relative'})
if($(params.ulJumelle))new Effect.Move(params.ulJumelle,{y:decal,mode:'relative'})}}}
return true;}
function setScrollHorizontalOnLstGenerePage(idDiv,idUl,params){if(!$(idDiv)||!$(idUl)||!$(params.idDivPastePage))return false;var eltUl=new Element("ul",{'class':'ulScrollPage'});var numPage=1;$(idUl).childElements().each(function(eltPage){var eltLi=new Element("li",{'class':'liScrollPage'})
if(numPage==1)eltLi.addClassName("liScrollPage_select");eltLi.numPage=numPage;eltLi.update(numPage++);eltLi.observe("click",function(evt){$$("li.liScrollPage_select").each(function(obj){obj.removeClassName("liScrollPage_select");});this.addClassName("liScrollPage_select");var liAAfficher=$(idUl).childElements().toArray()[(this.numPage-1)];var decalLi=liAAfficher.positionedOffset(idDiv).left;var decalCurr=$(idUl).positionedOffset(idDiv).left;var decal=(decalLi+decalCurr)*-1;new Effect.Move(idUl,{x:decal,mode:'relative'})});eltUl.appendChild(eltLi);});switch(params.position){case"bottom":default:$(params.idDivPastePage).appendChild(eltUl);break;case"top":$(params.idDivPastePage).insertBefore(eltUl,$(params.idDivPastePage).childElements().first());break;}
return true;}
function normaliseTaille(idDiv,idConteneur,elementChild,params){var maxHeight=0;var maxWidth=0;var maxTaille=new Array();$$("#"+idConteneur+" "+elementChild).each(function(obj){if(getVersionIE()<9){if(obj.clientHeight>=maxHeight)maxHeight=obj.clientHeight;if(obj.clientWidth>=maxWidth)maxWidth=obj.clientWidth;}else{if(obj.offsetHeight>=maxHeight)maxHeight=obj.offsetHeight;if(obj.offsetWidth>=maxWidth)maxWidth=obj.offsetWidth;}});if(params.conteneur){$$("#"+idConteneur).each(function(obj1){if(params.height){if(getVersionIE()<9)obj1.style.height=parseInt(maxHeight)+"px";else obj1.style.height=parseInt(maxHeight)+10+"px";}
if(params.width){if(getVersionIE()<9)obj1.style.width=parseInt(maxWidth)+10+"px";else obj1.style.width=parseInt(maxWidth)+10+"px";}});}
$$("#"+idConteneur+" "+elementChild).each(function(obj){if(params.height){if(getVersionIE()<9)obj.style.height=parseInt(maxHeight)-10+"px";else obj.style.height=parseInt(maxHeight)+"px";}
if(params.width){if(getVersionIE()<9)obj.style.width=parseInt(maxWidth)-10+"px";else obj.style.width=parseInt(maxWidth)+"px";}});maxTaille['h']=maxHeight;maxTaille['w']=maxWidth;return maxTaille;}
function setActionSurDiaporama(){if($$('.div_mediaDiapoPage')){window.compteurImgInDiapoMedia=new Array();if(getVersionIE()<9){document.tidIntervalDiap=window.setInterval(afficheNextImgInDiapo,5000);}else{document.tidIntervalDiap=setInterval("afficheNextImgInDiapo()",5000);}}}
function afficheNextImgInDiapo(){var cpt=0;$$('.div_mediaDiapoPage').each(function(elt){var divImgAAfficher=$(elt.childNodes[0]);var listeMediaDispoInDiapo=$(elt.childNodes[2]).children;if(window.compteurImgInDiapoMedia[elt.id]==undefined){if($(elt.childNodes[2]).children.length>2)window.compteurImgInDiapoMedia[elt.id]=1;else window.compteurImgInDiapoMedia[elt.id]=0;}
divImgAAfficher.childNodes[0].style.position="absolute";divImgAAfficher.childNodes[1].style.position="absolute";if($(divImgAAfficher.childNodes[0]).style.display=="none"){$(divImgAAfficher.childNodes[0]).appear({duration:1.5,from:0.0,to:1.0});$(divImgAAfficher.childNodes[1]).fade({duration:1.5,from:1.0,to:0.0});}
if($(divImgAAfficher.childNodes[1]).style.display=="none"){$(divImgAAfficher.childNodes[1]).appear({duration:1.5,from:0.0,to:1.0});$(divImgAAfficher.childNodes[0]).fade({duration:1.5,from:1.0,to:0.0});}
if($(divImgAAfficher.childNodes[0]).style.display=="none"){$(divImgAAfficher.childNodes[0]).src=$(listeMediaDispoInDiapo[window.compteurImgInDiapoMedia[elt.id]]).readAttribute("source");}else $(divImgAAfficher.childNodes[1]).src=$(listeMediaDispoInDiapo[window.compteurImgInDiapoMedia[elt.id]]).readAttribute("source");window.compteurImgInDiapoMedia[elt.id]+=1;if(window.compteurImgInDiapoMedia[elt.id]>=$(elt.childNodes[2]).children.length){window.compteurImgInDiapoMedia[elt.id]=0;}});}
function blindUpDown(idDiv){var div=$(idDiv);if(!div)return;if(div.showing!=true){div.showing=true;Effect.BlindDown($(div),{duration:0.5});}
else{div.showing=false;Effect.BlindUp($(div),{duration:0.5});}}
function blindUpDownByClass(classe){var elems=$$(classe);if(!elems)return;elems.each(function(elem){blindUpDown(elem.identify());});}function chargeMotCleDansDiv(idDiv,motCle){if(!window.jsonMotcle)window.jsonMotcle=[];for(var i=0;i<window.jsonMotcle.length;i++){if(window.jsonMotcle[i].motcle==motCle){if($(idDiv))$(idDiv).innerHTML=window.jsonMotcle[i].content;return;}}
var adr="/lib_2/ajax/contenuFenetre.php";var sending=getInfoSession()+"&element=motCle&typeInfo=motcle&val="+motCle;appelAjaxToFunc(adr,sending,function(reponse){window.jsonMotcle.push({'motcle':motCle,'content':reponse});window.jsonMotcle.uniq();if($(idDiv))$(idDiv).innerHTML=reponse;});}
function chargeInformationKML(urlInformation){var xmlhttp=creeObjHttpRequest();xmlhttp.open("GET",urlInformation,false);xmlhttp.send();xmlDoc=xmlhttp.responseXML;var url="";var id="";var tabInfos=new Array();var length=xmlDoc.getElementsByTagName("KML").length;for(var i=0;i<length;i++){id=xmlDoc.getElementsByTagName("KML")[i].getAttribute("id");url=xmlDoc.getElementsByTagName("KML")[i].childNodes[0].nodeValue;tabInfos[i]=new Array();tabInfos[i]["url"]=url;tabInfos[i]["id"]=id;}
return tabInfos;}
function getInformationKMLByRep(foncQdfini){var url="/lib_2/ajax/google_map.php";var sending="CMD=infosKml";var xhr_local=creeObjHttpRequest();xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=eval('('+xhr_local.responseText+')');if(foncQdfini)foncQdfini(reponse);}}
xhr_local.open("POST",url,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function iteaGMAP_initForFiche(icon,reload){if(!icon)icon=null;if(!reload)reload=false;$$(".div_itea_GMAP").each(function(obj){var lat=obj.getAttribute("latitude");var lng=obj.getAttribute("longitude");if(reload){var zoom=window.gmap.getZoom();var centreCarte=window.gmap.getCentre();var latCarte=centreCarte.lat();var lngCarte=centreCarte.lng();var mapType=window.gmap.getMapType();}else{var zoom=8;var latCarte=lat;var lngCarte=lng;var mapType=google.maps.MapTypeId.ROADMAP;}
window.gmap=new ObjGoogleMap(latCarte,lngCarte,zoom,null,null,null,mapType,obj.id,false);var centre=new google.maps.LatLng(lat,lng);window.gmap.addMarker(centre,icon,null,null,null);});}
function afficheItineraireInDiv(){var reponse="<div id='divGmapItinerairePlan'></div><div id='divGmapItineraireText'></div>";afficheDivAvecTransparence(reponse,610,500,"");$('divGmapItinerairePlan').style.width="300px";$('divGmapItinerairePlan').style.height="500px";$('divGmapItinerairePlan').style.cssFloat="left";var imgBtFermer=new Element("img",{"src":"/config_v3/imgs_defaut/btFermerPhoto.png","class":"img_navigateur"});imgBtFermer.style.top="-18px";imgBtFermer.style.right="-18px";imgBtFermer.style.position="absolute";imgBtFermer.style.cursor="pointer";imgBtFermer.onclick=function(){effaceDivAvecTransparence();}
$('divGraph_fenetre').insert(imgBtFermer);$('divGraph_fenetre').style.border="8px solid #000000";$('divGraph_fenetre').style.padding="8px";var parametre={addr:$('inpt_adresseGmap').value,ville:$('inpt_villeGmap').value,codePostal:$('inpt_codePostaleGmap').value};window.iteaGMAP_initItineraire(parametre);}
function iteaGMAP_initItineraire(param){var lat=window.gmap.getCentre().lat();var lng=window.gmap.getCentre().lng();window.gmap2=new ObjGoogleMap(lat,lng,8,null,null,null,google.maps.MapTypeId.ROADMAP,"divGmapItinerairePlan",false,google.maps.MapTypeControlStyle.DROPDOWN_MENU);var centre=new google.maps.LatLng(lat,lng);window.gmap2.addMarker(centre,null,null,null,null);window.gmap2.construireItineraire(window.gmap2,param.addr,param.ville,param.codePostal);}
function stopAjaxForCarte(){window.stop();if(window.gmap)window.gmap.reload();}
function getNewDivToBody(ident,classe){var objBody=document.getElementsByTagName("body").item(0);return getNewDivChild(objBody,ident,classe);}
function getNewDivChild(objParent,ident,classe){var newdiv=document.createElement("DIV");newdiv.id=ident;setClassForObj(newdiv,classe);objParent.appendChild(newdiv);return newdiv;}
function getLargeurWindow(){var w;if(getVersionIE()<6)w=(document.documentElement.clientWidth);else{if(getVersionIE()<9){if(document.viewport&&document.viewport.getWidth()>0)w=document.viewport.getWidth();else w=(document.body.offsetWidth);}
else w=(window.innerWidth);}
return parseInt(w);}
function getHauteurWindow(){var h;if(getVersionIE()<6)h=(document.documentElement.clientHeight);else{if(getVersionIE()<9){if(document.viewport&&document.viewport.getHeight()>0)h=document.viewport.getHeight();else h=(document.body.offsetHeight);}
else h=(window.innerHeight);}
if(h<40&&getVersionIE()<9&&getVersionIE()>5)h=(document.documentElement.clientHeight);return parseInt(h);}
function getLargeurReelleImage(objImg){var l;if(getVersionIE()<9){l=objImg.clientWidth;}else l=objImg.naturalWidth;return parseInt(l);}
function getHauteurReelleImage(objImg){var h;if(getVersionIE()<9)h=objImg.clientHeight;else h=objImg.naturalHeight;return parseInt(h);}
function afficheDivAvecTransparence(html,w,h,suffixe,titreDiv){if(!suffixe||suffixe==undefined)suffixe="";var hW=getHauteurWindow();var lW=getLargeurWindow();if(hW<40)hW=40;if(lW<40)lW=40;if(h>hW)h=hW-40;if(w>lW)w=lW-40;var divGene=document.getElementById("divGraph_affFenetre"+suffixe);if(!divGene)divGene=getNewDivToBody("divGraph_affFenetre"+suffixe,"divGraph"+suffixe);if(getVersionIE()<9)divGene.style.position="absolute";else divGene.style.position="fixed";if(getVersionIE()<9){var objBody=document.getElementsByTagName("body").item(0);objBody.style.height="100%";}
divGene.style.zIndex="900000";divGene.style.left="0px";divGene.style.top="0px";divGene.style.width="100%";divGene.style.height="100%";divGene.style.opacity=0.2;divGene.style.backgroundColor="#000000";divGene.style.display="block";divGene.style.filter="alpha(opacity=70)";var divMsg=document.getElementById("divGraph_fenetre"+suffixe);if(!divMsg)divMsg=getNewDivToBody("divGraph_fenetre"+suffixe,"divGraph"+suffixe);if(getVersionIE()<9)divMsg.style.position="absolute";else divMsg.style.position="fixed";divMsg.style.zIndex="1000000";divMsg.style.backgroundColor="#FFFFFF";divMsg.style.width=w+"px";divMsg.style.height=h+"px";divMsg.style.opacity=1;divMsg.style.marginLeft="-"+(w/2)+"px";divMsg.style.marginTop="-"+(h/2)+"px";divMsg.style.left="50%";divMsg.style.top="50%";divMsg.style.display="block";if(getVersionIE()<9){divGene.style.minHeight="1px";var yscroll=document.body.scrollTop;if(!yscroll)yscroll=document.documentElement.scrollTop;divGene.style.top=yscroll+"px";divMsg.style.marginTop=null;divMsg.style.top=(yscroll+50)+"px";function setForScroll(evt){var yscroll=document.body.scrollTop;if(!yscroll)yscroll=document.documentElement.scrollTop;var divGene=document.getElementById("divGraph_affFenetre"+suffixe);var divMsg=document.getElementById("divGraph_fenetre"+suffixe);divGene.style.top=yscroll+"px";divMsg.style.marginTop=null;divMsg.style.top=parseInt(yscroll+50)+"px";}
document.onmousewheel=setForScroll;window.onscroll=setForScroll;}
if(titreDiv)html="<div id='div_btnCloseFrmResa' class='div_headPopin'><p><span class='sp_titrePopin'>"+titreDiv+"</span><a href='#ferme' onClick='effaceDivAvecTransparence();' class='a_fermePopin' title='fermer'><img src='/config_v3/imgs_defaut/v5/fermer-popin.gif' alt='fermer''/></a></p></div>"+html;divMsg.innerHTML=unescape(html);if(window.Effect)new Effect.Opacity($(divGene),{from:0.2,to:0.7});if(getVersionIE()<7){var tabObjSelect=document.getElementsByTagName("SELECT");for(var i=0;i<tabObjSelect.length&&tabObjSelect[i];i++)tabObjSelect[i].style.visibility="hidden";}
Event.observe(document,'keypress',function(event){if(event.keyCode==Event.KEY_ESC){effaceDivAvecTransparence(suffixe);Event.stopObserving(document,'keypress');}});}
function afficheDivAvecTransparenceAbsolue(html,w,h,suffixe,titreDiv){if(!suffixe||suffixe==undefined)suffixe="";var hW=getHauteurWindow();var lW=getLargeurWindow();if(hW<40)hW=40;if(lW<40)lW=40;if(h>hW)h=hW-70;if(w>lW)w=lW-40;var divGene=document.getElementById("divGraph_affFenetre"+suffixe);if(!divGene)divGene=getNewDivToBody("divGraph_affFenetre"+suffixe,"divGraph"+suffixe);divGene.setAttribute("style","");if(getVersionIE()<9)divGene.style.position="absolute";else divGene.style.position="fixed";$("bodyPage").scrollTo();if(getVersionIE()<9){var objBody=document.getElementsByTagName("body").item(0);objBody.style.height="100%";}
divGene.style.zIndex="900000";divGene.style.left="0px";divGene.style.top="0px";divGene.style.width="100%";divGene.style.height="100%";divGene.style.opacity=0.2;divGene.style.backgroundColor="#000000";divGene.style.display="block";divGene.style.filter="alpha(opacity=70)";var divMsg=document.getElementById("divGraph_fenetre"+suffixe);if(!divMsg)divMsg=getNewDivToBody("divGraph_fenetre"+suffixe,"divGraph"+suffixe);divMsg.setAttribute("style","");divMsg.style.position="fixed";divMsg.style.zIndex="1000000";divMsg.style.backgroundColor="#FFFFFF";divMsg.style.width=w+"px";divMsg.style.height=h+"px";divMsg.style.opacity=1;divMsg.style.marginLeft="-"+(w/2)+"px";divMsg.style.left="50%";divMsg.style.top="20px";divMsg.style.display="block";if(getVersionIE()<9){divGene.style.minHeight="1px";var yscroll=document.body.scrollTop;if(!yscroll)yscroll=document.documentElement.scrollTop;divGene.style.top=yscroll+"px";divMsg.style.marginTop=null;function setForScroll(evt){var yscroll=document.body.scrollTop;if(!yscroll)yscroll=document.documentElement.scrollTop;var divGene=document.getElementById("divGraph_affFenetre"+suffixe);divGene.style.top=yscroll+"px";}
document.onmousewheel=setForScroll;window.onscroll=setForScroll;}
if(titreDiv)html="<div id='div_btnCloseFrmResa' class='div_headPopin'><p><span class='sp_titrePopin'>"+titreDiv+"</span><a href='#ferme' onClick='effaceDivAvecTransparence();' class='a_fermePopin' title='fermer'><img src='/config_v3/imgs_defaut/v5/fermer-popin.gif' alt='fermer''/></a></p></div>"+html;divMsg.innerHTML=unescape(html);if(window.Effect)new Effect.Opacity($(divGene),{from:0.2,to:0.7});if(getVersionIE()<7){var tabObjSelect=document.getElementsByTagName("SELECT");for(var i=0;i<tabObjSelect.length&&tabObjSelect[i];i++)tabObjSelect[i].style.visibility="hidden";}
Event.observe(document,'keypress',function(event){if(event.keyCode==Event.KEY_ESC){effaceDivAvecTransparence(suffixe);Event.stopObserving(document,'keypress');}});}
function effaceDivAvecTransparence(suffixe){if(!suffixe||suffixe==undefined)suffixe="";var divGene=document.getElementById("divGraph_affFenetre"+suffixe);var divMsg=document.getElementById("divGraph_fenetre"+suffixe);if(divMsg)divMsg.style.display="none";if(divGene)divGene.style.display="none";if(getVersionIE()<7){var tabObjSelect=document.getElementsByTagName("SELECT");for(var i=0;i<tabObjSelect.length&&tabObjSelect[i];i++)tabObjSelect[i].style.visibility="visible";}}
function effaceDivAvecTransparenceInIFrame(suffixe){if(!suffixe||suffixe==undefined)suffixe="";var divGene=parent.document.getElementById("divGraph_affFenetre"+suffixe);var divMsg=parent.document.getElementById("divGraph_fenetre"+suffixe);if(divMsg)divMsg.style.display="none";if(divGene)divGene.style.display="none";if(getVersionIE()<7){var tabObjSelect=parent.document.getElementsByTagName("SELECT");for(var i=0;i<tabObjSelect.length&&tabObjSelect[i];i++)tabObjSelect[i].style.visibility="visible";}}
function effaceDivAvecTransparenceFondu(){effaceDivAvecTransparence();}
function alertAMalibu(msg,foncQdFini){msg=unescape(msg);var html="<div id='div_msgErr'>";html+="<span id='span_msgErr'>"+msg+"</span>";html+="<span id='span_btnRetour'>OK</span>";html+="</div>";afficheDivAvecTransparence(html,"250","100");document.getElementById("div_msgErr").style.fontFamily="Arial";document.getElementById("div_msgErr").style.fontSize="11px";document.getElementById("div_msgErr").style.margin="10px";document.getElementById("span_msgErr").style.display="block";document.getElementById("span_msgErr").style.paddingBottom="20px";document.getElementById("span_btnRetour").style.display="block";document.getElementById("span_btnRetour").style.textAlign="center";document.getElementById("span_btnRetour").style.fontWeight="bold";document.getElementById("span_btnRetour").style.color="white";document.getElementById("span_btnRetour").style.cursor="pointer";document.getElementById("span_btnRetour").style.margin="auto";document.getElementById("span_btnRetour").style.width="42px";document.getElementById("span_btnRetour").style.lineHeight="21px";document.getElementById("span_btnRetour").style.backgroundImage="url(/config_v3/imgs_defaut/bt_ok.gif)";document.getElementById("span_btnRetour").style.backgroundRepeat="no-repeat";document.getElementById("span_btnRetour").onclick=function(evt){effaceDivAvecTransparence();if(foncQdFini)foncQdFini();}}
function alertAMalibuAvecActionRetour(msg,onclick){msg=unescape(msg);var html="<div id='div_msgErr'>";html+="<span id='span_msgErr'>"+msg+"</span>";html+="<span id='span_btnRetour' onclick='effaceDivAvecTransparence();"+onclick+"'>OK</span>";html+="</div>";afficheDivAvecTransparence(html,"250","100");document.getElementById("div_msgErr").style.fontFamily="Arial";document.getElementById("div_msgErr").style.fontSize="11px";document.getElementById("div_msgErr").style.margin="10px";document.getElementById("span_msgErr").style.display="block";document.getElementById("span_msgErr").style.paddingBottom="20px";document.getElementById("span_btnRetour").style.display="block";document.getElementById("span_btnRetour").style.textAlign="center";document.getElementById("span_btnRetour").style.fontWeight="bold";document.getElementById("span_btnRetour").style.color="white";document.getElementById("span_btnRetour").style.cursor="pointer";document.getElementById("span_btnRetour").style.margin="auto";document.getElementById("span_btnRetour").style.width="42px";document.getElementById("span_btnRetour").style.lineHeight="21px";document.getElementById("span_btnRetour").style.backgroundImage="url(/config_v3/imgs_defaut/bt_ok.gif)";document.getElementById("span_btnRetour").style.backgroundRepeat="no-repeat";}
function alertAMalibuAvecSauvetage(msg,onclick){msg=unescape(msg);var html="<div id='div_msgErr'>";html+="<span id='span_msgErr'>"+msg+"</span>";html+="<div id='div_action_sur_confirAMalibu'>";html+="<span id='span_btnRetour' onclick='"+onclick+"'>OK</span>";html+="<span id='span_btnAnnuler'>Annuler</span>";html+="</div>";html+="</div>";afficheDivAvecTransparence(html,"250","100");document.getElementById("div_msgErr").style.fontFamily="Arial";document.getElementById("div_msgErr").style.fontSize="11px";document.getElementById("div_msgErr").style.margin="10px";document.getElementById("span_msgErr").style.display="block";document.getElementById("span_msgErr").style.paddingBottom="20px";document.getElementById("div_action_sur_confirAMalibu").style.position="relative";document.getElementById("span_btnRetour").style.display="block";document.getElementById("span_btnRetour").style.textAlign="center";document.getElementById("span_btnRetour").style.fontWeight="bold";document.getElementById("span_btnRetour").style.color="white";document.getElementById("span_btnRetour").style.cursor="pointer";document.getElementById("span_btnRetour").style.margin="auto";document.getElementById("span_btnRetour").style.width="42px";document.getElementById("span_btnRetour").style.lineHeight="21px";document.getElementById("span_btnRetour").style.backgroundImage="url(/config_v3/imgs_defaut/bt_ok.gif)";document.getElementById("span_btnRetour").style.backgroundRepeat="no-repeat";document.getElementById("span_btnRetour").style.position="absolute";document.getElementById("span_btnRetour").style.left="60px";document.getElementById("span_btnAnnuler").style.display="block";document.getElementById("span_btnAnnuler").style.textAlign="center";document.getElementById("span_btnAnnuler").style.fontWeight="bold";document.getElementById("span_btnAnnuler").style.color="white";document.getElementById("span_btnAnnuler").style.cursor="pointer";document.getElementById("span_btnAnnuler").style.margin="auto";document.getElementById("span_btnAnnuler").style.width="42px";document.getElementById("span_btnAnnuler").style.lineHeight="21px";document.getElementById("span_btnAnnuler").style.backgroundImage="url(/config_v3/imgs_defaut/bt_ok.gif)";document.getElementById("span_btnAnnuler").style.backgroundRepeat="no-repeat";document.getElementById("span_btnAnnuler").style.position="absolute";document.getElementById("span_btnAnnuler").style.right="60px";document.getElementById("span_btnAnnuler").onclick=function(evt){effaceDivAvecTransparence();}}
function affMsgAttenteInDiv(nomDiv){var elem=document.getElementById(nomDiv);if(elem){elem.innerHTML+="<div id=divChargement><table class='table_transparence' id=tabRechargement width=100%><tr><td align=center id=tdChargement><img id=imgRechargement style='margin:auto' width=16 height=16 src=/config_v3/imgs_defaut/loading/roue16x16.gif /></td></tr></table></div>";var divCharg=document.getElementById("divChargement");divCharg.style.position="relative";divCharg.style.width=elem.offsetWidth+"px";divCharg.style.height=elem.offsetHeight+"px";divCharg.style.top="0px";divCharg.style.left="0px";if(elem.positionedOffset){var pos=elem.positionedOffset();divCharg.style.top=pos.top;divCharg.style.left=pos.left;}
divCharg.style.opacity=0.6;divCharg.style.filter="alpha(opacity=60)";divCharg.style.KhtmlOpacity=0.6;divCharg.style.background="#FFFFFF";}}
function affMsgAttenteParDessusInDiv(nomDiv,suffixe,txt){var elem=$(nomDiv);if(!suffixe)suffixe="";if(!txt)txt="";if(elem){var divCharg=getNewDivChild(elem,"divChargementParDessus"+suffixe,"chargement");divCharg.style.position="absolute";divCharg.style.zIndex=120;divCharg.style.width=elem.offsetWidth+"px";if(elem.offsetHeight>0)divCharg.style.height=elem.offsetHeight+"px";else divCharg.style.height="100%";divCharg.style.top=elem.offsetTop+"px";divCharg.style.left=elem.offsetLeft+"px";if(getVersionIE()<9)divCharg.style.filter="alpha(opacity=60)";else divCharg.style.opacity=0.6;divCharg.style.KhtmlOpacity=0.6;divCharg.style.background="#FFFFFF";if(elem.positionedOffset){var pos=elem.positionedOffset();divCharg.style.top=pos.top;divCharg.style.left=pos.left;}
if(!txt)txt="<img id=imgRechargement style='margin:auto' width=16 height=16 src=/config_v3/imgs_defaut/loading/roue16x16.gif />";divCharg.innerHTML+="<div id=divRechargementParDessus"+suffixe+" ><table class='table_transparence' width='100%' height='100%'><tr valign='middle'><td align='center'><div id='divChargementParDessusMsg'>"+txt+"</div></td></tr></table></div>";return $("divChargementParDessusMsg");}
return null;}
function effaceMsgAttenteParDessus(suffixe){if(!suffixe)suffixe="";var elem=$("divChargementParDessus"+suffixe);if(elem)elem.parentNode.removeChild(elem);}
function affDefileRechercheCommune(nomdiv,ldep){appelAjaxToFunc("lib/listes/communes.php",(ldep)?"dpts="+ldep:"",function(reponse){var json=new String(reponse);var lstCommune=json.evalJSON();var alea=Math.random()*lstCommune.length;setInterval(function(){nomCommune=lstCommune[parseInt(Math.random()*lstCommune.length)];if($("spanRechercheCommuneNom"))$("spanRechercheCommuneNom").update(nomCommune);else $(nomdiv).insert("<div class='rechercheCommune'><span class=spanRechercheCommuneLib>Commune : <span><span class=spanRechercheCommuneNom id=spanRechercheCommuneNom>"+nomCommune+"</span></div>");},Math.random()*150);});}
function getHtmlForFlash(urlFic,idObj){var html='<object align="middle" id="'+idObj+'" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">';html+='<param value="sameDomain" name="allowScriptAccess"/>';html+='<param value="false" name="allowFullScreen"/>';html+='<param value="'+urlFic+'" name="movie"/>';html+='<param value="high" name="quality"/>';html+='<param value="#ffffff" name="bgcolor"/>';html+='<param value="transparent" name="wmode"/>';html+='<embed align="middle" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowfullscreen="false" allowscriptaccess="sameDomain" name="'+idObj+'" bgcolor="#ffffff" quality="high" ';html+=' src="'+urlFic+'"/>';html+=' </object>';return html;}
function getDivCentreeWithHtml(html){var divGene=document.getElementById("divGeneCentreeMsg");if(!divGene){var body=document.getElementsByTagName("body").item(0);var divGene=document.createElement("DIV");divGene.id="divGeneCentreeMsg";setClassForObj(divGene,"divGeneCentreeMsg");body.appendChild(divGene);}
divGene.innerHTML=html;var largPanel=divGene.offsetWidth;var hautPanel=divGene.offsetHeight;var largScreen=window.outerWidth;var hautScreen=window.outerHeight;var marginLarg=((largScreen-largPanel))/2;var marginHaut=((hautScreen-hautPanel))/2;if(marginHaut<0)marginHaut=25;divGene.style.position="absolute";divGene.style.opacity=1;divGene.style.left=marginLarg+"px";divGene.style.top=marginHaut+"px";divGene.style.display="block";divGene.style.visibility="visible";return divGene;}
function effaceDivSurPage(){var divGene=document.getElementById("divSurPage");var divMsg=document.getElementById("divMsgSurPage");if(divGene)divGene.parentNode.removeChild(divGene);if(divMsg)divMsg.parentNode.removeChild(divMsg);}
function getDivSurPageWithHtml(html){var divGenerale=document.getElementById("general");var divGene=document.getElementById("divSurPage");var divPage=document.getElementById("page");if(!divGene){var body=document.getElementsByTagName("body").item(0);var divGene=document.createElement("DIV");divGene.id="divSurPage";setClassForObj(divGene,"divGraph");body.appendChild(divGene);}
divGene.style.zIndex="9001";divGene.style.position="absolute";divGene.style.left=(divGenerale.offsetLeft+divPage.offsetLeft)+"px";divGene.style.top=(divGenerale.offsetTop+divPage.offsetTop)+"px";divGene.style.width=divPage.offsetWidth+"px";divGene.style.height=divPage.offsetHeight+"px";divGene.style.opacity=0.7;divGene.style.filter="alpha(opacity=70)";divGene.style.minHeight="1px";divGene.style.backgroundColor="#FFFFFF";divGene.style.display="block";var divMsg=document.getElementById("divMsgSurPage");if(!divMsg){var body=document.getElementsByTagName("body").item(0);var divMsg=document.createElement("DIV");divMsg.id="divMsgSurPage";setClassForObj(divMsg,"divGraph");body.appendChild(divMsg);}
divMsg.innerHTML=html;w=200;h=100;divMsg.style.zIndex="9002";divMsg.style.position="absolute";divMsg.style.backgroundColor="#FFFFFF";divMsg.style.width=w+"px";divMsg.style.height=h+"px";divMsg.style.opacity=1;divMsg.style.border="1px solid #000000";divMsg.style.marginLeft="-"+(w/2)+"px";divMsg.style.left=((divGenerale.offsetLeft+divPage.offsetLeft)+(divPage.offsetWidth-w)/2)+"px";divMsg.style.top=((divGenerale.offsetTop+divPage.offsetTop)+200)+"px";divMsg.style.display="block";divMsg.style.opacity=0.7;}
function setPositionObjBySouris(evt,obj,decalX,decalY){var xMouse,yMouse,x,y;if(!decalX)decalX=0;if(!decalY)decalY=0;if(navigator.appName!="Microsoft Internet Explorer"){xMouse=evt.pageX+1;yMouse=evt.pageY+1;var ww=window.innerWidth;var wh=window.innerHeight;}else{var de=document.documentElement;var b=document.body;xMouse=evt.clientX+(de.scrollLeft||b.scrollLeft)-(de.clientLeft||0);yMouse=evt.clientY+(de.scrollTop||b.scrollTop)-(de.clientTop||0);var ww=b.clientWidth;var wh=b.clientHeight;}
var yMax=wh-obj.offsetHeight;if(yMouse>yMax)y=yMouse-obj.offsetHeight;else y=yMouse;var xMax=ww-obj.offsetWidth;if(xMouse>xMax)x=xMouse-obj.offsetWidth;else x=xMouse;obj.style.left=(x+decalX)+"px";obj.style.top=(y+decalY)+"px";}
function afficheBulle(evt,txt,largMax){var bulle=document.getElementById("divInfoBulle");if(!bulle)bulle=getNewDivToBody("divInfoBulle","divInfoBulle");bulle.style.backgroundColor="#FFFFFF";bulle.style.border="1px solid #000000";bulle.style.padding="3px";bulle.style.position="absolute";bulle.style.color="#000000";bulle.style.zIndex="10000001";bulle.innerHTML=unescape(txt);bulle.style.visibility="visible";setPositionObjBySouris(evt,bulle,15,25);}
function effaceBulle(evt){var bulle=document.getElementById("divInfoBulle");if(bulle)bulle.style.visibility="hidden";}
function afficheImageOnBulle(evt,path_img,largMax){var txt="<img src="+path_img+" width="+largMax+" />";afficheBulle(evt,txt,largMax);}
function afficheDiaporama(qsForVisu,numPhoto,maxLarg,maxHaut){if(getVersionIE()<7)return false;if(!numPhoto)numPhoto=0;if(getVersionIE()<9){var w=parseInt(document.documentElement.clientWidth)*0.9;var h=parseInt(document.documentElement.clientHeight)*0.9;}else{var w=parseInt(window.innerWidth)*0.9;var h=parseInt(window.innerHeight)*0.9;}
if(!w)w=800;if(!h)h=600;afficheDivAvecTransparence("<div id=divPhotoBtFermer style='position:absolute;right:-10px;top:-10px;cursor:pointer;' onclick=effaceDivAvecTransparence('_visuPhoto');><img src=/config_v3/imgs_defaut/btFermer.png style='width:20px'></div><iframe src='/appPhotoV5/visuPhoto.php?"+qsForVisu+"&idPhoto="+numPhoto+"' scrolling='no' width=100% height=100% frameborder=0></iframe>",w,h,"_visuPhoto");}
function afficheDiaporama1Image(srcImage){var w=parseInt(window.innerWidth)*0.9;var h=parseInt(window.innerHeight)*0.9;if(!w)w=800;if(!h)h=600;afficheDivAvecTransparence("<div id=divPhotoBtFermer style='position:absolute;right:-10px;top:-10px;cursor:pointer;' onclick=effaceDivAvecTransparence();><img src=/config_v3/imgs_defaut/btFermer.png style='width:20px'></div><img style='margin:auto;' src='"+srcImage+"' />",w,h);}
function initAlbumPhoto(qsForVisu){var tabObj=new Array();var photoPrinc=document.getElementById("img_fiche_photoPrincipale");var fenetre=0;var largTotal=0;xFinTotal=0;var maxLarg=0;var maxHaut=0;var nomPhotoRef="img_fiche_photoAlbum1";var nomPhotoRefFngf="img_fiche_photoAlbumFngf1";var legendePhoto=document.getElementById("fiche_legendePhotos");if(!qsForVisu)qsForVisu="";if(!document.getElementById(nomPhotoRef)&&document.getElementById(nomPhotoRefFngf))var fngf=true;else fngf=false;for(var i=1;i<=20;i++){if(fngf)var objPhoto=document.getElementById("img_fiche_photoAlbumFngf"+i);else var objPhoto=document.getElementById("img_fiche_photoAlbum"+i);if(objPhoto){tabObj.push($(objPhoto));if(getLargeurReelleImage(objPhoto)>maxLarg)maxLarg=getLargeurReelleImage(objPhoto);if(getHauteurReelleImage(objPhoto)>maxHaut)maxHaut=getHauteurReelleImage(objPhoto);}}
for(var i=0;i<tabObj.length;i++){new Effect.Opacity(tabObj[i],{from:1,to:0.9});tabObj[i].onmouseover=function(evt){if(photoPrinc)photoPrinc.src2=photoPrinc.src;if(photoPrinc&&this.src)photoPrinc.src=this.src;this.parentNode.parentNode.addClassName("photo_active");if($("fiche_legendePhotos")){$("fiche_legendePhotos").innerHTML2=legendePhoto.innerHTML;$("fiche_legendePhotos").innerHTML=this.getAttribute("txt");}
new Effect.Opacity(this,{from:0.9,to:1});}
tabObj[i].onmouseout=function(evt){new Effect.Opacity(this,{from:1,to:0.9});if(photoPrinc&&photoPrinc.src2)photoPrinc.src=photoPrinc.src2;if(this.parentNode.parentNode.hasClassName("photo_active"))this.parentNode.parentNode.removeClassName("photo_active");if($("fiche_legendePhotos"))$("fiche_legendePhotos").innerHTML=legendePhoto.innerHTML2;}
tabObj[i].num=i;if(($("div_fiche_photoSuppl"))){if(!fngf){tabObj[i].onclick=function(evt){afficheDiaporama(qsForVisu,this.num,maxLarg,maxHaut);}}}
var larg=parseInt(tabObj[i].offsetWidth);if(larg>fenetre)fenetre=larg;largTotal+=larg;if(tabObj[i]&&tabObj[i].offsetLeft){var xFin=(parseInt(tabObj[i].offsetLeft)+larg);if(xFinTotal<xFin)xFinTotal=xFin;}
if(xFinTotal<largTotal)xFinTotal=largTotal;}
var divPrinc=$(document.getElementById("div_fiche_album"));if(!divPrinc)return;var btPrec=$(document.getElementById("spanFiche_album_prev"));var btSuiv=$(document.getElementById("spanFiche_album_next"));var ulPrinc=$(document.getElementById("lst_fiche_photos_suppl"));btSuiv.style.visibility="hidden";btPrec.style.visibility="hidden";if(xFinTotal>parseInt(divPrinc.offsetWidth)){btSuiv.style.visibility="visible";}
ulPrinc.style.position="absolute";var pas=fenetre*2;btSuiv.onmousedown=function(){$(document.getElementById("spanFiche_album_prev")).style.visibility="visible";var decal=pas*-1;var xFinPrinc=parseInt(ulPrinc.offsetLeft)+parseInt(divPrinc.offsetLeft)+xFinTotal;var xFinVisu=parseInt(divPrinc.offsetLeft)+parseInt(divPrinc.offsetWidth);var xFinApresPrinc=xFinPrinc+decal-50;if(xFinApresPrinc<xFinVisu){decal=((xFinPrinc-xFinVisu)*-1);decal=decal-10;this.style.visibility="hidden";}
new Effect.Move(ulPrinc,{x:decal,mode:'relative'});}
btPrec.onmousedown=function(){$(document.getElementById("spanFiche_album_next")).style.visibility="visible";var decal=pas+50;var xDebPrinc=parseInt(ulPrinc.offsetLeft);var xDebApresPrinc=xDebPrinc+decal;if(xDebApresPrinc>0){decal=xDebPrinc*-1;this.style.visibility="hidden";}
new Effect.Move(ulPrinc,{x:decal,mode:'relative'});}}
function affLegendeEtAlbum(idPhoto,txt){$('img_fiche_photoPrincipale').src2=$('img_fiche_photoPrincipale').src;if($(idPhoto).src)$('img_fiche_photoPrincipale').src=$(idPhoto).src;if($('fiche_legendePhotos')){$('fiche_legendePhotos').innerHTML2=$('fiche_legendePhotos').innerHTML;$('fiche_legendePhotos').innerHTML=txt;}}
function effaceLegendeEtAlbum(){if($('img_fiche_photoPrincipale').src2)$('img_fiche_photoPrincipale').src=$('img_fiche_photoPrincipale').src2;if($('fiche_legendePhotos'))$('fiche_legendePhotos').innerHTML=$('fiche_legendePhotos').innerHTML2;}function setCGIForLstLieu(li){if(navigator.appName=='Microsoft Internet Explorer')
var commune=li.getElementsByTagName("span")[0].getAttribute("lieu_reel");else var commune=li.getElementsByTagName("span")[0].getAttribute("lieu_reel");var cgi=li.getElementsByTagName("span")[0].getAttribute("cgi");var val_cgi=li.getElementsByTagName("span")[0].getAttribute("val_cgi");$("inpt_saisieLieu").value=commune;$("inpt_saisieLieu").onfocus=function(evt){this.value='';$("inpt_saisieLieuHidden").value='';}
$("inpt_saisieLieu").onblur=function(evt){$("inpt_saisieLieuHidden").value=this.value;}
$("inpt_saisieLieuHidden").value=commune;$("inpt_saisieLieuHidden").setAttribute("cgi",cgi);$("inpt_saisieLieuHidden").setAttribute("valeur",val_cgi);if(window.setListeByLieuSelect)setListeByLieuSelect();}
function setCGIForLstRef(li){var reference=li.getElementsByTagName("span")[0].getAttribute("lno");var departement=li.getElementsByTagName("span")[0].getAttribute("dep");$("inpt_reference").value=reference;$("inpt_reference").onfocus=function(evt){this.value='';$("inpt_saisieRefHidden").value='';this.value='';$("inpt_saisieRefDepHidden").value='';}
$("inpt_reference").onblur=function(evt){$("inpt_saisieRefHidden").value=this.value;$("inpt_saisieRefDepHidden").value=this.value;}
$("inpt_saisieRefHidden").value=reference;$("inpt_saisieRefHidden").setAttribute("cgi","LNO");$("inpt_saisieRefHidden").setAttribute("valeur",reference);$("inpt_saisieRefDepHidden").value=reference;$("inpt_saisieRefDepHidden").setAttribute("cgi","DEP");$("inpt_saisieRefDepHidden").setAttribute("valeur",departement);if(window.setListeByRefSelect)setListeByRefSelect();}
function setChmpCommuneAutoCompleter(reponse){var suffixe;var jsonarray=eval(reponse);var infos=[];for(var i=0;i<jsonarray.length;i++){(jsonarray[i].nb>1)?suffixe="s":suffixe="";infos.push(jsonarray[i].lieu+" ("+Math.round(jsonarray[i].nb)+" réponse"+suffixe+")<span cgi=\""+jsonarray[i].cgi+"\" val_cgi=\""+jsonarray[i].val_cgi+"\" lieu_reel=\""+jsonarray[i].lieuReel+"\" />");}
var typeahead=new Autocompleter.Local('inpt_saisieLieu','div_lstLieu_autocomplete',infos,{frequency:0.1,updateElement:setCGIForLstLieu,minChars:3});}
function setChmpCommuneAutoCompleterRef(reponse){var jsonarray=eval(reponse);var infos=new Array();for(var i=0;i<jsonarray.length;i++){infos.push(jsonarray[i].ref+" ("+jsonarray[i].lib+")<span lno=\""+jsonarray[i].ref+"\"dep=\""+jsonarray[i].dep+"\" />");}
var typeahead=new Autocompleter.Local('inpt_reference','div_lstRef_autocomplete',infos,{frequency:0.1,updateElement:setCGIForLstRef});}
function setAutoCompleterByLieu(idChampSaisie,divChampChoix,typeRep){var url="/lib_2/ajax/infosCGI.php";var options;var foncUpdate;if(window.setListeByLieuSelect)foncUpdate=window.setListeByLieuSelect;else foncUpdate=null;if(typeRep=="lien"){options={frequency:0.1,minChars:3,parameters:"typeInfo=LISTALLLIEU&typeReponse=HTML",tokens:',',updateElement:foncUpdate}
window.autoCompleterLieu=new Ajax.Autocompleter(idChampSaisie,divChampChoix,url,options);}else if(window.setListeByLieuSelect){options={frequency:0.1,minChars:3,parameters:"typeInfo=LISTALLLIEU&typeReponse=JS&typePage=miniMoteur",updateElement:setListeByLieuSelect,tokens:','}
window.autoCompleterLieu=new Ajax.Autocompleter(idChampSaisie,divChampChoix,url,options);}}
function setAutoCompleterByRef(idChampSaisie,divChampChoix,typeRep,communeDansAutoComplet){var url="/lib_2/ajax/infosCGI.php";var options;var foncUpdate;if(window.setListeByRefSelect)foncUpdate=window.setListeByRefSelect;else foncUpdate=null;if(communeDansAutoComplet)var affComm=true;else var affComm="";if(typeRep=="lien"){options={frequency:0.1,minChars:1,parameters:"typeInfo=LISTALLREF&typeReponse=HTML",tokens:',',updateElement:foncUpdate}}else if(window.setListeByRefSelect){options={frequency:0.1,minChars:1,parameters:"typeInfo=LISTALLREF&typeReponse=JS&communeDansAutoComplet="+affComm,updateElement:setListeByRefSelect,tokens:','}}
window.autoCompleterRef=new Ajax.Autocompleter(idChampSaisie,divChampChoix,url,options);}
function getNomLieuByPositionCurr(position,foncQdFini){var out;var latitude=position.coords.latitude;var longitude=position.coords.longitude;var url="/lib_2/ajax/infosCGI.php";var sending="typeInfo=POSITIONCURR&latitude="+latitude+"&longitude="+longitude;appelAjaxToFunc(url,sending,foncQdFini);return out}function trim(str,chars){return ltrim(rtrim(str,chars),chars);}
function ltrim(str,chars){chars=chars||"\\s";return str.replace(new RegExp("^["+chars+"]+","g"),"");}
function rtrim(str,chars){chars=chars||"\\s";return str.replace(new RegExp("["+chars+"]+$","g"),"");}
function str_replace(haystack,needle,replacement){var temp=haystack.split(needle);return temp.join(replacement);}
function str_replace_reg(haystack,needle,replacement){var r=new RegExp(needle,'g');return haystack.replace(r,replacement);}
sprintfWrapper={init:function(){if(typeof arguments=="undefined"){return null;}
if(arguments.length<1){return null;}
if(typeof arguments[0]!="string"){return null;}
if(typeof RegExp=="undefined"){return null;}
var string=arguments[0];var exp=new RegExp(/(%([%]|(\-)?(\+|\x20)?(0)?(\d+)?(\.(\d)?)?([bcdfosxX])))/g);var matches=new Array();var strings=new Array();var convCount=0;var stringPosStart=0;var stringPosEnd=0;var matchPosEnd=0;var newString='';var match=null;while(match=exp.exec(string)){if(match[9]){convCount+=1;}
stringPosStart=matchPosEnd;stringPosEnd=exp.lastIndex-match[0].length;strings[strings.length]=string.substring(stringPosStart,stringPosEnd);matchPosEnd=exp.lastIndex;matches[matches.length]={match:match[0],left:match[3]?true:false,sign:match[4]||'',pad:match[5]||' ',min:match[6]||0,precision:match[8],code:match[9]||'%',negative:parseInt(arguments[convCount])<0?true:false,argument:String(arguments[convCount])};}
strings[strings.length]=string.substring(matchPosEnd);if(matches.length==0){return string;}
if((arguments.length-1)<convCount){return null;}
var code=null;var match=null;var i=null;for(i=0;i<matches.length;i++){if(matches[i].code=='%'){substitution='%'}
else if(matches[i].code=='b'){matches[i].argument=String(Math.abs(parseInt(matches[i].argument)).toString(2));substitution=sprintfWrapper.convert(matches[i],true);}else if(matches[i].code=='c'){matches[i].argument=String(String.fromCharCode(parseInt(Math.abs(parseInt(matches[i].argument)))));substitution=sprintfWrapper.convert(matches[i],true);}else if(matches[i].code=='d'){matches[i].argument=String(Math.abs(Math.floor(parseFloat(matches[i].argument))));substitution=sprintfWrapper.convert(matches[i]);}else if(matches[i].code=='f'){matches[i].argument=String(Math.abs(parseFloat(matches[i].argument)).toFixed(matches[i].precision?matches[i].precision:6));substitution=sprintfWrapper.convert(matches[i]);}else if(matches[i].code=='o'){matches[i].argument=String(Math.abs(parseInt(matches[i].argument)).toString(8));substitution=sprintfWrapper.convert(matches[i]);}else if(matches[i].code=='s'){matches[i].argument=matches[i].argument.substring(0,matches[i].precision?matches[i].precision:matches[i].argument.length);substitution=sprintfWrapper.convert(matches[i],true);}else if(matches[i].code=='x'){matches[i].argument=String(Math.abs(parseInt(matches[i].argument)).toString(16));substitution=sprintfWrapper.convert(matches[i]);}else if(matches[i].code=='X'){matches[i].argument=String(Math.abs(parseInt(matches[i].argument)).toString(16));substitution=sprintfWrapper.convert(matches[i]).toUpperCase();}else{substitution=matches[i].match;}
newString+=strings[i];newString+=substitution;}
newString+=strings[i];return newString;},convert:function(match,nosign){if(nosign){match.sign='';}
else{match.sign=match.negative?'-':match.sign;}
var l=match.min-match.argument.length+1-match.sign.length;var pad=new Array(l<0?0:l).join(match.pad);if(!match.left){if(match.pad=="0"||nosign){return match.sign+pad+match.argument;}
else{return pad+match.sign+match.argument;}}
else{if(match.pad=="0"||nosign){return match.sign+match.argument+pad.replace(/0/g,' ');}else{return match.sign+match.argument+pad;}}}}
sprintf=sprintfWrapper.init;function pad(str,len,pad,dir){var STR_PAD_LEFT=1;var STR_PAD_RIGHT=2;var STR_PAD_BOTH=3;if(typeof(len)=="undefined"){var len=0;}
if(typeof(pad)=="undefined"){var pad=' ';}
if(typeof(dir)=="undefined"){var dir=STR_PAD_RIGHT;}
if(len+1>=str.length){switch(dir){case STR_PAD_LEFT:str=Array(len+1-str.length).join(pad)+str;break;case STR_PAD_BOTH:var right=Math.ceil((padlen=len-str.length)/2);var left=padlen-right;str=Array(left+1).join(pad)+str+Array(right+1).join(pad);break;default:str=str+Array(len+1-str.length).join(pad);break;}}
return str;}
function traiteRetourChariot(chaine,remplacement){return str_replace(new String(chaine),"\n",remplacement);}
function enleveDomaineCurr(chaine){var loc=new String(document.location);var tabPart=loc.split("/");var httpHost=tabPart[2];var domaine="http://"+httpHost;return str_replace(chaine,domaine,"");}
function checkForm(frm,funcQdFini){if(!funcQdFini)funcQdFini=function(){if(frm.action.substr(0,5)=="https"&&window.pageTracker)pageTracker._linkByPost(frm);frm.submit();}
var tabChkInput=getTabChmpForm(frm);var nbVerifAFaire=0;nbChampVerifie=0;for(var i=0;i<tabChkInput.length;i++){if(tabChkInput[i].getAttribute("modecheck"))nbVerifAFaire++;}
for(var i=0;i<tabChkInput.length;i++){var chpInputControl=null;var chpControle=tabChkInput[i].getAttribute("chpcontrol");if(chpControle){chpInputControl=$(chpControle);if(!chpInputControl)chpInputControl=chpControle;}
var modechk=tabChkInput[i].getAttribute("modecheck")
if(modechk){checkByInput(tabChkInput[i],modechk,chpInputControl,funcQdFini,nbVerifAFaire);}}}
function checkByInput(chpInput,mode,chpInputControl,funcQdFini,nbVerifAFaire){if(!chpInput)return;if(!mode)return;var adr="/lib/ajax/checkForm.php";var xhr_local=creeObjHttpRequest();var sending="mode="+mode+"&value="+chpInput.value;if(chpInputControl){chpInput.chpInputControl=chpInputControl;if(chpInputControl.tagName=="INPUT")sending+="&valueControle="+chpInputControl.value;else sending+="&valueControle="+chpInputControl;}
chpInput.modecheck=mode;chpInput.disabled=true;xhr_local.onreadystatechange=function(){if(xhr_local.readyState==4&&xhr_local.status==200){var reponse=clean(xhr_local.responseXML.documentElement);var retour=reponse.childNodes[0].childNodes[0].nodeValue;chpInput.retourVerif=retour;chpInput.disabled=false;if(retour!="OK"){if(chpInput.type=="password")chpInput.type="text";$(chpInput).addClassName("chpInptErreurDetecte");$(chpInput).removeClassName("chpInptAucuneErreur");chpInput.value=reponse.childNodes[1].childNodes[0].nodeValue;if($("div_AttenteVerifClient"))setHTMLById("div_AttenteVerifClient","");if($("a_validationCoordonnees")&&$("a_validationCoordonnees").hasClassName("validationCoordonnees_enCours"))$("a_validationCoordonnees").removeClassName("validationCoordonnees_enCours");if(window.onErrorOnCheckInput)window.onErrorOnCheckInput(chpInput);}else{$(chpInput).addClassName("chpInptAucuneErreur");if(funcQdFini&&nbVerifAFaire){nbChampVerifie++;if(nbVerifAFaire==nbChampVerifie){funcQdFini();}}}}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}
function viderChp(chpInput){$(chpInput).removeClassName("chpInptErreurDetecte");$(chpInput).removeClassName("chpInptAucuneErreur");var msg=chpInput.value.substring(2);var idx_debmsg=msg.indexOf("--");if(idx_debmsg>0){var reste=msg.substring(idx_debmsg+2);chpInput.value=reste;}}
function checkFormMotMagique(frm,frmMotMagique){var frmSubmit=true;if(frmMotMagique.motmagique.value){var message="Vous avez saisi un code promotion, merci de le valider avant de passer &agrave; l'&eacute;tape suivante.";alertAMalibu(message);frmSubmit=false;}
if(frmSubmit)frm.submit();}
function checkFormMotMagiqueByLien(frmMotMagique){if(frmMotMagique.motmagique.value){var message="Vous avez saisi un code promotion, merci de le valider avant de passer &agrave; l'&eacute;tape suivante.";alertAMalibu(message);return false;}
else{return true;}}
function verifConnexionB2B(){var login=$("login_b2B").value;var mdp=$("mdp_b2B").value;var categorie;if($("CATEGORIE_CLIENT")!=null){categorie=$("CATEGORIE_CLIENT").value;}else{categorie="vincent";}
var addr="/lib/ajax/checkForm.php";var sending=getInfoSession()+"&MODE=checkConnexionB2B&VALUE="+login+"&VALUECONTROLE="+mdp;if(categorie!=undefined){sending+="&CATEGORIE_CLIENT="+categorie;}
appelAjaxXMLToFunc(addr,sending,traiteVerifConnexionB2B);}
function traiteVerifConnexionB2B(reponse){var retour=reponse.childNodes[0].childNodes[0].nodeValue;var formulaire=$("formIdent");var msg=unescape($("msgErr").value);if(retour=="OK")formulaire.submit();else alertAMalibu(msg);}
function verifBonB2B(){if($("div_errNumBon"))$("div_errNumBon").innerHTML="";var addr="/lib/ajax/checkForm.php";var sending=getInfoSession()+"&MODE=checkBonB2B&VALUE="+$("numero_bon").value;appelAjaxXMLToFunc(addr,sending,traiteVerifBonB2B);}
function traiteVerifBonB2B(reponse){var retour=reponse.childNodes[0].childNodes[0].nodeValue;if(retour=="OK"){effaceDivAvecTransparence();rechargeEnteteBon();}else{if($("div_errNumBon"))$("div_errNumBon").innerHTML=reponse.childNodes[1].childNodes[0].nodeValue;else alertAMalibu(reponse.childNodes[1].childNodes[0].nodeValue);}}
function rechargeEnteteBon(){var adr="/lib/ajax/contenuFenetre.php";var sending=getInfoSession()+"&element=criteres_prod&typeInfo=rechargeEnteteBon";var msgAttente="Rechargement en cours";var foncQdFini;var idDivGene="divLst_generale";if($(idDivGene))foncQdFini=rechargeListe;if($("div_recapAssur_bonTO"))foncQdFini=validFormAssurance;affUrlInDiv("div_globalEnteteAgence",adr,sending,msgAttente,foncQdFini);}
function rechargeListe(){setListByForm($("frmBonTO"));}
function validFormAssurance(){$("frm_assur").submit();}
function checkFormAvecFuncQdFini(frm,funcQdFini){var tabChkInput=getTabChmpForm(frm);var nbVerifAFaire=0;nbChampVerifie=0;for(var i=0;i<tabChkInput.length;i++){if(tabChkInput[i].getAttribute("modecheck"))nbVerifAFaire++;}
for(var i=0;i<tabChkInput.length;i++){var chpInputControl=null;var chpControle=tabChkInput[i].getAttribute("chpcontrol");if(chpControle){chpInputControl=$(chpControle);if(!chpInputControl)chpInputControl=chpControle;}
var modechk=tabChkInput[i].getAttribute("modecheck")
if(modechk){checkByInput(tabChkInput[i],modechk,chpInputControl,funcQdFini,nbVerifAFaire);}}}function afficheMoteurDates(idSelection,ident){var html="<div id='divPanier_moteurDate'></div>";html+="<a id='a_valider' onclick='setDatesPanier("+idSelection+");'>Valider</a>";html+="<a id='a_retour' onclick='effaceDivAvecTransparence();'>Retour</a>";afficheDivAvecTransparence(html,400,200);var adr="/lib_2/ajax/contenuFenetre.php";var sending=getInfoSession()+"&element=critere&typeInfo=date&ident="+ident;affUrlInDiv("divPanier_moteurDate",adr,sending);}
function setDatesPanier(idSelection){var adr="/lib_2/ajax/gerePanier.php";var sending="action=defDatesSelect&idSelect="+idSelection+"&jour="+document.getElementById('jour').value+"&mois="+document.getElementById('mois').value+"&annee="+document.getElementById('annee').value+"&duree="+document.getElementById('duree').value;effaceDivAvecTransparence();affUrlInDiv("divPanier_visu",adr,sending);}
function refreshPanier(){var divVisu="divPanier_visu";var divVisuMini="divPanier_visuMini";var divVisuNombre="divPanier_visuNb";var objDivVisu=$(divVisu);var objDivVisuMini=$(divVisuMini);var objDivVisuNombre=$(divVisuNombre);if(objDivVisu)affSelectionPanierDetails();if(objDivVisuMini)affSelectionPanierMini();if(objDivVisuNombre)affSelectionPanierNombre();}
function affSelectionPanierNombre(champTri,typeTri){var adr="/lib_2/ajax/gerePanier.php";var sending="action=affichePanierNombre";affUrlInDiv("divPanier_visuNb",adr,sending,"<img width=15px height=15px src='/config_v3/imgs_defaut/rouegrise.gif' />");}
function affSelectionPanierDetails(champTri,typeTri){var adr="/lib_2/ajax/gerePanier.php";if(!champTri)champTri="classement_epi";if(!typeTri)typeTri="tri_croissant";var sending="action=affichePanier&champTri="+champTri+"&typeTri="+typeTri+getInfoSession("PHPSESSID");affUrlInDiv("divPanier_visu",adr,sending,"<img width=30px height=30px src='/config_v3/imgs_defaut/rouegrise.gif' />Recherche en cours...Merci de patienter");}
function affSelectionPanierMini(){var adr="/lib/ajax/gerePanier.php";var champTri="classement_epi";var typeTri="tri_croissant";var sending="action=affichePanierMini&champTri="+champTri+"&typeTri="+typeTri;affUrlInDiv("divPanier_visuMini",adr,sending,"<img width=10px height=10px src='/config_v3/imgs_defaut/rouegrise.gif' />");}
function afficheTabComparateur(nomIdDiv,champTri,typeTri){affSelectionPanierDetails(champTri,typeTri);}
function suppSelectionPanier(ident){var adr="/lib_2/ajax/gerePanier.php";var idDiv="page_content";var sending="action=supprPanier&ident="+ident;affUrlInDiv(idDiv,adr,sending,"aucun",function(evt){var test;});}
function affEnregistrePanier(mdp){var html="<div id='divPanier_enregistrePanier'>";html+="<span id='spPanier_selectionEnregistree'>Votre sélection a bien été enregistrée.</span>";html+="<span id='spPanier_msgMdp'>Vous pouvez vous reconnectez utltérieurement avec le mot de passe suivant :</span>";html+="<span id='spPanier_mdp'>"+mdp+"</span>";html+="<a id='a_ok' onclick='effaceDivAvecTransparence();'>OK</a>";html+="</div>";afficheDivAvecTransparence(html,300,200);}
function affEchecEnregistrePanier(){var html="<div id='divPanier_enregistrePanier'>";html+="<span id='spPanier_selectionEnregistree'>Votre sélection n'a pû être enregistrée.</span>";html+="<span id='spPanier_msgMdp'>Merci de réessayer utltérieurement.</span>";html+="<a id='a_ok' onclick='effaceDivAvecTransparence();'>OK</a>";html+="</div>";afficheDivAvecTransparence(html,300,200);}
function affAttenteListe(idDivGene){if(!idDivGene)idDivGene="div_contentListe";affMsgAttenteParDessusInDiv(idDivGene);}
function affAttenteMoteur(classMoteur){$$('.'+classMoteur).each(function(elt){affMsgAttenteParDessusInDiv(elt,"_moteur");});}
function effAttenteMoteur(classMoteur){$$('.'+classMoteur).each(function(elt){effaceMsgAttenteParDessus("_moteur");});}
function setParamCgiEtRefreshList(querystring,params){affAttenteListe();setCGIByAjax(querystring,true,refreshListe,params);}
function refreshListe(ok,params){var typeInfo,idDiv,idPageArboDiv="";if(params&&params.idDiv)idDiv=params.idDiv
if(!idDiv)idDiv="divLst_generale";if(params&&params.arboDiv)idPageArboDiv=params.arboDiv;if(params&&params.typeInfo)typeInfo=params.typeInfo;else typeInfo="visu_structAllId";var url="/lib_2/ajax/contenuFenetre.php";var sending="element=objProd&";sending+="typeInfo="+typeInfo+"--"+idPageArboDiv+"&";sending+=getInfoSession("PHPSESSID");sending+="&CGISCUR="+escape(getQueryString());if(params&&params.cgis)sending+="&CGIS="+escape(params.cgis);if(params&&params.saveCrits)sending+="&SAVECRIT=O";if(params&&params.avecGestionPage==false)sending+="&PAGINATION=N";else sending+="&PAGINATION=O";affUrlInDiv(idDiv,url,sending,"aucun",function(retour){checkPageSiAfficheVraiPrixDansListe();if(window.gmap)window.gmap.reload();checkPageSiDivForChargePrixInLst();effAttenteMoteur(params.classDivMoteur);gereAffichageTriParPrix();if(window.onRefreshList)onRefreshList();});}
function refreshListeAvecQueProp(queProp,accs){$$(".iteaListeArboDiv").each(function(elt){refreshListe(null,{"cgis":"QUEPROP="+queProp+"&ACC="+accs,"saveCrits":false,"arboDiv":elt.getAttribute("arbodiv"),"idDiv":elt.getAttribute("id")});});}
function finRefreshList(params){setForNavigPage();checksForListe();if(window.onRefreshList)onRefreshList();if(params)if(params.objForm)reactiveForm(params.objForm);effaceMsgAttenteParDessus();effAttenteMoteur();}
function reloadListe(idDiv,idArboDiv){affAttenteListe();var url="/lib_2/ajax/contenuFenetre.php";var sending="element=objProd&";sending+="typeInfo=visu_structReload--"+idArboDiv;affUrlInDiv(idDiv,url,sending,"aucun",function(retour){finRefreshList(null);});}
function gereAffichageTriParPrix(result){if(result=="toutestok"||$('itea_divForPrixOkInObjLst')){if($('div_liste_critereTriHautAvecImgPrix')){var obj=$('div_liste_critereTriHautAvecImgPrix');if(obj.childNodes[0].childNodes[0]){obj.childNodes[0].childNodes[0].style.visibility="visible";}}}}
function gaTrackMoteurAjax(querystring){var params=new String(querystring).split("&");var paramsOut=new Array();for(var i=0;i<params.length;i++){var chpsparam=params[i].split("=");var variable=chpsparam[0];var valeur=chpsparam[1];if(variable&&valeur)paramsOut.push(variable+"-"+valeur);}
paramsOut.sort();var lnkVirtuel="/liste/"+paramsOut.join("/");gaTrack(lnkVirtuel);return true;}
function setListByForm(form){var qs=getQueryStringByForm(form)+"&critinit=O";desactiveForm(form);gaTrackMoteurAjax(qs);if(!$("divLst_generale")||($($("divLst_generale").parentNode)&&$($("divLst_generale").parentNode).hasClassName("iteaDivDynamique_listeOffre"))){affMsgAttenteParDessusInDiv("page_content");var url="/liste?";if($("divNomHttpHostSiteInit"))url="http://"+$("divNomHttpHostSiteInit").innerHTML+url;document.location.href=url+qs;}else{affAttenteListe();refreshListe(null,{'objForm':form,'saveCrits':true,'cgis':qs,'avecGestionPage':true});}}
function setNbResultByCgi(classe,obj){var lstCgi="";var tabInfos=new Array();var cpt=0;if(obj){var enfants=obj.descendants();enfants.each(function(obj2){if(obj2.hasClassName(classe)){if(obj2.getAttribute("cgi").length>0&&obj2.getAttribute("valeur").length>0){obj2.innerHTML="<img src=/config_v3/imgs_defaut/chargement_3Points.gif id=imgChargementAffParamCGI width=10/>";if(lstCgi.length>1)lstCgi+="|";lstCgi+=obj2.getAttribute("cgi")+"-"+obj2.getAttribute("valeur");tabInfos[cpt]=new Array();tabInfos[cpt]["cgi"]=obj2.getAttribute("cgi");tabInfos[cpt]["valeur"]=obj2.getAttribute("valeur");tabInfos[cpt]["id"]=obj2.getAttribute("id");cpt++;}}});}
else{if(classe){$$('.'+classe).each(function(obj){if(obj.getAttribute("cgi").length>0&&obj.getAttribute("valeur").length>0){obj.innerHTML="<img src=/config_v3/imgs_defaut/chargement_3Points.gif id=imgChargementAffParamCGI width=10/>";if(lstCgi.length>1)lstCgi+="|";lstCgi+=obj.getAttribute("cgi")+"-"+obj.getAttribute("valeur");tabInfos[cpt]=new Array();tabInfos[cpt]["cgi"]=obj.getAttribute("cgi");tabInfos[cpt]["valeur"]=obj.getAttribute("valeur");tabInfos[cpt]["id"]=obj.getAttribute("id");cpt++;}});}}
var queryString=document.location.href;if(queryString.match("\\?"))queryString=queryString.split("?")[1];if(queryString.match("#"))queryString=queryString.split("#")[0];var adr="/lib_2/ajax/infosCGI.php";var sending="typeInfo=NBRESULTBYCGI&CGI="+lstCgi;sending+="&queryString="+encodeURIComponent(queryString);if(estSurPanier())sending+="&mode=panier";appelAjaxToFunc(adr,sending,function(reponse){if(reponse){var tabRep=eval("("+reponse+")");var tabRepAcc=tabRep["ACC"];var tabRepAmb=tabRep["AMB"];var tabRepCrit=tabRep["CRIT"];var tabRepThemat=tabRep["THEMAT"];var tabRepInfosGeo=tabRep["INFOS_GEO"];var tabRepPaiement=tabRep["PAIEMENT"];var tabRepImperatifs=tabRep["IMPERATIFS"];var tabRepOffre=tabRep["OFFRE"];if(is_array(tabRepAcc)){tabRepAcc.each(function(rep){var tailleInfo=tabInfos.length;for(var i=0;i<tailleInfo;i++){var info=tabInfos[i];if(rep["type_web"]==info["cgi"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}}});}
if(is_array(tabRepInfosGeo)){tabRepInfosGeo.each(function(rep){var tailleInfo=tabInfos.length;for(var i=0;i<tailleInfo;i++){var info=tabInfos[i];if(rep["insee"]==info["valeur"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}
else if(rep["dpt"]==info["valeur"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}
else if(rep["region"]==info["valeur"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}
else if(rep["infotourfd"]==info["valeur"]){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}}});}
if(is_array(tabRepAmb)){tabRepAmb.each(function(rep){var tailleInfo=tabInfos.length;for(var i=0;i<tailleInfo;i++){var info=tabInfos[i];if(rep["cgi_amb"]==info["cgi"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}}});}
if(is_array(tabRepCrit)){tabRepCrit.each(function(rep){var tailleInfo=tabInfos.length;for(var i=0;i<tailleInfo;i++){var info=tabInfos[i];if(rep["cgi"]==info["cgi"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}}});}
if(is_array(tabRepThemat)){tabRepThemat.each(function(rep){var tailleInfo=tabInfos.length;for(var i=0;i<tailleInfo;i++){var info=tabInfos[i];if(rep["cgi"]==info["cgi"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}}});}
if(is_array(tabRepOffre)){tabRepOffre.each(function(rep){var tailleInfo=tabInfos.length;for(var i=0;i<tailleInfo;i++){var info=tabInfos[i];if(rep["cgi"]==info["cgi"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}}});}
if(is_array(tabRepPaiement)){tabRepPaiement.each(function(rep){var tailleInfo=tabInfos.length;for(var i=0;i<tailleInfo;i++){var info=tabInfos[i];if(rep["cgi"]==info["cgi"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}}});}
if(is_array(tabRepImperatifs)){tabRepImperatifs.each(function(rep){var tailleInfo=tabInfos.length;for(var i=0;i<tailleInfo;i++){var info=tabInfos[i];if(rep["cgi"]==info["cgi"].toUpperCase()){var elt=$(info["id"]);if(rep["nb"]>0)elt.innerHTML="("+format_nb(rep["nb"],"."," ")+")";}}});}}
if(obj){var enfants=obj.descendants();enfants.each(function(objGen){if(objGen.hasClassName(classe)){var reg1=new RegExp("(img)","g");if((!objGen.innerHTML.length>0||objGen.innerHTML.match(reg1))&&!objGen.hasClassName("sp_nb_result_ne_pas_effacer")){objGen.parentNode.parentNode.parentNode.parentNode.style.display="none";}
else if(objGen.hasClassName("sp_nb_result_ne_pas_effacer")&&objGen.innerHTML.match(reg1)){objGen.innerHTML="(0)";}}});}else{$$('.'+classe).each(function(obj){var reg1=new RegExp("(img)","g");if((!obj.innerHTML.length>0||obj.innerHTML.match(reg1))&&!obj.hasClassName("sp_nb_result_ne_pas_effacer")){obj.parentNode.parentNode.parentNode.parentNode.style.display="none";}
else if(obj.hasClassName("sp_nb_result_ne_pas_effacer")&&obj.innerHTML.match(reg1)){obj.innerHTML="(0)";}});}
effaceMsgAttenteParDessus();});}
function setListByClassName(classe,classDivMoteur,foncAvant){var result=true;if(foncAvant){result=foncAvant();}
if(result){var qs=getQueryStringByClassName(classe);gaTrackMoteurAjax(qs);if(!$("divLst_generale")||($($("divLst_generale").parentNode)&&$($("divLst_generale").parentNode).hasClassName("iteaDivDynamique_listeOffre"))){affMsgAttenteParDessusInDiv("page_content");var url="/liste?";if($("divNomHttpHostSiteInit"))url="http://"+$("divNomHttpHostSiteInit").innerHTML+url;document.location.href=url+qs;}else{window.objCarte=$('divgmap3');affAttenteListe();affAttenteMoteur(classDivMoteur);refreshListe(null,{'saveCrits':true,'cgis':qs,'avecGestionPage':true,'idDiv':"page_content",'classDivMoteur':classDivMoteur});}}}
function checkForListeDivDynamique(){var avecGestionPage,url="/lib_2/ajax/contenuFenetre.php";var sending=getInfoSession("PHPSESSID")+"element=objProd&";sending+="typeInfo=visu_structAllId";$$(".iteaDivDynamique_listeOffre").each(function(element){var cgis=element.getAttribute("cgis");idDivGene=element.id;idPageArboDiv=element.getAttribute("idArboDiv");if($$(".iteaDivDynamique_listeOffre").length>1)avecGestionPage=false;else avecGestionPage=true;refreshListe(true,{'idDiv':element.id,'arboDiv':idPageArboDiv,'typeInfo':'visu_structLstDyn','cgis':cgis,'avecGestionPage':avecGestionPage});});}
function refreshNumeroPage(prefix_id_navigPage,numPage,classe,foncQdfini){var tabSuffPossible=new Array("","_haut","_bas");var tabTypeNav=new Array("int","num");for(var i=0;i<tabSuffPossible.length;i++){for(var j=0;j<2;j++){var obj=$(prefix_id_navigPage+tabSuffPossible[i]+"_"+tabTypeNav[j]+"_"+numPage);if(obj){setClassForObj_uniqClass(obj,classe+tabSuffPossible[i]);}}}
if(foncQdfini)foncQdfini(numPage);}
function afficheListeByAjx_setPage(numPage,foncQdFini){var adr="/lib_2/ajax/contenuFenetre.php";var tabDivLst=getInfoArboDiv();cleanAllAJAXcall();affAttenteListe();if($('ul_navigListeNumerosPage_haut')){$('ul_navigListeNumerosPage_haut').innerHTML="";affMsgAttenteInDiv("ul_navigListeNumerosPage_haut");}
if($('ul_navigListeNumerosPage_bas')){$('ul_navigListeNumerosPage_bas').innerHTML="";affMsgAttenteInDiv("ul_navigListeNumerosPage_bas");}
checkNombrePage(numPage);for(var i=0;i<tabDivLst.length;i++){var idDiv=tabDivLst[i]["ID"];var idArboDiv=tabDivLst[i]["arboDiv"];var sendingLst="element=objProd&typeInfo=visu_structByIdSetPage-"+numPage+"-"+idArboDiv+getInfoSession("PHPSESSID");sendingLst+="&CGISCUR="+escape(getQueryString());affUrlInDiv(idDiv,adr,sendingLst,"aucun",function(evt){checkPageSiAfficheVraiPrixDansListe();checkPageSiDivForChargePrixInLst();effaceMsgAttenteParDessus();if(foncQdFini)foncQdFini();if(window.onRefreshListChgtTriEtPage)onRefreshListChgtTriEtPage();});}}
function selectThisInMenu(obj,classePasSelect,classeSelect){obj.removeClassName(classePasSelect);obj.addClassName(classeSelect);var arret;}
function setForNavigPage(){}
function goToNavigPage(prefix_id_navigPage,numPage_suiv,numPage_curr,classe){var tabSuffPossible=new Array("_haut","_bas");for(var i=0;i<tabSuffPossible.length;i++){var obj_curr=document.getElementById(prefix_id_navigPage+tabSuffPossible[i]+"_"+numPage_curr);var obj_suiv=document.getElementById(prefix_id_navigPage+tabSuffPossible[i]+"_"+numPage_suiv);var obj_ul=document.getElementById("ul_navigListeNumerosPage"+tabSuffPossible[i]);if(obj_curr&&obj_suiv&&obj_ul){var x_curr=parseInt(obj_curr.offsetLeft);var x_suiv=parseInt(obj_suiv.offsetLeft);var decal=parseInt(x_curr-x_suiv);setClassForObj(obj_suiv,classe+tabSuffPossible[i]);new Effect.Move(obj_ul,{x:decal,mode:'relative'});}}}
function setTriOpenDiv(obj){var nomDiv=obj.getAttribute("idDivLst");var lst=$(nomDiv);if(!lst.showing){lst.style.display="block";lst.showing=true;var chps=nomDiv.split("_");var suffixe=chps.pop();var adr="/lib_2/ajax/contenuFenetre.php";var sending="element=objProd&typeInfo=getDivTri-"+suffixe;appelAjaxToFunc(adr,sending,function(reponse){if(reponse)$(nomDiv).update(reponse);});}else{lst.style.display="none";lst.showing=false;}}
function afficheListeByAjx_setTri(tabDivLst,objSelect,prefixIdObjPiloteTri){var tabSuffPossible=new Array("","_haut","_bas");for(var i=0;i<tabSuffPossible.length;i++){var objPiloteTri=$(prefixIdObjPiloteTri+tabSuffPossible[i]);if(objPiloteTri){objPiloteTri.innerHTML=objSelect.innerHTML;var objLst=$(objPiloteTri.getAttribute("idDivLst"));objLst.hide();}}
var fonc=objSelect.getAttribute("fonction");var ordre=objSelect.getAttribute("ordre");var imgNonClic;$$(".imgTri").each(function(element){imgNonClic=element.getAttribute("srcImgNonClic");if(imgNonClic)element.src=imgNonClic;});var imgClic=objSelect.firstChild.getAttribute("srcImgClic");if(imgClic)objSelect.firstChild.src=imgClic;var libelle=objSelect.getAttribute("libelle");if(libelle=="O"){if(ordre=="croissant"){ordre="decroissant";imgClic=objSelect.previousSibling.firstChild.nextSibling.firstChild.getAttribute("srcImgClic");objSelect.previousSibling.firstChild.nextSibling.firstChild.src=imgClic;}
else{ordre="croissant";imgClic=objSelect.previousSibling.firstChild.firstChild.getAttribute("srcImgClic");objSelect.previousSibling.firstChild.firstChild.src=imgClic;}
objSelect.setAttribute("ordre",ordre);}
var adr="/lib_2/ajax/contenuFenetre.php";affAttenteListe();var idDiv=tabDivLst[1];var idArboDiv=tabDivLst[0];var sendingLst="element=objProd&typeInfo=visu_structByIdSetTri-"+fonc+"/"+ordre+"-"+idArboDiv+getInfoSession("PHPSESSID");if(!$(idDiv)){idDiv=$$(".iteaListeArboDiv")[0];}
sendingLst+="&CGISCUR="+escape(getQueryString());affUrlInDiv(idDiv,adr,sendingLst,"aucun",function(evt){effaceMsgAttenteParDessus();checkPageSiAfficheVraiPrixDansListe();checkPageSiDivForChargePrixInLst();if(window.onRefreshListChgtTriEtPage)onRefreshListChgtTriEtPage();});refreshNumeroPage('li_navigListeNumeroPage',1,'li_navigListeNumeroPageSelect');setForNavigPage();}
function afficheListeByAjx_setTriPanier(tabDivLst,objSelect,prefixIdObjPiloteTri){var tabSuffPossible=new Array("","_haut","_bas");for(var i=0;i<tabSuffPossible.length;i++){var objPiloteTri=$(prefixIdObjPiloteTri+tabSuffPossible[i]);if(objPiloteTri){objPiloteTri.innerHTML=objSelect.innerHTML;var objLst=$(objPiloteTri.getAttribute("idDivLst"));objLst.hide();}}
var fonc=objSelect.getAttribute("fonction");var ordre=objSelect.getAttribute("ordre");var imgNonClic;$$(".imgTri").each(function(element){imgNonClic=element.getAttribute("srcImgNonClic");if(imgNonClic)element.src=imgNonClic;});var imgClic=objSelect.firstChild.getAttribute("srcImgClic");if(imgClic)objSelect.firstChild.src=imgClic;var adr="/lib_2/ajax/gerePanier.php";affAttenteListe();var idDiv=tabDivLst[1];var idArboDiv=tabDivLst[0];var sendingLst="action=setTri&champTri="+fonc+"&typeTri="+ordre+"&idArboDiv="+idArboDiv;if(!$(idDiv)){idDiv=$$(".iteaListeArboDiv")[0];}
sendingLst+="&CGISCUR="+escape(getQueryString());affUrlInDiv(idDiv,adr,sendingLst,"aucun",function(evt){effaceMsgAttenteParDessus();checkPageSiAfficheVraiPrixDansListe();checkPageSiDivForChargePrixInLst();if(window.onRefreshListChgtTriEtPage)onRefreshListChgtTriEtPage();});refreshNumeroPage('li_navigListeNumeroPage',1,'li_navigListeNumeroPageSelect');setForNavigPage();}
function changeNombreElementParPage(idselect){var adr="/lib_2/ajax/contenuFenetre.php";affAttenteListe();var idDiv="page_content";var sendingLst="element=objProd&typeInfo=visu_structByIdSetNbElem-nbElemParPage-"+getInfoSession("PHPSESSID");sendingLst+="&val="+$(idselect).value;sendingLst+="&CGISCUR="+escape(getQueryString());checkNombrePage(1);affUrlInDiv(idDiv,adr,sendingLst,"aucun",function(evt){if(window.onRefreshListChgtTriEtPage)onRefreshListChgtTriEtPage();});refreshNumeroPage('li_navigListeNumeroPage',1,'li_navigListeNumeroPageSelect');}
function changeNombreElementParPagePanier(idselect){var adr="/lib_2/ajax/gerePanier.php";affAttenteListe();var idDiv="page_content";var sendingLst="action=changePage";sendingLst+="&valeur="+$(idselect).value;affUrlInDiv(idDiv,adr,sendingLst,"aucun",function(evt){if(window.onRefreshListChgtTriEtPage)onRefreshListChgtTriEtPage();});refreshNumeroPage('li_navigListeNumeroPage',1,'li_navigListeNumeroPageSelect');}
function checkNombrePage(page){}
function checkNbElemParPage(suffixe){if(suffixe=="haut")var suffixe2="bas"
else var suffixe2="haut";if($('select_choix_elem_'+suffixe2)){$('select_choix_elem_'+suffixe2).value=$('select_choix_elem_'+suffixe).value;}}
function checksForListe(){checkNombrePage();checkPageSiDivForAbecedaireCommune();checkPageSiDivForNbResult();checkPageSiAfficheVraiPrixDansListe();checkPageSiDivForChargePrixInLst();checkPageSiDivTriEtDivPage();gereAffichageTriParPrix();}
function checkPageSiDivTriEtDivPage(){var url="/lib_2/ajax/infosDist.php";var sending="info=NBRESULTS";if($$(".effaceQdPasResult").length>0){appelAjaxToFunc(url,sending,function(reponse){if(reponse){eval("var result="+reponse);$$(".effaceQdPasResult").each(function(elt){if(result.nb_result>0)elt.style.display="block";else elt.style.display="none";});}});}}
function checkPageSiAfficheVraiPrixDansListe(){$$(".itea_divLstPrix1StructAjax").each(function(elt){var deb=elt.getAttribute("deb");if(!deb)return;var url="/lib_2/ajax/infosDist.php";var sending="info=REQ4&ident="+elt.getAttribute("ident")+"&deb="+deb+"&nbj="+elt.getAttribute("nbj");appelAjaxToFunc(url,sending,function(reponse){if(reponse){var objParentCourant=elt.parentNode;var firstChild=elt.children;if(firstChild[0]){if(firstChild[0]&&!firstChild[0].hasClassName("span_lst_libelle_avant_prix")){htmlSpanAvantPrix="<span class='span_lst_libelle_avant_prix'></span>";}else{if(firstChild[0]&&firstChild[0].hasClassName("span_lst_libelle_avant_prix"))
htmlSpanAvantPrix="<span class='span_lst_libelle_avant_prix_vous_aimerez_aussi span_lst_libelle_avant_prix'></span>";else htmlSpanAvantPrix="";}}
eval("var infosPrix="+reponse);if(infosPrix&&infosPrix.prix_promo>0&&parseInt(infosPrix.prix_promo)!=parseInt(infosPrix.prix_normal)){if(elt.hasClassName("prixArrondi"))html="<span class='prixListeAvantPromo'>"+parseInt(Math.round(infosPrix.prix_normal))+"&nbsp;&euro;</span>";else html="<span class='prixListeAvantPromo'>"+infosPrix.prix_normal+"&nbsp;&euro;</span>";if(elt.hasClassName("prixArrondi"))html+="<span class='prixListePromo'>"+parseInt(Math.round(infosPrix.prix_promo))+"&nbsp;&euro;</span>";else html+="<span class='prixListePromo'>"+infosPrix.prix_promo+"&nbsp;&euro;</span>";}else{if(elt.hasClassName("prixArrondi"))html="<strong><span class='prixListeNormal'>"+parseInt(Math.round(infosPrix.prix_normal))+"</span>&nbsp;&euro;</strong>";else html="<span class='prixListeNormal'>"+infosPrix.prix_normal+"&nbsp;&euro;</span>";}
elt.innerHTML=html;if(objParentCourant){firstChild=objParentCourant.children;objParentCourant.innerHTML=htmlSpanAvantPrix+objParentCourant.innerHTML;if(firstChild[0]&&firstChild[0].hasClassName("span_lst_libelle_avant_prix_vous_aimerez_aussi")){chargeMotCleDsDiv(firstChild[0],"LBL_TARIF_SEJOUR_AVANT_VOUS_AIMEREZ");}
else if(firstChild[0]&&firstChild[0].hasClassName("span_lst_libelle_avant_prix")){chargeMotCleDsDiv(firstChild[0],"LBL_TARIF_SEJOUR_AVANT");}}}});});}
function checkPageSiDivForChargePrixInLst(){$$(".itea_divForLoadNewPrixInLstForDate").each(function(elt){if(!elt.getAttribute("deb"))return;var url="lib_2/ajax/infosDist.php";var sending="info=SETPXINOBJLST&deb="+elt.getAttribute("deb")+"&nbj="+elt.getAttribute("nbj");appelAjaxToFunc(url,sending,function(reponse){});});$$(".itea_divForDispoBaseNatForDate").each(function(elt){$$(".div_bt_reserverDispogiteFNGF").each(function(elt){elt.style.display="none";});var url="lib_2/ajax/infosDist.php";if(!elt.getAttribute("deb"))return;var sending="info=SETDISPOINOBJLSTDBNAT&instance_exe="+elt.getAttribute("instance_exe")+"&instance="+elt.getAttribute("instance")+"&dpt="+elt.getAttribute("dpt")+"&type_gite="+elt.getAttribute("type_gite")+"&id_famille="+elt.getAttribute("id_famille")+"&deb="+elt.getAttribute("deb")+"&nbj="+elt.getAttribute("nbj")+"&ope="+elt.getAttribute("ope");appelAjaxToFunc(url,sending,function(reponse){if(reponse){checkPageAfficheBtResaSiDispogiteResa();checkPageSiDivForNbResult();checkNombrePage();}});});var tabExec=new Array();$$(".itea_divForPrixBaseNatForDate").each(function(elt){var url="lib_2/ajax/infosDist.php";if(!elt.getAttribute("deb"))return;if(tabExec[elt.getAttribute("instance_exe")+"_"+elt.getAttribute("dpt")+"_"+elt.getAttribute("type_gite")+"_"+elt.getAttribute("id_famille")+"_"+elt.getAttribute("deb")+"_"+elt.getAttribute("nbj")]!=true){var sending="info=SETPXINOBJLSTDBNAT&instance_exe="+elt.getAttribute("instance_exe")+"&instance="+elt.getAttribute("instance")+"&dpt="+elt.getAttribute("dpt")+"&type_gite="+elt.getAttribute("type_gite")+"&id_famille="+elt.getAttribute("id_famille")+"&deb="+elt.getAttribute("deb")+"&nbj="+elt.getAttribute("nbj")+"&ope="+elt.getAttribute("ope")+"&pomxj="+elt.getAttribute("pomxj");tabExec[elt.getAttribute("instance_exe")+"_"+elt.getAttribute("dpt")+"_"+elt.getAttribute("type_gite")+"_"+elt.getAttribute("id_famille")+"_"+elt.getAttribute("deb")+"_"+elt.getAttribute("nbj")]=true;appelAjaxToFunc(url,sending,function(reponse){gereAffichageTriParPrix(reponse);});}});}
function checkPageAfficheBtResaSiDispogiteResa(){var url="lib_2/ajax/infosDist.php";var sending="info=GETIDENTDISPOGITERESERVABLE";appelAjaxToFunc(url,sending,function(reponse){if(reponse){var tabIdentBtAAfficher=new String(reponse).evalJSON();$A(tabIdentBtAAfficher).each(function(ident){var bt=$("btResaDispoGite_"+ident);if(bt)bt.style.display="block";});}});}
function checkPageSiDivForNbResult(){if(!getCookie("__sess_")&&window.foncQdPadCookie){window.foncQdPadCookie();return false;}
$$(".itea_div_liste_infoNbResultat_ajx").each(function(elt){var adr="/lib_2/ajax/contenuFenetre.php";var sending="element=objProd&typeInfo=getNbResult";sending+="&CGISCUR="+escape(getQueryString());if(estSurPanier())sending+="&mode=panier";appelAjaxToFunc(adr,sending,function(reponse){if(reponse)$(elt).update(reponse);if(window.refreshNbPageInNav)window.refreshNbPageInNav();});});$$(".itea_div_liste_infoDetailsNbResultatGestionProp_ajx").each(function(elt){var adr="/lib_2/ajax/contenuFenetre.php";var sending="element=objProd&typeInfo=getNbResultDetailsProp";sending+="&CGISCUR="+escape(getQueryString());appelAjaxToFunc(adr,sending,function(reponse){if(reponse)$(elt).update(reponse);});});$$('.itea_div_liste_InfoCritCourant').each(function(elt){var adr="/lib_2/ajax/contenuFenetre.php";var sending="element=objProd&typeInfo=getInfoCritCourant";sending+="&CGISCUR="+escape(getQueryString());if(estSurPanier())sending+="&mode=panier";elt.innerHTML="";affMsgAttenteInDiv(elt.id);appelAjaxToFunc(adr,sending,function(reponse){if(reponse)$(elt).update(reponse);});});}
function checkPageSiDivForAbecedaireCommune(){$$(".itea_divForABCDEF_commune").each(function(elt){var adr="/lib_2/ajax/contenuFenetre.php";var sending="element=objProd&typeInfo=abcdef_commune";appelAjaxToFunc(adr,sending,function(reponse){if(reponse){$(elt).style.display="block";$(elt).update(reponse);}});});}
function goToDansListeByPageEtId(numPage,pageCurr,idSeq,tabDiv){if(numPage==pageCurr){Effect.ScrollTo('liLst_elem_'+idSeq);scrollToAncre('liLst_elem_'+idSeq);}else{window.idSeqToScroll=idSeq;window.numPageSuiv=numPage;window.numPageCurr=pageCurr;afficheListeByAjx_setPage_v2(tabDiv,numPage,function(){goToNavigPage('li_navigListeNumeroPage',window.numPageSuiv,window.numPageCurr,'li_navigListeNumeroPageSelect');scrollToAncre('liLst_elem_'+window.idSeqToScroll);Effect.ScrollTo('liLst_elem_'+window.idSeqToScroll);});}}
function getInfoArboDiv(){var i=0;var infos="[";$$(".iteaListeArboDiv").each(function(obj){infos+='{"arboDiv":"'+obj.readAttribute("arboDiv")+'",';infos+='"ID":"'+obj.readAttribute("ID")+'"},';i++;});infos=infos.substr(0,infos.length-1);infos+="]";return eval(infos);}
function showResaInPopIn(addr,sending,w,h,titreDiv){if(!w||!h){if(getVersionIE()<9){w=parseInt(document.documentElement.clientWidth)*0.9;h=parseInt(document.documentElement.clientHeight)*0.9;}else{w=parseInt(window.innerWidth)*0.9;h=parseInt(window.innerHeight)*0.9;}
if(!w)w=800;if(!h)h=600;}
var html_init="<iframe src='"+addr+"?"+sending+"' name='frame_resa' frameborder='0' id='frame_resa' width='"+w+"' height='100%'>\n\
       <img src=/config_v3/imgs_defaut/loading/roue16x16.gif /><br />\n\
      </iframe>";afficheDivAvecTransparenceAbsolue(html_init,w,h,null,titreDiv);}
function showContactPropCentraleInPopIn(addr,w,h,titreDiv){if(!w||!h){if(getVersionIE()<9){w=parseInt(document.documentElement.clientWidth)*0.9;h=parseInt(document.documentElement.clientHeight)*0.9;}else{w=parseInt(window.innerWidth)*0.9;h=parseInt(window.innerHeight)*0.9;}
if(!w)w=800;if(!h)h=600;}
var html_init="<iframe src='"+addr+"' name='frame_contact_prop_centrale' frameborder='0' id='frame_contact_prop_centrale' width='"+w+"' height='100%'>\n\
       <img src=/config_v3/imgs_defaut/loading/roue16x16.gif /><br />\n\
      </iframe>";afficheDivAvecTransparenceAbsolue(html_init,w,h,null,titreDiv);}
function showTelPropInPopin(elt){var infoTel=$(elt.children[1]);if(infoTel.hasClassName("span_lst_NumeroTelPropOuvert")){infoTel.removeClassName("span_lst_NumeroTelPropOuvert");}else{infoTel.addClassName("span_lst_NumeroTelPropOuvert");}}
function getUrlWithLstCgi(lstCgis,urlListe,queryString){var url;if(urlListe){url=urlListe+"?";if(queryString)url+=queryString;else{var url2=document.location.href;if(url2.match("\\?"))url2=url2.split("?")[1];if(url2.match("#"))url2=url2.split("#")[0];url+=url2;}}else url=document.location.href;url=url.replace(document.location.hash,"");if(lstCgis){var hash="";if(lstCgis.match("#")){hash=lstCgis.split("#")[1];lstCgis=lstCgis.split("#")[0];}
lstCgis.split("&").each(function(cgis){var cgi=cgis.split("=")[0];var val=cgis.split("=")[1];url=getUrlWithLstParam(url,cgi,val);});url+="#"+hash;}
return url;}
function getUrlWithLstParam(urlBase,cgi,valeur){cgi=cgi.toLowerCase();valeur=valeur.toLowerCase();urlBase=String(urlBase);if(urlBase.match(cgi+"=")){if(!urlBase.match(cgi+"="+valeur)){if(urlBase.match(cgi+"=.*?&")){var reg_exp=RegExp(cgi+"=.*?&","gi");urlBase=urlBase.replace(reg_exp,cgi+"="+valeur+"&");}else{var reg_exp=RegExp(cgi+"=.*","gi");urlBase=urlBase.replace(reg_exp,cgi+"="+valeur);}}}else{if(!urlBase.match("\\?"))urlBase+="?";else urlBase+="&";urlBase+=cgi+"="+valeur;}
return urlBase;}
function trackMe(ident,idpage){var adr="/lib_2/ajax/gereTracker.php";var xhr_local=creeObjHttpRequest();var sending=getInfoSession()+"&ident="+ident+"&idpage="+idpage
xhr_local.onreadystatechange=function(){if(xhr_local&&xhr_local.readyState==4){var reponse=xhr_local.responseText;}}
xhr_local.open("POST",adr,true);xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr_local.send(sending);}function transformChmpFormToSpan(obj){var childs=obj.childNodes;for(var i=0;i<childs.length;i++){var child=childs[i];var id;if((child.tagName=="INPUT"&&child.type=="text")||(child.tagName=="TEXTAREA")){var valeur="";if(child.tagName=="TEXTAREA"){var idObj=child.id;valeur=$(idObj).value;if(!valeur)valeur=child.innerHTML;if(!valeur)valeur=child.value;}else valeur=child.value;var newElem=document.createElement("SPAN");newElem.innerHTML="<strong>"+valeur+"</strong>";obj.replaceChild(newElem,child);}
if(child.tagName=="INPUT"&&(child.type=="checkbox"||child.type=="radio")){if(child.checked||$(child).checked||(child.id&&$(child.id).checked))child.setAttribute("checked","checked");}
if(child.tagName=="SELECT"){if(child.id){var newElem=document.createElement("SPAN");newElem.innerHTML="<strong>"+$(child.id).options[$(child.id).selectedIndex].value+"</strong>";obj.replaceChild(newElem,child);}else obj.removeChild(child);}
if(child.childNodes.length>0)child=transformChmpFormToSpan(child)}
return obj;}
function getTabChmpForm(obj){var childs=obj.childNodes;var tabOut=new Array();var tabFils=new Array();for(var i=0;i<childs.length;i++){var child=childs[i];if((child.tagName=="INPUT"&&child.type=="text")||(child.tagName=="INPUT"&&child.type=="checkbox")||(child.tagName=="TEXTAREA")||(child.tagName=="SELECT")){tabOut.push(child);}
if(child.childNodes.length>0){tabFils.merge(getTabChmpForm(child));}}
if(tabFils.length>0)tabOut.merge(tabFils);return tabOut;}
function supprDomElem(obj){if(obj){var parent=obj.parentNode;if(parent){parent.removeChild(obj);return true;}else return false;}else return false;}
function dupliqueDomElemversHautByObj(obj){if(obj){var parent=obj.parentNode;if(parent){var newObj=obj.cloneNode(true);parent.insertBefore(newObj,obj);newObj=modifIdForObj(newObj);return newObj;}else{return false;}}else{return false;}}
function dupliqueDomElemversBasByObj(obj){if(obj){var parent=obj.parentNode;if(parent){var newObj=obj.cloneNode(true);parent.insertBefore(newObj,obj.nextSibling);newObj=modifIdForObj(newObj);return newObj;}else return false;}else return false;}
function setIdUniqueToObj(obj){if(obj&&!obj.id){var str=new String();if(obj.getAttribute&&obj.getAttribute("class")!="undefined")str=new String(obj.getAttribute("class"));if(str.length==0&&obj.tagName&&obj.tagName!="undefined")str=new String(obj.tagName).toLower();if(str.length==0)str=new String("obj");obj.id=str+"-"+getUniqueId(5);}}
function modifIdForObj(obj){if(!obj)return null;else{if(obj.id){var def=false;var idCurr=new String(obj.id);var re=new RegExp(".*-[0-9]+");if(re.test(idCurr)){var tabChps=idCurr.split("-")
tabChps.pop();idCurr=tabChps.join("-");}
for(var j=1;j<500&&!def;j++){var newId=idCurr+"-"+j;var obj2=document.getElementById(newId);if(!obj2){def=true;obj.id=newId;}}}else setIdUniqueToObj(obj);var childs=obj.childNodes;if(childs&&childs.length){for(var i=0;i<childs.length;i++){var child=childs[i];if(child)child=modifIdForObj(child);}}
return obj;}}
Array.prototype.in_array=function(p_val){for(var i=0,l=this.length;i<l;i++){if(this[i]==p_val){return true;}}
return false;}
Array.prototype.deleteItem=function(p_val){for(var i=0,l=this.length;i<l;i++){if(this[i]==p_val){this[i]="";return true;}}
return false;}
Array.prototype.merge=function(tabAConcat){for(var i=0;i<tabAConcat.length;i++){this.push(tabAConcat[i]);}
return true;}
String.prototype.getTabChInCaract=function(caract){var idx_deb=-1,idx_fin=-1;var tab=new Array();for(var i=0;i<this.length;i++){if(this[i]==caract){if(idx_deb<0)idx_deb=i+1;else{idx_fin=i;var ch=this.substring(idx_deb,idx_fin);tab.push(ch);idx_deb=-1;idx_fin=-1;}}}
return tab;}
String.prototype.remplaceStr=function(chaine_a_remplacer,chaine_remplacement){var idx_deb=-1,idx_fin=-1;idx_deb=this.indexOf(chaine_a_remplacer);var ch_deb=this.substring(0,idx_deb);var ch_fin=this.substring((idx_deb+chaine_a_remplacer.length),this.length);var ch=ch_deb+chaine_remplacement+ch_fin;return new String(ch);}
String.prototype.stripTags=function(){return this.replace(/<\/?[^>]+>/gi,'');}
String.prototype.yaTags=function(){var er=/<\/?[^>]+>/gi;return er.test(this);}
function getTextSelectInDocument(){var txt;if(window.getSelection){txt=window.getSelection().toString();}
else if(document.getSelection){txt=document.getSelection();}
else if(document.selection){txt=document.selection.createRange().text;}
return txt;}
