
var MooTools={'version':'1.2dev','build':'1.2b2'};var Native=function(options){options=options||{};var afterImplement=options.afterImplement||function(){};var generics=options.generics;generics=(generics!==false);var legacy=options.legacy;var initialize=options.initialize;var protect=options.protect;var name=options.name;var object=initialize||legacy;object.constructor=Native;object.$family={name:'native'};if(legacy&&initialize)object.prototype=legacy.prototype;object.prototype.constructor=object;if(name){var family=name.toLowerCase();object.prototype.$family={name:family};Native.typize(object,family);}
var add=function(obj,name,method,force){if(!protect||force||!obj.prototype[name])obj.prototype[name]=method;if(generics)Native.genericize(obj,name,protect);afterImplement.call(obj,name,method);return obj;};object.implement=function(a1,a2,a3){if(typeof a1=='string')return add(this,a1,a2,a3);for(var p in a1)add(this,p,a1[p],a2);return this;};object.alias=function(existing,property,force){existing=this.prototype[existing];if(existing)add(this,property,existing,force);return this;};return object;};Native.implement=function(objects,properties){for(var i=0,l=objects.length;i<l;i++)objects[i].implement(properties);};Native.genericize=function(object,property,check){if((!check||!object[property])&&typeof object.prototype[property]=='function')object[property]=function(){var args=Array.prototype.slice.call(arguments);return object.prototype[property].apply(args.shift(),args);};};Native.typize=function(object,family){if(!object.type)object.type=function(item){return($type(item)===family);};};(function(objects){for(var name in objects)Native.typize(objects[name],name.toLowerCase());})({'Boolean':Boolean,'Native':Native,'Object':Object});(function(objects){for(var name in objects)new Native({name:name,initialize:objects[name],protect:true});})({'String':String,'Function':Function,'Number':Number,'Array':Array,'RegExp':RegExp,'Date':Date});(function(object,methods){for(var i=0,l=methods.length;i<l;i++)Native.genericize(object,methods[i],true);return arguments.callee;})
(Array,['pop','push','reverse','shift','sort','splice','unshift','concat','join','slice','toString','valueOf','indexOf','lastIndexOf'])
(String,['charAt','charCodeAt','concat','indexOf','lastIndexOf','match','replace','search','slice','split','substr','substring','toLowerCase','toUpperCase','valueOf']);function $chk(obj){return!!(obj||obj===0);};function $clear(timer){clearTimeout(timer);clearInterval(timer);return null;};function $defined(obj){return(obj!=undefined);};function $empty(){};function $arguments(i){return function(){return arguments[i];};};function $lambda(value){return(typeof value=='function')?value:function(){return value;};};function $extend(original,extended){for(var key in(extended||{}))original[key]=extended[key];return original;};function $unlink(object){var unlinked=null;switch($type(object)){case'object':unlinked={};for(var p in object)unlinked[p]=$unlink(object[p]);break;case'array':unlinked=[];for(var i=0,l=object.length;i<l;i++)unlinked[i]=$unlink(object[i]);break;default:return object;}
return unlinked;};function $merge(){var mix={};for(var i=0,l=arguments.length;i<l;i++){var object=arguments[i];if($type(object)!='object')continue;for(var key in object){var op=object[key],mp=mix[key];mix[key]=(mp&&$type(op)=='object'&&$type(mp)=='object')?$merge(mp,op):$unlink(op);}}
return mix;};function $pick(){for(var i=0,l=arguments.length;i<l;i++){if($defined(arguments[i]))return arguments[i];}
return null;};function $random(min,max){return Math.floor(Math.random()*(max-min+1)+min);};function $splat(obj){var type=$type(obj);return(type)?((type!='array'&&type!='arguments')?[obj]:obj):[];};var $time=Date.now||function(){return new Date().getTime();};function $try(fn,bind,args){try{return fn.apply(bind,$splat(args));}catch(e){return false;}};function $type(obj){if(obj==undefined)return false;if(obj.$family)return(obj.$family.name=='number'&&!isFinite(obj))?false:obj.$family.name;if(obj.nodeName){switch(obj.nodeType){case 1:return'element';case 3:return(/\S/).test(obj.nodeValue)?'textnode':'whitespace';}}else if(typeof obj.length=='number'){if(obj.callee)return'arguments';else if(obj.item)return'collection';}
return typeof obj;};var Hash=new Native({name:'Hash',initialize:function(object){if($type(object)=='hash')object=$unlink(object.getClean());for(var key in object){if(!this[key])this[key]=object[key];}
return this;}});Hash.implement({getLength:function(){var length=0;for(var key in this){if(this.hasOwnProperty(key))length++;}
return length;},forEach:function(fn,bind){for(var key in this){if(this.hasOwnProperty(key))fn.call(bind,this[key],key,this);}},getClean:function(){var clean={};for(var key in this){if(this.hasOwnProperty(key))clean[key]=this[key];}
return clean;}});Hash.alias('forEach','each');function $H(object){return new Hash(object);};Array.implement({forEach:function(fn,bind){for(var i=0,l=this.length;i<l;i++)fn.call(bind,this[i],i,this);}});Array.alias('forEach','each');function $A(iterable){if($type(iterable)=='collection'){var array=[];for(var i=0,l=iterable.length;i<l;i++)array[i]=iterable[i];return array;}
return Array.prototype.slice.call(iterable);};function $each(iterable,fn,bind){var type=$type(iterable);((type=='arguments'||type=='collection'||type=='array')?Array:Hash).each(iterable,fn,bind);};$A=function(iterable,start,length){if(Browser.Engine.trident&&$type(iterable)=='collection'){start=start||0;if(start<0)start=iterable.length+start;length=length||(iterable.length-start);var array=[];for(var i=0;i<length;i++)array[i]=iterable[start++];return array;}
start=(start||0)+((start<0)?iterable.length:0);var end=((!$chk(length))?iterable.length:length)+start;return Array.prototype.slice.call(iterable,start,end);};(function(){var natives=[Array,Function,String,RegExp,Number];for(var i=0,l=natives.length;i<l;i++)natives[i].extend=natives[i].implement;})();var Browser=new Hash({Engine:{name:'unknown',version:''},Platform:{name:(navigator.platform.match(/mac|win|linux|nix/i)||['other'])[0].toLowerCase()},Features:{xhr:!!(window.XMLHttpRequest),xpath:!!(document.evaluate),air:!!(window.runtime)}});if(window.opera)Browser.Engine.name='presto';else if(window.ActiveXObject)Browser.Engine={name:'trident',version:(Browser.Features.xhr)?5:4};else if(!navigator.taintEnabled)Browser.Engine={name:'webkit',version:(Browser.Features.xpath)?420:419};else if(document.getBoxObjectFor!=null)Browser.Engine.name='gecko';Browser.Engine[Browser.Engine.name]=Browser.Engine[Browser.Engine.name+Browser.Engine.version]=true;Browser.Platform[Browser.Platform.name]=true;function $exec(text){if(!text)return text;if(window.execScript){window.execScript(text);}else{var script=document.createElement('script');script.setAttribute('type','text/javascript');script.text=text;document.head.appendChild(script);document.head.removeChild(script);}
return text;};Native.UID=0;var Window=new Native({name:'Window',legacy:window.Window,initialize:function(win){if(!win.Element){win.Element=$empty;if(Browser.Engine.webkit)win.document.createElement("iframe");win.Element.prototype=(Browser.Engine.webkit)?window["[[DOMElement.prototype]]"]:{};}
win.uid=Native.UID++;return $extend(win,Window.Prototype);},afterImplement:function(property,value){window[property]=Window.Prototype[property]=value;}});Window.Prototype={$family:{name:'window'}};new Window(window);var Document=new Native({name:'Document',legacy:window.Document,initialize:function(doc){doc.head=doc.getElementsByTagName('head')[0];doc.html=doc.getElementsByTagName('html')[0];doc.window=doc.defaultView||doc.parentWindow;if(Browser.Engine.trident4)$try(function(){doc.execCommand("BackgroundImageCache",false,true);});doc.uid=Native.UID++;return $extend(doc,Document.Prototype);},afterImplement:function(property,value){document[property]=Document.Prototype[property]=value;}});Document.Prototype={$family:{name:'document'}};new Document(document);window.extend=document.extend=function(properties){for(var property in properties)this[property]=properties[property];};window.extend(Browser.Engine);window.ie=window.trident;window.ie6=window.trident4;window.ie7=window.trident5;Array.implement({every:function(fn,bind){for(var i=0,l=this.length;i<l;i++){if(!fn.call(bind,this[i],i,this))return false;}
return true;},filter:function(fn,bind){var results=[];for(var i=0,l=this.length;i<l;i++){if(fn.call(bind,this[i],i,this))results.push(this[i]);}
return results;},clean:function(){return this.filter($arguments(0));},indexOf:function(item,from){var len=this.length;for(var i=(from<0)?Math.max(0,len+from):from||0;i<len;i++){if(this[i]===item)return i;}
return-1;},map:function(fn,bind){var results=[];for(var i=0,l=this.length;i<l;i++)results[i]=fn.call(bind,this[i],i,this);return results;},some:function(fn,bind){for(var i=0,l=this.length;i<l;i++){if(fn.call(bind,this[i],i,this))return true;}
return false;},associate:function(keys){var obj={},length=Math.min(this.length,keys.length);for(var i=0;i<length;i++)obj[keys[i]]=this[i];return obj;},link:function(object){var result={};for(var i=0,l=this.length;i<l;i++){for(var key in object){if(object[key](this[i])){result[key]=this[i];delete object[key];break;}}}
return result;},contains:function(item,from){return this.indexOf(item,from)!=-1;},extend:function(array){for(var i=0,j=array.length;i<j;i++)this.push(array[i]);return this;},getLast:function(){return(this.length)?this[this.length-1]:null;},getRandom:function(){return(this.length)?this[$random(0,this.length-1)]:null;},include:function(item){if(!this.contains(item))this.push(item);return this;},merge:function(array){for(var i=0,l=array.length;i<l;i++)this.include(array[i]);return this;},remove:function(item){for(var i=this.length;i--;i){if(this[i]===item)this.splice(i,1);}
return this;},empty:function(){this.length=0;return this;},flatten:function(){var array=[];for(var i=0,l=this.length;i<l;i++){var type=$type(this[i]);if(!type)continue;array=array.concat((type=='array'||type=='collection'||type=='arguments')?Array.flatten(this[i]):this[i]);}
return array;},hexToRgb:function(array){if(this.length!=3)return null;var rgb=this.map(function(value){if(value.length==1)value+=value;return value.toInt(16);});return(array)?rgb:'rgb('+rgb+')';},rgbToHex:function(array){if(this.length<3)return null;if(this.length==4&&this[3]==0&&!array)return'transparent';var hex=[];for(var i=0;i<3;i++){var bit=(this[i]-0).toString(16);hex.push((bit.length==1)?'0'+bit:bit);}
return(array)?hex:'#'+hex.join('');}});Array.implement({copy:function(start,length){return $A(this,start,length);}});Function.implement({extend:function(properties){for(var property in properties)this[property]=properties[property];return this;},create:function(options){var self=this;options=options||{};return function(event){var args=options.arguments;args=$defined(args)?$splat(args):Array.slice(arguments,(options.event)?1:0);if(options.event)args=[event||window.event].extend(args);var returns=function(){return self.apply(options.bind||null,args);};if(options.delay)return setTimeout(returns,options.delay);if(options.periodical)return setInterval(returns,options.periodical);if(options.attempt)return $try(returns);return returns();};},pass:function(args,bind){return this.create({'arguments':args,'bind':bind});},attempt:function(args,bind){return this.create({'arguments':args,'bind':bind,'attempt':true})();},bind:function(bind,args){return this.create({'bind':bind,'arguments':args});},bindWithEvent:function(bind,args){return this.create({'bind':bind,'event':true,'arguments':args});},delay:function(delay,bind,args){return this.create({'delay':delay,'bind':bind,'arguments':args})();},periodical:function(interval,bind,args){return this.create({'periodical':interval,'bind':bind,'arguments':args})();},run:function(args,bind){return this.apply(bind,$splat(args));}});Function.extend({bindAsEventListener:function(bind,args){return this.create({'bind':bind,'event':true,'arguments':args});}});Function.empty=$empty;Number.implement({limit:function(min,max){return Math.min(max,Math.max(min,this));},round:function(precision){precision=Math.pow(10,precision||0);return Math.round(this*precision)/precision;},times:function(fn,bind){for(var i=0;i<this;i++)fn.call(bind,i,this);},toFloat:function(){return parseFloat(this);},toInt:function(base){return parseInt(this,base||10);}});Number.alias('times','each');(function(math){var methods={};math.each(function(name){if(!Number[name])methods[name]=function(){return Math[name].apply(null,[this].concat($A(arguments)));};});Number.implement(methods);})(['abs','acos','asin','atan','atan2','ceil','cos','exp','floor','log','max','min','pow','sin','sqrt','tan']);String.implement({test:function(regex,params){return((typeof regex=='string')?new RegExp(regex,params):regex).test(this);},contains:function(string,separator){return(separator)?(separator+this+separator).indexOf(separator+string+separator)>-1:this.indexOf(string)>-1;},trim:function(){return this.replace(/^\s+|\s+$/g,'');},clean:function(){return this.replace(/\s+/g,' ').trim();},camelCase:function(){return this.replace(/-\D/g,function(match){return match.charAt(1).toUpperCase();});},hyphenate:function(){return this.replace(/[A-Z]/g,function(match){return('-'+match.charAt(0).toLowerCase());});},capitalize:function(){return this.replace(/\b[a-z]/g,function(match){return match.toUpperCase();});},escapeRegExp:function(){return this.replace(/([-.*+?^${}()|[\]\/\\])/g,'\\$1');},toInt:function(base){return parseInt(this,base||10);},toFloat:function(){return parseFloat(this);},hexToRgb:function(array){var hex=this.match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})$/);return(hex)?hex.slice(1).hexToRgb(array):null;},rgbToHex:function(array){var rgb=this.match(/\d{1,3}/g);return(rgb)?rgb.rgbToHex(array):null;},stripScripts:function(option){var scripts='';var text=this.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi,function(){scripts+=arguments[1]+'\n';return'';});if(option===true)$exec(scripts);else if($type(option)=='function')option(scripts,text);return text;}});Hash.implement({has:Object.prototype.hasOwnProperty,keyOf:function(value){for(var key in this){if(this.hasOwnProperty(key)&&this[key]===value)return key;}
return null;},hasValue:function(value){return(Hash.keyOf(this,value)!==null);},extend:function(properties){Hash.each(properties,function(value,key){Hash.set(this,key,value);},this);return this;},merge:function(properties){Hash.each(properties,function(value,key){Hash.include(this,key,value);},this);return this;},remove:function(key){if(this.hasOwnProperty(key))delete this[key];return this;},get:function(key){return(this.hasOwnProperty(key))?this[key]:null;},set:function(key,value){if(!this[key]||this.hasOwnProperty(key))this[key]=value;return this;},empty:function(){Hash.each(this,function(value,key){delete this[key];},this);return this;},include:function(key,value){var k=this[key];if(!$defined(k))this[key]=value;return this;},map:function(fn,bind){var results=new Hash;Hash.each(this,function(value,key){results.set(key,fn.call(bind,value,key,this));},this);return results;},filter:function(fn,bind){var results=new Hash;Hash.each(this,function(value,key){if(fn.call(bind,value,key,this))results.set(key,value);},this);return results;},every:function(fn,bind){for(var key in this){if(this.hasOwnProperty(key)&&!fn.call(bind,this[key],key))return false;}
return true;},some:function(fn,bind){for(var key in this){if(this.hasOwnProperty(key)&&fn.call(bind,this[key],key))return true;}
return false;},getKeys:function(){var keys=[];Hash.each(this,function(value,key){keys.push(key);});return keys;},getValues:function(){var values=[];Hash.each(this,function(value){values.push(value);});return values;},toQueryString:function(){var queryString=[];Hash.each(this,function(value,key){$splat(value).each(function(val){queryString.push(key+'='+encodeURIComponent(val));});});return queryString.join('&');}});Hash.alias('keyOf','indexOf').alias('hasValue','contains').alias('remove','erase');Hash.alias('getKeys','keys').alias('getValues','values').alias('has','hasKey');var Abstract=Hash;var Event=new Native({name:'Event',initialize:function(event,win){win=win||window;event=event||win.event;if(event.$extended)return event;this.$extended=true;var type=event.type;var target=event.target||event.srcElement;while(target&&target.nodeType==3)target=target.parentNode;if(type.match(/DOMMouseScroll|mousewheel/)){var wheel=(event.wheelDelta)?event.wheelDelta/120:-(event.detail||0)/3;}else if(type.test(/key/)){var code=event.which||event.keyCode;var key=Event.Keys.keyOf(code);if(type=='keydown'){var fKey=code-111;if(fKey>0&&fKey<13)key='f'+fKey;}
key=key||String.fromCharCode(code).toLowerCase();}else if(type.match(/(click|mouse|menu)/i)){var page={x:event.pageX||event.clientX+win.document.documentElement.scrollLeft,y:event.pageY||event.clientY+win.document.documentElement.scrollTop};var client={x:event.pageX?event.pageX-win.pageXOffset:event.clientX,y:event.pageY?event.pageY-win.pageYOffset:event.clientY};var rightClick=(event.which==3)||(event.button==2);var related=null;if(type.match(/over|out/)){switch(type){case'mouseover':related=event.relatedTarget||event.fromElement;break;case'mouseout':related=event.relatedTarget||event.toElement;}
if((function(){while(related&&related.nodeType==3)related=related.parentNode;}).create({attempt:Browser.Engine.gecko})()===false)related=false;}}
return $extend(this,{event:event,type:type,page:page,client:client,rightClick:rightClick,wheel:wheel,relatedTarget:related,target:target,code:code,key:key,shift:event.shiftKey,control:event.ctrlKey,alt:event.altKey,meta:event.metaKey});}});Event.Keys=new Hash({'enter':13,'up':38,'down':40,'left':37,'right':39,'esc':27,'space':32,'backspace':8,'tab':9,'delete':46});Event.implement({stop:function(){return this.stopPropagation().preventDefault();},stopPropagation:function(){if(this.event.stopPropagation)this.event.stopPropagation();else this.event.cancelBubble=true;return this;},preventDefault:function(){if(this.event.preventDefault)this.event.preventDefault();else this.event.returnValue=false;return this;}});var Class=new Native({name:'Class',initialize:function(properties){properties=properties||{};var klass=function(){for(var property in this)this[property]=$unlink(this[property]);this.parent=null;['Implements','Extends'].each(function(Property){if(!this[Property])return;Class[Property](this,this[Property]);delete this[Property];},this);this.constructor=klass;var self=(arguments[0]!==$empty&&this.initialize)?this.initialize.apply(this,arguments):this;if(this.options&&this.options.initialize)this.options.initialize.call(this);return self;};$extend(klass,this);klass.constructor=Class;klass.prototype=properties;return klass;}});Class.implement({implement:function(){Class.Implements(this.prototype,Array.slice(arguments));return this;}});Class.Implements=function(self,klasses){$splat(klasses).each(function(klass){$extend(self,($type(klass)=='class')?new klass($empty):klass);});};Class.Extends=function(self,klass){klass=new klass($empty);for(var property in klass){var kp=klass[property];var sp=self[property];self[property]=(function(previous,current){if($defined(current)&&previous!=current){var type=$type(current);if(type!=$type(previous))return current;switch(type){case'function':return function(){current.parent=self.parent=previous.bind(this);var value=current.apply(this,arguments);self.parent=current.parent;return value;};case'object':return $merge(previous,current);default:return current;}}
return previous;})(kp,sp);}};Class.prototype.extend=function(properties){properties.Extends=this;return new Class(properties);};Class.empty=$empty;var Chain=new Class({chain:function(){this.$chain=(this.$chain||[]).extend(arguments);return this;},callChain:function(){if(this.$chain&&this.$chain.length)this.$chain.shift().apply(this,arguments);return this;},clearChain:function(){if(this.$chain)this.$chain.empty();return this;}});var Events=new Class({addEvent:function(type,fn,internal){if(fn!=$empty){this.$events=this.$events||{};this.$events[type]=this.$events[type]||[];this.$events[type].include(fn);if(internal)fn.internal=true;}
return this;},addEvents:function(events){for(var type in events)this.addEvent(type,events[type]);return this;},fireEvent:function(type,args,delay){if(!this.$events||!this.$events[type])return this;this.$events[type].each(function(fn){fn.create({'bind':this,'delay':delay,'arguments':args})();},this);return this;},removeEvent:function(type,fn){if(!this.$events||!this.$events[type])return this;if(!fn.internal)this.$events[type].remove(fn);return this;},removeEvents:function(type){for(var e in this.$events){if(type&&type!=e)continue;var fns=this.$events[e];for(var i=fns.length;i--;i)this.removeEvent(e,fns[i]);}
return this;}});var Options=new Class({setOptions:function(){this.options=$merge.run([this.options].extend(arguments));if(!this.addEvent)return this;for(var option in this.options){if($type(this.options[option])!='function'||!(/^on[A-Z]/).test(option))continue;this.addEvent(option,this.options[option]);delete this.options[option];}
return this;}});Document.implement({newElement:function(tag,props){if(Browser.Engine.trident&&props){['name','type','checked'].each(function(attribute){if(!props[attribute])return;tag+=' '+attribute+'="'+props[attribute]+'"';if(attribute!='checked')delete props[attribute];});tag='<'+tag+'>';}
return $.element(this.createElement(tag)).set(props);},newTextNode:function(text){return this.createTextNode(text);},getDocument:function(){return this;},getWindow:function(){return this.defaultView||this.parentWindow;}});var Element=new Native({name:'Element',legacy:window.Element,initialize:function(tag,props){var konstructor=Element.Constructors.get(tag);if(konstructor)return konstructor(props);if(typeof tag=='string')return document.newElement(tag,props);return $(tag).set(props);},afterImplement:function(key,value){if(!Array[key])Elements.implement(key,Elements.multi(key));Element.Prototype[key]=value;}});Element.Prototype={$family:{name:'element'}};Element.Constructors=new Hash;var IFrame=new Native({name:'IFrame',generics:false,initialize:function(){Native.UID++;var params=Array.link(arguments,{properties:Object.type,iframe:$defined});var props=params.properties||{};var iframe=$(params.iframe)||false;var onload=props.onload||$empty;delete props.onload;props.id=props.name=$pick(props.id,props.name,iframe.id,iframe.name,'IFrame_'+Native.UID);((iframe=iframe||new Element('iframe'))).set(props);var onFrameLoad=function(){var host=$try(function(){return iframe.contentWindow.location.host;});if(host&&host==window.location.host){iframe.window=iframe.contentWindow;var win=new Window(iframe.window);var doc=new Document(iframe.window.document);$extend(win.Element.prototype,Element.Prototype);}
onload.call(iframe.contentWindow);};(!window.frames[props.id])?iframe.addListener('load',onFrameLoad):onFrameLoad();return iframe;}});var Elements=new Native({initialize:function(elements,options){options=$extend({ddup:true,cash:true},options);elements=elements||[];if(options.ddup||options.cash){var uniques={};var returned=[];for(var i=0,l=elements.length;i<l;i++){var el=$.element(elements[i],!options.cash);if(options.ddup){if(uniques[el.uid])continue;uniques[el.uid]=true;}
returned.push(el);}
elements=returned;}
return(options.cash)?$extend(elements,this):elements;}});Elements.implement({filterBy:function(filter){if(!filter)return this;return new Elements(this.filter((typeof filter=='string')?function(item){return item.match(filter);}:filter));}});Elements.multi=function(property){return function(){var items=[];var elements=true;for(var i=0,j=this.length;i<j;i++){var returns=this[i][property].apply(this[i],arguments);items.push(returns);if(elements)elements=($type(returns)=='element');}
return(elements)?new Elements(items):items;};};Window.implement({$:function(el,notrash){if(el&&el.$attributes)return el;var type=$type(el);return($[type])?$[type](el,notrash,this.document):null;},$$:function(selector){if(arguments.length==1&&typeof selector=='string')return this.document.getElements(selector);var elements=[];var args=Array.flatten(arguments);for(var i=0,l=args.length;i<l;i++){var item=args[i];switch($type(item)){case'element':item=[item];break;case'string':item=this.document.getElements(item,true);break;default:item=false;}
if(item)elements.extend(item);}
return new Elements(elements);},getDocument:function(){return this.document;},getWindow:function(){return this;}});$.string=function(id,notrash,doc){id=doc.getElementById(id);return(id)?$.element(id,notrash):null;};$.element=function(el,notrash){el.uid=el.uid||[Native.UID++];if(!notrash&&Garbage.collect(el)&&!el.$family)$extend(el,Element.Prototype);return el;};$.textnode=$.window=$.document=$arguments(0);$.number=function(uid){return Garbage.Elements[uid]||null;};Native.implement([Element,Document],{getElement:function(selector,notrash){return $(this.getElements(selector,true)[0]||null,notrash);},getElements:function(tags,nocash){tags=tags.split(',');var elements=[];var ddup=(tags.length>1);tags.each(function(tag){var partial=this.getElementsByTagName(tag.trim());(ddup)?elements.extend(partial):elements=partial;},this);return new Elements(elements,{ddup:ddup,cash:!nocash});}});Element.Storage={get:function(uid){return(this[uid]=this[uid]||{});}};Element.Inserters=new Hash({before:function(context,element){if(element.parentNode)element.parentNode.insertBefore(context,element);},after:function(context,element){if(!element.parentNode)return;var next=element.nextSibling;(next)?element.parentNode.insertBefore(context,next):element.parentNode.appendChild(context);},bottom:function(context,element){element.appendChild(context);},top:function(context,element){var first=element.firstChild;(first)?element.insertBefore(context,first):element.appendChild(context);}});Element.Inserters.inside=Element.Inserters.bottom;Element.Inserters.each(function(value,key){var Key=key.capitalize();Element.implement('inject'+Key,function(el){Element.Inserters[key](this,$(el,true));return this;});Element.implement('grab'+Key,function(el){Element.Inserters[key]($(el,true),this);return this;});});Element.implement({getDocument:function(){return this.ownerDocument;},getWindow:function(){return this.ownerDocument.getWindow();},getElementById:function(id,nocash){var el=this.ownerDocument.getElementById(id);if(!el)return null;for(var parent=el.parentNode;parent!=this;parent=parent.parentNode){if(!parent)return null;}
return $.element(el,nocash);},set:function(prop,value){switch($type(prop)){case'object':for(var p in prop)this.set(p,prop[p]);break;case'string':var property=Element.Properties.get(prop);(property&&property.set)?property.set.apply(this,Array.slice(arguments,1)):this.setProperty(prop,value);}
return this;},get:function(prop){var property=Element.Properties.get(prop);return(property&&property.get)?property.get.apply(this,Array.slice(arguments,1)):this.getProperty(prop);},erase:function(prop){var property=Element.Properties.get(prop);(property&&property.erase)?property.erase.apply(this,Array.slice(arguments,1)):this.removeProperty(prop);return this;},match:function(tag){return(!tag||Element.get(this,'tag')==tag);},inject:function(el,where){Element.Inserters.get(where||'bottom')(this,$(el,true));return this;},wraps:function(el,where){el=$(el,true);return this.replaces(el).grab(el);},grab:function(el,where){Element.Inserters.get(where||'bottom')($(el,true),this);return this;},appendText:function(text,where){return this.grab(this.getDocument().newTextNode(text),where);},adopt:function(){Array.flatten(arguments).each(function(element){this.appendChild($(element,true));},this);return this;},dispose:function(){return this.parentNode.removeChild(this);},clone:function(contents){var temp=new Element('div').grab(this.cloneNode(contents!==false));Array.each(temp.getElementsByTagName('*'),function(element){if(element.id)element.removeAttribute('id');});return new Element('div').set('html',temp.innerHTML).getFirst();},replaces:function(el){el=$(el,true);el.parentNode.replaceChild(this,el);return this;},hasClass:function(className){return this.className.contains(className,' ');},addClass:function(className){if(!this.hasClass(className))this.className=(this.className+' '+className).clean();return this;},removeClass:function(className){this.className=this.className.replace(new RegExp('(^|\\s)'+className+'(?:\\s|$)'),'$1').clean();return this;},toggleClass:function(className){return this.hasClass(className)?this.removeClass(className):this.addClass(className);},getComputedStyle:function(property){var result=null;if(this.currentStyle){result=this.currentStyle[property.camelCase()];}else{var computed=this.getWindow().getComputedStyle(this,null);if(computed)result=computed.getPropertyValue([property.hyphenate()]);}
return result;},empty:function(){var elements=$A(this.getElementsByTagName('*'));elements.each(function(element){$try(Element.prototype.dispose,element);});Garbage.trash(elements);$try(Element.prototype.set,this,['html','']);return this;},destroy:function(){Garbage.kill(this.empty().dispose());return null;},toQueryString:function(){var queryString=[];this.getElements('input, select, textarea',true).each(function(el){var name=el.name,type=el.type,value=Element.get(el,'value');if(value===false||!name||el.disabled)return;$splat(value).each(function(val){queryString.push(name+'='+encodeURIComponent(val));});});return queryString.join('&');},getProperty:function(attribute){var EA=Element.Attributes,key=EA.Props[attribute];var value=(key)?this[key]:this.getAttribute(attribute);return(EA.Bools[attribute])?!!value:value;},getProperties:function(){var args=$A(arguments);return args.map(function(attr){return this.getProperty(attr);},this).associate(args);},setProperty:function(attribute,value){var EA=Element.Attributes,key=EA.Props[attribute],hasValue=$defined(value);if(key&&EA.Bools[attribute])value=(value||!hasValue)?true:false;else if(!hasValue)return this.removeProperty(attribute);(key)?this[key]=value:this.setAttribute(attribute,value);return this;},setProperties:function(attributes){for(var attribute in attributes)this.setProperty(attribute,attributes[attribute]);return this;},removeProperty:function(attribute){var EA=Element.Attributes,key=EA.Props[attribute],isBool=(key&&EA.Bools[attribute]);(key)?this[key]=(isBool)?false:'':this.removeAttribute(attribute);return this;},removeProperties:function(){Array.each(arguments,this.removeProperty,this);return this;}});(function(){var walk=function(element,walk,start,match,all,nocash){var el=element[start||walk];var elements=[];while(el){if(el.nodeType==1&&Element.match(el,match)){elements.push(el);if(!all)break;}
el=el[walk];}
return(all)?new Elements(elements,{ddup:false,cash:!nocash}):$(elements[0],nocash);};Element.implement({getPrevious:function(match,nocash){return walk(this,'previousSibling',null,match,false,nocash);},getAllPrevious:function(match,nocash){return walk(this,'previousSibling',null,match,true,nocash);},getNext:function(match,nocash){return walk(this,'nextSibling',null,match,false,nocash);},getAllNext:function(match,nocash){return walk(this,'nextSibling',null,match,true,nocash);},getFirst:function(match,nocash){return walk(this,'nextSibling','firstChild',match,false,nocash);},getLast:function(match,nocash){return walk(this,'previousSibling','lastChild',match,false,nocash);},getParent:function(match,nocash){return walk(this,'parentNode',null,match,false,nocash);},getParents:function(match,nocash){return walk(this,'parentNode',null,match,true,nocash);},getChildren:function(match,nocash){return walk(this,'nextSibling','firstChild',match,true,nocash);},hasChild:function(el){if(!(el=$(el,true)))return false;return Element.getParents(el,this.get('tag'),true).contains(this);}});})();Element.alias('dispose','remove').alias('getLast','getLastChild');Element.Properties=new Hash;Element.Properties.style={set:function(style){this.style.cssText=style;},get:function(){return this.style.cssText;},erase:function(){this.style.cssText='';}};Element.Properties.value={get:function(){switch(Element.get(this,'tag')){case'select':var values=[];Array.each(this.options,function(option){if(option.selected)values.push(option.value);});return(this.multiple)?values:values[0];case'input':if(['checkbox','radio'].contains(this.type)&&!this.checked)return false;default:return $pick(this.value,false);}}};Element.Properties.tag={get:function(){return this.tagName.toLowerCase();}};Element.Properties.html={set:function(){return this.innerHTML=Array.flatten(arguments).join('');}};Element.implement({getText:function(){return this.get('text');},setText:function(text){return this.set('text',text);},setHTML:function(){return this.set('html',arguments);},getHTML:function(){return this.get('html');},getTag:function(){return this.get('tag');}});Native.implement([Element,Window,Document],{addListener:function(type,fn){if(this.addEventListener)this.addEventListener(type,fn,false);else this.attachEvent('on'+type,fn);return this;},removeListener:function(type,fn){if(this.removeEventListener)this.removeEventListener(type,fn,false);else this.detachEvent('on'+type,fn);return this;},retrieve:function(property,dflt){var storage=Element.Storage.get(this.uid);var prop=storage[property];if($defined(dflt)&&!$defined(prop))prop=storage[property]=dflt;return $pick(prop);},store:function(property,value){var storage=Element.Storage.get(this.uid);storage[property]=value;return this;},eliminate:function(property){var storage=Element.Storage.get(this.uid);delete storage[property];return this;}});Element.Attributes=new Hash({Props:{'html':'innerHTML','class':'className','for':'htmlFor','text':(Browser.Engine.trident)?'innerText':'textContent'},Bools:['compact','nowrap','ismap','declare','noshade','checked','disabled','readonly','multiple','selected','noresize','defer'],Camels:['value','accessKey','cellPadding','cellSpacing','colSpan','frameBorder','maxLength','readOnly','rowSpan','tabIndex','useMap']});(function(EA){var EAB=EA.Bools,EAC=EA.Camels;EA.Bools=EAB=EAB.associate(EAB);Hash.extend(Hash.merge(EA.Props,EAB),EAC.associate(EAC.map(function(v){return v.toLowerCase();})));EA.remove('Camels');})(Element.Attributes);var Garbage={Elements:{},ignored:{object:1,embed:1,OBJECT:1,EMBED:1},collect:function(el){if(el.$attributes)return true;if(Garbage.ignored[el.tagName])return false;Garbage.Elements[el.uid]=el;el.$attributes={};return true;},trash:function(elements){for(var i=elements.length,el;i--;i)Garbage.kill(elements[i]);},kill:function(el){if(!el||!el.$attributes)return;delete Garbage.Elements[el.uid];if(el.retrieve('events'))el.removeEvents();for(var p in el.$attributes)el.$attributes[p]=null;if(Browser.Engine.trident){for(var d in Element.Prototype)el[d]=null;}
el.$attributes=el.uid=null;},empty:function(){for(var uid in Garbage.Elements)Garbage.kill(Garbage.Elements[uid]);}};window.addListener('beforeunload',function(){window.addListener('unload',Garbage.empty);if(Browser.Engine.trident)window.addListener('unload',CollectGarbage);});Element.extend=Element.implement;Elements.extend=Elements.implement;Element.implement({getFormElements:function(){return this.getElements('input, textarea, select');},replaceWith:function(el){el=$(el);this.parentNode.replaceChild(el,this);return el;},removeElements:function(){return this.dispose();},remove:function(){return this.dispose();},getValue:function(){return this.get('value');}});Element.Properties.events={set:function(events){this.addEvents(events);}};Native.implement([Element,Window,Document],{addEvent:function(type,fn){var events=this.retrieve('events',{});events[type]=events[type]||{'keys':[],'values':[]};if(events[type].keys.contains(fn))return this;events[type].keys.push(fn);var realType=type,custom=Element.Events.get(type),condition=fn,self=this;if(custom){if(custom.onAdd)custom.onAdd.call(this,fn);if(custom.condition){condition=function(event){if(custom.condition.call(this,event))return fn.call(this,event);return false;};}
realType=custom.base||realType;}
var defn=function(){return fn.call(self);};var nativeEvent=Element.NativeEvents[realType]||0;if(nativeEvent){if(nativeEvent==2){defn=function(event){event=new Event(event,self.getWindow());if(condition.call(self,event)===false)event.stop();};}
this.addListener(realType,defn);}
events[type].values.push(defn);return this;},removeEvent:function(type,fn){var events=this.retrieve('events');if(!events||!events[type])return this;var pos=events[type].keys.indexOf(fn);if(pos==-1)return this;var key=events[type].keys.splice(pos,1)[0];var value=events[type].values.splice(pos,1)[0];var custom=Element.Events.get(type);if(custom){if(custom.onRemove)custom.onRemove.call(this,fn);type=custom.base||type;}
return(Element.NativeEvents[type])?this.removeListener(type,value):this;},addEvents:function(events){for(var event in events)this.addEvent(event,events[event]);return this;},removeEvents:function(type){var events=this.retrieve('events');if(!events)return this;if(!type){for(var evType in events)this.removeEvents(evType);events=null;}else if(events[type]){while(events[type].keys[0])this.removeEvent(type,events[type].keys[0]);events[type]=null;}
return this;},fireEvent:function(type,args,delay){var events=this.retrieve('events');if(!events||!events[type])return this;events[type].keys.each(function(fn){fn.create({'bind':this,'delay':delay,'arguments':args})();},this);return this;},cloneEvents:function(from,type){from=$(from);var fevents=from.retrieve('events');if(!fevents)return this;if(!type){for(var evType in fevents)this.cloneEvents(from,evType);}else if(fevents[type]){fevents[type].keys.each(function(fn){this.addEvent(type,fn);},this);}
return this;}});Element.NativeEvents={'click':2,'dblclick':2,'mouseup':2,'mousedown':2,'contextmenu':2,'mousewheel':2,'DOMMouseScroll':2,'mouseover':2,'mouseout':2,'mousemove':2,'selectstart':2,'selectend':2,'keydown':2,'keypress':2,'keyup':2,'focus':2,'blur':2,'change':2,'reset':2,'select':2,'submit':2,'load':1,'unload':1,'beforeunload':1,'resize':1,'move':1,'DOMContentLoaded':1,'readystatechange':1,'error':1,'abort':1,'scroll':1};(function(){var checkRelatedTarget=function(event){var related=event.relatedTarget;if(!related)return true;return($type(this)!='document'&&related!=this&&related.prefix!='xul'&&!this.hasChild(related));};Element.Events=new Hash({mouseenter:{base:'mouseover',condition:checkRelatedTarget},mouseleave:{base:'mouseout',condition:checkRelatedTarget},mousewheel:{base:(Browser.Engine.gecko)?'DOMMouseScroll':'mousewheel'}});})();Event.keys=Event.Keys;Element.Properties.styles={set:function(styles){this.setStyles(styles);}};Element.Properties.opacity={set:function(opacity,novisibility){if(!novisibility){if(opacity==0){if(this.style.visibility!='hidden')this.style.visibility='hidden';}else{if(this.style.visibility!='visible')this.style.visibility='visible';}}
if(!this.currentStyle||!this.currentStyle.hasLayout)this.style.zoom=1;if(Browser.Engine.trident)this.style.filter=(opacity==1)?'':'alpha(opacity='+opacity*100+')';this.style.opacity=opacity;this.store('opacity',opacity);},get:function(){return this.retrieve('opacity',1);}};Element.implement({setOpacity:function(value){return this.set('opacity',value,true);},getOpacity:function(){return this.get('opacity');},setStyle:function(property,value){switch(property){case'opacity':return this.set('opacity',parseFloat(value));case'float':property=(Browser.Engine.trident)?'styleFloat':'cssFloat';}
property=property.camelCase();if($type(value)!='string'){var map=(Element.Styles.get(property)||'@').split(' ');value=$splat(value).map(function(val,i){if(!map[i])return'';return($type(val)=='number')?map[i].replace('@',Math.round(val)):val;}).join(' ');}else if(value==String(Number(value))){value=Math.round(value);}
this.style[property]=value;return this;},getStyle:function(property){switch(property){case'opacity':return this.get('opacity');case'float':property=(Browser.Engine.trident)?'styleFloat':'cssFloat';}
property=property.camelCase();var result=this.style[property];if(!$chk(result)){result=[];for(var style in Element.ShortStyles){if(property!=style)continue;for(var s in Element.ShortStyles[style])result.push(this.getStyle(s));return result.join(' ');}
result=this.getComputedStyle(property);}
if(result){result=String(result);var color=result.match(/rgba?\([\d\s,]+\)/);if(color)result=result.replace(color[0],color[0].rgbToHex());}
if(Browser.Engine.presto||(Browser.Engine.trident&&!$chk(parseInt(result)))){if(property.test(/^(height|width)$/)){var values=(property=='width')?['left','right']:['top','bottom'],size=0;values.each(function(value){size+=this.getStyle('border-'+value+'-width').toInt()+this.getStyle('padding-'+value).toInt();},this);return this['offset'+property.capitalize()]-size+'px';}
if(Browser.Engine.presto&&String(result).test('px'))return result;if(property.test(/(border(.+)Width|margin|padding)/))return'0px';}
return result;},setStyles:function(styles){for(var style in styles)this.setStyle(style,styles[style]);return this;},getStyles:function(){var result={};Array.each(arguments,function(key){result[key]=this.getStyle(key);},this);return result;}});Element.Styles=new Hash({width:'@px',height:'@px',left:'@px',top:'@px',bottom:'@px',right:'@px',maxWidth:'@px',maxHeight:'@px',backgroundColor:'rgb(@, @, @)',backgroundPosition:'@px @px',color:'rgb(@, @, @)',fontSize:'@px',letterSpacing:'@px',lineHeight:'@px',clip:'rect(@px @px @px @px)',margin:'@px @px @px @px',padding:'@px @px @px @px',border:'@px @ rgb(@, @, @) @px @ rgb(@, @, @) @px @ rgb(@, @, @)',borderWidth:'@px @px @px @px',borderStyle:'@ @ @ @',borderColor:'rgb(@, @, @) rgb(@, @, @) rgb(@, @, @) rgb(@, @, @)',zIndex:'@','zoom':'@',fontWeight:'@',textIndent:'@px',opacity:'@'});Element.ShortStyles={'margin':{},'padding':{},'border':{},'borderWidth':{},'borderStyle':{},'borderColor':{}};['Top','Right','Bottom','Left'].each(function(direction){var Short=Element.ShortStyles;var All=Element.Styles;['margin','padding'].each(function(style){var sd=style+direction;Short[style][sd]=All[sd]='@px';});var bd='border'+direction;Short.border[bd]=All[bd]='@px @ rgb(@, @, @)';var bdw=bd+'Width',bds=bd+'Style',bdc=bd+'Color';Short[bd]={};Short.borderWidth[bdw]=Short[bd][bdw]=All[bdw]='@px';Short.borderStyle[bds]=Short[bd][bds]=All[bds]='@';Short.borderColor[bdc]=Short[bd][bdc]=All[bdc]='rgb(@, @, @)';});Element.implement({setOpacity:function(op){return this.set('opacity',op);}});(function(){function $body(el){return el.tagName.toLowerCase()=='body';};Element.implement({positioned:function(){if($body(this))return true;return(Element.getComputedStyle(this,'position')!='static');},getOffsetParent:function(){if($body(this))return null;if(!Browser.Engine.trident)return $(this.offsetParent);var el=this;while((el=el.parentNode)){if(Element.positioned(el))return $(el);}
return null;},getSize:function(){if($body(this))return this.getWindow().getSize();return{x:this.offsetWidth,y:this.offsetHeight};},getScrollSize:function(){if($body(this))return this.getWindow().getScrollSize();return{x:this.scrollWidth,y:this.scrollHeight};},getScroll:function(){if($body(this))return this.getWindow().getScroll();return{x:this.scrollLeft,y:this.scrollTop};},scrollTo:function(x,y){if($body(this))return this.getWindow().scrollTo(x,y);this.scrollLeft=x;this.scrollTop=y;return this;},getPosition:function(relative){if($body(this))return{x:0,y:0};var el=this,position={x:0,y:0};while(el){position.x+=el.offsetLeft;position.y+=el.offsetTop;el=el.offsetParent;}
var rpos=(relative)?$(relative).getPosition():{x:0,y:0};return{x:position.x-rpos.x,y:position.y-rpos.y};},getCoordinates:function(element){if($body(this))return this.getWindow().getCoordinates();var position=this.getPosition(element),size=this.getSize();var obj={'top':position.y,'left':position.x,'width':size.x,'height':size.y};obj.right=obj.left+obj.width;obj.bottom=obj.top+obj.height;return obj;},getRelativePosition:function(){return this.getPosition(this.getOffsetParent());},computePosition:function(obj){return{left:obj.x-(this.getComputedStyle('margin-left').toInt()||0),top:obj.y-(this.getComputedStyle('margin-top').toInt()||0)};},position:function(obj){return this.setStyles(this.computePosition(obj));}});})();Native.implement([Window,Document],{getSize:function(){var body=this.getDocument().body,html=this.getDocument().documentElement;if(Browser.Engine.webkit419)return{x:this.innerWidth,y:this.innerHeight};return{x:html.clientWidth,y:html.clientHeight};},getScroll:function(){var html=this.getDocument().documentElement;return{x:$pick(this.pageXOffset,html.scrollLeft),y:$pick(this.pageYOffset,html.scrollTop)};},getScrollSize:function(){var html=this.getDocument().documentElement,body=this.getDocument().body;if(Browser.Engine.trident)return{x:Math.max(html.clientWidth,html.scrollWidth),y:Math.max(html.clientHeight,html.scrollHeight)};if(Browser.Engine.webkit)return{x:body.scrollWidth,y:body.scrollHeight};return{x:html.scrollWidth,y:html.scrollHeight};},getPosition:function(){return{x:0,y:0};},getCoordinates:function(){var size=this.getSize();return{top:0,left:0,height:size.y,width:size.x,bottom:size.y,right:size.x};}});Native.implement([Window,Document,Element],{getHeight:function(){return this.getSize().y;},getWidth:function(){return this.getSize().x;},getScrollTop:function(){return this.getScroll().y;},getScrollLeft:function(){return this.getScroll().x;},getScrollHeight:function(){return this.getScrollSize().y;},getScrollWidth:function(){return this.getScrollSize().x;},getTop:function(){return this.getPosition().y;},getLeft:function(){return this.getPosition().x;}});Native.implement([Element,Document],{getElements:function(selectors,nocash){var Local={};selectors=selectors.split(',');var elements=[],j=selectors.length;var ddup=(j>1);for(var i=0;i<j;i++){var selector=selectors[i],items=[],separators=[];selector=selector.trim().replace(Selectors.sRegExp,function(match){if(match.charAt(2))match=match.trim();separators.push(match.charAt(0));return':)'+match.charAt(1);}).split(':)');for(var k=0,l=selector.length;k<l;k++){var sel=Selectors.parse(selector[k]);if(!sel)return[];var temp=Selectors.Method.getParam(items,separators[k-1]||false,this,sel,Local);if(!temp)break;items=temp;}
var partial=Selectors.Method.getItems(items,this);elements=(ddup)?elements.concat(partial):partial;}
return new Elements(elements,{ddup:ddup,cash:!nocash});}});Window.implement({$E:function(selector){return this.document.getElement(selector);}});var Selectors={regExp:(/:([^-:(]+)[^:(]*(?:\((["']?)(.*?)\2\))?|\[(\w+)(?:([!*^$~|]?=)(["']?)(.*?)\6)?\]|\.[\w-]+|#[\w-]+|\w+|\*/g),sRegExp:(/\s*([+>~\s])[a-zA-Z#.*\s]/g)};Selectors.parse=function(selector){var params={tag:'*',id:null,classes:[],attributes:[],pseudos:[]};selector=selector.replace(Selectors.regExp,function(bit){switch(bit.charAt(0)){case'.':params.classes.push(bit.slice(1));break;case'#':params.id=bit.slice(1);break;case'[':params.attributes.push([arguments[4],arguments[5],arguments[7]]);break;case':':var xparser=Selectors.Pseudo.get(arguments[1]);if(!xparser){params.attributes.push([arguments[1],arguments[3]?'=':'',arguments[3]]);break;}
var pseudo={'name':arguments[1],'parser':xparser,'argument':(xparser.parser)?xparser.parser(arguments[3]):arguments[3]};params.pseudos.push(pseudo);break;default:params.tag=bit;}
return'';});return params;};Selectors.Pseudo=new Hash;Selectors.XPath={getParam:function(items,separator,context,params){var temp='';switch(separator){case' ':temp+='//';break;case'>':temp+='/';break;case'+':temp+='/following-sibling::*[1]/self::';break;case'~':temp+='/following-sibling::';break;}
temp+=(context.namespaceURI)?'xhtml:'+params.tag:params.tag;var i;for(i=params.pseudos.length;i--;i){var pseudo=params.pseudos[i];if(pseudo.parser&&pseudo.parser.xpath)temp+=pseudo.parser.xpath(pseudo.argument);else temp+=($chk(pseudo.argument))?'[@'+pseudo.name+'="'+pseudo.argument+'"]':'[@'+pseudo.name+']';}
if(params.id)temp+='[@id="'+params.id+'"]';for(i=params.classes.length;i--;i)temp+='[contains(concat(" ", @class, " "), " '+params.classes[i]+' ")]';for(i=params.attributes.length;i--;i){var bits=params.attributes[i];switch(bits[1]){case'=':temp+='[@'+bits[0]+'="'+bits[2]+'"]';break;case'*=':temp+='[contains(@'+bits[0]+', "'+bits[2]+'")]';break;case'^=':temp+='[starts-with(@'+bits[0]+', "'+bits[2]+'")]';break;case'$=':temp+='[substring(@'+bits[0]+', string-length(@'+bits[0]+') - '+bits[2].length+' + 1) = "'+bits[2]+'"]';break;case'!=':temp+='[@'+bits[0]+'!="'+bits[2]+'"]';break;case'~=':temp+='[contains(concat(" ", @'+bits[0]+', " "), " '+bits[2]+' ")]';break;case'|=':temp+='[contains(concat("-", @'+bits[0]+', "-"), "-'+bits[2]+'-")]';break;default:temp+='[@'+bits[0]+']';}}
items.push(temp);return items;},getItems:function(items,context){var elements=[];var doc=context.getDocument();var xpath=doc.evaluate('.//'+items.join(''),context,Selectors.XPath.resolver,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0,j=xpath.snapshotLength;i<j;i++)elements[i]=xpath.snapshotItem(i);return elements;},resolver:function(prefix){return(prefix=='xhtml')?'http://www.w3.org/1999/xhtml':false;}};Selectors.Filter={getParam:function(items,separator,context,params,Local){var found=[];var tag=params.tag;if(separator){var uniques={},child,children,item,k,l;var add=function(child){child.uid=child.uid||[Native.UID++];if(!uniques[child.uid]&&Selectors.Filter.match(child,params,Local)){uniques[child.uid]=true;found.push(child);return true;}
return false;};for(var i=0,j=items.length;i<j;i++){item=items[i];switch(separator){case' ':children=item.getElementsByTagName(tag);params.tag=false;for(k=0,l=children.length;k<l;k++)add(children[k]);break;case'>':children=item.childNodes;for(k=0,l=children.length;k<l;k++){if(children[k].nodeType==1)add(children[k]);}
break;case'+':while((item=item.nextSibling)){if(item.nodeType==1){add(item);break;}}
break;case'~':while((item=item.nextSibling)){if(item.nodeType==1&&add(item))break;}
break;}}
return found;}
if(params.id){el=context.getElementById(params.id,true);params.id=false;return(el&&Selectors.Filter.match(el,params,Local))?[el]:false;}else{items=context.getElementsByTagName(tag);params.tag=false;for(var m=0,n=items.length;m<n;m++){if(Selectors.Filter.match(items[m],params,Local))found.push(items[m]);}}
return found;},getItems:$arguments(0)};Selectors.Filter.match=function(el,params,Local){Local=Local||{};if(params.id&&params.id!=el.id)return false;if(params.tag&&params.tag!='*'&&params.tag!=el.tagName.toLowerCase())return false;var i;for(i=params.classes.length;i--;i){if(!el.className||!el.className.contains(params.classes[i],' '))return false;}
for(i=params.attributes.length;i--;i){var bits=params.attributes[i];var result=Element.prototype.getProperty.call(el,bits[0]);if(!result)return false;if(!bits[1])continue;var condition;switch(bits[1]){case'=':condition=(result==bits[2]);break;case'*=':condition=(result.contains(bits[2]));break;case'^=':condition=(result.substr(0,bits[2].length)==bits[2]);break;case'$=':condition=(result.substr(result.length-bits[2].length)==bits[2]);break;case'!=':condition=(result!=bits[2]);break;case'~=':condition=result.contains(bits[2],' ');break;case'|=':condition=result.contains(bits[2],'-');}
if(!condition)return false;}
for(i=params.pseudos.length;i--;i){if(!params.pseudos[i].parser.filter.call(el,params.pseudos[i].argument,Local))return false;}
return true;};Selectors.Method=(Browser.Features.xpath)?Selectors.XPath:Selectors.Filter;Element.implement({match:function(selector){return(!selector||Selectors.Filter.match(this,Selectors.parse(selector)));}});Native.implement([Element,Document],{getElementsByClassName:function(className){return this.getElements('.'+className);},getElementsBySelector:function(selector){return this.getElements(selector);}});Elements.implement({filterByTag:function(tag){return this.filterBy(tag);},filterByClass:function(className){return this.filterBy('.'+className);},filterById:function(id){return this.filterBy('#'+id);},filterByAttribute:function(name,operator,value){return this.filterBy('['+name+(operator||'')+(value||'')+']');}});$E=function(selector,filter){return($(filter)||document).getElement(selector);};var $ES=function(selector,filter){return($(filter)||document).getElements(selector);};Selectors.Pseudo.enabled={xpath:function(){return'[not(@disabled)]';},filter:function(){return!(this.disabled);}};Selectors.Pseudo.empty={xpath:function(){return'[not(node())]';},filter:function(){return!(this.innerText||this.textContent||'').length;}};Selectors.Pseudo.contains={xpath:function(argument){return'[contains(text(), "'+argument+'")]';},filter:function(argument){for(var i=this.childNodes.length;i--;i){var child=this.childNodes[i];if(child.nodeName&&child.nodeType==3&&child.nodeValue.contains(argument))return true;}
return false;}};Selectors.Pseudo.nth={parser:function(argument){argument=(argument)?argument.match(/^([+-]?\d*)?([devon]+)?([+-]?\d*)?$/):[null,1,'n',0];if(!argument)return false;var inta=parseInt(argument[1]);var a=($chk(inta))?inta:1;var special=argument[2]||false;var b=parseInt(argument[3])||0;b=b-1;while(b<1)b+=a;while(b>=a)b-=a;switch(special){case'n':return{'a':a,'b':b,'special':'n'};case'odd':return{'a':2,'b':0,'special':'n'};case'even':return{'a':2,'b':1,'special':'n'};case'first':return{'a':0,'special':'index'};case'last':return{'special':'last'};case'only':return{'special':'only'};default:return{'a':(a-1),'special':'index'};}},xpath:function(argument){switch(argument.special){case'n':return'[count(preceding-sibling::*) mod '+argument.a+' = '+argument.b+']';case'last':return'[count(following-sibling::*) = 0]';case'only':return'[not(preceding-sibling::* or following-sibling::*)]';default:return'[count(preceding-sibling::*) = '+argument.a+']';}},filter:function(argument,Local){var count=0,el=this;switch(argument.special){case'n':Local.Positions=Local.Positions||{};if(!Local.Positions[this.uid]){var children=this.parentNode.childNodes;for(var i=0,l=children.length;i<l;i++){var child=children[i];if(child.nodeType!=1)continue;child.uid=child.uid||[Native.UID++];Local.Positions[child.uid]=count++;}}
return(Local.Positions[this.uid]%argument.a==argument.b);case'last':while((el=el.nextSibling)){if(el.nodeType==1)return false;}
return true;case'only':var prev=el;while((prev=prev.previousSibling)){if(prev.nodeType==1)return false;}
var next=el;while((next=next.nextSibling)){if(next.nodeType==1)return false;}
return true;case'index':while((el=el.previousSibling)){if(el.nodeType==1&&++count>argument.a)return false;}
return true;}
return false;}};Selectors.Pseudo.extend({'even':{parser:function(){return{'a':2,'b':1,'special':'n'};},xpath:Selectors.Pseudo.nth.xpath,filter:Selectors.Pseudo.nth.filter},'odd':{parser:function(){return{'a':2,'b':0,'special':'n'};},xpath:Selectors.Pseudo.nth.xpath,filter:Selectors.Pseudo.nth.filter},'first':{parser:function(){return{'a':0,'special':'index'};},xpath:Selectors.Pseudo.nth.xpath,filter:Selectors.Pseudo.nth.filter},'last':{parser:function(){return{'special':'last'};},xpath:Selectors.Pseudo.nth.xpath,filter:Selectors.Pseudo.nth.filter},'only':{parser:function(){return{'special':'only'};},xpath:Selectors.Pseudo.nth.xpath,filter:Selectors.Pseudo.nth.filter}});Element.Events.domready={onAdd:function(fn){if(Browser.loaded)return fn.call(this);var self=this,win=this.getWindow(),doc=this.getDocument();var domready=function(){if(!arguments.callee.done){arguments.callee.done=true;fn.call(self);};return true;};var states=(Browser.Engine.webkit)?['loaded','complete']:'complete';var check=function(context){if(states.contains(context.readyState))return domready();return false;};if(doc.readyState&&Browser.Engine.webkit){(function(){if(!check(doc))arguments.callee.delay(50);})();}else if(doc.readyState&&Browser.Engine.trident){var script=$('ie_domready');if(!script){var src=(win.location.protocol=='https:')?'//:':'javascript:void(0)';doc.write('<script id="ie_domready" defer src="'+src+'"></script>');script=$('ie_domready');}
if(!check(script))script.addEvent('readystatechange',check.pass(script));}else{win.addEvent('load',domready);doc.addEvent('DOMContentLoaded',domready);}
return null;}};window.addEvent('domready',function(){Browser.loaded=true;});var JSON=new Hash({encode:function(obj){switch($type(obj)){case'string':return'"'+obj.replace(/[\x00-\x1f\\"]/g,JSON.$replaceChars)+'"';case'array':return'['+String(obj.map(JSON.encode).filter($defined))+']';case'object':case'hash':var string=[];Hash.each(obj,function(value,key){var json=JSON.encode(value);if(json)string.push(JSON.encode(key)+':'+json);});return'{'+String(string)+'}';case'number':case'boolean':return String(obj);case false:return'null';}
return null;},$specialChars:{'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},$replaceChars:function(chr){return JSON.$specialChars[chr]||'\\u00'+Math.floor(chr.charCodeAt()/16).toString(16)+(chr.charCodeAt()%16).toString(16);},decode:function(string,secure){if($type(string)!='string'||!string.length)return null;if(secure&&!(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(string.replace(/\\./g,'@').replace(/"[^"\\\n\r]*"/g,'')))return null;return eval('('+string+')');}});Native.implement([Hash,Array,String,Number],{toJSON:function(){return JSON.encode(this);}});var Json=JSON;JSON.toString=JSON.encode;JSON.evaluate=JSON.decode;var Color=new Native({initialize:function(color,type){if(arguments.length>=3){type="rgb";color=Array.slice(arguments,0,3);}else if(typeof color=='string'){if(color.match(/rgb/))color=color.rgbToHex().hexToRgb(true);else if(color.match(/hsb/))color=color.hsbToRgb();else color=color.hexToRgb(true);}
type=type||'rgb';switch(type){case'hsb':var old=color;color=color.hsbToRgb();color.hsb=old;break;case'hex':color=color.hexToRgb(true);break;}
color.rgb=color.slice(0,3);color.hsb=color.hsb||color.rgbToHsb();color.hex=color.rgbToHex();return $extend(color,this);}});Color.implement({mix:function(){var colors=Array.slice(arguments);var alpha=($type(colors.getLast())=='number')?colors.pop():50;var rgb=this.slice();colors.each(function(color){color=new Color(color);for(var i=0;i<3;i++)rgb[i]=Math.round((rgb[i]/100*(100-alpha))+(color[i]/100*alpha));});return new Color(rgb,'rgb');},invert:function(){return new Color(this.map(function(value){return 255-value;}));},setHue:function(value){return new Color([value,this.hsb[1],this.hsb[2]],'hsb');},setSaturation:function(percent){return new Color([this.hsb[0],percent,this.hsb[2]],'hsb');},setBrightness:function(percent){return new Color([this.hsb[0],this.hsb[1],percent],'hsb');}});function $RGB(r,g,b){return new Color([r,g,b],'rgb');};function $HSB(h,s,b){return new Color([h,s,b],'hsb');};function $HEX(hex){return new Color(hex,'hex');};Array.implement({rgbToHsb:function(){var red=this[0],green=this[1],blue=this[2];var hue,saturation,brightness;var max=Math.max(red,green,blue),min=Math.min(red,green,blue);var delta=max-min;brightness=max/255;saturation=(max!=0)?delta/max:0;if(saturation==0){hue=0;}else{var rr=(max-red)/delta;var gr=(max-green)/delta;var br=(max-blue)/delta;if(red==max)hue=br-gr;else if(green==max)hue=2+rr-br;else hue=4+gr-rr;hue/=6;if(hue<0)hue++;}
return[Math.round(hue*360),Math.round(saturation*100),Math.round(brightness*100)];},hsbToRgb:function(){var br=Math.round(this[2]/100*255);if(this[1]==0){return[br,br,br];}else{var hue=this[0]%360;var f=hue%60;var p=Math.round((this[2]*(100-this[1]))/10000*255);var q=Math.round((this[2]*(6000-this[1]*f))/600000*255);var t=Math.round((this[2]*(6000-this[1]*(60-f)))/600000*255);switch(Math.floor(hue/60)){case 0:return[br,t,p];case 1:return[q,br,p];case 2:return[p,br,t];case 3:return[p,q,br];case 4:return[t,p,br];case 5:return[br,p,q];}}
return false;}});String.implement({rgbToHsb:function(){var rgb=this.match(/\d{1,3}/g);return(rgb)?hsb.rgbToHsb():null;},hsbToRgb:function(){var hsb=this.match(/\d{1,3}/g);return(hsb)?hsb.hsbToRgb():null;}});var Swiff=function(path,options){if(!Swiff.fixed)Swiff.fix();var instance='Swiff_'+Native.UID++;options=$merge({id:instance,height:1,width:1,container:null,properties:{},params:{quality:'high',allowScriptAccess:'always',wMode:'transparent',swLiveConnect:true},events:{},vars:{}},options);var params=options.params,vars=options.vars,id=options.id;var properties=$extend({height:options.height,width:options.width},options.properties);Swiff.Events[instance]={};for(var event in options.events){Swiff.Events[instance][event]=function(){options.events[event].call($(options.id));};vars[event]='Swiff.Events.'+instance+'.'+event;}
params.flashVars=Hash.toQueryString(vars);if(Browser.Engine.trident){properties.classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000';params.movie=path;}else{properties.type='application/x-shockwave-flash';properties.data=path;}
var build='<object id="'+options.id+'"';for(var property in properties)build+=' '+property+'="'+properties[property]+'"';build+='>';for(var param in params)build+='<param name="'+param+'" value="'+params[param]+'" />';build+='</object>';return($(options.container)||new Element('div')).set('html',build).firstChild;};Swiff.extend({Events:{},remote:function(obj,fn){var rs=obj.CallFunction('<invoke name="'+fn+'" returntype="javascript">'+__flash__argumentsToXML(arguments,2)+'</invoke>');return eval(rs);},getVersion:function(){if(!$defined(Swiff.pluginVersion)){var version;if(navigator.plugins&&navigator.mimeTypes.length){version=navigator.plugins["Shockwave Flash"];if(version&&version.description)version=version.description;}else if(Browser.Engine.trident){version=$try(function(){return new ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable("$version");});}
Swiff.pluginVersion=(typeof version=='string')?parseInt(version.match(/\d+/)[0]):0;}
return Swiff.pluginVersion;},fix:function(){Swiff.fixed=true;window.addEvent('beforeunload',function(){__flash_unloadHandler=__flash_savedUnloadHandler=$empty;});if(!Browser.Engine.trident)return;window.addEvent('unload',function(){Array.each(document.getElementsByTagName('object'),function(obj){obj.style.display='none';for(var p in obj){if(typeof obj[p]=='function')obj[p]=$empty;}});});}});var Group=new Class({initialize:function(){this.instances=Array.flatten(arguments);this.events={};this.checker={};},addEvent:function(type,fn){this.checker[type]=this.checker[type]||{};this.events[type]=this.events[type]||[];if(this.events[type].contains(fn))return false;else this.events[type].push(fn);this.instances.each(function(instance,i){instance.addEvent(type,this.check.bind(this,[type,instance,i]));},this);return this;},check:function(type,instance,i){this.checker[type][i]=true;var every=this.instances.every(function(current,j){return this.checker[type][j]||false;},this);if(!every)return;this.checker[type]={};this.events[type].each(function(event){event.call(this,this.instances,instance);},this);}});var Fx=new Class({Implements:[Chain,Events,Options],options:{fps:50,unit:false,duration:500,link:'ignore',transition:function(p){return-(Math.cos(Math.PI*p)-1)/2;}},initialize:function(options){this.pass=this.pass||this;this.setOptions(options);this.options.duration=Fx.Durations[this.options.duration]||this.options.duration.toInt();var wait=this.options.wait;if(wait===false)this.options.link='cancel';},step:function(){var time=$time();if(time<this.time+this.options.duration){var delta=this.options.transition((time-this.time)/this.options.duration);this.set(this.compute(this.from,this.to,delta));}else{this.set(this.compute(this.from,this.to,1));this.complete();}},set:function(now){return now;},compute:function(from,to,delta){return Fx.compute(from,to,delta);},check:function(){if(!this.timer)return true;switch(this.options.link){case'cancel':this.cancel();return true;case'chain':this.chain(this.start.bind(this,arguments));return false;}
return false;},start:function(from,to){if(!this.check(from,to))return this;this.from=from;this.to=to;this.time=0;this.startTimer();this.onStart();return this;},complete:function(){return(!this.stopTimer())?this:this.onComplete();},cancel:function(){return(!this.stopTimer())?this:this.onCancel();},onStart:function(){return this.fireEvent('onStart',this.pass);},onComplete:function(){return this.fireEvent('onComplete',this.pass).callChain();},onCancel:function(){return this.fireEvent('onCancel',this.pass).clearChain();},pause:function(){this.stopTimer();return this;},resume:function(){this.startTimer();return this;},stopTimer:function(){if(!this.timer)return false;this.time=$time()-this.time;this.timer=$clear(this.timer);return true;},startTimer:function(){if(this.timer)return false;this.time=$time()-this.time;this.timer=this.step.periodical(Math.round(1000/this.options.fps),this);return true;}});Fx.compute=function(from,to,delta){return(to-from)*delta+from;};Fx.Durations={'short':250,'normal':500,'long':1000};Fx.implement({custom:function(from,to){return this.start(from,to);},clearTimer:function(){return this.cancel();}});Fx.Base=Fx;Fx.CSS=new Class({Extends:Fx,prepare:function(element,property,values){values=$splat(values);var values1=values[1];if(!$chk(values1)){values[1]=values[0];values[0]=element.getStyle(property);}
var parsed=values.map(this.parse);return{from:parsed[0],to:parsed[1]};},parse:function(value){value=$lambda(value)();value=(typeof value=='string')?value.split(' '):$splat(value);return value.map(function(val){val=String(val);var found=false;Fx.CSS.Parsers.each(function(parser,key){if(found)return;var parsed=parser.parse(val);if($chk(parsed))found={'value':parsed,'parser':parser};});found=found||{value:val,parser:Fx.CSS.Parsers.String};return found;});},compute:function(from,to,delta){var computed=[];(Math.min(from.length,to.length)).times(function(i){computed.push({'value':from[i].parser.compute(from[i].value,to[i].value,delta),'parser':from[i].parser});});computed.$family={name:'fx:css:value'};return computed;},serve:function(value,unit){if($type(value)!='fx:css:value')value=this.parse(value);var returned=[];value.each(function(bit){returned=returned.concat(bit.parser.serve(bit.value,unit));});return returned;},render:function(element,property,value){element.setStyle(property,this.serve(value,this.options.unit));},search:function(selector){var to={};Array.each(document.styleSheets,function(sheet,j){var rules=sheet.rules||sheet.cssRules;Array.each(rules,function(rule,i){if(!rule.style||!rule.selectorText||!rule.selectorText.test('^'+selector+'$'))return;Element.Styles.each(function(value,style){if(!rule.style[style]||Element.ShortStyles[style])return;value=rule.style[style];to[style]=(value.test(/^rgb/))?value.rgbToHex():value;});});});return to;}});Fx.CSS.Parsers=new Hash({Color:{parse:function(value){if(value.match(/^#[0-9a-f]{3,6}$/i))return value.hexToRgb(true);return((value=value.match(/(\d+),\s*(\d+),\s*(\d+)/)))?[value[1],value[2],value[3]]:false;},compute:function(from,to,delta){return from.map(function(value,i){return Math.round(Fx.compute(from[i],to[i],delta));});},serve:function(value){return value.map(Number);}},Number:{parse:function(value){return parseFloat(value);},compute:function(from,to,delta){return Fx.compute(from,to,delta);},serve:function(value,unit){return(unit)?value+unit:value;}},String:{parse:$lambda(false),compute:$arguments(1),serve:$arguments(0)}});Fx.Tween=new Class({Extends:Fx.CSS,initialize:function(element,property,options){this.element=this.pass=$(element);this.property=property;arguments.callee.parent(options);},set:function(now){this.render(this.element,this.property,now);return this;},start:function(){var fromto=Array.slice(arguments);if(!this.check(fromto))return this;var parsed=this.prepare(this.element,this.property,fromto);return arguments.callee.parent(parsed.from,parsed.to);}});Element.Properties.tween={set:function(options){var tween=this.retrieve('tween');if(tween)tween.cancel();return this.store('tween',new Fx.Tween(this,null,$extend({link:'cancel'},options)));},get:function(property,options){if(options||!this.retrieve('tween'))this.set('tween',options);var tween=this.retrieve('tween');tween.property=property;return tween;}};Element.implement({tween:function(property){var tween=this.get('tween',property);tween.start.apply(tween,Array.slice(arguments,1));return this;},fade:function(how){var fade=this.get('tween','opacity');how=$pick(how,'toggle');switch(how){case'in':fade.start(1);break;case'out':fade.start(0);break;case'show':fade.set(1);break;case'hide':fade.set(0);break;case'toggle':fade.start((function(){return(this.getStyle('visibility')=='hidden')?1:0;}).bind(this));break;default:fade.start.apply(fade,arguments);}
return this;},highlight:function(start,end){if(!end){var style=this.getStyle('background-color');end=(style=='transparent')?'#ffffff':style;}
this.get('tween','background-color').start(start||'#ffff88',end);return this;},effect:function(property,options){return new Fx.Tween(this,property,options);}});Fx.Style=Fx.Tween;Fx.Morph=new Class({Extends:Fx.CSS,initialize:function(element,options){this.element=this.pass=$(element);arguments.callee.parent(options);},set:function(now){if(typeof now=='string')now=this.search(now);for(var p in now)this.render(this.element,p,now[p]);return this;},compute:function(from,to,delta){var now={};for(var p in from)now[p]=arguments.callee.parent(from[p],to[p],delta);return now;},start:function(properties){if(!this.check(properties))return this;if(typeof properties=='string')properties=this.search(properties);var from={},to={};for(var p in properties){var parsed=this.prepare(this.element,p,properties[p]);from[p]=parsed.from;to[p]=parsed.to;}
return arguments.callee.parent(from,to);}});Element.Properties.morph={set:function(options){var morph=this.retrieve('morph');if(morph)morph.cancel();return this.store('morph',new Fx.Morph(this,$extend({link:'cancel'},options)));},get:function(options){if(options||!this.retrieve('morph'))this.set('morph',options);return this.retrieve('morph');}};Element.implement({morph:function(props){this.get('morph').start(props);return this;},effects:function(options){return new Fx.Morph(this,options);}});Fx.Styles=Fx.Morph;Fx.Scroll=new Class({Extends:Fx,options:{offset:{'x':0,'y':0},wheelStops:true},initialize:function(element,options){this.element=this.pass=$(element);arguments.callee.parent(options);var cancel=this.cancel.bind(this,false);if($type(this.element)!='element')this.element=$(this.element.getDocument().body);var stopper=this.element;if(this.options.wheelStops){this.addEvent('onStart',function(){stopper.addEvent('mousewheel',cancel);},true);this.addEvent('onComplete',function(){stopper.removeEvent('mousewheel',cancel);},true);}},set:function(){var now=Array.flatten(arguments);this.element.scrollTo(now[0],now[1]);},compute:function(from,to,delta){var now=[];(2).times(function(i){now.push(Fx.compute(from[i],to[i],delta));});return now;},start:function(x,y){if(!this.check(x,y))return this;var offsetSize=this.element.getSize(),scrollSize=this.element.getScrollSize(),scroll=this.element.getScroll(),values={'x':x,'y':y};for(var z in values){var max=scrollSize[z]-offsetSize[z];if($chk(values[z]))values[z]=($type(values[z])=='number')?values[z].limit(0,max):max;else values[z]=scroll[z];values[z]+=this.options.offset[z];}
return arguments.callee.parent([scroll.x,scroll.y],[values.x,values.y]);},toTop:function(){return this.start(false,0);},toLeft:function(){return this.start(0,false);},toRight:function(){return this.start('right',false);},toBottom:function(){return this.start(false,'bottom');},toElement:function(el){var position=$(el).getPosition(this.element);return this.start(position.x,position.y);}});Fx.Scroll.implement({scrollTo:function(y,x){return this.start(y,x);}});(function(){var old=Fx.prototype.initialize;Fx.prototype.initialize=function(options){old.call(this,options);var trans=this.options.transition;if(typeof trans=='string'&&(trans=trans.split(':'))){var base=Fx.Transitions;base=base[trans[0]]||base[trans[0].capitalize()];if(trans[1])base=base['ease'+trans[1].capitalize()+(trans[2]?trans[2].capitalize():'')];this.options.transition=base;}};})();Fx.Transition=function(transition,params){params=$splat(params);return $extend(transition,{easeIn:function(pos){return transition(pos,params);},easeOut:function(pos){return 1-transition(1-pos,params);},easeInOut:function(pos){return(pos<=0.5)?transition(2*pos,params)/2:(2-transition(2*(1-pos),params))/2;}});};Fx.Transitions=new Hash({linear:$arguments(0)});Fx.Transitions.extend=function(transitions){for(var transition in transitions)Fx.Transitions[transition]=new Fx.Transition(transitions[transition]);};Fx.Transitions.extend({Pow:function(p,x){return Math.pow(p,x[0]||6);},Expo:function(p){return Math.pow(2,8*(p-1));},Circ:function(p){return 1-Math.sin(Math.acos(p));},Sine:function(p){return 1-Math.sin((1-p)*Math.PI/2);},Back:function(p,x){x=x[0]||1.618;return Math.pow(p,2)*((x+1)*p-x);},Bounce:function(p){var value;for(var a=0,b=1;1;a+=b,b/=2){if(p>=(7-4*a)/11){value=-Math.pow((11-6*a-11*p)/4,2)+b*b;break;}}
return value;},Elastic:function(p,x){return Math.pow(2,10*--p)*Math.cos(20*p*Math.PI*(x[0]||1)/3);}});['Quad','Cubic','Quart','Quint'].each(function(transition,i){Fx.Transitions[transition]=new Fx.Transition(function(p){return Math.pow(p,[i+2]);});});var Request=new Class({Implements:[Chain,Events,Options],options:{url:'',data:'',headers:{},async:true,method:'post',link:'ignore',isSuccess:null,emulation:true,urlEncoded:true,encoding:'utf-8',evalScripts:false,evalResponse:false},getXHR:function(){return(window.XMLHttpRequest)?new XMLHttpRequest():((window.ActiveXObject)?new ActiveXObject('Microsoft.XMLHTTP'):false);},initialize:function(options){if(!(this.xhr=this.getXHR()))return;this.setOptions(options);this.options.isSuccess=this.options.isSuccess||this.isSuccess;this.headers=new Hash(this.options.headers).extend({'X-Requested-With':'XMLHttpRequest','Accept':'text/javascript, text/html, application/xml, text/xml, */*'});},onStateChange:function(){if(this.xhr.readyState!=4||!this.running)return;this.running=false;this.status=0;$try(function(){this.status=this.xhr.status;},this);if(this.options.isSuccess.call(this,this.status)){this.response={text:this.xhr.responseText,xml:this.xhr.responseXML};this.success(this.response.text,this.response.xml);}else{this.response={text:null,xml:null};this.failure();}
this.xhr.onreadystatechange=$empty;},isSuccess:function(){return((this.status>=200)&&(this.status<300));},processScripts:function(text){if(this.options.evalResponse||(/(ecma|java)script/).test(this.getHeader('Content-type')))return $exec(text);return text.stripScripts(this.options.evalScripts);},success:function(text,xml){this.onSuccess(this.processScripts(text),xml);},onSuccess:function(){this.fireEvent('onComplete',arguments).fireEvent('onSuccess',arguments).callChain();},failure:function(){this.onFailure();},onFailure:function(){this.fireEvent('onComplete').fireEvent('onFailure',this.xhr);},setHeader:function(name,value){this.headers.set(name,value);return this;},getHeader:function(name){return $try(function(){return this.getResponseHeader(name);},this.xhr)||null;},check:function(){if(!this.running)return true;switch(this.options.link){case'cancel':this.cancel();return true;case'chain':this.chain(this.send.bind(this,arguments));return false;}
return false;},send:function(options){if(!this.check(options))return this;this.running=true;var type=$type(options);if(type=='string'||type=='element')options={data:options};var old=this.options;options=$extend({data:old.data,url:old.url,method:old.method},options);var data=options.data,url=options.url,method=options.method;switch($type(data)){case'element':data=$(data).toQueryString();break;case'object':case'hash':data=Hash.toQueryString(data);}
if(this.options.emulation&&['put','delete'].contains(method)){var _method='_method='+method;data=(data)?_method+'&'+data:_method;method='post';}
if(this.options.urlEncoded&&method=='post'){var encoding=(this.options.encoding)?'; charset='+this.options.encoding:'';this.headers.set('Content-type','application/x-www-form-urlencoded'+encoding);}
if(data&&method=='get'){url=url+(url.contains('?')?'&':'?')+data;data=null;}
this.xhr.open(method.toUpperCase(),url,this.options.async);this.xhr.onreadystatechange=this.onStateChange.bind(this);this.headers.each(function(value,key){try{this.xhr.setRequestHeader(key,value);}catch(e){this.fireEvent('onException',[e,key,value]);}},this);this.fireEvent('onRequest');this.xhr.send(data);if(!this.options.async)this.onStateChange();return this;},cancel:function(){if(!this.running)return this;this.running=false;this.xhr.abort();this.xhr.onreadystatechange=$empty;this.xhr=this.getXHR();this.fireEvent('onCancel');return this;}});(function(){var methods={};['get','post','GET','POST','PUT','DELETE'].each(function(method){methods[method]=function(){var params=Array.link(arguments,{url:String.type,data:$defined});return this.send($extend(params,{method:method.toLowerCase()}));};});Request.implement(methods);})();Element.Properties.send={get:function(options){if(options||!this.retrieve('send'))this.set('send',options);return this.retrieve('send');},set:function(options){var send=this.retrieve('send');if(send)send.cancel();return this.store('send',new Request($extend({data:this,link:'cancel',method:this.get('method')||'post',url:this.get('action')},options)));}};Element.implement({send:function(url){var sender=this.get('send');sender.send({data:this,url:url||sender.options.url});return this;}});Object.toQueryString=Hash.toQueryString;var XHR=new Class({Extends:Request,options:{update:false},initialize:function(url,options){arguments.callee.parent(options);this.url=url;},request:function(data){return this.send(this.url,data||this.options.data);},send:function(url,data){if(!this.check(url,data))return this;return arguments.callee.parent({url:url,data:data});},success:function(text,xml){text=this.processScripts(text);if(this.options.update)$(this.options.update).empty().set('html',text);this.onSuccess(text,xml);},failure:function(){this.fireEvent('onFailure',this.xhr);}});var Ajax=XHR;Request.JSON=new Class({Extends:Request,options:{secure:true},initialize:function(options){arguments.callee.parent(options);this.headers.extend({'Accept':'application/json','X-Request':'JSON'});},success:function(text){this.response.json=JSON.decode(text,this.options.secure);this.onSuccess(this.response.json,text);}});JSON.Remote=new Class({options:{key:'json'},Extends:Request.JSON,initialize:function(url,options){arguments.callee.parent(options);this.onComplete=$empty;this.url=url;},send:function(data){if(!this.check(data))return this;return arguments.callee.parent({url:this.url,data:{json:Json.encode(data)}});},failure:function(){this.fireEvent('onFailure',this.xhr);}});var Drag=new Class({Implements:[Events,Options],options:{snap:6,unit:'px',grid:false,limit:false,handle:false,modifiers:{x:'left',y:'top'}},initialize:function(){var params=Array.link(arguments,{'options':Object.type,'element':$defined});this.element=$(params.element);this.document=this.element.getDocument();this.setOptions(params.options||{});var htype=$type(this.options.handle);this.handles=(htype=='array'||htype=='collection')?$$(this.options.handle):$(this.options.handle)||this.element;this.mouse={'now':{},'pos':{}};this.value={'start':{},'now':{}};this.selection=(Browser.Engine.trident)?'selectstart':'mousedown';this.bound={start:this.start.bind(this),check:this.check.bind(this),drag:this.drag.bind(this),stop:this.stop.bind(this),cancel:this.cancel.bind(this),eventStop:$lambda(false)};this.attach();},attach:function(){this.handles.addEvent('mousedown',this.bound.start);return this;},detach:function(){this.handles.removeEvent('mousedown',this.bound.start);return this;},start:function(event){this.fireEvent('onBeforeStart',this.element);this.mouse.start=event.page;var limit=this.options.limit;this.limit={'x':[],'y':[]};for(var z in this.options.modifiers){if(!this.options.modifiers[z])continue;this.value.now[z]=this.element.getStyle(this.options.modifiers[z]).toInt();this.mouse.pos[z]=event.page[z]-this.value.now[z];if(limit&&limit[z]){for(var i=2;i--;i){if($chk(limit[z][i]))this.limit[z][i]=$lambda(limit[z][i])();}}}
if($type(this.options.grid)=='number')this.options.grid={'x':this.options.grid,'y':this.options.grid};this.document.addEvents({mousemove:this.bound.check,mouseup:this.bound.cancel});this.document.addEvent(this.selection,this.bound.eventStop);},check:function(event){var distance=Math.round(Math.sqrt(Math.pow(event.page.x-this.mouse.start.x,2)+Math.pow(event.page.y-this.mouse.start.y,2)));if(distance>this.options.snap){this.cancel();this.document.addEvents({mousemove:this.bound.drag,mouseup:this.bound.stop});this.fireEvent('onStart',this.element).fireEvent('onSnap',this.element);}},drag:function(event){this.mouse.now=event.page;for(var z in this.options.modifiers){if(!this.options.modifiers[z])continue;this.value.now[z]=this.mouse.now[z]-this.mouse.pos[z];if(this.options.limit&&this.limit[z]){if($chk(this.limit[z][1])&&(this.value.now[z]>this.limit[z][1])){this.value.now[z]=this.limit[z][1];}else if($chk(this.limit[z][0])&&(this.value.now[z]<this.limit[z][0])){this.value.now[z]=this.limit[z][0];}}
if(this.options.grid[z])this.value.now[z]-=(this.value.now[z]%this.options.grid[z]);this.element.setStyle(this.options.modifiers[z],this.value.now[z]+this.options.unit);}
this.fireEvent('onDrag',this.element);},cancel:function(event){this.document.removeEvent('mousemove',this.bound.check);this.document.removeEvent('mouseup',this.bound.cancel);if(event){this.document.removeEvent(this.selection,this.bound.eventStop);this.fireEvent('onCancel',this.element);}},stop:function(event){this.document.removeEvent(this.selection,this.bound.eventStop);this.document.removeEvent('mousemove',this.bound.drag);this.document.removeEvent('mouseup',this.bound.stop);if(event)this.fireEvent('onComplete',this.element);}});Element.implement({makeResizable:function(options){return new Drag(this,$merge({modifiers:{'x':'width','y':'height'}},options));}});Drag.Base=Drag;Drag.Move=new Class({Extends:Drag,options:{droppables:[],container:false},initialize:function(element,options){arguments.callee.parent(element,options);this.droppables=$$(this.options.droppables);this.container=$(this.options.container);var position=(this.element.positioned())?this.element.getStyle('position'):'absolute';this.element.position(this.element.getRelativePosition()).setStyle('position',position);},start:function(event){if(this.overed){this.overed.fireEvent('leave',[this.element,this]);this.overed=null;}
if(this.container){var el=this.element,cont=this.container,ccoo=cont.getCoordinates(el.getOffsetParent()),cps={},ems={};['top','right','bottom','left'].each(function(pad){cps[pad]=cont.getStyle('padding-'+pad).toInt();ems[pad]=el.getStyle('margin-'+pad).toInt();},this);var width=el.offsetWidth+ems.left+ems.right,height=el.offsetHeight+ems.top+ems.bottom;var x=[ccoo.left+cps.left,ccoo.right-cps.right-width];var y=[ccoo.top+cps.top,ccoo.bottom-cps.bottom-height];this.options.limit={x:x,y:y};}
arguments.callee.parent(event);},checkAgainst:function(el){el=el.getCoordinates();var now=this.mouse.now;return(now.x>el.left&&now.x<el.right&&now.y<el.bottom&&now.y>el.top);},checkDroppables:function(){var overed=this.droppables.filter(this.checkAgainst,this).getLast();if(this.overed!=overed){if(this.overed)this.overed.fireEvent('leave',[this.element,this]);this.overed=overed?overed.fireEvent('over',[this.element,this]):null;}},drag:function(event){arguments.callee.parent(event);if(this.droppables.length)this.checkDroppables();},stop:function(event){this.checkDroppables();if(this.overed)this.overed.fireEvent('drop',[this.element,this]);else this.element.fireEvent('emptydrop',this);return arguments.callee.parent(event);}});Element.implement({makeDraggable:function(options){return new Drag.Move(this,options);}});var Sortables=new Class({Implements:[Events,Options],options:{snap:4,handle:false,revert:false,constrain:false,cloneOpacity:0.7,elementOpacity:0.3},initialize:function(lists,options){this.setOptions(options);this.elements=[];this.lists=[];this.idle=true;this.addLists($$($(lists)||lists));if(this.options.revert)this.effect=new Fx.Morph(null,$merge({duration:250,link:'cancel'},this.options.revert));},attach:function(){this.addLists(this.lists);return this;},detach:function(){this.lists=this.removeLists(this.lists);return this;},addItems:function(){Array.flatten(arguments).each(function(element){this.elements.push(element);var start=element.retrieve('sortables:start',this.start.bindWithEvent(this,element));var insert=element.retrieve('sortables:insert',this.insert.bind(this,element));(this.options.handle?element.getElement(this.options.handle)||element:element).addEvent('mousedown',start);element.addEvent('over',insert);},this);return this;},addLists:function(){Array.flatten(arguments).each(function(list){this.lists.push(list);this.addItems(list.getChildren());list.addEvent('over',list.retrieve('sortables:insert',this.insert.bind(this,[list,'inside'])));},this);return this;},removeItems:function(){var elements=[];Array.flatten(arguments).each(function(element){elements.push(element);this.elements.remove(element);var start=element.retrieve('sortables:start');var insert=element.retrieve('sortables:insert');(this.options.handle?element.getElement(this.options.handle)||element:element).removeEvent('mousedown',start);element.removeEvent('over',insert);},this);return elements;},removeLists:function(){var lists=[];Array.flatten(arguments).each(function(list){lists.push(list);this.lists.remove(list);this.removeItems(list.getChildren());list.removeEvent('over',list.retrieve('sortables:insert'));},this);return lists;},getClone:function(element){return element.clone(true).setStyles({'margin':'0px','position':'absolute','visibility':'hidden'}).inject(this.list).position(element.getRelativePosition());},getDroppables:function(){var droppables=this.list.getChildren();if(!this.options.constrain)droppables=this.lists.concat(droppables).remove(this.list);return droppables.remove(this.clone).remove(this.element);},insert:function(element,where){if(where){this.list=element;this.drag.droppables=this.getDroppables();}
where=where||(this.element.getAllPrevious().contains(element)?'before':'after');this.element.inject(element,where);this.fireEvent('onSort',[this.element,this.clone]);},start:function(event,element){if(!this.idle)return;this.idle=false;this.element=element;this.opacity=element.get('opacity');this.list=element.getParent();this.clone=this.getClone(element);this.drag=this.clone.makeDraggable({snap:this.options.snap,container:this.options.constrain&&this.clone.getParent(),droppables:this.getDroppables(),onStart:function(){event.stop();this.clone.set('opacity',this.options.cloneOpacity);this.element.set('opacity',this.options.elementOpacity);this.fireEvent('onStart',[this.element,this.clone]);}.bind(this),onCancel:this.reset.bind(this),onComplete:this.end.bind(this)});this.drag.start(event);},end:function(){this.element.set('opacity',this.opacity);this.drag.detach();if(this.effect){var dim=this.element.getStyles('width','height');var pos=this.clone.computePosition(this.element.getPosition(this.clone.offsetParent),this.clone.getParent().positioned());this.effect.element=this.clone;this.effect.start({'top':pos.top,'left':pos.left,'width':dim.width,'height':dim.height,'opacity':0.25}).chain(this.reset.bind(this));}else{this.reset();}},reset:function(){this.idle=true;this.clone.destroy();this.fireEvent('onComplete',this.element);},serialize:function(index,modifier){var serial=this.lists.map(function(list){return list.getChildren().map(modifier||function(element,index){return element.get('id');},this);},this);if(this.lists.length==1)index=0;return $chk(index)&&index>=0&&index<this.lists.length?serial[index]:serial;}});var Tips=new Class({Implements:[Events,Options],options:{onShow:function(tip){tip.setStyle('visibility','visible');},onHide:function(tip){tip.setStyle('visibility','hidden');},maxTitleChars:30,showDelay:100,hideDelay:100,className:'tool',offsets:{'x':16,'y':16},fixed:false},initialize:function(elements,options){this.setOptions(options);elements=$$(elements);this.document=(elements.length)?elements[0].ownerDocument:document;this.toolTip=new Element('div',{'class':this.options.className+'-tip','styles':{'position':'absolute','top':'0','left':'0','visibility':'hidden'}},this.document).inject(this.document.body);this.wrapper=new Element('div').inject(this.toolTip);elements.each(this.build,this);},build:function(el){el.$attributes.myTitle=(el.href&&el.get('tag')=='a')?el.href.replace('http://',''):(el.rel||false);if(el.title){var dual=el.title.split('::');if(dual.length>1){el.$attributes.myTitle=dual[0].trim();el.$attributes.myText=dual[1].trim();}else{el.$attributes.myText=el.title;}
el.removeProperty('title');}else{el.$attributes.myText=false;}
if(el.$attributes.myTitle&&el.$attributes.myTitle.length>this.options.maxTitleChars)
el.$attributes.myTitle=el.$attributes.myTitle.substr(0,this.options.maxTitleChars-1)+"&hellip;";el.addEvent('mouseenter',function(event){this.start(el);if(!this.options.fixed)this.locate(event);else this.position(el);}.bind(this));if(!this.options.fixed)el.addEvent('mousemove',this.locate.bind(this));var end=this.end.bind(this);el.addEvent('mouseleave',end);},start:function(el){this.wrapper.empty();if(el.$attributes.myTitle){this.title=new Element('span').inject(new Element('div',{'class':this.options.className+'-title'}).inject(this.wrapper)).set('html',el.$attributes.myTitle);}
if(el.$attributes.myText){this.text=new Element('span').inject(new Element('div',{'class':this.options.className+'-text'}).inject(this.wrapper)).set('html',el.$attributes.myText);}
$clear(this.timer);this.timer=this.show.delay(this.options.showDelay,this);},end:function(event){$clear(this.timer);this.timer=this.hide.delay(this.options.hideDelay,this);},position:function(element){var pos=element.getPosition();this.toolTip.setStyles({'left':pos.x+this.options.offsets.x,'top':pos.y+this.options.offsets.y});},locate:function(event){var doc=this.document.getSize();var scroll=this.document.getScroll();var tip={'x':this.toolTip.offsetWidth,'y':this.toolTip.offsetHeight};var prop={'x':'left','y':'top'};for(var z in prop){var pos=event.page[z]+this.options.offsets[z];if((pos+tip[z]-scroll[z])>doc[z])pos=event.page[z]-this.options.offsets[z]-tip[z];this.toolTip.setStyle(prop[z],pos);}},show:function(){if(this.options.timeout)this.timer=this.hide.delay(this.options.timeout,this);this.fireEvent('onShow',[this.toolTip]);},hide:function(){this.fireEvent('onHide',[this.toolTip]);}});var SmoothScroll=new Class({Extends:Fx.Scroll,initialize:function(options,element){element=$(element);var doc=element.getDocument(),win=element.getWindow();arguments.callee.parent(doc,options);this.links=(this.options.links)?$$(this.options.links):$$(doc.links);var location=win.location.href.match(/^[^#]*/)[0]+'#';this.links.each(function(link){if(link.href.indexOf(location)!=0)return;var anchor=link.href.substr(location.length);if(anchor&&$(anchor))this.useLink(link,anchor);},this);if(!Browser.Engine.webkit419)this.addEvent('onComplete',function(){win.location.hash=this.anchor;},true);},useLink:function(link,anchor){link.addEvent('click',function(event){this.anchor=anchor;this.toElement(anchor);event.stop();}.bind(this));}});var Asset=new Hash({javascript:function(source,properties){properties=$extend({onload:$empty,document:document,check:$lambda(true)},properties);var script=new Element('script',{'src':source,'type':'text/javascript'});var load=properties.onload.bind(script),check=properties.check,doc=properties.document;delete properties.onload;delete properties.check;delete properties.document;script.addEvents({load:load,readystatechange:function(){if(this.readyState=='complete')load();}}).setProperties(properties);if(Browser.Engine.webkit419)var checker=(function(){if(!$try(check))return;$clear(checker);load();}).periodical(50);return script.inject(doc.head);},css:function(source,properties){return new Element('link',$merge({'rel':'stylesheet','media':'screen','type':'text/css','href':source},properties)).inject(document.head);},image:function(source,properties){properties=$merge({'onload':$empty,'onabort':$empty,'onerror':$empty},properties);var image=new Image();var element=$(image)||new Element('img');['load','abort','error'].each(function(name){var type='on'+name;var event=properties[type];delete properties[type];image[type]=function(){if(!image)return;if(!element.parentNode){element.width=image.width;element.height=image.height;}
image=image.onload=image.onabort=image.onerror=null;event.delay(1,element,element);element.fireEvent(name,element,1);};});image.src=element.src=source;if(image&&image.complete)image.onload.delay(1);return element.setProperties(properties);},images:function(sources,options){options=$merge({onComplete:$empty,onProgress:$empty},options);if(!sources.push)sources=[sources];var images=[];var counter=0;sources.each(function(source){var img=new Asset.image(source,{'onload':function(){options.onProgress.call(this,counter,sources.indexOf(source));counter++;if(counter==sources.length)options.onComplete();}});images.push(img);});return new Elements(images);}});Fx.Slide=new Class({Extends:Fx,options:{mode:'vertical'},initialize:function(element,options){this.addEvent('onComplete',function(){this.open=(this.wrapper['offset'+this.layout.capitalize()]!=0);if(this.open){this.wrapper.setStyle(this.layout,'auto');if(Browser.Engine.webkit419)this.element.dispose().inject(this.wrapper);}},true);this.element=this.pass=$(element);arguments.callee.parent(options);var wrapper=this.element.retrieve('wrapper');this.wrapper=wrapper||new Element('div',{styles:$extend(this.element.getStyles('margin','position'),{'overflow':'hidden'})}).wraps(this.element);this.element.store('wrapper',this.wrapper).setStyle('margin',0);this.now=[];this.open=true;},vertical:function(){this.margin='margin-top';this.layout='height';this.offset=this.element.offsetHeight;},horizontal:function(){this.margin='margin-left';this.layout='width';this.offset=this.element.offsetWidth;},set:function(now){this.element.setStyle(this.margin,now[0]);this.wrapper.setStyle(this.layout,now[1]);return this;},compute:function(from,to,delta){var now=[];(2).times(function(i){now[i]=Fx.compute(from[i],to[i],delta);});return now;},start:function(how,mode){if(!this.check(how,mode))return this;this[mode||this.options.mode]();var margin=this.element.getStyle(this.margin).toInt();var layout=this.wrapper.getStyle(this.layout).toInt();var caseIn=[[margin,layout],[0,this.offset]];var caseOut=[[margin,layout],[-this.offset,0]];var start;switch(how){case'in':start=caseIn;break;case'out':start=caseOut;break;case'toggle':start=(this.wrapper['offset'+this.layout.capitalize()]==0)?caseIn:caseOut;}
return arguments.callee.parent(start[0],start[1]);},slideIn:function(mode){return this.start('in',mode);},slideOut:function(mode){return this.start('out',mode);},hide:function(mode){this[mode||this.options.mode]();this.open=false;return this.set([-this.offset,0]);},show:function(mode){this[mode||this.options.mode]();this.open=true;return this.set([0,this.offset]);},toggle:function(mode){return this.start('toggle',mode);}});Element.Properties.slide={set:function(options){var slide=this.retrieve('slide');if(slide)slide.cancel();return this.store('slide',new Fx.Slide(this,$extend({link:'cancel'},options)));},get:function(options){if(options||!this.retrieve('slide'))this.set('slide',options);return this.retrieve('slide');}};Element.implement({slide:function(how){how=how||'toggle';var slide=this.get('slide');switch(how){case'hide':slide.hide();break;case'show':slide.show();break;default:slide.start(how);}
return this;}});var errorLogger=new Class({initialize:function()
{this.errorDiv=null;},log:function(msg)
{if(this.errorDiv==null)
{this.errorDiv=new Element("div");this.errorDiv.setStyle("position","absolute");this.errorDiv.setStyle("bottom","0px");this.errorDiv.setStyle("left","0px");this.errorDiv.setStyle("width",$('scrollpage').getSize()["x"]-20);this.errorDiv.setStyle("background","#aa0000 url(/img/bug.gif) top right no-repeat");document.body.appendChild(this.errorDiv);}
var el=new Element("div");el.setStyle("font-weight","bold");el.setStyle("color","#fff");el.setStyle("width","100%");el.addEvent("click",function()
{this.remove();});el.setHTML(msg);this.errorDiv.adopt(el);this.errorDiv.setStyle("width",$('scrollpage').getSize()["x"]-20);}});var edaabBug=new Class({initialize:function()
{this.errorImg=new Element("img");this.errorImg.src="/img/bug.gif";this.errorImg.addEvent("click",function()
{new edaabBug();this.setStyle("height",parseInt(this.offsetHeight)+"px");this.setStyle("width",parseInt(this.offsetWidth)+100+"px");});this.errorImg.setStyles({position:'absolute',top:'-100px',left:'-100px'});document.body.appendChild(this.errorImg);var self=this;setTimeout(function(){self.move();},1000);},move:function()
{var self=this;var fx=new Fx.Styles(this.errorImg,{duration:(500+Math.random()*200),wait:false,onComplete:function(){self.move();}});fx.options.transition=Fx.Transitions["Bounce"]["easeOut"];var randx=Math.random()*window.innerWidth;var randy=Math.random()*window.innerHeight;if(randx>(parseInt(this.errorImg.offsetLeft)+100))
randx=parseInt(this.errorImg.offsetLeft)+100;if(randx<(parseInt(this.errorImg.offsetLeft)-100))
randx=parseInt(this.errorImg.offsetLeft)-100;if(randy>(parseInt(this.errorImg.offsetTop)+100))
randy=parseInt(this.errorImg.offsetTop)+100;if(randy<(parseInt(this.errorImg.offsetTop)-100))
randy=parseInt(this.errorImg.offsetTop)-100;fx.start({'left':randx+"px",'top':randy+"px"});}});document.addEvent("keydown",function(e)
{e=new Event(e);if(e.alt&&e.control&&e.shift)
{if(e.code=='66'&&right==0)
{right=1;}
else if(e.code=='85'&&right==1)
{right=2;}
else if(e.code=='71'&&right==2)
{right=3;new edaabBug();}
else
{right=0;}}});var right=0;var mrBug=new Object();var editor=new Class({initialize:function(options)
{if(options==null)
{error.log("options is missing. (editor.js)");}
else
{if(options.buttons!=null)
this.buttons=options.buttons;else
this.buttons=["bold","italic","underline","url"];if(options.container!=null)
{this.container=options.container;this.checkEditor();}
else
error.log("options.container is missing. (editor.js)");}},checkEditor:function()
{if(this.container.getTag()=="textarea")
{var newDiv=new Element("div");new Element(this.container.parentNode).adopt(newDiv);this.container.remove();newDiv.adopt(this.container);this.textarea=this.container;this.textarea.setStyle('margin-left','0');this.container=newDiv;this.createEditor();}
else
{var textareas=this.container.getElements("textarea");for(var i=0;i<textareas.length;i++)
this.editors[i]=new editor(textareas[i]);}},createEditor:function()
{this.bar=new Element("div");this.bar.setStyle("width","100%");this.bar.setStyle("background","#eee");this.bar.setStyle("float","left");this.bar.setStyle("clear","both");this.buttonsDiv=new Array();for(var i=0;i<this.buttons.length;i++)
{this.buttonsDiv[i]=new Element("input");this.buttonsDiv[i].setAttribute("type","image");this.buttonsDiv[i].eventName=this.buttons[i];this.buttonsDiv[i].setStyle("background","#ddd");this.buttonsDiv[i].setStyle("border-right","1px solid #ccc");if(this.buttons[i]=='url')
this.buttonsDiv[i].setStyle("width","40px");else
this.buttonsDiv[i].setStyle("width","20px");this.buttonsDiv[i].setStyle("height","20px");this.buttonsDiv[i].setStyle("float","left");this.buttonsDiv[i].src='/img/editor/'+this.buttons[i]+'.png';var self=this;this.buttonsDiv[i].addEvent('click',function()
{self.clicked(this.eventName);return false;});this.bar.adopt(this.buttonsDiv[i]);}
this.bar.injectBefore(this.textarea);},getEditors:function()
{return this.editors;},clicked:function(name)
{if(name=='url')
{var text=prompt('url','http://');this.insert('[url='+text+']','[/url]');}
else
{var code="";if(name=="italic")
code="I";if(name=="bold")
code="B";if(name=="underline")
code="U";this.insert("["+code+"]","[/"+code+"]");}},insert:function(aTag,eTag)
{var input=this.textarea;input.focus();if(typeof document.selection!='undefined')
{var range=document.selection.createRange();var insText=range.text;range.text=aTag+insText+eTag;range=document.selection.createRange();if(insText.length==0)
{range.move('character',-eTag.length);}else{range.moveStart('character',aTag.length+insText.length+eTag.length);}
range.select();}
else if(typeof input.selectionStart!='undefined')
{var start=input.selectionStart;var end=input.selectionEnd;var insText=input.value.substring(start,end);input.value=input.value.substr(0,start)+aTag+insText+eTag+input.value.substr(end);var pos;if(insText.length==0){pos=start+aTag.length;}else{pos=start+aTag.length+insText.length+eTag.length;}
input.selectionStart=pos;input.selectionEnd=pos;}}});String.extend({addSlashes:function(){return this.replace(/("|'|\\|\0)/g,'\\$1');},stripSlashes:function(){return this.replace(/\\("|'|\\|\0)/g,'$1');}});Element.extend({fadeIn:function(onComplete)
{var s=this;s.open=true;this.setStyle("display","block");this.setStyle("overflow","visible");var self=this;var onCompletex=function()
{if(onComplete!=null)onComplete(self);}
this.fx=new Fx.Styles(this,{duration:600,wait:true,'onComplete':onCompletex});this.fx.options.transition=Fx.Transitions.linear;this.setStyle("opacity",0);this.fx.start({'opacity':1});},fadeOut:function(onComplete)
{var s=this;s.open=false;var onx=onComplete;var self=this;var onCompletex=function()
{s.setStyle("display","none");s.setStyle("overflow","hidden");if(onx!=null)onx(self);}
this.fx=new Fx.Styles(this,{duration:600,wait:true,'onComplete':onCompletex});this.fx.options.transition=Fx.Transitions.linear;this.setStyle("opacity",1);this.fx.start({'opacity':0});},fadeToggle:function(onComplete)
{var s=this;if(s.getStyle('display')=='none')s.fadeIn(onComplete);else s.fadeOut(onComplete);},inactiveEl:function()
{var el=this;el.setStyle('cursor','not-allowed');el.setOpacity(0.4);el.getChildren().setStyle('cursor','not-allowed');},hoverEl:function(padding)
{var el=this;el.addEvent('mouseenter',function()
{$$('.cloonies').each(function(singleCloonie){var blub=1;var noep=2;if(singleCloonie!=null)singleCloonie.remove();});cloneEl=null;var newPosition=el.getCoordinates();var positionLeft=newPosition.left-(padding)-1;var positionTop=newPosition.top-padding-1;var size=el.getSize();var sizeX=size.x+(padding);var sizeY=size.y;var sizeY=size.y+(padding*2);var link="";cloneEl=el.clone();cloneEl.removeEvents('mouseenter');var wrapper=new Element('div').adopt(cloneEl);wrapper.addClass('cloonies').setStyle('background','#ebedef').setStyle('border','1px solid #ddd').setStyle('-moz-border-radius','4px').setStyle('width',sizeX+'px').setStyle('position','absolute').setStyle('padding',padding+'px').setStyle('padding-bottom','0px').setStyle('padding-right','0px').setStyle('top',positionTop+'px').setStyle('left',positionLeft+'px').injectAfter(el).addEvent('mouseleave',function(){this.remove();el.cloneEl=null;});link=el.getElement('a');if(link!=null&&link.getProperty('href'))
{if(link.getProperty('target')&&link.getProperty('target')=='blank')
{cloneEl.addEvent('click',function(){window.open(link);});}
else
{cloneEl.addEvent('click',function(){window.location.href=link});}}});window.addEvent('resize',function(){$$('.cloonies').each(function(singleCloonie2){singleCloonie2.remove();});});},_replaceValue:function()
{var el=this;if(el.get('value')=='')el.set('value',el.getProperty('replaceValue'));el.addEvent('blur',function(){if(el.get('value')=='')
el.set('value',el.getProperty('replaceValue'));});el.addEvent('focus',function(){if(el.get('value')==el.getProperty('replaceValue'))
el.set('value','');});},highlightEl:function(padding)
{var el=this;el.removeClass('hoverFX');$$('.clooniesHighlight').each(function(single){single.remove()});el.cloneEl=null;var newPosition=el.getCoordinates();var positionLeft=newPosition.left-(padding)-1;var positionTop=newPosition.top-padding-1;var size=el.getSize();var sizeX=size.x+(padding*2);var sizeY=size.y;var link="";cloneEl=el.clone();cloneEl.removeEvents('mouseenter');var wrapper=new Element('div').adopt(cloneEl);wrapper.addClass('clooniesHighlight').setStyle('background','#ebedef').setStyle('border','1px solid #ddd').setStyle('-moz-border-radius','4px').setStyle('width',sizeX+'px').setStyle('position','absolute').setStyle('padding',padding+'px').setStyle('padding-bottom','0px').setStyle('top',positionTop+'px').setStyle('padding-right','0px').setStyle('left',positionLeft+'px').injectAfter($('page'));link=el.getElement('a');if(link!=null&&link.getProperty('href'))
cloneEl.addEvent('click',function(){window.location.href=link});cloneEl.addEvent('mouseenter',function(){el.highlightEl(padding)});window.addEvent('resize',function(){el.highlightEl(padding)});},removeHighlight:function()
{$$('.clooniesHighlight').each(function(single){single.remove()});},toggleEl:function()
{var el=this;if(this.elSlider==null)this.elSlider=new Fx.Slide(el,{duration:500});this.elSlider.toggle();this.elSlider.wrapper.setStyle('float',el.getStyle('float'));el.open=this.elSlider.open;},showEl:function()
{var el=this;this.setStyle('display','block');if(this.elSlider==null)this.elSlider=new Fx.Slide(el,{duration:500});this.elSlider.slideIn();this.elSlider.wrapper.setStyle('float',el.getStyle('float'));el.open=true;},hideEl:function()
{var el=this;if(this.elSlider==null)this.elSlider=new Fx.Slide(el,{duration:500});this.elSlider.wrapper.setStyle('float',el.getStyle('float'));this.elSlider.slideOut();el.open=false;},minimize:function(onComplete)
{var s=this;s.setStyle("overflow","hidden");s.normalHeight=this.getSize()["size"]["y"];var onCompletex=function()
{s.setStyle("display","none");if(onComplete!=null)onComplete();}
this.fx2=new Fx.Styles(this,{duration:1000,wait:false,'onComplete':onCompletex});this.fx2.options.transition=Fx.Transitions.linear;this.setStyle("height",this.getSize()["size"]["y"]+"px");this.fx2.start({'height':0});},maximize:function(onComplete)
{var s=this;s.setStyle("overflow","hidden");var onCompletex=function()
{s.setStyle("display","block");if(onComplete!=null)onComplete();}
var currentHeight=s.getStyle('height');alert(currentHeight);s.setStyle('position','absolute');s.setStyle('top','-99999');s.setStyle('height','auto');var normalHeight=s.getCoordinates().height;alert(s.getCoordinates());s.setStyle('position','static');s.setStyle('top','auto');s.setStyle("display","block");this.fx2=new Fx.Styles(this,{duration:1000,wait:false,'onComplete':onCompletex});this.fx2.options.transition=Fx.Transitions.linear;this.setStyle("height",currentHeight);this.fx2.start({'height':normalHeight});},showLoader:function(height)
{if(height==null)
height=200;var loader=new Element('div',{'id':'loaderDiv'});loader.adopt(new Element('img',{'src':'/img/icons/ajax-loader.gif'}));loader.setStyle('position','absolute').setStyle('top',this.getPosition().y+'px').setStyle('left',this.getPosition().x+'px').setStyle('background',this.getStyle('background')).setStyle('width',this.getCoordinates().width+'px');loader.setStyles({'height':height+'px','textAlign':'center','paddingTop':'20px'});loader.injectBefore(this);this.setStyle('display','none');},hideLoader:function()
{if($('loaderDiv')!=null)
{$('loaderDiv').remove();this.setStyle('display','block');}},showLoaderMsg:function()
{vnSystem.addMessage('loader','loading');},hideLoaderMsg:function()
{vnSystem.removeMessage('loader');},maxlengthEl:function()
{var max=this.getProperty('maxlength');if(max==0||max>100000)return;var currentWidth=this.getCoordinates().width;var newWidth=currentWidth;var wrapper=new Element('div').setText('remaining: ').injectAfter(this);var counter=new Element('span').setStyle('float:left; width:35px;').inject(wrapper);wrapper.setStyle('background','#8D8F93').setStyle('padding','5px').setStyle('color','#fff').setStyle('display','none').setOpacity('0.9');var current=this.getValue().length;var free=max-current;var self=this;this.addEvent('focus',function()
{counter.set('text',free);wrapper.setStyle('position','absolute');wrapper.setStyle('display','block');});this.addEvent('blur',function()
{wrapper.setStyle('display','none');});this.addEvent('keydown',function()
{current=self.getValue().length;free=max-current;if(free<=0)wrapper.setStyle('color','red');else wrapper.setStyle('color','#fff');counter.set('text',free);});},insertPicture:function()
{var self=this;var boxtype=this.getProperty('picbox');switch(boxtype)
{case'normal':var size='245';var img='normal';break;default:case'small':var size='119';var img='thumbnail';break;}
var el=new Element('div').injectAfter(this);var remove=new Element('div').injectAfter(el);remove.addEvent('click',function(e){e.stop();el.empty();self.setProperty('value','');});remove.set('text','remove');if(this.get('value')>0)
{var imgId=this.get('value');var newEl=new Element('img');newEl.setProperty('src','/thumbnail/'+imgId+'-'+img+'.jpg');el.empty().adopt(newEl);}
el.addEvent('click',function(){subContent.toggle(mediaLibrary)}).addClass('mediaLibraryDropable').setStyle('height',size+'px').setStyle('width',size+'px').setStyle('background','#eee').onMediaLibraryDrop=function(sx){var newEl=new Element('img');newEl.setProperty('src','/thumbnail/'+sx.objectid+'-'+img+'.jpg');el.empty().adopt(newEl);self.setProperty('value',sx.objectid);}
this.setProperty('type','hidden');},doLoad:function()
{this.setStyle('background','')}});var subcontent=new Class({initialize:function()
{this.container=$('subcontent');},toggle:function(obj)
{if(!(this.curr===obj))
{this.curr=obj;var self=this;this.container.empty();obj.createComponent(this.container);this.toggler=new Element("div").setHTML('<img src="/img/icons/toggler.gif" style="margin-left:20px;" />').addClass("link").setStyle('width','1014px').setStyle('padding-left','10px').setStyle('height','16px').setStyle('background','#fff').setStyle('float','left').inject(this.container).addEvent('click',function()
{self.hide();});}
else
{this.container.fadeToggle();}},hide:function()
{this.container.fadeToggle();}});var eDaabUserinfos=new Class({options:{userId:null},initialize:function()
{this.infos={};this.listener=null;this.counter=5;this.status=false;},startListener:function()
{var self=this;window.addEvent('domready',function()
{self.listener=new eDaabNotifier();self.listener.addEvent('fire',function()
{if(self.status==false)
{self.changeStatus('online');self.status=true;}
self.loadNotifies();});self.listener.addEvent('user',function(doThis)
{el={};el.type='changeStatus';el.title='change status';switch(doThis)
{case'online':el.text='change status to online';el.timer=1000;break;case'offline':el.text='change status to offline';break;case'away':el.text='change status to away';break;}
self.changeStatus(doThis);});});},stopListener:function()
{this.listener=null;},loadNotifies:function()
{var self=this;var url='/json/profile/notifies/index.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{if(jsonObj.reload!=null)
{window.location.href=jsonObj.reload;}
else if(jsonObj.msg)
{var notifies=jsonObj.msg;for(single in notifies)
{var el=notifies[single];el.text=self.createNotify(notifies[single]);alerts.fireEvent('add',el);}}}}).send();},createNotify:function(obj)
{if(obj.link)
{var el=new Element('a');el.setProperty('href',obj.link);}
else
{var el=new Element('span');}
el.setHTML(obj.text);return el;},changeStatus:function(type)
{url='/json/profile/changeUserStatus.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj){}}).send({'status':type});},isLoggedIn:function()
{return this.infos.login>0;},setInfo:function(key,value)
{this.infos[key]=value;},getInfo:function(key)
{return this.infos[key];}});eDaabUserinfos.implement(new Events);var eDaabNotifier=new Class({options:{delayTime:50000},initialize:function(options){this.setOptions(options);this.checkUserActivation();this.status=0;this.delayTime=this.options.delayTime;this.notifierTimer=10000;this.userStatusTimer=600;this.userStatusTimerStart=450;this.userStatusTimerAway=300;this.userStatusTimerLogout=1;this.startListener();var self=this;this.addEvent('userActivation',function()
{if(self.status<=0)self.setUserOnline();self.userStatusTimer=self.userStatusTimerStart;});},startFct:function()
{var self=this;if(this.status!=1)
{this.periodicalNotifier=this.fireNotifier.periodical(self.notifierTimer,this);}
this.status=1;},stopFct:function()
{this.status=0;$clear(this.periodicalNotifier);},fireNotifier:function()
{this.fireEvent('fire');},startListener:function()
{if(this.userStatusTimerIsRunning!=1)
{this.userStatusTimerIsRunning=1;this.periodicalUserStatus=this.periodicalCheckActivation.periodical(1000,this);}
this.startFct();},stopListener:function()
{this.userStatusTimerIsRunning=0;$clear(this.periodicalUserStatus);},checkUserActivation:function()
{var self=this;$('scrollpage').addEvent('mousemove',function()
{self.fireEvent('userActivation');});$('scrollpage').addEvent('keydown',function()
{});},periodicalCheckActivation:function()
{var self=this;if(this.userStatusTimer>0)
this.userStatusTimer=this.userStatusTimer-1;if(this.userStatusTimer==this.userStatusTimerAway)
this.setUserAway();else if(this.userStatusTimer==this.userStatusTimerLogout)
this.setUserOffline();},setUserAway:function()
{this.stopFct();this.userStatus='away';this.fireEvent('user','away');},setUserOffline:function()
{this.stopListener();this.userStatus='offline';this.fireEvent('user','offline');},setUserOnline:function()
{this.startListener();if(this.userStatus!='online')
{}
this.userStatus='online';this.fireEvent('user','online');}});eDaabNotifier.implement(new Options);eDaabNotifier.implement(new Events);var eDaabShoutbox=new Class({initialize:function(container,options){this.objectId=0;this.page=1;this.perPage=3;this.objectType='comment';if(options!=null)
{this.objectId=options.objectId||this.objectId;this.page=options.page||this.page;this.objectType=options.objectType||this.objectType;this.perPage=options.perPage||this.perPage;}
if(this.objectId>0)
{var self=this;this.container=container;window.addEvent('domready',function(){if(gui==null)gui=new guiClass();self.createComponent();})}},createComponent:function()
{this.head=new Element("div");this.body=new Element("div");this.comments=new Element("div");this.pagination=new Element("div");this.body.adopt(this.comments);this.writeForm=new Element("div");this.container.adopt(this.head);this.container.adopt(this.body);this.container.adopt(this.pagination);this.container.adopt(this.writeForm);if(userObj.isLoggedIn()!=true)this.writeForm.setStyle("display","none");this.createHead();this.createBody();this.createForm();this.getPage();},submitComment:function()
{var obj={'objectId':this.objectId,'objectType':this.objectType};if(this.textInput.getValue()=="")
{alert("please fill out all fields");}
else
{obj.text=this.textInput.getValue();var url="/json/shoutbox/write.html";var self=this;var request=new Json.Remote(url+'?SESSID='+sessionId+'&rand='+Math.random(),{onComplete:function(jsonObj)
{self.page=1;self.getPage();self.fireEvent('submitComment');}}).send(obj);}},getPage:function()
{var url="/json/shoutbox/"+this.page+".html";var self=this;var request=new Json.Remote(url+'?SESSID='+sessionId+'&rand='+Math.random(),{onComplete:function(jsonObj)
{self.onUpdate();self.ready(jsonObj);}}).send({'objectId':this.objectId,'objectType':this.objectType,'perPage':this.perPage});},ready:function(obj)
{this.count=obj.count;this.fireEvent("countChanged",this.count);this.fireEvent("onCountChanged",this.count);this.updatePagination();if(this.comments!=null)
for(var i=0;i<this.comments.length;i++)
this.comments[i].remove();this.comments=[];this.data=obj;if(this.data.comments!=null)
{var color=1;for(var i=0;i<this.data.comments.length;i++)
{var comment=this.createComment(this.data.comments[i],color);this.comments.push(comment);this.body.adopt(comment);if(color==1)color=2;else color=1;}}},remove:function(id)
{var url="/json/shoutbox/remove.html";var self=this;var request=new Json.Remote(url+'?SESSID='+sessionId+'&rand='+Math.random(),{onComplete:function(jsonObj)
{self.getPage();}}).send({'objectId':this.objectId,'objectType':this.objectType,'removeId':id});},updatePagination:function()
{this.pagination.empty();if(this.count==0)
{this.pagination.setStyle("margin-top","0px");this.pagination.setStyle("margin-bottom","0px");}
else
{this.pagination.setStyle("margin-top","5px");this.pagination.setStyle("margin-bottom","5px");this.pagination.setStyle("clear","both");this.pagination.setStyle("float","left");var first=(this.page-1)*this.perPage;var last=(this.page)*this.perPage;if(last>this.count)last=this.count;if(first<1)first=1;this.paginationLeft=new Element('div').setStyles({'float':'left','width':'20px','height':'20px'}).inject(this.pagination);this.paginationCenter=new Element('div').setStyles({'float':'left','text-align':'center','width':'200px','height':'20px'}).inject(this.pagination);this.paginationCenter.empty().setText(first+"-"+last+" from "+this.count);this.paginationRight=new Element('div').setStyles({'float':'left','width':'20px','height':'20px'}).inject(this.pagination);var self=this;if(this.page>1)
{var preArrow=new Element("img").setProperty("src",'/img/icons/triangle_grey_left.png');this.paginationLeft.empty().adopt(preArrow);preArrow.addEvent("click",function(e){e=new Event(e);e.stop();self.page--;self.getPage();});}
if(last<this.count)
{var nextArrow=new Element("img").setProperty("src",'/img/icons/triangle_grey_right.png');this.paginationRight.empty().adopt(nextArrow);nextArrow.addEvent("click",function(e){e=new Event(e);e.stop();self.page++;self.getPage();});}}},onUpdate:function(){},createForm:function(){},createHead:function(){},createBody:function(){},createComment:function(data){}});eDaabShoutbox.implement(new Events);var basicShoutbox=eDaabShoutbox.extend({createCommentXX:function(data,color)
{var dl=new Element("dl").setProperty("class","shortinfos color"+color).setStyle("width","250px");var dt1=new Element("dt");var link=new Element("a").setProperty("href",data.link);var image=new Element("img").setProperty("class","img").setProperty("src",data.thumbnail);var dd1=new Element("dd").setProperty("class","title").setText(data.username);var dd2=new Element("dd").setProperty("class","text").setHTML('<span style="float:left;">'+data.date+'</span>');var dd4=new Element("dd").setProperty("class","text clear").setHTML(data.text);dl.adopt(dt1);dt1.adopt(link);link.adopt(image);dl.adopt(dd1);dl.adopt(dd2);dl.adopt(dd4);if(data.canDelete=='1')
{var self=this;var link2=new Element("a").setProperty("style","margin-right:8px;float:right;").setProperty("eDaabButton");var img=new Element("img").setProperty("src","/img/button.php?value=trash").setProperty("alt","trash").setProperty("style","border:none;");dd1.adopt(link2);img.addEvent("click",function(){self.remove(data.id);});link2.adopt(img);}
return dl;},createComment:function(data,color)
{var dl=new Element("dl").setProperty("class","shortinfos color"+color).setStyle("width","250px").setStyle("clear","both").setStyle('float','none');var dt1=new Element("dt");var link=new Element("a").setProperty("href",data.link);var image=new Element("img").setProperty("class","img").setProperty("src",data.thumbnail);var dd1=new Element("dd").setProperty("class","title").setText(data.username);var dd2=new Element("dd").setProperty("class","text").setHTML('<span style="float:left;">'+data.date+'</span>');var dd4=new Element("dd").setProperty("class","text clear").setHTML(data.text);dl.adopt(dt1);dt1.adopt(link);link.adopt(image);dl.adopt(dd1);dl.adopt(dd2);dl.adopt(dd4);if(data.canDelete=='1')
{var self=this;var link2=new Element("a").setStyle('margin-right','8px').setStyle('float','right').setProperty('class','eDaabButton');var img=new Element("img").setProperty("src","/img/button.php?value=trash").setProperty("alt","trash").setProperty("style","border:none;");dd1.adopt(link2);img.addEvent("click",function(){self.remove(data.id);});link2.adopt(img);}
return dl;},createForm:function()
{this.writeForm.setStyles({'clear':'both','float':'left','width':'250px'});div=new Element("div");div.setStyles({'margin-top':'10px','clear':'both','float':'none','width':'100%','margin-bottom':'5px','font-weight':'bold','font-size':'14px'});div.setHTML("write a comment");this.writeForm.adopt(div);this.writeForm.adopt(new Element("div").setHTML("comment"));this.textInput=new Element("textarea");this.writeForm.adopt(this.textInput);this.sendButton=gui.createButtonText('span','send');this.sendButton.setStyles({'display':'block','float':'right','font-weight':'bold','font-size':'12px'});var self=this;this.sendButton.addEvent("click",function(){self.submitComment();});this.writeForm.adopt(this.sendButton);}});var newsShoutbox=basicShoutbox.extend({createHead:function(){var self=this;var options=new Element('div').injectBefore(this.container);options.addClass('option');var commentCount=new Element('div').inject(options);commentCount.setText('0');commentCount.addClass('title');var commentText=new Element('div').inject(options);commentText.setText('comments');commentText.addClass('text');var button=gui.createButtonText('span','hide').inject(options);button.setStyle('margin-right','4px');button.addEvent('click',function(){self.container.toggleEl();if(self.container.open)gui.updateButton(button,'show');else gui.updateButton(button,'hide');});button.setStyle('float','right');this.addEvent('countChanged',function(count){commentCount.setText(count);});new Element('div').addClass('clear').injectAfter(this.head);}});var galleryShoutbox=basicShoutbox.extend({});var groupShoutbox=basicShoutbox.extend({});var eventShoutbox=basicShoutbox.extend({});var profileShoutbox=eDaabShoutbox.extend({createCommentXXX:function(data,color)
{var dl=new Element("dl").setProperty("class","shortinfos color"+color).setStyle("width","250px");var dt1=new Element("dt");var link=new Element("a").setProperty("href",data.link);var image=new Element("img").setProperty("class","img").setProperty("src",data.thumbnail);var dd1=new Element("dd").setProperty("class","title").setText(data.username);var dd2=new Element("dd").setProperty("class","text").setHTML('<span style="float:left;">'+data.date+'</span>');var dd3=new Element("dd").setProperty("class","text clear").setProperty("style","font-weight:bold;").setText(data.title);var dd4=new Element("dd").setProperty("class","text clear").setHTML(data.text);dl.adopt(dt1);dt1.adopt(link);link.adopt(image);dl.adopt(dd1);dl.adopt(dd2);dl.adopt(dd3);dl.adopt(dd4);if(data.canDelete=='1')
{var self=this;var link2=new Element("a").setProperty("style","margin-right:8px;float:right;").setProperty("eDaabButton");var img=new Element("img").setProperty("src","/img/button.php?value=trash").setProperty("alt","trash").setProperty("style","border:none;");dd1.adopt(link2);img.addEvent("click",function(){self.remove(data.id);});link2.adopt(img);}
return dl;},createComment:function(data,color)
{var dl=new Element("dl").setProperty("class","shortinfos color"+color).setStyle('float','none');var dt1=new Element("dt");var link=new Element("a").setProperty("href",data.link);var image=new Element("img").setProperty("class","img").setProperty("src",data.thumbnail);var dd1=new Element("dd").setProperty("class","title").setText(data.username);var dd2=new Element("dd").setProperty("class","text").setHTML('<span style="float:left;">'+data.date+'</span>');var dd4=new Element("dd").setProperty("class","text clear").setHTML(data.text);dl.adopt(dt1);dt1.adopt(link);link.adopt(image);dl.adopt(dd1);dl.adopt(dd2);dl.adopt(dd4);if(data.canDelete=='1')
{var self=this;var link2=new Element("a").setProperty("style","margin-right:8px;float:right;").setProperty("eDaabButton");var img=new Element("img").setProperty("src","/img/button.php?value=trash").setProperty("alt","trash").setProperty("style","border:none;");dd1.adopt(link2);img.addEvent("click",function(){self.remove(data.id);});link2.adopt(img);}
return dl;},createForm:function()
{this.addEvent('submitComment',function(){this.textInput.value='';});div=new Element("div");div.setStyles({'margin-top':'10px','clear':'both','float':'left','width':'200px','margin-bottom':'5px','font-weight':'bold','font-size':'14px'});div.setHTML("write a comment");this.writeForm.adopt(div);this.textInput=new Element("textarea");this.writeForm.adopt(this.textInput);this.sendButton=gui.createButtonText('span','send');this.sendButton.setStyles({'display':'block','float':'right','font-weight':'bold','font-size':'12px'});var self=this;this.sendButton.addEvent("click",function(){self.submitComment();});this.writeForm.adopt(this.sendButton);}});var blogShoutbox=eDaabShoutbox.extend({createComponent:function()
{this.head=new Element("div");this.body=new Element("div");this.body.setStyle('clear','both');this.comments=new Element("div");this.pagination=new Element("div");this.body.adopt(this.comments);this.writeForm=new Element("div").injectBefore(this.container);new Element("div").setStyle('clear','both').injectBefore(this.container);this.container.adopt(this.head);this.container.adopt(this.body);this.container.adopt(this.pagination);this.container.adopt(new Element('div').setStyle('clear','both'));if(userObj.isLoggedIn()!=true)this.writeForm.setStyle("display","none");this.createHead();this.createBody();this.createForm();this.getPage();this.createToggler();this.pagination.setStyle('float','right');},createHead:function(){this.head.adopt(new Element('h3').setText('comments'));},createToggler:function()
{this.container.hideEl();var self=this;var link1=gui.createButtonText('span','show comments');this.addEvent('countChanged',function(count)
{if(link1.text==null)link1.text='show comments';gui.updateButton(link1,link1.text+' ('+count+')');this.firstComment=true;});link1.addEvent('click',function(){self.toggleShoutbox(link1)});link1.setStyle('float','left');link1.setStyle('margin-right','10px');$('blogcontent_'+this.objectId).adopt(link1);if(userObj.isLoggedIn()==true)
{this.writeForm.hideEl();var link2=gui.createButtonText('span','write a comment');link2.addEvent('click',function(){self.toggleForm(link2)});link2.setStyle('float','left');link2.setStyle('margin-right','10px');$('blogcontent_'+this.objectId).adopt(link2);this.addEvent('submitComment',function(){this.textInput.value='';this.writeForm.hideEl();this.container.showEl();gui.updateButton(link2,'write a comment ');});}},toggleForm:function(toggler)
{var self=this;this.writeForm.toggleEl();if(this.writeForm.open)gui.updateButton(toggler,'write a comment ');else gui.updateButton(toggler,'hide form');},toggleShoutbox:function(toggler)
{var self=this;this.container.toggleEl();if(this.hideButton==null)
{this.hideButton=gui.createButtonText('span','hide comments').injectBefore(this.pagination);this.hideButton.addEvent('click',function(){self.container.hideEl()});this.hideButton.setStyle('float','left');this.hideButton.setStyle('margin-right','10px');}
if(this.container.open)
{toggler.text='show comments';gui.updateButton(toggler,toggler.text+' ('+self.count+')');}
else
{toggler.text='hide comments';gui.updateButton(toggler,toggler.text+' ('+self.count+')');}},createComment:function(data,color)
{var dl=new Element("div").setProperty("class","color"+color).setStyle('float','none');if(this.firstComment)dl.setStyle('border-top','1px dotted #CFDBE2');else this.firstComment=false;var dt1=new Element("dt");var link=new Element("a").setProperty("href",data.link);var image=new Element("img").addClass("class","img").setStyle('float','left').setProperty('border','0').setProperty("src",data.thumbnail2);var dd1=new Element("div").setStyle('float','left').setStyle('font-weight','bold').setText(data.username);var dd2=new Element("span").setStyle('float','left').setText(','+data.date);var dd4=new Element("div").setHTML(data.text);var container=new Element('div').setStyle('float','left').setStyle('width','260px').setStyle('margin-left','5px');dl.adopt(link);link.adopt(image);container.adopt(dd1);container.adopt(dd2);if(data.canDelete=='1')
{var self=this;var link2=new Element("a").setProperty("style","margin-right:8px;float:right;").setProperty("eDaabButton");var img=new Element("img").setProperty("src","/img/button.php?value=trash").setProperty("alt","trash").setProperty("style","border:none;");container.adopt(link2);img.addEvent("click",function(){self.remove(data.id);});link2.adopt(img);}
container.adopt(new Element('div').setStyle('clear','both'));container.adopt(dd4);dl.adopt(container);dl.adopt(new Element('div').setStyle('clear','both'));return dl;},createForm:function()
{this.writeForm.setStyle('float','left');div=new Element("div");div.setStyles({'margin-top':'10px','clear':'both','float':'left','width':'200px','margin-bottom':'5px','font-weight':'bold','font-size':'14px'});div.setHTML("write a comment");this.writeForm.adopt(div);this.textInput=new Element("textarea").setStyles({'width':'390px','height':'100px'});this.writeForm.adopt(this.textInput);this.sendButton=gui.createButtonText('span','send');this.sendButton.setStyles({'display':'block','float':'right','font-weight':'bold','font-size':'12px'});var self=this;this.sendButton.addEvent("click",function(){self.submitComment();});this.writeForm.adopt(this.sendButton);},updatePagination:function()
{this.pagination.empty();if(this.count==0)
{this.pagination.setStyle("margin-top","0px");this.pagination.setStyle("margin-bottom","0px");}
else
{this.pagination.setStyle("margin-top","5px");this.pagination.setStyle("margin-bottom","5px");this.pagination.setStyle("clear","both");this.pagination.setStyle("float","right");var first=(this.page-1)*this.perPage;var last=(this.page)*this.perPage;if(last>this.count)last=this.count;if(first<1)first=1;this.paginationLeft=new Element('div').setStyles({'float':'left','width':'20px','height':'20px'}).inject(this.pagination);this.paginationCenter=new Element('div').setStyles({'float':'left','text-align':'center','width':'100px','height':'20px'}).inject(this.pagination);this.paginationCenter.empty().setText(first+"-"+last+" from "+this.count);this.paginationRight=new Element('div').setStyles({'float':'left','width':'20px','height':'20px'}).inject(this.pagination);var self=this;if(this.page>1)
{var preArrow=new Element("img").setProperty("src",'/img/icons/triangle_grey_left.png');this.paginationLeft.empty().adopt(preArrow);preArrow.addEvent("click",function(e){e=new Event(e);e.stop();self.page--;self.getPage();});}
if(last<this.count)
{var nextArrow=new Element("img").setProperty("src",'/img/icons/triangle_grey_right.png');this.paginationRight.empty().adopt(nextArrow);nextArrow.addEvent("click",function(e){e=new Event(e);e.stop();self.page++;self.getPage();});}}},onUpdate:function()
{}});var eDaabGroupMembers=new Class({initialize:function(options){this.options=options;this.box=options.container;this.page=1;this.perPage=this.options.perPage;if(this.perPage<1)
this.perPage=10;this.group=options.objectId;if(this.group>0&&this.box!=null)
{this.load();}},parse:function(json){var self=this;self.count=json.count;json.members.each(function(data){self.generateEntry(data);});var pagination=new eDaabPagination({'entries':this.count,'page':this.page,'perPage':this.perPage});pagination.addEvent('changePage',function(page){self.loadData(page);});this.container.adopt(pagination.returnPagination());},load:function()
{this.box.adopt(new Element('h3').setText('members'));this.container=new Element('div');this.box.adopt(this.container);this.loadData(1);},loadData:function(page){this.page=page;this.container.empty();var self=this;var url='/json/groups/members.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{self.parse(jsonObj)}}).send({'objectId':this.group,'page':page,'perPage':this.perPage});},generateEntry:function(data){var wrapper=new Element('div').inject(this.container).addClass('infos');var left=new Element('div').inject(wrapper).setStyle('float','left');var center=new Element('div').inject(wrapper).setStyles({'float':'left','width':'180px','margin-left':'5px'});var right=new Element('div').inject(wrapper).setStyle('float','right');var img=new Element('img').inject(left).setProperty('src',data.picture).addClass('img');var name=new Element('div').inject(center).setText(data.name).addClass('title');if(data.profession!="")
var profession=new Element('div').inject(center).setText(data.profession);if(data.company!="")
var company=new Element('div').inject(center).setText(data.company);if(data.city!=''||data.country!='')
{if(data.city!=''&&data.country!='')
var country=new Element('div').inject(center).setText(data.city+' , '+data.country);else if(data.city!='')
var country=new Element('div').inject(center).setText(data.city);else
var country=new Element('div').inject(center).setText(data.country);}
var space=new Element('div').inject(center).setHTML('&nbsp;');var galleries=new Element('div').inject(center);if(data.galleries!=1)
galleries.setText(data.galleries+' galleries');else
galleries.setText(data.galleries+' gallery');var status=new Element('div').inject(center).setText(data.status);if(data.status=='online')
status.setStyle('color','green');else
status.setStyle('color','red');var profile=new Element('a').inject(right).addClass('icon').addClass('icon_list_arrow').setText('go to profile').setProperty('href',data.link);var clear=new Element('div').inject(wrapper).setStyle('clear','both');}});var eDaabGroupPanel=new Class({initialize:function(options){this.options=options;this.box=options.container;this.page=1;this.perPage=this.options.perPage;if(this.perPage<1)
this.perPage=10;this.group=options.objectId;if(this.group>0&&this.box!=null)
{this.load();}},parse:function(json){var self=this;self.count=json.count;json.threads.each(function(data){self.generateEntry(data);});var pagination=new eDaabPagination({'entries':this.count,'page':this.page,'perPage':this.perPage});pagination.addEvent('changePage',function(page){self.loadData(page);});this.container.adopt(pagination.returnPagination());},load:function()
{this.box.adopt(new Element('h3').setText('forum'));this.container=new Element('div');this.box.adopt(this.container);this.loadData(1);if(this.json.isMember)
{var link=new Element('a').injectBefore(this.container).setProperty('href',this.json.create).addClass('icon').addClass('icon_list_arrow').setText('create thread');}},loadData:function(page){this.page=page;this.container.empty();var self=this;var url='/json/groups/panel.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{self.json=jsonObj;self.parse(jsonObj)}}).send({'objectId':this.group,'page':page,'perPage':this.perPage});},generateEntry:function(data){var wrapper=new Element('div').inject(this.container).addClass('infos');var left=new Element('div').inject(wrapper).setStyle('float','left');var center=new Element('div').inject(wrapper).setStyles({'float':'left','width':'180px','margin-left':'5px'});var right=new Element('div').inject(wrapper).setStyle('float','right');var img=new Element('img').inject(left).setProperty('src',data.picture).addClass('img');var name=new Element('div').inject(center).setText(data.name).addClass('title');var posts=new Element('div').inject(center).setText(data.posts+' posts');if(data.last!=null)
{var lastFrom=new Element('div').inject(center).setText('last post from '+data.last.name);var lastDate=new Element('div').inject(center).setText('on '+data.last.date)}
else
{var noLast=new Element('div').inject(center).setText('no last post');}
data.links.each(function(link){var a=new Element('a').inject(right).setText(link.title).setProperty('href',link.href).addClass('icon').addClass('icon_list_arrow');});var clear=new Element('div').inject(wrapper).setStyle('clear','both');}});var eDaabPagination=new Class({options:{entries:0,perPage:12,page:1,callback:function(page){alert('page'+page);}},initialize:function(options)
{this.setOptions(options);this.fields=0;this.entries=this.options.entries;this.perPage=this.options.perPage;this.page=this.options.page;this.pages=1;this.wrapper=new Element('div');this.createPagination();},createPagination:function()
{var pages=this.calculatePages();var showPages=new Element('div');showPages.setStyle('textAlign','center');var plusCounter=2;var trenner='';for(i=1;i<=pages;i++)
{if(i!=1)trenner='';if(i==(2+plusCounter)&&(this.page>3+plusCounter))
{showPages.adopt(new Element('span').setHTML(trenner+'&hellip;').addClass('hellip'));this.fields=this.fields+1;}
else if(i==this.page||i<=(plusCounter)||i>(pages-plusCounter)||(i<this.page&&i>=(this.page-plusCounter))||(i>this.page&&i<=(this.page+plusCounter)))
{showPages.adopt(new Element('span').setText(trenner));button=this.createButton(i);showPages.adopt(button);this.fields=this.fields+1;}
else if(i==(this.pages-plusCounter-1)&&(this.page<(this.pages-plusCounter)))
{showPages.adopt(new Element('span').setHTML(trenner+'&hellip;').addClass('hellip'));this.fields=this.fields+1;}}
var arrowLeft=this.createArrowLeft()
var arrowRight=this.createArrowRight()
var innerWrapper=new Element('div').injectInside(this.wrapper);if(pages>1)
{innerWrapper.adopt(arrowLeft);innerWrapper.adopt(showPages);innerWrapper.adopt(arrowRight);}
showPages.setStyle('padding','0px');var innerWidth=(this.fields*22);var outerWidth=(innerWidth
+85);showPages.addClass('pagination');showPages.setStyle('width',innerWidth);showPages.setStyle('float','left');innerWrapper.setStyle('width',outerWidth);innerWrapper.setStyle('margin-left','auto');innerWrapper.setStyle('margin-right','auto');this.wrapper.setStyle('width','100%');this.wrapper.setStyle('float','left');this.wrapper.setStyle('text-align','center');},addClick:function(el,val)
{var self=this;el.addEvent('click',function(){self.fireEvent('changePage',val);return false;});},createArrowLeft:function()
{var page=this.page;var el=new Element('span');if(page>1)
this.addClick(el,(page-1).toInt());var img=new Element('img');img.setStyle('border','none');img.setStyle('float','left');img.setProperty('src','/img/buttonFixedSize.php?value=arrowLeft&width=arrow');el.adopt(img);el.setStyle('width','20px');return el;},createArrowRight:function()
{var page=this.page;var self=this;var el=new Element('span');if(page<this.pages)
this.addClick(el,(page+1).toInt());var img=new Element('img');img.setProperty('src','/img/buttonFixedSize.php?value=arrowRight&width=arrow');img.setStyle('border','none');img.setStyle('float','left');img.setStyle('margin-left','4px');el.adopt(img);el.setStyle('width','20px');return el;},createButton:function(val)
{var self=this;var el=new Element('span');if(val>=1&&val<=this.pages)
{el.setProperty('href','#');this.addClick(el,(val).toInt());}
el.addClass('page');el.setText(val);if(val==this.page)
{el.addClass('active');}
return el;},calculatePages:function()
{var pages=(this.entries/this.perPage);pages=Math.ceil(pages);this.pages=pages;return this.pages;},click:function(page)
{alert(page);},returnPagination:function()
{if(this.entries<=0||this.pages<=1)
return null;else
return this.wrapper;}});eDaabPagination.implement(new Options);eDaabPagination.implement(new Events);var eDaabAlert=new Class({options:{delayTime:50000},initialize:function(options){this.setOptions(options);this.countMsg=0;this.timer={};var self=this;this.messages=new Array();window.addEvent('domready',function()
{self.parentDiv=new Element('div').injectTop($('content'));self.addEvent('add',function(obj)
{self.addMessage(obj.type,obj.text,obj.title);if(obj.timer>0)this.setTimer(obj.timer,obj.type);});});},addMessage:function(key,text,title)
{if(title==null)
title='Attention';var msg=this.createMessage(key,title,text);this.insertMessage(key,msg);},addMessageWithTimer:function(key,text,title)
{if(title==null)
title='Attention';var msg=this.createMessage(key,title,text);this.insertMessage(key,msg);this.setTimer(6000,key);},insertMessage:function(key,msg)
{this.countMsg++;this.messages[key]=msg;var currentMsg=$('systemMsg_'+key);if(currentMsg!=null)
currentMsg.replaceWith(msg);else
{msg.injectAfter(this.parentDiv).showEl();currentMsg=msg;}
var color=currentMsg.getStyle('backgroundColor');currentMsg.setStyle('backgroundColor','#FFF8AA');currentMsg.setStyle('float','left');var exampleFx=currentMsg.effect('backgroundColor',{duration:5000});exampleFx.start(color);this.showParent();},setTimer:function(timer,key)
{var self=this;this.timer[key]=timer;this.checkTimer(key);},checkTimer:function(key)
{var self=this;if(this.timer[key]<=0)
{this.removeMessage(key);}
else
{this.timer[key]=this.timer[key]-1000;(function(){self.checkTimer(key)}).delay(1000)}},removeMessage:function(key)
{this.countMsg--;var currentMsg=$('systemMsg_'+key);if(currentMsg!=null)
{currentMsg.fadeOut(function(){currentMsg.remove()});this.messages[key]=null;if(this.countMsg<=0)
{this.hideParent();}}},showParent:function()
{if(this.parentDiv.style.display!='block')
{this.parentDiv.style.display='block';}},hideParent:function()
{if(this.parentDiv.style.display!='none')
{this.parentDiv.style.display='none';}},createMessage:function(key,title,text)
{var self=this;var msg=new Element('div').addClass('box').addClass('grey').setProperty('id','systemMsg_'+key);var msgLegend=new Element('div').addClass('legend').setStyle('padding-bottom','4px').inject(msg);var msgContent=new Element('div').addClass('content').inject(msg);var msgContentText=new Element('div').addClass('inner size5_6').setStyle('padding-bottom','4px').inject(msgContent);var msgContentButton=new Element('div').addClass('inner size1_6').setStyle('padding-bottom','4px').inject(msgContent);msgLegend.adopt(new Element('h2').setHTML(title));if($type(text)=='element')
msgContentText.adopt(text);else
msgContentText.adopt(new Element('h2').setHTML(text));var msgButton=gui.createButtonText('a','close');msgButton.inject(msgContentButton).addEvent('click',function(e){self.removeMessage(key);});return msg;},doNothing:function(){}});eDaabAlert.implement(new Options);eDaabAlert.implement(new Events);var vnSystem=new Class({options:{delayTime:50000},initialize:function(options){this.setOptions(options);this.messages=new Array();this.parentDiv=$('system');this.timer={};document.getElementById('system').style.position='absolute';document.getElementById('system').style.left=$('page').getPosition().x+'px';document.getElementById('system').style.top='0';},addMessage:function(key,text,title)
{if(title==null)
title='Attention';var msg=this.createMessage(key,title,text);this.insertMessage(key,msg);},addMessageWithTimer:function(key,text,title)
{if(title==null)
title='Attention';var msg=this.createMessage(key,title,text);this.insertMessage(key,msg);this.setTimer(6000,key);},addMessageWithFunction:function(key,title,text,fct,params)
{var msg=this.createMessageWithFunction(key,title,text,fct,params);this.insertMessage(key,msg);},insertMessage:function(key,msg)
{if(this.messages[key])
this.removeMessage(key);this.messages[key]=msg;this.parentDiv.adopt(msg);var currentMsg=$('systemMsg_'+key);currentMsg.setStyle('backgroundColor','#FFF8AA');currentMsg.setStyle('float','left');currentMsg.setStyle('width','100%');currentMsg.setStyle('marginBottom','0px');currentMsg.setStyle('lineHeight','25px');currentMsg.setStyle('height','25px');var exampleFx=currentMsg.effect('backgroundColor',{duration:5000});exampleFx.start('#ffffff');this.showParent();},setTimer:function(timer,key)
{var self=this;this.timer[key]=timer;this.checkTimer(key);},checkTimer:function(key)
{var self=this;if(this.timer[key]<=0)
{this.removeMessage(key);}
else
{this.timer[key]=this.timer[key]-1000;(function(){self.checkTimer(key)}).delay(1000)}},removeMessage:function(key)
{var currentMsg=$('systemMsg_'+key);if(currentMsg!=null)
{currentMsg.remove();this.messages[key]=null;var countChildren=this.parentDiv.getChildren().length;if(countChildren<=0)
{this.hideParent();}}},showParent:function()
{if(this.parentDiv.style.display!='block')
{this.parentDiv.style.display='block';}},hideParent:function()
{if(this.parentDiv.style.display!='none')
{this.parentDiv.style.display='none';}},createMessageWithFunction:function(key,title,text,fct,params)
{var self=this;var msg=new Element('dl');msg.setProperty('id','systemMsg_'+key);msg.setProperty('class','clear');var contentLegend=new Element('dt').setHTML(title);var contentMsg=new Element('dd',{'class':'msg'}).setText(text+' (show)');contentMsg.setProperty('style','cursor:pointer;')
contentMsg.addEvent('click',function(e)
{self.useFunction(fct,params);self.removeMessage(key);});var msgRight=new Element('dd',{'class':'right'});var msgButton=new Element('a',{'class':'button'}).setHTML('close');msgButton.addEvent('click',function(e)
{self.removeMessage(key);});msgRight.adopt(msgButton);msg.adopt(contentLegend);msg.adopt(contentMsg);msg.adopt(msgRight);return msg;},useFunction:function(fct,params)
{switch(fct)
{case'goToUrl':if(HistoryManager.getHash()==params)
{messaging.fireEvent('onChange');}
content.goToUrl(params);break;case'friends':var url='eDaab/profile/'+sessionUserId+'/contacts/index.html';if(HistoryManager.getHash()==url)
{showContacts.onReload();}
content.goToUrl(url);break;case'contacts':var url='eDaab/profile/'+sessionUserId+'/contacts/manage/index.html';if(HistoryManager.getHash()==url)
{showrequests.onReload();}
content.goToUrl(url);break;case'messages':var url='eDaab/profile/'+sessionUserId+'/messages/inbox.html';if(HistoryManager.getHash()==url)
{messaging.fireEvent('onChange');}
content.goToUrl(url);break;case'mediaLibrary':subContent.toggle(mediaLibrary);break;case'comments':break;}},createMessage:function(key,title,text)
{var self=this;var msg=new Element('dl');msg.setProperty('id','systemMsg_'+key);msg.setProperty('class','clear');var contentLegend=new Element('dt').setHTML(title);var contentMsg=new Element('dd',{'class':'msg'}).setHTML(text);var msgRight=new Element('dd',{'class':'right'});var msgButton=new Element('a',{'class':'button'}).setHTML('close');msgButton.addEvent('click',function(e)
{self.removeMessage(key);});msgRight.adopt(msgButton);msg.adopt(contentLegend);msg.adopt(contentMsg);msg.adopt(msgRight);return msg;},doNothing:function(){}});vnSystem.implement(new Options);var jsCallbacks={}
var guiClass=new Class({initialize:function()
{this.backgroundDiv=new Element("div");this.backgroundDiv.setStyle("display","none");this.backgroundDiv.setStyle("position","absolute");this.backgroundDiv.setStyle("left","0px");this.backgroundDiv.setStyle("top","0px");this.backgroundDiv.setStyle("z-index","99");this.backgroundDiv.setStyle("background","#000");this.backgroundDiv.setStyle("opacity","0");document.body.appendChild(this.backgroundDiv);this.backgroundDiv.fx=new Fx.Styles(this.backgroundDiv,{duration:300,wait:false});},popup:function(el,w,h)
{var url=el.getProperty('vnhref');if(!url)return true;w=(w)?w+=20:150;h=(h)?h+=25:150;var args='width='+w+',height='+h+',resizable';var pop=window.open(url,'',args);return(pop)?false:true;return false;},fadeBackgroundIn:function(opacity)
{if(opacity==null)opacity=0.7;var width="100%";var height=document.documentElement.offsetHeight+"px";this.backgroundDiv.setStyle("width",width);this.backgroundDiv.setStyle("height",height);this.backgroundDiv.setStyle("display","block");this.backgroundDiv.fx.options.onComplete=null;this.backgroundDiv.fx.start({'opacity':opacity});var self=this;setTimeout(function()
{self.update();},1000);$('scrollpage').getElements('select').each(function(el){el.setStyles({'position':'absolute','left':'-9999'});});},update:function()
{var height;height=window.getScrollSize().y;this.backgroundDiv.setStyle("height",height+"px");var self=this;setTimeout(function()
{self.update();},1000);},fadeBackgroundOut:function()
{var self=this;this.backgroundDiv.fx.options.onComplete=function(){self.backgroundDiv.setStyle("display","none")};this.backgroundDiv.fx.start({'opacity':'0'});$('scrollpage').getElements('select').each(function(el){el.setStyle('position','static');});},createButton:function(type,val)
{var el;switch(type)
{case'input':el=new Element('input');el.setProperty('src','/img/button.php?value='+val);el.setProperty('type','image');el.addClass('eDaabButton');break;case'a':case'div':el=new Element(type);var elInner=new Element('img');elInner.setProperty('src','/img/button.php?value='+val);elInner.setProperty('alt',val);elInner.setStyle('border','none');el.adopt(elInner);el.addClass('eDaabButton');break;}
el.type='button';return el;},createButtonFixedSize:function(type,val,widthType,bgColor)
{var el;if(bgColor!=null)
var imgSrc='/img/buttonFixedSize.php?value='+val+'&width='+widthType+'&bgColor='+bgColor;else
var imgSrc='/img/buttonFixedSize.php?value='+val+'&width='+widthType;switch(type)
{case'input':el=new Element('input');el.setProperty('src',imgSrc);el.setProperty('type','image');el.addClass('eDaabButton');break;case'a':case'div':el=new Element(type);var elInner=new Element('img');elInner.setProperty('src',imgSrc);elInner.setProperty('alt',val);elInner.setStyle('border','none');el.adopt(elInner);el.addClass('eDaabButton');break;}
el.setProperty('widthtype',widthType);el.setProperty('bgcolor',bgColor);el.type='buttonFixedSize';return el;},createButtonText:function(type,val)
{var el=new Element(type);el.type='buttonText';el.addClass('icon icon_list_arrow');el.setStyles({'padding-top':'2px','font-size':'11px','font-weight':'bold','cursor':'pointer'});el.setText(val);el.type='buttonText';return el;},updateButton:function(button,val)
{if(button.type=="buttonText")
{button.setText(val);}
else
{if(button.getProperty('widthtype')!=null)
{var imgSrc='/img/buttonFixedSize.php?value='+val+'&width='+button.getProperty('widthtype');}
else
var imgSrc='/img/button.php?value='+val;if(button.getProperty('bgcolor')!=null)
imgSrc+='&bgColor='+button.getProperty('bgcolor');if(button.getProperty('type')=='image')
{button.setProperty('src',imgSrc);}
else
{var inner=button.getElement('img');inner.setProperty('src',imgSrc);}}}});var inlinePopup=new Class({initialize:function(options)
{this.buttons=options.buttons;this.content=options.content;this.title=options.title;if(options.width>0)this.width=options.width;else this.width=300;if(options.paddingBottom>0)this.paddingBottom=options.paddingBottom;else this.paddingBottom=10;this.createPopup();gui.fadeBackgroundIn(1);},createPopup:function()
{this.windowDiv=new Element("div");this.titleDiv=new Element("div");this.contentDiv=new Element("div");this.buttonDiv=new Element("div");this.buttonDiv.setStyle("margin-top","20px");this.buttonDiv.setStyle("margin-bottom","16px");this.buttonDiv.setStyle("text-align","right");this.buttonDiv.setStyle("float","right");this.titleDiv.setHTML(this.title);if($type(this.content)=='element')
{this.contentDiv.adopt(this.content);}
else
{this.contentDiv.setHTML(this.content);}
if(this.buttons!=null)
{for(var i=0;i<this.buttons.length;i++)
{var newButton=gui.createButtonText('div',this.buttons[i].caption);newButton.addEvent("click",this.buttons[i].callback.pass(this));newButton.setStyle("margin-right","10px");newButton.setStyle("float","left");this.buttonDiv.adopt(newButton);}}
this.buttonDiv.setStyle("padding","10px");this.buttonDiv.setStyle("padding-top",this.paddingBottom);this.contentDiv.setStyle("padding","10px");this.contentDiv.setStyle("font-size","12px");this.contentDiv.setStyle("padding-bottom",this.paddingBottom);this.titleDiv.setStyle("height","68px");this.titleDiv.setStyle("padding-left","10px");this.titleDiv.setStyle("line-height","68px");this.titleDiv.setStyle("background-image","url(/img/layout/popup_fade.png)");this.titleDiv.setStyle("font-size","20px");this.titleDiv.setStyle("color","#000");this.windowDiv.adopt(this.titleDiv);this.windowDiv.adopt(this.contentDiv);if(this.buttons!=null)
{this.windowDiv.adopt(this.buttonDiv);}
this.windowDiv.injectAfter($('page'));var windowSize=window.getSize();this.windowDiv.setStyle("position","absolute");this.windowDiv.setStyle("width",this.width+"px");this.windowDiv.setStyle("background","#ffffff");this.windowDiv.setStyle("z-index","1000");this.windowDiv.setStyle("left",(windowSize.x/2)-(this.windowDiv.getSize().x/2)+"px");var top=window.pageYOffset||document.documentElement.scrollTop;this.windowDiv.setStyle("top",(top+100)+"px");var self=this;setTimeout(function()
{self.update();},100);},update:function()
{var top=window.pageYOffset||document.documentElement.scrollTop;this.windowDiv.setStyle("top",(top+100)+"px");var self=this;setTimeout(function()
{self.update();},100);},closePopup:function()
{this.windowDiv.parentNode.removeChild(this.windowDiv);gui.fadeBackgroundOut();}});var eDaabDeleteMessage=new Class({initialize:function()
{this.msgIds=new Array();},deleteMsg:function(msgId,subject)
{var container=new Element('div');container.adopt(new Element('h3').setText('do you really want to delete the following message'));container.adopt(new Element('p').setText(subject));this.container=container;this.msgIds.include(msgId);},deleteMsgs:function(msgIds)
{var container=new Element('div');container.adopt(new Element('h3').setText('do you really want to delete the Message'));this.container=container;this.msgIds=msgIds;},popup:function()
{var self=this;var popup=new inlinePopup({buttons:new Array({caption:'delete message',callback:function(popup)
{var url='/json/profile/messaging/delete.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{if(jsonObj.msg!=null)
{window.location.reload();};}}).send({'msg_id':self.msgIds});}},{caption:'cancel',callback:function()
{popup.closePopup();}}),width:600,title:'delete messages',paddingBottom:1,content:self.container});}});var eDaabSendMessage=new Class({initialize:function(){this.reciever=0;this.replyTo=0;this.type='popup';this.fields=new Array();this.fields=[{'label':'subject','name':'subject','type':'text','value':''},{'label':'message','name':'message','type':'bbcode','value':''}];this.reload=true;},setReload:function(val)
{this.reload=val;},setReplyTo:function(msgId)
{this.replyTo=msgId;},setReciever:function(obj)
{this.reciever=obj;},setRecieverName:function(val)
{this.recieverName=val;},setSubject:function(val)
{this.subject=val;},setMessage:function(val)
{this.message=val;},loadMsg:function()
{var self=this;var url='/json/profile/messaging/read.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{if(jsonObj.msg!=null)
{var msg=jsonObj.msg;self.setSubject('RE: '+msg.subject);self.setMessage(msg.message.reply);};}}).send({'msg_id':this.replyTo});},popup:function()
{var self=this;if(this.reciever<=0)
{alert('please select a user');}
if(this.replyTo>0)
{this.loadMsg();}
var container=new Element('form');container.setProperty('id','formSendMsg')
container.adopt(this.createFields());container.getElements('.bbCode').each(function(el){var textarea1=el.getElement('textarea');new editor({"container":textarea1});});var popup=new inlinePopup({buttons:new Array({caption:'send message',callback:function(popup)
{var sendInfos={};sendInfos.sendTo=self.reciever;sendInfos.subject=container.getElement('[name=subject]').getValue();sendInfos.message=container.getElement('[name=message]').getValue();var url='/json/profile/messaging/send.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{if(jsonObj.msg!=null)
{if(this.reload==true)window.location.reload();else popup.closePopup();};}}).send({'msg':sendInfos});}},{caption:'cancel',callback:function(){popup.closePopup();}}),width:600,title:'send message to '+self.recieverName,paddingBottom:1,content:container});},getUserinformation:function()
{},createFields:function()
{var self=this;var fieldX=new Array();this.fields.each(function(single){fieldX.include(self.createField(single));});return fieldX;},createField:function(obj)
{var el=new Element('p');var label=new Element('label').inject(el).setText(obj.label);switch(obj.type)
{case'text':var formField=this.createFieldInputText(obj);break;case'textarea':var formField=this.createFieldTextarea(obj);break;case'bbcode':var formField=this.createFieldBBCode(obj);break;}
el.adopt(formField);return el;},createFieldInputText:function(obj)
{var formField=new Element('input');formField.addClass('text');formField.setProperty('type',obj.type);formField.setProperty('name',obj.name);if(this[obj.name]!=null)
formField.setProperty('value',this[obj.name]);return formField;},createFieldTextarea:function(obj)
{var formField=new Element('textarea');formField.addClass('textarea');formField.setStyle('height','200px');formField.setProperty('name',obj.name);if(this[obj.name]!=null)
formField.setText(this[obj.name]);return formField;},createFieldBBCode:function(obj)
{var wrapper=new Element('div');wrapper.addClass('bbCode');var formField=new Element('textarea').inject(wrapper);formField.addClass('textarea');formField.setProperty('name',obj.name);formField.setStyle('height','200px');if(this[obj.name]!=null)
formField.setText(this[obj.name]);return wrapper;}});var steps=new Class({initialize:function()
{this.steps=new Array();},addStep:function(text,link)
{var step=new singleStep();step.setText(text);if(link!=null)step.setLink(link);this.steps.include(step);return step;},getEl:function()
{var counter=1;var wrapper=new Element('ul').addClass('registerSteps');this.steps.each(function(step)
{step.setNumber(counter);new Element('li').adopt(step.getEl()).inject(wrapper);counter++;});return wrapper;}});var singleStep=new Class({initialize:function()
{this.text=false;this.link=false;this.wrapper=new Element('dl').addClass('visited');this.wrapperDt=new Element('dt').addClass('title').inject(this.wrapper);this.wrapperDd=new Element('dd').addClass('text').inject(this.wrapper);},setText:function(text)
{this.text=text;},setLink:function(link)
{this.link=link;},setNumber:function(nr)
{this.wrapperDt.setText(nr);},getEl:function()
{if(this.link!='')
this.wrapperDd.adopt(new Element('a').setProperty('href',this.link).setText(this.text));else
this.wrapperDd.setText(this.text);return this.wrapper;}});var medialibrary=new Class({styles:{'createFolderInput':{'width':260},'left':{'width':240},'right':{'width':542,'margin-left':15},'main':{'height':272},'trash':{'height':100}},initialize:function(){if(gui==null)gui=new guiClass();},createComponent:function(container)
{var self=this;this.container=container;this.currentFolder=null;var legendTitle=new Element('h2').setHTML('<span class="title">your media library</span>');this.medLibPath='/json/profile/medialibrary/';this.box=new Element("div").addClass("box").addClass("grey").inject(this.container);this.legend=new Element("div").addClass("legend").adopt(legendTitle).inject(this.box);this.content=new Element("div").addClass("content").inject(this.box);this.folderHeadline=new Element("div").addClass("inner").addClass("size2_6").setStyle("margin-bottom","0px").setStyle("padding-bottom","0px").setHTML('<h3 style="padding-bottom:0px;margin-bottom:0px;color:#404040">folders</h2>').inject(this.content);this.contentHeadline=new Element("div").addClass("inner").addClass("size4_6").setStyle("margin-bottom","0px").setStyle("padding-bottom","0px").setHTML("<h2 style=\"padding-bottom:0px;margin-bottom:0px;float:left;\"></h2>").inject(this.content);this.folderOuter=new Element("div").addClass('inner').addClass('Size2_6').setStyle('clear','both').setStyle('float','left').inject(this.content);var folderWidth=this.styles.left.width+20;var folderHeight=this.styles.main.height+20;var folderContainerHeight=this.styles.main.height-this.styles.trash.height;this.folderOuter.setStyle('width',folderWidth).setStyle('height',folderHeight);this.folderContainer=new Element("div").setStyles({'width':folderWidth,'height':155,'overflow':'auto','float':'left'}).inject(this.folderOuter);var trashx=new Element("div").addClass("medialibraryFolder").addClass("mediaLibraryDropable").setStyle('float','left').setStyle('background-image','url(/img/layout/trash_medialib.gif)').setStyle('background-repeat','no-repeat').setStyle('background-position','center center').setStyle('width','100%').setStyle('height',this.styles.trash.height);var createNewFolder=new Element('div').setStyle('border-bottom','1px solid #d6d9dc').setStyle('width',folderWidth).setStyle('float','left').setStyle('background','#ebedef').setStyle('height','30px').setStyle('cursor','pointer').setHTML("<div style=\"cursor:hand;cursor:pointer;margin-top:7px;margin-left:5px;\"><img src=\"/pics/icons/gif/icon_add.gif\" style=\"margin-top:-2px;margin-right:5px\" align=\"left\" />create new folder</div>").addEvent('mouseenter',function(){this.setStyle("background","#fafafa");}).addEvent('mouseleave',function(){this.setStyle("background","#ebedef");}).addEvent("click",function(){var url=self.medLibPath+'createNewFolder.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{self.createFolder();}}).send();});this.trash=new Element("div").setStyle('background','#ebedef').setStyle('border-top','1px solid #d6d9dc').setStyle('border-bottom','1px solid #d6d9dc').setStyle('width',folderWidth).setStyle('float','left').adopt(createNewFolder).adopt(trashx).injectAfter(this.folderContainer);trashx.objectid=99;this.contentContainer=new Element("div").addClass('inner').addClass('size4_6').setStyles({'background':'#ebedef url(/img/layout/mediaLibBG.png) no-repeat center center','overflow':'auto','width':this.styles.main.width,'height':this.styles.main.height+'px'}).inject(this.content);this.createFolder();},uploadReady:function(self){self.createContent();},showCreateFolder:function(){this.createFolderEl.fadeIn();},hideCreateFolder:function(){this.createFolderEl.fadeOut();},hideUploader:function()
{this.uploadContainer.fadeOut();this._hideUploader=1;},showUploader:function(url,add)
{if(this._hideUploader!=1&&((this.uploadFolder==this.currentFolder&&add==1)||add!=1))
{if(add!=1)
{if(this.uploadContainer.style.display=="none")
{this.uploadContainer.setStyle("display","block");this.uploadContainer.setOpacity("1");}
this.uploadFolder=this.currentFolder;this.uploader.clearList();}
this.uploader.setURL(url);var self=this;setTimeout(function(){self.showUploader(url,1);},1000);}
else
{this._hideUploader=0;}},createContent:function()
{if(this.currentFolder>99)
{this.contentContainer.setText('loading');var url=this.medLibPath+'detail/'+this.currentFolder+'/index.html';var self=this;var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{self.contentContainer.empty();jsonObj.items.each(function(item){self._createContentComponent(item);});self.makeDropable();if(jsonObj.items.length>=1)
self.contentContainer.setStyle('background-image','none');else
self.contentContainer.setStyle('background-image','url(/img/layout/mediaLibBG.png)');}}).send();}
else
{this.contentContainer.empty();}},_createContent:function(childs)
{for(var i=0;i<childs.length;i++)
{this._createContentComponent(childs[i]);}
eDaabFX.pictureHoover(this.contentContainer);},editComponent:function(el)
{this.container.setStyle("display","none");var self=this;var popup=new inlinePopup({buttons:new Array({caption:"saveChanges",callback:function(popup)
{var url=self.medLibPath+'editPicture.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{self.createContent();}}).send({'objectId':el.objectid,'description':$('imdescription').value,'title':$('imtitle').value,'tags':$('imtags').value});vnSystem.addMessageWithTimer('edited','Picture successfully edited.');popup.closePopup();self.container.setStyle("display","block");}},{caption:"cancel",callback:function()
{popup.closePopup();self.container.setStyle("display","block");}}),width:400,title:"edit information",paddingBottom:1,content:'<div style="float:left;"><span style="display:block;clear:both;">title</span><input style="display:block;float:left;clear:both;margin-top:5px;width:160px;border:1px solid #ddd;" type="text" id="imtitle" value="'+el.xtitle+'" /><br /><span style="display:block;clear:both;margin-top:5px;float:left;">tags</span><br /><input style="display:block;clear:both;margin-top:5px;float:left;border:1px solid #ddd;width:160px;" type="text" id="imtags" value="'+el.tags+'" /></div><div style="margin-left:10px;float:left;"><span style="clear:both;float:left;display:block;">description</span><br /><textarea style="clear:both;float:left;display:block;margin-top:5px;width:200px;height:63px;" id="imdescription">'+el.description+'</textarea></div><div style="clear:both;"></div>'});},makeDropable:function()
{var self=this;var drop=$$('.mediaLibraryDropable');$$('.dragme').each(function(item){item.addEvent('mousedown',function(e){e=new Event(e).stop();item.addEvent('mouseup',function(e)
{e=new Event(e).stop();item.removeEvents('mousemove');});item.addEvent('mousemove',function(e)
{item.removeEvents('mousemove');var pos={};pos.x=(e.page.x-((item.getSize().x)/2))
pos.y=(e.page.y-((item.getSize().y)/2))
var clone=item.clone().setStyles({'top':pos.y,'left':pos.x,'opacity':0.7,'position':'absolute'}).addEvent('emptydrop',function(){this.remove();drop.removeEvents('drop','over','leave');}).inject(document.body);drop.removeEvents('drop');drop.removeEvents('over');drop.removeEvents('leave');drop.addEvents({'drop':function(){this.setStyle('background',this.oldStyle);clone.remove();self.dropItem(this,item);},'over':function(){this.oldStyle=this.getStyle('background');this.setStyle('background','#FFF8AA');},'leave':function(){this.setStyle('background',this.oldStyle);}});var drag=clone.makeDraggable({droppables:[drop]});drag.start(e);});});});},deleteItem:function(item)
{var self=this;var popup=new inlinePopup({buttons:new Array({caption:"Yes",callback:function(popup)
{var url=self.medLibPath+'deletePicture.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{vnSystem.addMessage('deleted','Picture successfully removed.');item.remove();}}).send({'objectId':item.objectid});popup.closePopup();self.container.setStyle("display","block");}},{caption:"No",callback:function(popup)
{popup.closePopup();self.container.setStyle("display","block");}}),title:"Delete picture",content:"Do you really want to delete this picture?"});},dropItem:function(dropArea,item)
{if(!dropArea.hasClass('medialibraryFolder'))
{dropArea.onMediaLibraryDrop(item);}
else
{if(dropArea.objectid!=this.currentFolder)
{if(dropArea.objectid==99)
{this.container.setStyle("display","none");this.deleteItem(item);}
else if(dropArea.objectid!=this.currentFolder)
{var url=this.medLibPath+'movePicture.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{item.remove();}}).send({'objectId':item.objectid,'folderId':dropArea.objectid});}}}},_createContentComponent:function(obj)
{var self=this;var title=obj.title;var description=obj.description;var tags=obj.tags;var objectId=obj.id;if(title==null)title='';if(tags==null)tags='';if(description==null)description='';var contentObject=new Element("div").addClass("inner").addClass("size1_6").addClass("link").addClass('dragme').setStyles({'background':'url(/thumbnail/'+objectId+'-thumbnail.jpg) no-repeat','width':'119px','padding-bottom':'0px','height':'119px','border':'1px solid #eee','margin-left':'5px','margin-top':'5px','margin-right':'5px','margin-bottom':'5px','float':'left'}).addEvent('dblclick',function(e)
{e=new Event(e).stop();self.editComponent(this);}).inject(this.contentContainer);contentObject.objectid=objectId;contentObject.xtitle=title;contentObject.description=description;contentObject.tags=tags;contentObject.setProperty("vnfx","tip");contentObject.setProperty("title",title+"::"+tags+"<br />"+description);if(title.trim()==''&&description.trim()==''&&tags.trim()=='')
{contentObject.setProperty("title","No image information.::double click to edit");}
window.addEvent('domready',function(){vnTip.build(contentObject);});},createFolder:function()
{var url=this.medLibPath+'index.html';var self=this;var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{var firstFolder=null;self.folderContainer.empty();jsonObj.items.each(function(folder){var folder=self._createFolderComponent(folder);if(firstFolder==null)
firstFolder=folder;});if(self.currentFolder==null)
{self.chooseFolder(firstFolder)}}}).send();},returnTrashIcon:function(folderObject)
{var self=this;var icon=gui.createButtonFixedSize('a','icon_trash','button');icon.setProperty('title','delete');icon.setStyles({'float':'right','margin-top':'7px','margin-left':'5px','margin-right':'5px'});icon.addClass("link");icon.addEvent("click",function()
{var selfx=this;self.container.setStyle("display","none");var popup=new inlinePopup({buttons:new Array({caption:"Yes",callback:function(popup)
{var url=self.medLibPath+'deleteFolder.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{if(jsonObj.msg=='error')
{vnSystem.addMessage("Folder removed","your medialibrary has to contain at least one folder. you can't delete the last folder in your medialibrary.");}
else
{vnSystem.addMessage("Folder removed",jsonObj.msg);}
self.currentFolder=null;self.selectedFolder=null;self.container.setStyle("display","block");self.createFolder();popup.closePopup();}}).send({'folderId':folderObject.objectid});}},{caption:"No",callback:function(popup)
{popup.closePopup();self.container.setStyle("display","block");}}),title:"Delete folder",content:"Do you really want to delete this folder?"});});return icon;},returnEditIcon:function(folderObject)
{var self=this;var icon=gui.createButtonFixedSize('a','icon_edit','button');icon.setProperty('title','edit');icon.setStyles({'float':'right','margin-top':'7px','margin-left':'5px','margin-right':'5px'});icon.addEvent("click",function()
{var editInput=self.editFolder(folderObject);gui.updateButton(this,'icon_save');folderObject.removeEvents("click");this.addEvent("click",function()
{var url=self.medLibPath+'renameFolder.html';var request=new Json.Remote(url+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000,{async:false,onComplete:function(jsonObj)
{self.currentFolder=null;self.selectedFolder=null;self.createFolder();}}).send({'objectId':folderObject.objectid,'objectName':editInput.getValue()});});return false;});return icon;},_createFolderComponent:function(obj)
{var name=obj.title;var objectId=obj.id;var self=this;var folderObject=new Element("div");folderObject.addClass("link").addClass("medialibraryFolder").addClass("mediaLibraryDropable");folderObject.titleBox=new Element('div').setStyles({'float':'left','marginLeft':'5px','marginTop':'2px'}).setText(name);folderObject.adopt(folderObject.titleBox);folderObject.setStyles({"clear":"both","float":"left","height":"29px","padding-top":"1px","width":this.styles.left.width+"px","line-height":"25px"});folderObject.inject(this.folderContainer);folderObject.addEvent("mouseover",function()
{if(this.isSelected!=1)
{this.setStyle('background','#ebedef');}});folderObject.addEvent("mouseout",function()
{if(this.isSelected!=1)
{this.setStyle('background','#fff');}});folderObject.addEvent("click",function()
{self.chooseFolder(this);});folderObject.objectid=objectId;folderObject.title=name
folderObject.obj=obj;folderObject.adopt(this.returnTrashIcon(folderObject));folderObject.adopt(this.returnEditIcon(folderObject));return folderObject;},editFolder:function(obj)
{var inputField=new Element('input');inputField.setProperty('type','text');inputField.addClass('text');inputField.setStyle('width','140px');inputField.setProperty('value',obj.title);obj.titleBox.empty();obj.titleBox.adopt(inputField);return inputField;},uploadPopup:function()
{var self=this;this.container.setStyle("display","none");var popup=new inlinePopup({width:440,title:"upload your files",content:'<div id="flashContainer"></div>'});this.uploader=new flashUploader(self,$('flashContainer'),{multiple:true})
flashCallbacks.onStartUpload=function()
{self.uploader.setURL(self.uploadUrl);}
flashCallbacks.onUploadFinished=function()
{self.createContent();self.container.setStyle("display","block");popup.closePopup();}},chooseFolder:function(obj)
{if(obj.objectid!=this.currentFolder)
{this.contentHeadline.setHTML("<h3 style=\"float:left;color:#404040\">contents</h3>");var self=this;var uploadButton=gui.createButtonText("div","upload");this.contentHeadline.adopt(uploadButton);var clear=new Element('div');clear.setStyle('clear','both');this.contentHeadline.adopt(clear);uploadButton.setStyle("float","right");uploadButton.addEvent("click",function()
{self.uploadPopup();});var url='/index.php?REQUEST=AJAX&TYPE=CONTENT&FOLDERID='+obj.objectid+'&CONTENT=profile,102&PAGE=files&SESSID='+sessionId+'&ieReload='+Math.random()*10000
var self=this;if(this.selectedFolder!=null)
{this.selectedFolder.setStyles({'height':'29px','padding-top':'1px','border-top':'none','background':'#fff','border-bottom':'none'});this.selectedFolder.isSelected=0;}
this.selectedFolder=obj;obj.setStyles({'height':'28px','background':'#ebedef','padding-top':'0px','border-bottom':'1px solid #d6d9dc','border-top':'1px solid #d6d9dc'});obj.isSelected=1;this.currentFolder=obj.objectid;this.uploadUrl=this.medLibPath+'uploadFiles.html?folderId='+this.currentFolder+'&SESSID='+sessionId+'&ieReload='+Math.random()*10000;this.createContent();}},__createFolder:function()
{var name=this.createFolderName.value;if(name!="")
{this.createFolderName.value="";var url='/index.php?REQUEST=AJAX&TYPE=CONTENT&NAME='+escape(name)+'&ACTION=CREATEFOLDER&CONTENT=profile,102&PAGE=files&SESSID='+sessionId+'&ieReload='+Math.random()*10000
var self=this;var ajax=new Ajax(url,{method:'get',onSuccess:function(){self.createFolder();vnSystem.addMessage("folder created","Folder successfully created");}}).request();this.hideCreateFolder();}
else
{vnSystem.addMessage("Insert name","Please insert a name for your folder!");}}});var flashCallbacks=new Object();var flashUploader=new Class({ev:new Object(),initialize:function(p,e,o){this.dcb=p;var c=new Element(e);var self=this;this.cf(c,o);},cf:function(c,o){var s=this;flashCallbacks.onUploaded=function(){s.oc()};var p=(o.multiple==false?"maxFiles=1&":"maxFiles=999&")+"url="+o.url+"&types="+o.types+"&hideUpload="+o.hideUpload+"&ie="+Math.random()*10000;var f=new SWFObject("/js/FlashUploader.swf?"+p,"uf","430","155","8.0.0","#ffffff");f.addParam("allowScriptAccess","always");f.addParam("swLiveConnect","true");f.write(c);},oc:function(){this.ev.oc(this.dcb);},setURL:function(url){if($('uf')==null){this.addUrl(url);}else{$('uf').SetVariable('uploadUrl',url);}},addUrl:function(url){var self=this;setTimeout(function(){self.setURL(url);},500);},startUpload:function(){$('uf').SetVariable('startUpload','1');},clearList:function(){$('uf').SetVariable('clearList','1');},addOnCompleteEvent:function(f){this.ev.oc=f;}});if(typeof deconcept=="undefined")var deconcept=new Object();if(typeof deconcept.util=="undefined")deconcept.util=new Object();if(typeof deconcept.SWFObjectUtil=="undefined")deconcept.SWFObjectUtil=new Object();deconcept.SWFObject=function(swf,id,w,h,ver,c,quality,xiRedirectUrl,redirectUrl,detectKey){if(!document.getElementById){return;}
this.DETECT_KEY=detectKey?detectKey:'detectflash';this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(swf){this.setAttribute('swf',swf);}
if(id){this.setAttribute('id',id);}
if(w){this.setAttribute('width',w);}
if(h){this.setAttribute('height',h);}
if(ver){this.setAttribute('version',new deconcept.PlayerVersion(ver.toString().split(".")));}
this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}
if(c){this.addParam('bgcolor',c);}
var q=quality?quality:'high';this.addParam('quality',q);this.setAttribute('useExpressInstall',false);this.setAttribute('doExpressInstall',false);var xir=(xiRedirectUrl)?xiRedirectUrl:window.location;this.setAttribute('xiRedirectUrl',xir);this.setAttribute('redirectUrl','');if(redirectUrl){this.setAttribute('redirectUrl',redirectUrl);}}
deconcept.SWFObject.prototype={useExpressInstall:function(path){this.xiSWFPath=!path?"expressinstall.swf":path;this.setAttribute('useExpressInstall',true);},setAttribute:function(name,value){this.attributes[name]=value;},getAttribute:function(name){return this.attributes[name];},addParam:function(name,value){this.params[name]=value;},getParams:function(){return this.params;},addVariable:function(name,value){this.variables[name]=value;},getVariable:function(name){return this.variables[name];},getVariables:function(){return this.variables;},getVariablePairs:function(){var variablePairs=new Array();var key;var variables=this.getVariables();for(key in variables){variablePairs[variablePairs.length]=key+"="+variables[key];}
return variablePairs;},getSWFHTML:function(){var swfNode="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute('swf',this.xiSWFPath);}
swfNode='<embed type="application/x-shockwave-flash" src="'+this.getAttribute('swf')+'" width="'+this.getAttribute('width')+'" height="'+this.getAttribute('height')+'" style="'+this.getAttribute('style')+'"';swfNode+=' id="'+this.getAttribute('id')+'" name="'+this.getAttribute('id')+'" ';var params=this.getParams();for(var key in params){swfNode+=[key]+'="'+params[key]+'" ';}
var pairs=this.getVariablePairs().join("&");if(pairs.length>0){swfNode+='flashvars="'+pairs+'"';}
swfNode+='/>';}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute('swf',this.xiSWFPath);}
swfNode='<object id="'+this.getAttribute('id')+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+this.getAttribute('width')+'" height="'+this.getAttribute('height')+'" style="'+this.getAttribute('style')+'">';swfNode+='<param name="movie" value="'+this.getAttribute('swf')+'" />';var params=this.getParams();for(var key in params){swfNode+='<param name="'+key+'" value="'+params[key]+'" />';}
var pairs=this.getVariablePairs().join("&");if(pairs.length>0){swfNode+='<param name="flashvars" value="'+pairs+'" />';}
swfNode+="</object>";}
return swfNode;},write:function(elementId){if(this.getAttribute('useExpressInstall')){var expressInstallReqVer=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(expressInstallReqVer)&&!this.installedVer.versionIsValid(this.getAttribute('version'))){this.setAttribute('doExpressInstall',true);this.addVariable("MMredirectURL",escape(this.getAttribute('xiRedirectUrl')));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}
if(this.skipDetect||this.getAttribute('doExpressInstall')||this.installedVer.versionIsValid(this.getAttribute('version'))){var n=(typeof elementId=='string')?document.getElementById(elementId):elementId;n.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute('redirectUrl')!=""){document.location.replace(this.getAttribute('redirectUrl'));}}
return false;}}
deconcept.SWFObjectUtil.getPlayerVersion=function(){var PlayerVersion=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){PlayerVersion=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var counter=3;while(axo){try{counter++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+counter);PlayerVersion=new deconcept.PlayerVersion([counter,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");PlayerVersion=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(PlayerVersion.major==6){return PlayerVersion;}}
try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}
if(axo!=null){PlayerVersion=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}
return PlayerVersion;}
deconcept.PlayerVersion=function(arrVersion){this.major=arrVersion[0]!=null?parseInt(arrVersion[0]):0;this.minor=arrVersion[1]!=null?parseInt(arrVersion[1]):0;this.rev=arrVersion[2]!=null?parseInt(arrVersion[2]):0;}
deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major)return false;if(this.major>fv.major)return true;if(this.minor<fv.minor)return false;if(this.minor>fv.minor)return true;if(this.rev<fv.rev)return false;return true;}
deconcept.util={getRequestParameter:function(param){var q=document.location.search||document.location.hash;if(param==null){return q;}
if(q){var pairs=q.substring(1).split("&");for(var i=0;i<pairs.length;i++){if(pairs[i].substring(0,pairs[i].indexOf("="))==param){return pairs[i].substring((pairs[i].indexOf("=")+1));}}}
return"";}}
deconcept.SWFObjectUtil.cleanupSWFs=function(){var objects=document.getElementsByTagName("OBJECT");for(var i=objects.length-1;i>=0;i--){objects[i].style.display='none';for(var x in objects[i]){if(typeof objects[i][x]=='function'){objects[i][x]=function(){};}}}}
if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);}
window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}
if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];}}
var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject;var eDaabRecommend=new Class({initialize:function(options)
{this.element=options.element;this.objectId=options.objectId;this.createComponent();},createComponent:function()
{var box=new Element("div").addClass("box");var legend=new Element("div").addClass("legend");var content=new Element("div").addClass("content");box.adopt(legend)
box.adopt(content);this.element.adopt(box);this.container=this.element;this.element=content;legend.adopt(new Element('h3').setHTML('<span class="title">send to friend</span>'));var div1=new Element("div").setStyles({"float":"left","padding":"2px","line-height":"20px"});div1.adopt(new Element("span").setHTML("via email"));var div2=new Element("div").setStyles({"float":"left","padding":"2px","line-height":"20px","margin-left":"10px"});div2.adopt(new Element("span").setHTML("or"));var div3=new Element("div").setStyles({"float":"left","padding":"2px","line-height":"20px"});div3.adopt(new Element("span").setHTML("to contact"));var div4=new Element("div").setStyles({"float":"left","padding":"2px","line-height":"20px"});this.emailInput=new Element("input").addClass("text").setProperty("type","text").setStyles({"width":"200px","margin-left":"10px"});this.contactSelect=new Element("select").setStyle("clear","both").setStyles({"width":"170px","margin-left":"10px"});var option=new Element("option").setProperty("value","0").setText("---");this.contactSelect.adopt(option);var self=this;var img=new Element("img").setProperty("src","/img/buttonFixedSize.php?value=send&width=normal&bgColor=ffffff");img.addEvent("click",function(){self.send();});div4.adopt(img);this.contactSelect.addEvent("change",function(){self.changed();});this.emailInput.addEvent("change",function(){self.changed();});div1.adopt(this.emailInput);div3.adopt(this.contactSelect);this.element.adopt(div1);this.element.adopt(div2);this.element.adopt(div3);this.element.adopt(div4);this.element.adopt(new Element('div').setStyle('clear','both'));this.element.adopt(new Element('p').setText('more than one address can be seperated by comma'));var self=this;var request=new Json.Remote('/json/profile/contacts/list/1.html?SESSID='+sessionId+'&rand='+Math.random(),{onComplete:function(jsonObj)
{self.ready(jsonObj);}}).send({'perPage':1000,'page':1});},ready:function(obj)
{var self=this;if(obj!=null){obj.items.each(function(contact){self.contactSelect.adopt(new Element('option').setProperty('value',contact.memberId).setText(contact.title));});}},changed:function()
{if(this.emailInput.value!="")
this.contactSelect.setProperty("disabled","true");else this.contactSelect.removeProperty("disabled");if(this.contactSelect.value!="0")
this.emailInput.setProperty("disabled","true");else this.emailInput.removeProperty("disabled")},send:function()
{var request=new Json.Remote('/json/recommend/1.html?SESSID='+sessionId+'&rand='+Math.random(),{onComplete:function(jsonObj)
{}}).send({'objectId':this.objectId,'email':this.emailInput.value,'contact':this.contactSelect.value});this.container.setStyle("display","none");}});var gui;var sendMessage;var error;var alerts;var content,textRequest,tabs1,messaging,friendlist,vnSystem,eDaabFX;var subContent;var mediaLibrary;var updateRequest;var userObj;var scroller;var vnTip;window.addEvent('domready',function()
{$$('[maxlength]').maxlengthEl();$$('[picbox]').insertPicture();$$('[replaceValue]')._replaceValue();scroller=new Fx.Scroll(window,{wait:false,duration:750,offset:{'x':0,'y':-20},transition:Fx.Transitions.Quad.easeIn});if(gui==null)gui=new guiClass();alerts=new eDaabAlert({delayTime:10000});vnSystem=new vnSystem({delayTime:10000});subContent=new subcontent();mediaLibrary=new medialibrary();error=new errorLogger();mrBug.says=function(msg)
{error.log('<div style="clear:both;float:left;font-size:14px;"><img src="/img/bug.gif" width="24" style="float:left;" /><span style="display:block;float:left;">: '+msg+'</span></div>');}
function alert(msg)
{error.log(msg);}
$('lauftext').setStyle('margin-top','-20px');var lauftext=new SWFObject("/img/edaabHeader.swf","lauftext","660","124","8","#000000");lauftext.addParam("align","left");lauftext.addParam("wmode","opaque");lauftext.addParam("allowScriptAccess","always");lauftext.write("lauftext");$$('.activeFX').highlightEl(5);$$('.hoverFX').hoverEl(5);$$('.inactiveFX').inactiveEl();$$('input[class=checkbox]').each(function(checkbox){var pic=new Element('div').injectAfter(checkbox);var parent=pic.getParent();pic.checked=checkbox.checked;var tmp=checkbox.clone().inject(pic);checkbox.remove();checkbox=tmp;checkbox.setStyle('visibility','hidden');pic.setStyle('width','20px');pic.setStyle('height','13px');pic.setStyle('float','left');pic.setStyle('background-repeat','no-repeat');pic.setStyle('background-position','center center');if(checkbox.checked==true)pic.setStyle('background-image','url(/img/icons/checkboxActive.gif)');else pic.setStyle('background-image','url(/img/icons/checkboxInactive.gif)');pic.addEvent('click',function(){checkbox.fireEvent('toggle')});checkbox.addEvent('changeX',function(){if(checkbox.checked==true)pic.setStyle('background-image','url(/img/icons/checkboxActive.gif)');else pic.setStyle('background-image','url(/img/icons/checkboxInactive.gif)');}).addEvent('toggle',function()
{if(checkbox.checked==true)checkbox.fireEvent('unCheck');else checkbox.fireEvent('check');}).addEvent('check',function(){checkbox.checked=true;checkbox.fireEvent('changeX','checked');}).addEvent('unCheck',function(){checkbox.checked=false;checkbox.fireEvent('changeX','unChecked');});});var elements=$$('.tooltip');vnTip=new Tips(elements,{initialize:function(){this.fx=new Fx.Style(this.toolTip,'opacity',{duration:500,wait:false}).set(0);},onShow:function(toolTip){this.fx.start(1);},onHide:function(toolTip){this.fx.start(0);}});window.fireEvent('vntip');var Tips3=new Tips($$('.texttip'),{showDelay:400,hideDelay:400,maxTitleChars:16,fixed:true,offsets:{'x':120,'y':0}});});function sendMessagePopup(name,id)
{var sendMessage=new eDaabSendMessage();sendMessage.setRecieverName(name);sendMessage.setReciever(id);sendMessage.setReload(false);sendMessage.popup();};