
var Prototype={Version:'1.6.1',Browser:(function(){var ua=navigator.userAgent;var isOpera=Object.prototype.toString.call(window.opera)=='[object Opera]';return{IE:!!window.attachEvent&&!isOpera,Opera:isOpera,WebKit:ua.indexOf('AppleWebKit/')>-1,Gecko:ua.indexOf('Gecko')>-1&&ua.indexOf('KHTML')===-1,MobileSafari:/Apple.*Mobile.*Safari/.test(ua)}})(),BrowserFeatures:{XPath:!!document.evaluate,SelectorsAPI:!!document.querySelector,ElementExtensions:(function(){var constructor=window.Element||window.HTMLElement;return!!(constructor&&constructor.prototype);})(),SpecificElementExtensions:(function(){if(typeof window.HTMLDivElement!=='undefined')
return true;var div=document.createElement('div');var form=document.createElement('form');var isSupported=false;if(div['__proto__']&&(div['__proto__']!==form['__proto__'])){isSupported=true;}
div=form=null;return isSupported;})()},ScriptFragment:'<script[^>]*>([\\S\\s]*?)<\/script>',JSONFilter:/^\/\*-secure-([\s\S]*)\*\/\s*$/,emptyFunction:function(){},K:function(x){return x}};if(Prototype.Browser.MobileSafari)
Prototype.BrowserFeatures.SpecificElementExtensions=false;var Abstract={};var Try={these:function(){var returnValue;for(var i=0,length=arguments.length;i<length;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}
return returnValue;}};var Class=(function(){function subclass(){};function create(){var parent=null,properties=$A(arguments);if(Object.isFunction(properties[0]))
parent=properties.shift();function klass(){this.initialize.apply(this,arguments);}
Object.extend(klass,Class.Methods);klass.superclass=parent;klass.subclasses=[];if(parent){subclass.prototype=parent.prototype;klass.prototype=new subclass;parent.subclasses.push(klass);}
for(var i=0;i<properties.length;i++)
klass.addMethods(properties[i]);if(!klass.prototype.initialize)
klass.prototype.initialize=Prototype.emptyFunction;klass.prototype.constructor=klass;return klass;}
function addMethods(source){var ancestor=this.superclass&&this.superclass.prototype;var properties=Object.keys(source);if(!Object.keys({toString:true}).length){if(source.toString!=Object.prototype.toString)
properties.push("toString");if(source.valueOf!=Object.prototype.valueOf)
properties.push("valueOf");}
for(var i=0,length=properties.length;i<length;i++){var property=properties[i],value=source[property];if(ancestor&&Object.isFunction(value)&&value.argumentNames().first()=="$super"){var method=value;value=(function(m){return function(){return ancestor[m].apply(this,arguments);};})(property).wrap(method);value.valueOf=method.valueOf.bind(method);value.toString=method.toString.bind(method);}
this.prototype[property]=value;}
return this;}
return{create:create,Methods:{addMethods:addMethods}};})();(function(){var _toString=Object.prototype.toString;function extend(destination,source){for(var property in source)
destination[property]=source[property];return destination;}
function inspect(object){try{if(isUndefined(object))return'undefined';if(object===null)return'null';return object.inspect?object.inspect():String(object);}catch(e){if(e instanceof RangeError)return'...';throw e;}}
function toJSON(object){var type=typeof object;switch(type){case'undefined':case'function':case'unknown':return;case'boolean':return object.toString();}
if(object===null)return'null';if(object.toJSON)return object.toJSON();if(isElement(object))return;var results=[];for(var property in object){var value=toJSON(object[property]);if(!isUndefined(value))
results.push(property.toJSON()+': '+value);}
return'{'+results.join(', ')+'}';}
function toQueryString(object){return $H(object).toQueryString();}
function toHTML(object){return object&&object.toHTML?object.toHTML():String.interpret(object);}
function keys(object){var results=[];for(var property in object)
results.push(property);return results;}
function values(object){var results=[];for(var property in object)
results.push(object[property]);return results;}
function clone(object){return extend({},object);}
function isElement(object){return!!(object&&object.nodeType==1);}
function isArray(object){return _toString.call(object)=="[object Array]";}
function isHash(object){return object instanceof Hash;}
function isFunction(object){return typeof object==="function";}
function isString(object){return _toString.call(object)=="[object String]";}
function isNumber(object){return _toString.call(object)=="[object Number]";}
function isUndefined(object){return typeof object==="undefined";}
extend(Object,{extend:extend,inspect:inspect,toJSON:toJSON,toQueryString:toQueryString,toHTML:toHTML,keys:keys,values:values,clone:clone,isElement:isElement,isArray:isArray,isHash:isHash,isFunction:isFunction,isString:isString,isNumber:isNumber,isUndefined:isUndefined});})();Object.extend(Function.prototype,(function(){var slice=Array.prototype.slice;function update(array,args){var arrayLength=array.length,length=args.length;while(length--)array[arrayLength+length]=args[length];return array;}
function merge(array,args){array=slice.call(array,0);return update(array,args);}
function argumentNames(){var names=this.toString().match(/^[\s\(]*function[^(]*\(([^)]*)\)/)[1].replace(/\/\/.*?[\r\n]|\/\*(?:.|[\r\n])*?\*\//g,'').replace(/\s+/g,'').split(',');return names.length==1&&!names[0]?[]:names;}
function bind(context){if(arguments.length<2&&Object.isUndefined(arguments[0]))return this;var __method=this,args=slice.call(arguments,1);return function(){var a=merge(args,arguments);return __method.apply(context,a);}}
function bindAsEventListener(context){var __method=this,args=slice.call(arguments,1);return function(event){var a=update([event||window.event],args);return __method.apply(context,a);}}
function curry(){if(!arguments.length)return this;var __method=this,args=slice.call(arguments,0);return function(){var a=merge(args,arguments);return __method.apply(this,a);}}
function delay(timeout){var __method=this,args=slice.call(arguments,1);timeout=timeout*1000
return window.setTimeout(function(){return __method.apply(__method,args);},timeout);}
function defer(){var args=update([0.01],arguments);return this.delay.apply(this,args);}
function wrap(wrapper){var __method=this;return function(){var a=update([__method.bind(this)],arguments);return wrapper.apply(this,a);}}
function methodize(){if(this._methodized)return this._methodized;var __method=this;return this._methodized=function(){var a=update([this],arguments);return __method.apply(null,a);};}
return{argumentNames:argumentNames,bind:bind,bindAsEventListener:bindAsEventListener,curry:curry,delay:delay,defer:defer,wrap:wrap,methodize:methodize}})());Date.prototype.toJSON=function(){return'"'+this.getUTCFullYear()+'-'+
(this.getUTCMonth()+1).toPaddedString(2)+'-'+
this.getUTCDate().toPaddedString(2)+'T'+
this.getUTCHours().toPaddedString(2)+':'+
this.getUTCMinutes().toPaddedString(2)+':'+
this.getUTCSeconds().toPaddedString(2)+'Z"';};RegExp.prototype.match=RegExp.prototype.test;RegExp.escape=function(str){return String(str).replace(/([.*+?^=!:${}()|[\]\/\\])/g,'\\$1');};var PeriodicalExecuter=Class.create({initialize:function(callback,frequency){this.callback=callback;this.frequency=frequency;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},execute:function(){this.callback(this);},stop:function(){if(!this.timer)return;clearInterval(this.timer);this.timer=null;},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.execute();this.currentlyExecuting=false;}catch(e){this.currentlyExecuting=false;throw e;}}}});Object.extend(String,{interpret:function(value){return value==null?'':String(value);},specialChar:{'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','\\':'\\\\'}});Object.extend(String.prototype,(function(){function prepareReplacement(replacement){if(Object.isFunction(replacement))return replacement;var template=new Template(replacement);return function(match){return template.evaluate(match)};}
function gsub(pattern,replacement){var result='',source=this,match;replacement=prepareReplacement(replacement);if(Object.isString(pattern))
pattern=RegExp.escape(pattern);if(!(pattern.length||pattern.source)){replacement=replacement('');return replacement+source.split('').join(replacement)+replacement;}
while(source.length>0){if(match=source.match(pattern)){result+=source.slice(0,match.index);result+=String.interpret(replacement(match));source=source.slice(match.index+match[0].length);}else{result+=source,source='';}}
return result;}
function sub(pattern,replacement,count){replacement=prepareReplacement(replacement);count=Object.isUndefined(count)?1:count;return this.gsub(pattern,function(match){if(--count<0)return match[0];return replacement(match);});}
function scan(pattern,iterator){this.gsub(pattern,iterator);return String(this);}
function truncate(length,truncation){length=length||30;truncation=Object.isUndefined(truncation)?'...':truncation;return this.length>length?this.slice(0,length-truncation.length)+truncation:String(this);}
function strip(){return this.replace(/^\s+/,'').replace(/\s+$/,'');}
function stripTags(){return this.replace(/<\w+(\s+("[^"]*"|'[^']*'|[^>])+)?>|<\/\w+>/gi,'');}
function stripScripts(){return this.replace(new RegExp(Prototype.ScriptFragment,'img'),'');}
function extractScripts(){var matchAll=new RegExp(Prototype.ScriptFragment,'img');var matchOne=new RegExp(Prototype.ScriptFragment,'im');return(this.match(matchAll)||[]).map(function(scriptTag){return(scriptTag.match(matchOne)||['',''])[1];});}
function evalScripts(){return this.extractScripts().map(function(script){return eval(script)});}
function escapeHTML(){return this.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');}
function unescapeHTML(){return this.stripTags().replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&amp;/g,'&');}
function toQueryParams(separator){var match=this.strip().match(/([^?#]*)(#.*)?$/);if(!match)return{};return match[1].split(separator||'&').inject({},function(hash,pair){if((pair=pair.split('='))[0]){var key=decodeURIComponent(pair.shift());var value=pair.length>1?pair.join('='):pair[0];if(value!=undefined)value=decodeURIComponent(value);if(key in hash){if(!Object.isArray(hash[key]))hash[key]=[hash[key]];hash[key].push(value);}
else hash[key]=value;}
return hash;});}
function toArray(){return this.split('');}
function succ(){return this.slice(0,this.length-1)+
String.fromCharCode(this.charCodeAt(this.length-1)+1);}
function times(count){return count<1?'':new Array(count+1).join(this);}
function camelize(){var parts=this.split('-'),len=parts.length;if(len==1)return parts[0];var camelized=this.charAt(0)=='-'?parts[0].charAt(0).toUpperCase()+parts[0].substring(1):parts[0];for(var i=1;i<len;i++)
camelized+=parts[i].charAt(0).toUpperCase()+parts[i].substring(1);return camelized;}
function capitalize(){return this.charAt(0).toUpperCase()+this.substring(1).toLowerCase();}
function underscore(){return this.replace(/::/g,'/').replace(/([A-Z]+)([A-Z][a-z])/g,'$1_$2').replace(/([a-z\d])([A-Z])/g,'$1_$2').replace(/-/g,'_').toLowerCase();}
function dasherize(){return this.replace(/_/g,'-');}
function inspect(useDoubleQuotes){var escapedString=this.replace(/[\x00-\x1f\\]/g,function(character){if(character in String.specialChar){return String.specialChar[character];}
return'\\u00'+character.charCodeAt().toPaddedString(2,16);});if(useDoubleQuotes)return'"'+escapedString.replace(/"/g,'\\"')+'"';return"'"+escapedString.replace(/'/g,'\\\'')+"'";}
function toJSON(){return this.inspect(true);}
function unfilterJSON(filter){return this.replace(filter||Prototype.JSONFilter,'$1');}
function isJSON(){var str=this;if(str.blank())return false;str=this.replace(/\\./g,'@').replace(/"[^"\\\n\r]*"/g,'');return(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(str);}
function evalJSON(sanitize){var json=this.unfilterJSON();try{if(!sanitize||json.isJSON())return eval('('+json+')');}catch(e){}
throw new SyntaxError('Badly formed JSON string: '+this.inspect());}
function include(pattern){return this.indexOf(pattern)>-1;}
function startsWith(pattern){return this.indexOf(pattern)===0;}
function endsWith(pattern){var d=this.length-pattern.length;return d>=0&&this.lastIndexOf(pattern)===d;}
function empty(){return this=='';}
function blank(){return/^\s*$/.test(this);}
function interpolate(object,pattern){return new Template(this,pattern).evaluate(object);}
return{gsub:gsub,sub:sub,scan:scan,truncate:truncate,strip:String.prototype.trim?String.prototype.trim:strip,stripTags:stripTags,stripScripts:stripScripts,extractScripts:extractScripts,evalScripts:evalScripts,escapeHTML:escapeHTML,unescapeHTML:unescapeHTML,toQueryParams:toQueryParams,parseQuery:toQueryParams,toArray:toArray,succ:succ,times:times,camelize:camelize,capitalize:capitalize,underscore:underscore,dasherize:dasherize,inspect:inspect,toJSON:toJSON,unfilterJSON:unfilterJSON,isJSON:isJSON,evalJSON:evalJSON,include:include,startsWith:startsWith,endsWith:endsWith,empty:empty,blank:blank,interpolate:interpolate};})());var Template=Class.create({initialize:function(template,pattern){this.template=template.toString();this.pattern=pattern||Template.Pattern;},evaluate:function(object){if(object&&Object.isFunction(object.toTemplateReplacements))
object=object.toTemplateReplacements();return this.template.gsub(this.pattern,function(match){if(object==null)return(match[1]+'');var before=match[1]||'';if(before=='\\')return match[2];var ctx=object,expr=match[3];var pattern=/^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/;match=pattern.exec(expr);if(match==null)return before;while(match!=null){var comp=match[1].startsWith('[')?match[2].replace(/\\\\]/g,']'):match[1];ctx=ctx[comp];if(null==ctx||''==match[3])break;expr=expr.substring('['==match[3]?match[1].length:match[0].length);match=pattern.exec(expr);}
return before+String.interpret(ctx);});}});Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;var $break={};var Enumerable=(function(){function each(iterator,context){var index=0;try{this._each(function(value){iterator.call(context,value,index++);});}catch(e){if(e!=$break)throw e;}
return this;}
function eachSlice(number,iterator,context){var index=-number,slices=[],array=this.toArray();if(number<1)return array;while((index+=number)<array.length)
slices.push(array.slice(index,index+number));return slices.collect(iterator,context);}
function all(iterator,context){iterator=iterator||Prototype.K;var result=true;this.each(function(value,index){result=result&&!!iterator.call(context,value,index);if(!result)throw $break;});return result;}
function any(iterator,context){iterator=iterator||Prototype.K;var result=false;this.each(function(value,index){if(result=!!iterator.call(context,value,index))
throw $break;});return result;}
function collect(iterator,context){iterator=iterator||Prototype.K;var results=[];this.each(function(value,index){results.push(iterator.call(context,value,index));});return results;}
function detect(iterator,context){var result;this.each(function(value,index){if(iterator.call(context,value,index)){result=value;throw $break;}});return result;}
function findAll(iterator,context){var results=[];this.each(function(value,index){if(iterator.call(context,value,index))
results.push(value);});return results;}
function grep(filter,iterator,context){iterator=iterator||Prototype.K;var results=[];if(Object.isString(filter))
filter=new RegExp(RegExp.escape(filter));this.each(function(value,index){if(filter.match(value))
results.push(iterator.call(context,value,index));});return results;}
function include(object){if(Object.isFunction(this.indexOf))
if(this.indexOf(object)!=-1)return true;var found=false;this.each(function(value){if(value==object){found=true;throw $break;}});return found;}
function inGroupsOf(number,fillWith){fillWith=Object.isUndefined(fillWith)?null:fillWith;return this.eachSlice(number,function(slice){while(slice.length<number)slice.push(fillWith);return slice;});}
function inject(memo,iterator,context){this.each(function(value,index){memo=iterator.call(context,memo,value,index);});return memo;}
function invoke(method){var args=$A(arguments).slice(1);return this.map(function(value){return value[method].apply(value,args);});}
function max(iterator,context){iterator=iterator||Prototype.K;var result;this.each(function(value,index){value=iterator.call(context,value,index);if(result==null||value>=result)
result=value;});return result;}
function min(iterator,context){iterator=iterator||Prototype.K;var result;this.each(function(value,index){value=iterator.call(context,value,index);if(result==null||value<result)
result=value;});return result;}
function partition(iterator,context){iterator=iterator||Prototype.K;var trues=[],falses=[];this.each(function(value,index){(iterator.call(context,value,index)?trues:falses).push(value);});return[trues,falses];}
function pluck(property){var results=[];this.each(function(value){results.push(value[property]);});return results;}
function reject(iterator,context){var results=[];this.each(function(value,index){if(!iterator.call(context,value,index))
results.push(value);});return results;}
function sortBy(iterator,context){return this.map(function(value,index){return{value:value,criteria:iterator.call(context,value,index)};}).sort(function(left,right){var a=left.criteria,b=right.criteria;return a<b?-1:a>b?1:0;}).pluck('value');}
function toArray(){return this.map();}
function zip(){var iterator=Prototype.K,args=$A(arguments);if(Object.isFunction(args.last()))
iterator=args.pop();var collections=[this].concat(args).map($A);return this.map(function(value,index){return iterator(collections.pluck(index));});}
function size(){return this.toArray().length;}
function inspect(){return'#<Enumerable:'+this.toArray().inspect()+'>';}
return{each:each,eachSlice:eachSlice,all:all,every:all,any:any,some:any,collect:collect,map:collect,detect:detect,findAll:findAll,select:findAll,filter:findAll,grep:grep,include:include,member:include,inGroupsOf:inGroupsOf,inject:inject,invoke:invoke,max:max,min:min,partition:partition,pluck:pluck,reject:reject,sortBy:sortBy,toArray:toArray,entries:toArray,zip:zip,size:size,inspect:inspect,find:detect};})();function $A(iterable){if(!iterable)return[];if('toArray'in Object(iterable))return iterable.toArray();var length=iterable.length||0,results=new Array(length);while(length--)results[length]=iterable[length];return results;}
function $w(string){if(!Object.isString(string))return[];string=string.strip();return string?string.split(/\s+/):[];}
Array.from=$A;(function(){var arrayProto=Array.prototype,slice=arrayProto.slice,_each=arrayProto.forEach;function each(iterator){for(var i=0,length=this.length;i<length;i++)
iterator(this[i]);}
if(!_each)_each=each;function clear(){this.length=0;return this;}
function first(){return this[0];}
function last(){return this[this.length-1];}
function compact(){return this.select(function(value){return value!=null;});}
function flatten(){return this.inject([],function(array,value){if(Object.isArray(value))
return array.concat(value.flatten());array.push(value);return array;});}
function without(){var values=slice.call(arguments,0);return this.select(function(value){return!values.include(value);});}
function reverse(inline){return(inline!==false?this:this.toArray())._reverse();}
function uniq(sorted){return this.inject([],function(array,value,index){if(0==index||(sorted?array.last()!=value:!array.include(value)))
array.push(value);return array;});}
function intersect(array){return this.uniq().findAll(function(item){return array.detect(function(value){return item===value});});}
function clone(){return slice.call(this,0);}
function size(){return this.length;}
function inspect(){return'['+this.map(Object.inspect).join(', ')+']';}
function toJSON(){var results=[];this.each(function(object){var value=Object.toJSON(object);if(!Object.isUndefined(value))results.push(value);});return'['+results.join(', ')+']';}
function indexOf(item,i){i||(i=0);var length=this.length;if(i<0)i=length+i;for(;i<length;i++)
if(this[i]===item)return i;return-1;}
function lastIndexOf(item,i){i=isNaN(i)?this.length:(i<0?this.length+i:i)+1;var n=this.slice(0,i).reverse().indexOf(item);return(n<0)?n:i-n-1;}
function concat(){var array=slice.call(this,0),item;for(var i=0,length=arguments.length;i<length;i++){item=arguments[i];if(Object.isArray(item)&&!('callee'in item)){for(var j=0,arrayLength=item.length;j<arrayLength;j++)
array.push(item[j]);}else{array.push(item);}}
return array;}
Object.extend(arrayProto,Enumerable);if(!arrayProto._reverse)
arrayProto._reverse=arrayProto.reverse;Object.extend(arrayProto,{_each:_each,clear:clear,first:first,last:last,compact:compact,flatten:flatten,without:without,reverse:reverse,uniq:uniq,intersect:intersect,clone:clone,toArray:clone,size:size,inspect:inspect,toJSON:toJSON});var CONCAT_ARGUMENTS_BUGGY=(function(){return[].concat(arguments)[0][0]!==1;})(1,2)
if(CONCAT_ARGUMENTS_BUGGY)arrayProto.concat=concat;if(!arrayProto.indexOf)arrayProto.indexOf=indexOf;if(!arrayProto.lastIndexOf)arrayProto.lastIndexOf=lastIndexOf;})();function $H(object){return new Hash(object);};var Hash=Class.create(Enumerable,(function(){function initialize(object){this._object=Object.isHash(object)?object.toObject():Object.clone(object);}
function _each(iterator){for(var key in this._object){var value=this._object[key],pair=[key,value];pair.key=key;pair.value=value;iterator(pair);}}
function set(key,value){return this._object[key]=value;}
function get(key){if(this._object[key]!==Object.prototype[key])
return this._object[key];}
function unset(key){var value=this._object[key];delete this._object[key];return value;}
function toObject(){return Object.clone(this._object);}
function keys(){return this.pluck('key');}
function values(){return this.pluck('value');}
function index(value){var match=this.detect(function(pair){return pair.value===value;});return match&&match.key;}
function merge(object){return this.clone().update(object);}
function update(object){return new Hash(object).inject(this,function(result,pair){result.set(pair.key,pair.value);return result;});}
function toQueryPair(key,value){if(Object.isUndefined(value))return key;return key+'='+encodeURIComponent(String.interpret(value));}
function toQueryString(){return this.inject([],function(results,pair){var key=encodeURIComponent(pair.key),values=pair.value;if(values&&typeof values=='object'){if(Object.isArray(values))
return results.concat(values.map(toQueryPair.curry(key)));}else results.push(toQueryPair(key,values));return results;}).join('&');}
function inspect(){return'#<Hash:{'+this.map(function(pair){return pair.map(Object.inspect).join(': ');}).join(', ')+'}>';}
function toJSON(){return Object.toJSON(this.toObject());}
function clone(){return new Hash(this);}
return{initialize:initialize,_each:_each,set:set,get:get,unset:unset,toObject:toObject,toTemplateReplacements:toObject,keys:keys,values:values,index:index,merge:merge,update:update,toQueryString:toQueryString,inspect:inspect,toJSON:toJSON,clone:clone};})());Hash.from=$H;Object.extend(Number.prototype,(function(){function toColorPart(){return this.toPaddedString(2,16);}
function succ(){return this+1;}
function times(iterator,context){$R(0,this,true).each(iterator,context);return this;}
function toPaddedString(length,radix){var string=this.toString(radix||10);return'0'.times(length-string.length)+string;}
function toJSON(){return isFinite(this)?this.toString():'null';}
function abs(){return Math.abs(this);}
function round(){return Math.round(this);}
function ceil(){return Math.ceil(this);}
function floor(){return Math.floor(this);}
return{toColorPart:toColorPart,succ:succ,times:times,toPaddedString:toPaddedString,toJSON:toJSON,abs:abs,round:round,ceil:ceil,floor:floor};})());function $R(start,end,exclusive){return new ObjectRange(start,end,exclusive);}
var ObjectRange=Class.create(Enumerable,(function(){function initialize(start,end,exclusive){this.start=start;this.end=end;this.exclusive=exclusive;}
function _each(iterator){var value=this.start;while(this.include(value)){iterator(value);value=value.succ();}}
function include(value){if(value<this.start)
return false;if(this.exclusive)
return value<this.end;return value<=this.end;}
return{initialize:initialize,_each:_each,include:include};})());var Ajax={getTransport:function(){return Try.these(function(){return new XMLHttpRequest()},function(){return new ActiveXObject('Msxml2.XMLHTTP')},function(){return new ActiveXObject('Microsoft.XMLHTTP')})||false;},activeRequestCount:0};Ajax.Responders={responders:[],_each:function(iterator){this.responders._each(iterator);},register:function(responder){if(!this.include(responder))
this.responders.push(responder);},unregister:function(responder){this.responders=this.responders.without(responder);},dispatch:function(callback,request,transport,json){this.each(function(responder){if(Object.isFunction(responder[callback])){try{responder[callback].apply(responder,[request,transport,json]);}catch(e){}}});}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++},onComplete:function(){Ajax.activeRequestCount--}});Ajax.Base=Class.create({initialize:function(options){this.options={method:'post',asynchronous:true,contentType:'application/x-www-form-urlencoded',encoding:'UTF-8',parameters:'',evalJSON:true,evalJS:true};Object.extend(this.options,options||{});this.options.method=this.options.method.toLowerCase();if(Object.isString(this.options.parameters))
this.options.parameters=this.options.parameters.toQueryParams();else if(Object.isHash(this.options.parameters))
this.options.parameters=this.options.parameters.toObject();}});Ajax.Request=Class.create(Ajax.Base,{_complete:false,initialize:function($super,url,options){$super(options);this.transport=Ajax.getTransport();this.request(url);},request:function(url){this.url=url;this.method=this.options.method;var params=Object.clone(this.options.parameters);if(!['get','post'].include(this.method)){params['_method']=this.method;this.method='post';}
this.parameters=params;if(params=Object.toQueryString(params)){if(this.method=='get')
this.url+=(this.url.include('?')?'&':'?')+params;else if(/Konqueror|Safari|KHTML/.test(navigator.userAgent))
params+='&_=';}
try{var response=new Ajax.Response(this);if(this.options.onCreate)this.options.onCreate(response);Ajax.Responders.dispatch('onCreate',this,response);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous)this.respondToReadyState.bind(this).defer(1);this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();this.body=this.method=='post'?(this.options.postBody||params):null;this.transport.send(this.body);if(!this.options.asynchronous&&this.transport.overrideMimeType)
this.onStateChange();}
catch(e){this.dispatchException(e);}},onStateChange:function(){var readyState=this.transport.readyState;if(readyState>1&&!((readyState==4)&&this._complete))
this.respondToReadyState(this.transport.readyState);},setRequestHeaders:function(){var headers={'X-Requested-With':'XMLHttpRequest','X-Prototype-Version':Prototype.Version,'Accept':'text/javascript, text/html, application/xml, text/xml, */*'};if(this.method=='post'){headers['Content-type']=this.options.contentType+
(this.options.encoding?'; charset='+this.options.encoding:'');if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005)
headers['Connection']='close';}
if(typeof this.options.requestHeaders=='object'){var extras=this.options.requestHeaders;if(Object.isFunction(extras.push))
for(var i=0,length=extras.length;i<length;i+=2)
headers[extras[i]]=extras[i+1];else
$H(extras).each(function(pair){headers[pair.key]=pair.value});}
for(var name in headers)
this.transport.setRequestHeader(name,headers[name]);},success:function(){var status=this.getStatus();return!status||(status>=200&&status<300);},getStatus:function(){try{return this.transport.status||0;}catch(e){return 0}},respondToReadyState:function(readyState){var state=Ajax.Request.Events[readyState],response=new Ajax.Response(this);if(state=='Complete'){try{this._complete=true;(this.options['on'+response.status]||this.options['on'+(this.success()?'Success':'Failure')]||Prototype.emptyFunction)(response,response.headerJSON);}catch(e){this.dispatchException(e);}
var contentType=response.getHeader('Content-type');if(this.options.evalJS=='force'||(this.options.evalJS&&this.isSameOrigin()&&contentType&&contentType.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?\s*$/i)))
this.evalResponse();}
try{(this.options['on'+state]||Prototype.emptyFunction)(response,response.headerJSON);Ajax.Responders.dispatch('on'+state,this,response,response.headerJSON);}catch(e){this.dispatchException(e);}
if(state=='Complete'){this.transport.onreadystatechange=Prototype.emptyFunction;}},isSameOrigin:function(){var m=this.url.match(/^\s*https?:\/\/[^\/]*/);return!m||(m[0]=='#{protocol}//#{domain}#{port}'.interpolate({protocol:location.protocol,domain:document.domain,port:location.port?':'+location.port:''}));},getHeader:function(name){try{return this.transport.getResponseHeader(name)||null;}catch(e){return null;}},evalResponse:function(){try{return eval((this.transport.responseText||'').unfilterJSON());}catch(e){this.dispatchException(e);}},dispatchException:function(exception){(this.options.onException||Prototype.emptyFunction)(this,exception);Ajax.Responders.dispatch('onException',this,exception);}});Ajax.Request.Events=['Uninitialized','Loading','Loaded','Interactive','Complete'];Ajax.Response=Class.create({initialize:function(request){this.request=request;var transport=this.transport=request.transport,readyState=this.readyState=transport.readyState;if((readyState>2&&!Prototype.Browser.IE)||readyState==4){this.status=this.getStatus();this.statusText=this.getStatusText();this.responseText=String.interpret(transport.responseText);this.headerJSON=this._getHeaderJSON();}
if(readyState==4){var xml=transport.responseXML;this.responseXML=Object.isUndefined(xml)?null:xml;this.responseJSON=this._getResponseJSON();}},status:0,statusText:'',getStatus:Ajax.Request.prototype.getStatus,getStatusText:function(){try{return this.transport.statusText||'';}catch(e){return''}},getHeader:Ajax.Request.prototype.getHeader,getAllHeaders:function(){try{return this.getAllResponseHeaders();}catch(e){return null}},getResponseHeader:function(name){return this.transport.getResponseHeader(name);},getAllResponseHeaders:function(){return this.transport.getAllResponseHeaders();},_getHeaderJSON:function(){var json=this.getHeader('X-JSON');if(!json)return null;json=decodeURIComponent(escape(json));try{return json.evalJSON(this.request.options.sanitizeJSON||!this.request.isSameOrigin());}catch(e){this.request.dispatchException(e);}},_getResponseJSON:function(){var options=this.request.options;if(!options.evalJSON||(options.evalJSON!='force'&&!(this.getHeader('Content-type')||'').include('application/json'))||this.responseText.blank())
return null;try{return this.responseText.evalJSON(options.sanitizeJSON||!this.request.isSameOrigin());}catch(e){this.request.dispatchException(e);}}});Ajax.Updater=Class.create(Ajax.Request,{initialize:function($super,container,url,options){this.container={success:(container.success||container),failure:(container.failure||(container.success?null:container))};options=Object.clone(options);var onComplete=options.onComplete;options.onComplete=(function(response,json){this.updateContent(response.responseText);if(Object.isFunction(onComplete))onComplete(response,json);}).bind(this);$super(url,options);},updateContent:function(responseText){var receiver=this.container[this.success()?'success':'failure'],options=this.options;if(!options.evalScripts)responseText=responseText.stripScripts();if(receiver=$(receiver)){if(options.insertion){if(Object.isString(options.insertion)){var insertion={};insertion[options.insertion]=responseText;receiver.insert(insertion);}
else options.insertion(receiver,responseText);}
else receiver.update(responseText);}}});Ajax.PeriodicalUpdater=Class.create(Ajax.Base,{initialize:function($super,container,url,options){$super(options);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=container;this.url=url;this.start();},start:function(){this.options.onComplete=this.updateComplete.bind(this);this.onTimerEvent();},stop:function(){this.updater.options.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this,arguments);},updateComplete:function(response){if(this.options.decay){this.decay=(response.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=response.responseText;}
this.timer=this.onTimerEvent.bind(this).delay(this.decay*this.frequency);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});function $(element){if(arguments.length>1){for(var i=0,elements=[],length=arguments.length;i<length;i++)
elements.push($(arguments[i]));return elements;}
if(Object.isString(element))
element=document.getElementById(element);return Element.extend(element);}
if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(expression,parentElement){var results=[];var query=document.evaluate(expression,$(parentElement)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0,length=query.snapshotLength;i<length;i++)
results.push(Element.extend(query.snapshotItem(i)));return results;};}
if(!window.Node)var Node={};if(!Node.ELEMENT_NODE){Object.extend(Node,{ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12});}
(function(global){var SETATTRIBUTE_IGNORES_NAME=(function(){var elForm=document.createElement("form");var elInput=document.createElement("input");var root=document.documentElement;elInput.setAttribute("name","test");elForm.appendChild(elInput);root.appendChild(elForm);var isBuggy=elForm.elements?(typeof elForm.elements.test=="undefined"):null;root.removeChild(elForm);elForm=elInput=null;return isBuggy;})();var element=global.Element;global.Element=function(tagName,attributes){attributes=attributes||{};tagName=tagName.toLowerCase();var cache=Element.cache;if(SETATTRIBUTE_IGNORES_NAME&&attributes.name){tagName='<'+tagName+' name="'+attributes.name+'">';delete attributes.name;return Element.writeAttribute(document.createElement(tagName),attributes);}
if(!cache[tagName])cache[tagName]=Element.extend(document.createElement(tagName));return Element.writeAttribute(cache[tagName].cloneNode(false),attributes);};Object.extend(global.Element,element||{});if(element)global.Element.prototype=element.prototype;})(this);Element.cache={};Element.idCounter=1;Element.Methods={visible:function(element){return $(element).style.display!='none';},toggle:function(element){element=$(element);Element[Element.visible(element)?'hide':'show'](element);return element;},hide:function(element){element=$(element);element.style.display='none';return element;},show:function(element){element=$(element);element.style.display='';return element;},remove:function(element){element=$(element);element.parentNode.removeChild(element);return element;},update:(function(){var SELECT_ELEMENT_INNERHTML_BUGGY=(function(){var el=document.createElement("select"),isBuggy=true;el.innerHTML="<option value=\"test\">test</option>";if(el.options&&el.options[0]){isBuggy=el.options[0].nodeName.toUpperCase()!=="OPTION";}
el=null;return isBuggy;})();var TABLE_ELEMENT_INNERHTML_BUGGY=(function(){try{var el=document.createElement("table");if(el&&el.tBodies){el.innerHTML="<tbody><tr><td>test</td></tr></tbody>";var isBuggy=typeof el.tBodies[0]=="undefined";el=null;return isBuggy;}}catch(e){return true;}})();var SCRIPT_ELEMENT_REJECTS_TEXTNODE_APPENDING=(function(){var s=document.createElement("script"),isBuggy=false;try{s.appendChild(document.createTextNode(""));isBuggy=!s.firstChild||s.firstChild&&s.firstChild.nodeType!==3;}catch(e){isBuggy=true;}
s=null;return isBuggy;})();function update(element,content){element=$(element);if(content&&content.toElement)
content=content.toElement();if(Object.isElement(content))
return element.update().insert(content);content=Object.toHTML(content);var tagName=element.tagName.toUpperCase();if(tagName==='SCRIPT'&&SCRIPT_ELEMENT_REJECTS_TEXTNODE_APPENDING){element.text=content;return element;}
if(SELECT_ELEMENT_INNERHTML_BUGGY||TABLE_ELEMENT_INNERHTML_BUGGY){if(tagName in Element._insertionTranslations.tags){while(element.firstChild){element.removeChild(element.firstChild);}
Element._getContentFromAnonymousElement(tagName,content.stripScripts()).each(function(node){element.appendChild(node)});}
else{element.innerHTML=content.stripScripts();}}
else{element.innerHTML=content.stripScripts();}
content.evalScripts.bind(content).defer();return element;}
return update;})(),replace:function(element,content){element=$(element);if(content&&content.toElement)content=content.toElement();else if(!Object.isElement(content)){content=Object.toHTML(content);var range=element.ownerDocument.createRange();range.selectNode(element);content.evalScripts.bind(content).defer();content=range.createContextualFragment(content.stripScripts());}
element.parentNode.replaceChild(content,element);return element;},insert:function(element,insertions){element=$(element);if(Object.isString(insertions)||Object.isNumber(insertions)||Object.isElement(insertions)||(insertions&&(insertions.toElement||insertions.toHTML)))
insertions={bottom:insertions};var content,insert,tagName,childNodes;for(var position in insertions){content=insertions[position];position=position.toLowerCase();insert=Element._insertionTranslations[position];if(content&&content.toElement)content=content.toElement();if(Object.isElement(content)){insert(element,content);continue;}
content=Object.toHTML(content);tagName=((position=='before'||position=='after')?element.parentNode:element).tagName.toUpperCase();childNodes=Element._getContentFromAnonymousElement(tagName,content.stripScripts());if(position=='top'||position=='after')childNodes.reverse();childNodes.each(insert.curry(element));content.evalScripts.bind(content).defer();}
return element;},wrap:function(element,wrapper,attributes){element=$(element);if(Object.isElement(wrapper))
$(wrapper).writeAttribute(attributes||{});else if(Object.isString(wrapper))wrapper=new Element(wrapper,attributes);else wrapper=new Element('div',wrapper);if(element.parentNode)
element.parentNode.replaceChild(wrapper,element);wrapper.appendChild(element);return wrapper;},inspect:function(element){element=$(element);var result='<'+element.tagName.toLowerCase();$H({'id':'id','className':'class'}).each(function(pair){var property=pair.first(),attribute=pair.last();var value=(element[property]||'').toString();if(value)result+=' '+attribute+'='+value.inspect(true);});return result+'>';},recursivelyCollect:function(element,property){element=$(element);var elements=[];while(element=element[property])
if(element.nodeType==1)
elements.push(Element.extend(element));return elements;},ancestors:function(element){return Element.recursivelyCollect(element,'parentNode');},descendants:function(element){return Element.select(element,"*");},firstDescendant:function(element){element=$(element).firstChild;while(element&&element.nodeType!=1)element=element.nextSibling;return $(element);},immediateDescendants:function(element){if(!(element=$(element).firstChild))return[];while(element&&element.nodeType!=1)element=element.nextSibling;if(element)return[element].concat($(element).nextSiblings());return[];},previousSiblings:function(element){return Element.recursivelyCollect(element,'previousSibling');},nextSiblings:function(element){return Element.recursivelyCollect(element,'nextSibling');},siblings:function(element){element=$(element);return Element.previousSiblings(element).reverse().concat(Element.nextSiblings(element));},match:function(element,selector){if(Object.isString(selector))
selector=new Selector(selector);return selector.match($(element));},up:function(element,expression,index){element=$(element);if(arguments.length==1)return $(element.parentNode);var ancestors=Element.ancestors(element);return Object.isNumber(expression)?ancestors[expression]:Selector.findElement(ancestors,expression,index);},down:function(element,expression,index){element=$(element);if(arguments.length==1)return Element.firstDescendant(element);return Object.isNumber(expression)?Element.descendants(element)[expression]:Element.select(element,expression)[index||0];},previous:function(element,expression,index){element=$(element);if(arguments.length==1)return $(Selector.handlers.previousElementSibling(element));var previousSiblings=Element.previousSiblings(element);return Object.isNumber(expression)?previousSiblings[expression]:Selector.findElement(previousSiblings,expression,index);},next:function(element,expression,index){element=$(element);if(arguments.length==1)return $(Selector.handlers.nextElementSibling(element));var nextSiblings=Element.nextSiblings(element);return Object.isNumber(expression)?nextSiblings[expression]:Selector.findElement(nextSiblings,expression,index);},select:function(element){var args=Array.prototype.slice.call(arguments,1);return Selector.findChildElements(element,args);},adjacent:function(element){var args=Array.prototype.slice.call(arguments,1);return Selector.findChildElements(element.parentNode,args).without(element);},identify:function(element){element=$(element);var id=Element.readAttribute(element,'id');if(id)return id;do{id='anonymous_element_'+Element.idCounter++}while($(id));Element.writeAttribute(element,'id',id);return id;},readAttribute:function(element,name){element=$(element);if(Prototype.Browser.IE){var t=Element._attributeTranslations.read;if(t.values[name])return t.values[name](element,name);if(t.names[name])name=t.names[name];if(name.include(':')){return(!element.attributes||!element.attributes[name])?null:element.attributes[name].value;}}
return element.getAttribute(name);},writeAttribute:function(element,name,value){element=$(element);var attributes={},t=Element._attributeTranslations.write;if(typeof name=='object')attributes=name;else attributes[name]=Object.isUndefined(value)?true:value;for(var attr in attributes){name=t.names[attr]||attr;value=attributes[attr];if(t.values[attr])name=t.values[attr](element,value);if(value===false||value===null)
element.removeAttribute(name);else if(value===true)
element.setAttribute(name,name);else element.setAttribute(name,value);}
return element;},getHeight:function(element){return Element.getDimensions(element).height;},getWidth:function(element){return Element.getDimensions(element).width;},classNames:function(element){return new Element.ClassNames(element);},hasClassName:function(element,className){if(!(element=$(element)))return;var elementClassName=element.className;return(elementClassName.length>0&&(elementClassName==className||new RegExp("(^|\\s)"+className+"(\\s|$)").test(elementClassName)));},addClassName:function(element,className){if(!(element=$(element)))return;if(!Element.hasClassName(element,className))
element.className+=(element.className?' ':'')+className;return element;},removeClassName:function(element,className){if(!(element=$(element)))return;element.className=element.className.replace(new RegExp("(^|\\s+)"+className+"(\\s+|$)"),' ').strip();return element;},toggleClassName:function(element,className){if(!(element=$(element)))return;return Element[Element.hasClassName(element,className)?'removeClassName':'addClassName'](element,className);},cleanWhitespace:function(element){element=$(element);var node=element.firstChild;while(node){var nextNode=node.nextSibling;if(node.nodeType==3&&!/\S/.test(node.nodeValue))
element.removeChild(node);node=nextNode;}
return element;},empty:function(element){return $(element).innerHTML.blank();},descendantOf:function(element,ancestor){element=$(element),ancestor=$(ancestor);if(element.compareDocumentPosition)
return(element.compareDocumentPosition(ancestor)&8)===8;if(ancestor.contains)
return ancestor.contains(element)&&ancestor!==element;while(element=element.parentNode)
if(element==ancestor)return true;return false;},scrollTo:function(element){element=$(element);var pos=Element.cumulativeOffset(element);window.scrollTo(pos[0],pos[1]);return element;},getStyle:function(element,style){element=$(element);style=style=='float'?'cssFloat':style.camelize();var value=element.style[style];if(!value||value=='auto'){var css=document.defaultView.getComputedStyle(element,null);value=css?css[style]:null;}
if(style=='opacity')return value?parseFloat(value):1.0;return value=='auto'?null:value;},getOpacity:function(element){return $(element).getStyle('opacity');},setStyle:function(element,styles){element=$(element);var elementStyle=element.style,match;if(Object.isString(styles)){element.style.cssText+=';'+styles;return styles.include('opacity')?element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]):element;}
for(var property in styles)
if(property=='opacity')element.setOpacity(styles[property]);else
elementStyle[(property=='float'||property=='cssFloat')?(Object.isUndefined(elementStyle.styleFloat)?'cssFloat':'styleFloat'):property]=styles[property];return element;},setOpacity:function(element,value){element=$(element);element.style.opacity=(value==1||value==='')?'':(value<0.00001)?0:value;return element;},getDimensions:function(element){element=$(element);var display=Element.getStyle(element,'display');if(display!='none'&&display!=null)
return{width:element.offsetWidth,height:element.offsetHeight};var els=element.style;var originalVisibility=els.visibility;var originalPosition=els.position;var originalDisplay=els.display;els.visibility='hidden';if(originalPosition!='fixed')
els.position='absolute';els.display='block';var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;els.display=originalDisplay;els.position=originalPosition;els.visibility=originalVisibility;return{width:originalWidth,height:originalHeight};},makePositioned:function(element){element=$(element);var pos=Element.getStyle(element,'position');if(pos=='static'||!pos){element._madePositioned=true;element.style.position='relative';if(Prototype.Browser.Opera){element.style.top=0;element.style.left=0;}}
return element;},undoPositioned:function(element){element=$(element);if(element._madePositioned){element._madePositioned=undefined;element.style.position=element.style.top=element.style.left=element.style.bottom=element.style.right='';}
return element;},makeClipping:function(element){element=$(element);if(element._overflow)return element;element._overflow=Element.getStyle(element,'overflow')||'auto';if(element._overflow!=='hidden')
element.style.overflow='hidden';return element;},undoClipping:function(element){element=$(element);if(!element._overflow)return element;element.style.overflow=element._overflow=='auto'?'':element._overflow;element._overflow=null;return element;},cumulativeOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;}while(element);return Element._returnOffset(valueL,valueT);},positionedOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;if(element){if(element.tagName.toUpperCase()=='BODY')break;var p=Element.getStyle(element,'position');if(p!=='static')break;}}while(element);return Element._returnOffset(valueL,valueT);},absolutize:function(element){element=$(element);if(Element.getStyle(element,'position')=='absolute')return element;var offsets=Element.positionedOffset(element);var top=offsets[1];var left=offsets[0];var width=element.clientWidth;var height=element.clientHeight;element._originalLeft=left-parseFloat(element.style.left||0);element._originalTop=top-parseFloat(element.style.top||0);element._originalWidth=element.style.width;element._originalHeight=element.style.height;element.style.position='absolute';element.style.top=top+'px';element.style.left=left+'px';element.style.width=width+'px';element.style.height=height+'px';return element;},relativize:function(element){element=$(element);if(Element.getStyle(element,'position')=='relative')return element;element.style.position='relative';var top=parseFloat(element.style.top||0)-(element._originalTop||0);var left=parseFloat(element.style.left||0)-(element._originalLeft||0);element.style.top=top+'px';element.style.left=left+'px';element.style.height=element._originalHeight;element.style.width=element._originalWidth;return element;},cumulativeScrollOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.scrollTop||0;valueL+=element.scrollLeft||0;element=element.parentNode;}while(element);return Element._returnOffset(valueL,valueT);},getOffsetParent:function(element){if(element.offsetParent)return $(element.offsetParent);if(element==document.body)return $(element);while((element=element.parentNode)&&element!=document.body)
if(Element.getStyle(element,'position')!='static')
return $(element);return $(document.body);},viewportOffset:function(forElement){var valueT=0,valueL=0;var element=forElement;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body&&Element.getStyle(element,'position')=='absolute')break;}while(element=element.offsetParent);element=forElement;do{if(!Prototype.Browser.Opera||(element.tagName&&(element.tagName.toUpperCase()=='BODY'))){valueT-=element.scrollTop||0;valueL-=element.scrollLeft||0;}}while(element=element.parentNode);return Element._returnOffset(valueL,valueT);},clonePosition:function(element,source){var options=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});source=$(source);var p=Element.viewportOffset(source);element=$(element);var delta=[0,0];var parent=null;if(Element.getStyle(element,'position')=='absolute'){parent=Element.getOffsetParent(element);delta=Element.viewportOffset(parent);}
if(parent==document.body){delta[0]-=document.body.offsetLeft;delta[1]-=document.body.offsetTop;}
if(options.setLeft)element.style.left=(p[0]-delta[0]+options.offsetLeft)+'px';if(options.setTop)element.style.top=(p[1]-delta[1]+options.offsetTop)+'px';if(options.setWidth)element.style.width=source.offsetWidth+'px';if(options.setHeight)element.style.height=source.offsetHeight+'px';return element;}};Object.extend(Element.Methods,{getElementsBySelector:Element.Methods.select,childElements:Element.Methods.immediateDescendants});Element._attributeTranslations={write:{names:{className:'class',htmlFor:'for'},values:{}}};if(Prototype.Browser.Opera){Element.Methods.getStyle=Element.Methods.getStyle.wrap(function(proceed,element,style){switch(style){case'left':case'top':case'right':case'bottom':if(proceed(element,'position')==='static')return null;case'height':case'width':if(!Element.visible(element))return null;var dim=parseInt(proceed(element,style),10);if(dim!==element['offset'+style.capitalize()])
return dim+'px';var properties;if(style==='height'){properties=['border-top-width','padding-top','padding-bottom','border-bottom-width'];}
else{properties=['border-left-width','padding-left','padding-right','border-right-width'];}
return properties.inject(dim,function(memo,property){var val=proceed(element,property);return val===null?memo:memo-parseInt(val,10);})+'px';default:return proceed(element,style);}});Element.Methods.readAttribute=Element.Methods.readAttribute.wrap(function(proceed,element,attribute){if(attribute==='title')return element.title;return proceed(element,attribute);});}
else if(Prototype.Browser.IE){Element.Methods.getOffsetParent=Element.Methods.getOffsetParent.wrap(function(proceed,element){element=$(element);try{element.offsetParent}
catch(e){return $(document.body)}
var position=element.getStyle('position');if(position!=='static')return proceed(element);element.setStyle({position:'relative'});var value=proceed(element);element.setStyle({position:position});return value;});$w('positionedOffset viewportOffset').each(function(method){Element.Methods[method]=Element.Methods[method].wrap(function(proceed,element){element=$(element);try{element.offsetParent}
catch(e){return Element._returnOffset(0,0)}
var position=element.getStyle('position');if(position!=='static')return proceed(element);var offsetParent=element.getOffsetParent();if(offsetParent&&offsetParent.getStyle('position')==='fixed')
offsetParent.setStyle({zoom:1});element.setStyle({position:'relative'});var value=proceed(element);element.setStyle({position:position});return value;});});Element.Methods.cumulativeOffset=Element.Methods.cumulativeOffset.wrap(function(proceed,element){try{element.offsetParent}
catch(e){return Element._returnOffset(0,0)}
return proceed(element);});Element.Methods.getStyle=function(element,style){element=$(element);style=(style=='float'||style=='cssFloat')?'styleFloat':style.camelize();var value=element.style[style];if(!value&&element.currentStyle)value=element.currentStyle[style];if(style=='opacity'){if(value=(element.getStyle('filter')||'').match(/alpha\(opacity=(.*)\)/))
if(value[1])return parseFloat(value[1])/100;return 1.0;}
if(value=='auto'){if((style=='width'||style=='height')&&(element.getStyle('display')!='none'))
return element['offset'+style.capitalize()]+'px';return null;}
return value;};Element.Methods.setOpacity=function(element,value){function stripAlpha(filter){return filter.replace(/alpha\([^\)]*\)/gi,'');}
element=$(element);var currentStyle=element.currentStyle;if((currentStyle&&!currentStyle.hasLayout)||(!currentStyle&&element.style.zoom=='normal'))
element.style.zoom=1;var filter=element.getStyle('filter'),style=element.style;if(value==1||value===''){(filter=stripAlpha(filter))?style.filter=filter:style.removeAttribute('filter');return element;}else if(value<0.00001)value=0;style.filter=stripAlpha(filter)+'alpha(opacity='+(value*100)+')';return element;};Element._attributeTranslations=(function(){var classProp='className';var forProp='for';var el=document.createElement('div');el.setAttribute(classProp,'x');if(el.className!=='x'){el.setAttribute('class','x');if(el.className==='x'){classProp='class';}}
el=null;el=document.createElement('label');el.setAttribute(forProp,'x');if(el.htmlFor!=='x'){el.setAttribute('htmlFor','x');if(el.htmlFor==='x'){forProp='htmlFor';}}
el=null;return{read:{names:{'class':classProp,'className':classProp,'for':forProp,'htmlFor':forProp},values:{_getAttr:function(element,attribute){return element.getAttribute(attribute);},_getAttr2:function(element,attribute){return element.getAttribute(attribute,2);},_getAttrNode:function(element,attribute){var node=element.getAttributeNode(attribute);return node?node.value:"";},_getEv:(function(){var el=document.createElement('div');el.onclick=Prototype.emptyFunction;var value=el.getAttribute('onclick');var f;if(String(value).indexOf('{')>-1){f=function(element,attribute){attribute=element.getAttribute(attribute);if(!attribute)return null;attribute=attribute.toString();attribute=attribute.split('{')[1];attribute=attribute.split('}')[0];return attribute.strip();};}
else if(value===''){f=function(element,attribute){attribute=element.getAttribute(attribute);if(!attribute)return null;return attribute.strip();};}
el=null;return f;})(),_flag:function(element,attribute){return $(element).hasAttribute(attribute)?attribute:null;},style:function(element){return element.style.cssText.toLowerCase();},title:function(element){return element.title;}}}}})();Element._attributeTranslations.write={names:Object.extend({cellpadding:'cellPadding',cellspacing:'cellSpacing'},Element._attributeTranslations.read.names),values:{checked:function(element,value){element.checked=!!value;},style:function(element,value){element.style.cssText=value?value:'';}}};Element._attributeTranslations.has={};$w('colSpan rowSpan vAlign dateTime accessKey tabIndex '+'encType maxLength readOnly longDesc frameBorder').each(function(attr){Element._attributeTranslations.write.names[attr.toLowerCase()]=attr;Element._attributeTranslations.has[attr.toLowerCase()]=attr;});(function(v){Object.extend(v,{href:v._getAttr2,src:v._getAttr2,type:v._getAttr,action:v._getAttrNode,disabled:v._flag,checked:v._flag,readonly:v._flag,multiple:v._flag,onload:v._getEv,onunload:v._getEv,onclick:v._getEv,ondblclick:v._getEv,onmousedown:v._getEv,onmouseup:v._getEv,onmouseover:v._getEv,onmousemove:v._getEv,onmouseout:v._getEv,onfocus:v._getEv,onblur:v._getEv,onkeypress:v._getEv,onkeydown:v._getEv,onkeyup:v._getEv,onsubmit:v._getEv,onreset:v._getEv,onselect:v._getEv,onchange:v._getEv});})(Element._attributeTranslations.read.values);if(Prototype.BrowserFeatures.ElementExtensions){(function(){function _descendants(element){var nodes=element.getElementsByTagName('*'),results=[];for(var i=0,node;node=nodes[i];i++)
if(node.tagName!=="!")
results.push(node);return results;}
Element.Methods.down=function(element,expression,index){element=$(element);if(arguments.length==1)return element.firstDescendant();return Object.isNumber(expression)?_descendants(element)[expression]:Element.select(element,expression)[index||0];}})();}}
else if(Prototype.Browser.Gecko&&/rv:1\.8\.0/.test(navigator.userAgent)){Element.Methods.setOpacity=function(element,value){element=$(element);element.style.opacity=(value==1)?0.999999:(value==='')?'':(value<0.00001)?0:value;return element;};}
else if(Prototype.Browser.WebKit){Element.Methods.setOpacity=function(element,value){element=$(element);element.style.opacity=(value==1||value==='')?'':(value<0.00001)?0:value;if(value==1)
if(element.tagName.toUpperCase()=='IMG'&&element.width){element.width++;element.width--;}else try{var n=document.createTextNode(' ');element.appendChild(n);element.removeChild(n);}catch(e){}
return element;};Element.Methods.cumulativeOffset=function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body)
if(Element.getStyle(element,'position')=='absolute')break;element=element.offsetParent;}while(element);return Element._returnOffset(valueL,valueT);};}
if('outerHTML'in document.documentElement){Element.Methods.replace=function(element,content){element=$(element);if(content&&content.toElement)content=content.toElement();if(Object.isElement(content)){element.parentNode.replaceChild(content,element);return element;}
content=Object.toHTML(content);var parent=element.parentNode,tagName=parent.tagName.toUpperCase();if(Element._insertionTranslations.tags[tagName]){var nextSibling=element.next();var fragments=Element._getContentFromAnonymousElement(tagName,content.stripScripts());parent.removeChild(element);if(nextSibling)
fragments.each(function(node){parent.insertBefore(node,nextSibling)});else
fragments.each(function(node){parent.appendChild(node)});}
else element.outerHTML=content.stripScripts();content.evalScripts.bind(content).defer();return element;};}
Element._returnOffset=function(l,t){var result=[l,t];result.left=l;result.top=t;return result;};Element._getContentFromAnonymousElement=function(tagName,html){var div=new Element('div'),t=Element._insertionTranslations.tags[tagName];if(t){div.innerHTML=t[0]+html+t[1];t[2].times(function(){div=div.firstChild});}else div.innerHTML=html;return $A(div.childNodes);};Element._insertionTranslations={before:function(element,node){element.parentNode.insertBefore(node,element);},top:function(element,node){element.insertBefore(node,element.firstChild);},bottom:function(element,node){element.appendChild(node);},after:function(element,node){element.parentNode.insertBefore(node,element.nextSibling);},tags:{TABLE:['<table>','</table>',1],TBODY:['<table><tbody>','</tbody></table>',2],TR:['<table><tbody><tr>','</tr></tbody></table>',3],TD:['<table><tbody><tr><td>','</td></tr></tbody></table>',4],SELECT:['<select>','</select>',1]}};(function(){var tags=Element._insertionTranslations.tags;Object.extend(tags,{THEAD:tags.TBODY,TFOOT:tags.TBODY,TH:tags.TD});})();Element.Methods.Simulated={hasAttribute:function(element,attribute){attribute=Element._attributeTranslations.has[attribute]||attribute;var node=$(element).getAttributeNode(attribute);return!!(node&&node.specified);}};Element.Methods.ByTag={};Object.extend(Element,Element.Methods);(function(div){if(!Prototype.BrowserFeatures.ElementExtensions&&div['__proto__']){window.HTMLElement={};window.HTMLElement.prototype=div['__proto__'];Prototype.BrowserFeatures.ElementExtensions=true;}
div=null;})(document.createElement('div'))
Element.extend=(function(){function checkDeficiency(tagName){if(typeof window.Element!='undefined'){var proto=window.Element.prototype;if(proto){var id='_'+(Math.random()+'').slice(2);var el=document.createElement(tagName);proto[id]='x';var isBuggy=(el[id]!=='x');delete proto[id];el=null;return isBuggy;}}
return false;}
function extendElementWith(element,methods){for(var property in methods){var value=methods[property];if(Object.isFunction(value)&&!(property in element))
element[property]=value.methodize();}}
var HTMLOBJECTELEMENT_PROTOTYPE_BUGGY=checkDeficiency('object');if(Prototype.BrowserFeatures.SpecificElementExtensions){if(HTMLOBJECTELEMENT_PROTOTYPE_BUGGY){return function(element){if(element&&typeof element._extendedByPrototype=='undefined'){var t=element.tagName;if(t&&(/^(?:object|applet|embed)$/i.test(t))){extendElementWith(element,Element.Methods);extendElementWith(element,Element.Methods.Simulated);extendElementWith(element,Element.Methods.ByTag[t.toUpperCase()]);}}
return element;}}
return Prototype.K;}
var Methods={},ByTag=Element.Methods.ByTag;var extend=Object.extend(function(element){if(!element||typeof element._extendedByPrototype!='undefined'||element.nodeType!=1||element==window)return element;var methods=Object.clone(Methods),tagName=element.tagName.toUpperCase();if(ByTag[tagName])Object.extend(methods,ByTag[tagName]);extendElementWith(element,methods);element._extendedByPrototype=Prototype.emptyFunction;return element;},{refresh:function(){if(!Prototype.BrowserFeatures.ElementExtensions){Object.extend(Methods,Element.Methods);Object.extend(Methods,Element.Methods.Simulated);}}});extend.refresh();return extend;})();Element.hasAttribute=function(element,attribute){if(element.hasAttribute)return element.hasAttribute(attribute);return Element.Methods.Simulated.hasAttribute(element,attribute);};Element.addMethods=function(methods){var F=Prototype.BrowserFeatures,T=Element.Methods.ByTag;if(!methods){Object.extend(Form,Form.Methods);Object.extend(Form.Element,Form.Element.Methods);Object.extend(Element.Methods.ByTag,{"FORM":Object.clone(Form.Methods),"INPUT":Object.clone(Form.Element.Methods),"SELECT":Object.clone(Form.Element.Methods),"TEXTAREA":Object.clone(Form.Element.Methods)});}
if(arguments.length==2){var tagName=methods;methods=arguments[1];}
if(!tagName)Object.extend(Element.Methods,methods||{});else{if(Object.isArray(tagName))tagName.each(extend);else extend(tagName);}
function extend(tagName){tagName=tagName.toUpperCase();if(!Element.Methods.ByTag[tagName])
Element.Methods.ByTag[tagName]={};Object.extend(Element.Methods.ByTag[tagName],methods);}
function copy(methods,destination,onlyIfAbsent){onlyIfAbsent=onlyIfAbsent||false;for(var property in methods){var value=methods[property];if(!Object.isFunction(value))continue;if(!onlyIfAbsent||!(property in destination))
destination[property]=value.methodize();}}
function findDOMClass(tagName){var klass;var trans={"OPTGROUP":"OptGroup","TEXTAREA":"TextArea","P":"Paragraph","FIELDSET":"FieldSet","UL":"UList","OL":"OList","DL":"DList","DIR":"Directory","H1":"Heading","H2":"Heading","H3":"Heading","H4":"Heading","H5":"Heading","H6":"Heading","Q":"Quote","INS":"Mod","DEL":"Mod","A":"Anchor","IMG":"Image","CAPTION":"TableCaption","COL":"TableCol","COLGROUP":"TableCol","THEAD":"TableSection","TFOOT":"TableSection","TBODY":"TableSection","TR":"TableRow","TH":"TableCell","TD":"TableCell","FRAMESET":"FrameSet","IFRAME":"IFrame"};if(trans[tagName])klass='HTML'+trans[tagName]+'Element';if(window[klass])return window[klass];klass='HTML'+tagName+'Element';if(window[klass])return window[klass];klass='HTML'+tagName.capitalize()+'Element';if(window[klass])return window[klass];var element=document.createElement(tagName);var proto=element['__proto__']||element.constructor.prototype;element=null;return proto;}
var elementPrototype=window.HTMLElement?HTMLElement.prototype:Element.prototype;if(F.ElementExtensions){copy(Element.Methods,elementPrototype);copy(Element.Methods.Simulated,elementPrototype,true);}
if(F.SpecificElementExtensions){for(var tag in Element.Methods.ByTag){var klass=findDOMClass(tag);if(Object.isUndefined(klass))continue;copy(T[tag],klass.prototype);}}
Object.extend(Element,Element.Methods);delete Element.ByTag;if(Element.extend.refresh)Element.extend.refresh();Element.cache={};};document.viewport={getDimensions:function(){return{width:this.getWidth(),height:this.getHeight()};},getScrollOffsets:function(){return Element._returnOffset(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft,window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop);}};(function(viewport){var B=Prototype.Browser,doc=document,element,property={};function getRootElement(){if(B.WebKit&&!doc.evaluate)
return document;if(B.Opera&&window.parseFloat(window.opera.version())<9.5)
return document.body;return document.documentElement;}
function define(D){if(!element)element=getRootElement();property[D]='client'+D;viewport['get'+D]=function(){return element[property[D]]};return viewport['get'+D]();}
viewport.getWidth=define.curry('Width');viewport.getHeight=define.curry('Height');})(document.viewport);Element.Storage={UID:1};Element.addMethods({getStorage:function(element){if(!(element=$(element)))return;var uid;if(element===window){uid=0;}else{if(typeof element._prototypeUID==="undefined")
element._prototypeUID=[Element.Storage.UID++];uid=element._prototypeUID[0];}
if(!Element.Storage[uid])
Element.Storage[uid]=$H();return Element.Storage[uid];},store:function(element,key,value){if(!(element=$(element)))return;if(arguments.length===2){Element.getStorage(element).update(key);}else{Element.getStorage(element).set(key,value);}
return element;},retrieve:function(element,key,defaultValue){if(!(element=$(element)))return;var hash=Element.getStorage(element),value=hash.get(key);if(Object.isUndefined(value)){hash.set(key,defaultValue);value=defaultValue;}
return value;},clone:function(element,deep){if(!(element=$(element)))return;var clone=element.cloneNode(deep);clone._prototypeUID=void 0;if(deep){var descendants=Element.select(clone,'*'),i=descendants.length;while(i--){descendants[i]._prototypeUID=void 0;}}
return Element.extend(clone);}});var Selector=Class.create({initialize:function(expression){this.expression=expression.strip();if(this.shouldUseSelectorsAPI()){this.mode='selectorsAPI';}else if(this.shouldUseXPath()){this.mode='xpath';this.compileXPathMatcher();}else{this.mode="normal";this.compileMatcher();}},shouldUseXPath:(function(){var IS_DESCENDANT_SELECTOR_BUGGY=(function(){var isBuggy=false;if(document.evaluate&&window.XPathResult){var el=document.createElement('div');el.innerHTML='<ul><li></li></ul><div><ul><li></li></ul></div>';var xpath=".//*[local-name()='ul' or local-name()='UL']"+"//*[local-name()='li' or local-name()='LI']";var result=document.evaluate(xpath,el,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);isBuggy=(result.snapshotLength!==2);el=null;}
return isBuggy;})();return function(){if(!Prototype.BrowserFeatures.XPath)return false;var e=this.expression;if(Prototype.Browser.WebKit&&(e.include("-of-type")||e.include(":empty")))
return false;if((/(\[[\w-]*?:|:checked)/).test(e))
return false;if(IS_DESCENDANT_SELECTOR_BUGGY)return false;return true;}})(),shouldUseSelectorsAPI:function(){if(!Prototype.BrowserFeatures.SelectorsAPI)return false;if(Selector.CASE_INSENSITIVE_CLASS_NAMES)return false;if(!Selector._div)Selector._div=new Element('div');try{Selector._div.querySelector(this.expression);}catch(e){return false;}
return true;},compileMatcher:function(){var e=this.expression,ps=Selector.patterns,h=Selector.handlers,c=Selector.criteria,le,p,m,len=ps.length,name;if(Selector._cache[e]){this.matcher=Selector._cache[e];return;}
this.matcher=["this.matcher = function(root) {","var r = root, h = Selector.handlers, c = false, n;"];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i=0;i<len;i++){p=ps[i].re;name=ps[i].name;if(m=e.match(p)){this.matcher.push(Object.isFunction(c[name])?c[name](m):new Template(c[name]).evaluate(m));e=e.replace(m[0],'');break;}}}
this.matcher.push("return h.unique(n);\n}");eval(this.matcher.join('\n'));Selector._cache[this.expression]=this.matcher;},compileXPathMatcher:function(){var e=this.expression,ps=Selector.patterns,x=Selector.xpath,le,m,len=ps.length,name;if(Selector._cache[e]){this.xpath=Selector._cache[e];return;}
this.matcher=['.//*'];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i=0;i<len;i++){name=ps[i].name;if(m=e.match(ps[i].re)){this.matcher.push(Object.isFunction(x[name])?x[name](m):new Template(x[name]).evaluate(m));e=e.replace(m[0],'');break;}}}
this.xpath=this.matcher.join('');Selector._cache[this.expression]=this.xpath;},findElements:function(root){root=root||document;var e=this.expression,results;switch(this.mode){case'selectorsAPI':if(root!==document){var oldId=root.id,id=$(root).identify();id=id.replace(/([\.:])/g,"\\$1");e="#"+id+" "+e;}
results=$A(root.querySelectorAll(e)).map(Element.extend);root.id=oldId;return results;case'xpath':return document._getElementsByXPath(this.xpath,root);default:return this.matcher(root);}},match:function(element){this.tokens=[];var e=this.expression,ps=Selector.patterns,as=Selector.assertions;var le,p,m,len=ps.length,name;while(e&&le!==e&&(/\S/).test(e)){le=e;for(var i=0;i<len;i++){p=ps[i].re;name=ps[i].name;if(m=e.match(p)){if(as[name]){this.tokens.push([name,Object.clone(m)]);e=e.replace(m[0],'');}else{return this.findElements(document).include(element);}}}}
var match=true,name,matches;for(var i=0,token;token=this.tokens[i];i++){name=token[0],matches=token[1];if(!Selector.assertions[name](element,matches)){match=false;break;}}
return match;},toString:function(){return this.expression;},inspect:function(){return"#<Selector:"+this.expression.inspect()+">";}});if(Prototype.BrowserFeatures.SelectorsAPI&&document.compatMode==='BackCompat'){Selector.CASE_INSENSITIVE_CLASS_NAMES=(function(){var div=document.createElement('div'),span=document.createElement('span');div.id="prototype_test_id";span.className='Test';div.appendChild(span);var isIgnored=(div.querySelector('#prototype_test_id .test')!==null);div=span=null;return isIgnored;})();}
Object.extend(Selector,{_cache:{},xpath:{descendant:"//*",child:"/*",adjacent:"/following-sibling::*[1]",laterSibling:'/following-sibling::*',tagName:function(m){if(m[1]=='*')return'';return"[local-name()='"+m[1].toLowerCase()+"' or local-name()='"+m[1].toUpperCase()+"']";},className:"[contains(concat(' ', @class, ' '), ' #{1} ')]",id:"[@id='#{1}']",attrPresence:function(m){m[1]=m[1].toLowerCase();return new Template("[@#{1}]").evaluate(m);},attr:function(m){m[1]=m[1].toLowerCase();m[3]=m[5]||m[6];return new Template(Selector.xpath.operators[m[2]]).evaluate(m);},pseudo:function(m){var h=Selector.xpath.pseudos[m[1]];if(!h)return'';if(Object.isFunction(h))return h(m);return new Template(Selector.xpath.pseudos[m[1]]).evaluate(m);},operators:{'=':"[@#{1}='#{3}']",'!=':"[@#{1}!='#{3}']",'^=':"[starts-with(@#{1}, '#{3}')]",'$=':"[substring(@#{1}, (string-length(@#{1}) - string-length('#{3}') + 1))='#{3}']",'*=':"[contains(@#{1}, '#{3}')]",'~=':"[contains(concat(' ', @#{1}, ' '), ' #{3} ')]",'|=':"[contains(concat('-', @#{1}, '-'), '-#{3}-')]"},pseudos:{'first-child':'[not(preceding-sibling::*)]','last-child':'[not(following-sibling::*)]','only-child':'[not(preceding-sibling::* or following-sibling::*)]','empty':"[count(*) = 0 and (count(text()) = 0)]",'checked':"[@checked]",'disabled':"[(@disabled) and (@type!='hidden')]",'enabled':"[not(@disabled) and (@type!='hidden')]",'not':function(m){var e=m[6],p=Selector.patterns,x=Selector.xpath,le,v,len=p.length,name;var exclusion=[];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i=0;i<len;i++){name=p[i].name
if(m=e.match(p[i].re)){v=Object.isFunction(x[name])?x[name](m):new Template(x[name]).evaluate(m);exclusion.push("("+v.substring(1,v.length-1)+")");e=e.replace(m[0],'');break;}}}
return"[not("+exclusion.join(" and ")+")]";},'nth-child':function(m){return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ",m);},'nth-last-child':function(m){return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ",m);},'nth-of-type':function(m){return Selector.xpath.pseudos.nth("position() ",m);},'nth-last-of-type':function(m){return Selector.xpath.pseudos.nth("(last() + 1 - position()) ",m);},'first-of-type':function(m){m[6]="1";return Selector.xpath.pseudos['nth-of-type'](m);},'last-of-type':function(m){m[6]="1";return Selector.xpath.pseudos['nth-last-of-type'](m);},'only-of-type':function(m){var p=Selector.xpath.pseudos;return p['first-of-type'](m)+p['last-of-type'](m);},nth:function(fragment,m){var mm,formula=m[6],predicate;if(formula=='even')formula='2n+0';if(formula=='odd')formula='2n+1';if(mm=formula.match(/^(\d+)$/))
return'['+fragment+"= "+mm[1]+']';if(mm=formula.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(mm[1]=="-")mm[1]=-1;var a=mm[1]?Number(mm[1]):1;var b=mm[2]?Number(mm[2]):0;predicate="[((#{fragment} - #{b}) mod #{a} = 0) and "+"((#{fragment} - #{b}) div #{a} >= 0)]";return new Template(predicate).evaluate({fragment:fragment,a:a,b:b});}}}},criteria:{tagName:'n = h.tagName(n, r, "#{1}", c);      c = false;',className:'n = h.className(n, r, "#{1}", c);    c = false;',id:'n = h.id(n, r, "#{1}", c);           c = false;',attrPresence:'n = h.attrPresence(n, r, "#{1}", c); c = false;',attr:function(m){m[3]=(m[5]||m[6]);return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}", c); c = false;').evaluate(m);},pseudo:function(m){if(m[6])m[6]=m[6].replace(/"/g,'\\"');return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(m);},descendant:'c = "descendant";',child:'c = "child";',adjacent:'c = "adjacent";',laterSibling:'c = "laterSibling";'},patterns:[{name:'laterSibling',re:/^\s*~\s*/},{name:'child',re:/^\s*>\s*/},{name:'adjacent',re:/^\s*\+\s*/},{name:'descendant',re:/^\s/},{name:'tagName',re:/^\s*(\*|[\w\-]+)(\b|$)?/},{name:'id',re:/^#([\w\-\*]+)(\b|$)/},{name:'className',re:/^\.([\w\-\*]+)(\b|$)/},{name:'pseudo',re:/^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis)abled|not)(\((.*?)\))?(\b|$|(?=\s|[:+~>]))/},{name:'attrPresence',re:/^\[((?:[\w-]+:)?[\w-]+)\]/},{name:'attr',re:/\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\4]*?)\4|([^'"][^\]]*?)))?\]/}],assertions:{tagName:function(element,matches){return matches[1].toUpperCase()==element.tagName.toUpperCase();},className:function(element,matches){return Element.hasClassName(element,matches[1]);},id:function(element,matches){return element.id===matches[1];},attrPresence:function(element,matches){return Element.hasAttribute(element,matches[1]);},attr:function(element,matches){var nodeValue=Element.readAttribute(element,matches[1]);return nodeValue&&Selector.operators[matches[2]](nodeValue,matches[5]||matches[6]);}},handlers:{concat:function(a,b){for(var i=0,node;node=b[i];i++)
a.push(node);return a;},mark:function(nodes){var _true=Prototype.emptyFunction;for(var i=0,node;node=nodes[i];i++)
node._countedByPrototype=_true;return nodes;},unmark:(function(){var PROPERTIES_ATTRIBUTES_MAP=(function(){var el=document.createElement('div'),isBuggy=false,propName='_countedByPrototype',value='x'
el[propName]=value;isBuggy=(el.getAttribute(propName)===value);el=null;return isBuggy;})();return PROPERTIES_ATTRIBUTES_MAP?function(nodes){for(var i=0,node;node=nodes[i];i++)
node.removeAttribute('_countedByPrototype');return nodes;}:function(nodes){for(var i=0,node;node=nodes[i];i++)
node._countedByPrototype=void 0;return nodes;}})(),index:function(parentNode,reverse,ofType){parentNode._countedByPrototype=Prototype.emptyFunction;if(reverse){for(var nodes=parentNode.childNodes,i=nodes.length-1,j=1;i>=0;i--){var node=nodes[i];if(node.nodeType==1&&(!ofType||node._countedByPrototype))node.nodeIndex=j++;}}else{for(var i=0,j=1,nodes=parentNode.childNodes;node=nodes[i];i++)
if(node.nodeType==1&&(!ofType||node._countedByPrototype))node.nodeIndex=j++;}},unique:function(nodes){if(nodes.length==0)return nodes;var results=[],n;for(var i=0,l=nodes.length;i<l;i++)
if(typeof(n=nodes[i])._countedByPrototype=='undefined'){n._countedByPrototype=Prototype.emptyFunction;results.push(Element.extend(n));}
return Selector.handlers.unmark(results);},descendant:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++)
h.concat(results,node.getElementsByTagName('*'));return results;},child:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++){for(var j=0,child;child=node.childNodes[j];j++)
if(child.nodeType==1&&child.tagName!='!')results.push(child);}
return results;},adjacent:function(nodes){for(var i=0,results=[],node;node=nodes[i];i++){var next=this.nextElementSibling(node);if(next)results.push(next);}
return results;},laterSibling:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++)
h.concat(results,Element.nextSiblings(node));return results;},nextElementSibling:function(node){while(node=node.nextSibling)
if(node.nodeType==1)return node;return null;},previousElementSibling:function(node){while(node=node.previousSibling)
if(node.nodeType==1)return node;return null;},tagName:function(nodes,root,tagName,combinator){var uTagName=tagName.toUpperCase();var results=[],h=Selector.handlers;if(nodes){if(combinator){if(combinator=="descendant"){for(var i=0,node;node=nodes[i];i++)
h.concat(results,node.getElementsByTagName(tagName));return results;}else nodes=this[combinator](nodes);if(tagName=="*")return nodes;}
for(var i=0,node;node=nodes[i];i++)
if(node.tagName.toUpperCase()===uTagName)results.push(node);return results;}else return root.getElementsByTagName(tagName);},id:function(nodes,root,id,combinator){var targetNode=$(id),h=Selector.handlers;if(root==document){if(!targetNode)return[];if(!nodes)return[targetNode];}else{if(!root.sourceIndex||root.sourceIndex<1){var nodes=root.getElementsByTagName('*');for(var j=0,node;node=nodes[j];j++){if(node.id===id)return[node];}}}
if(nodes){if(combinator){if(combinator=='child'){for(var i=0,node;node=nodes[i];i++)
if(targetNode.parentNode==node)return[targetNode];}else if(combinator=='descendant'){for(var i=0,node;node=nodes[i];i++)
if(Element.descendantOf(targetNode,node))return[targetNode];}else if(combinator=='adjacent'){for(var i=0,node;node=nodes[i];i++)
if(Selector.handlers.previousElementSibling(targetNode)==node)
return[targetNode];}else nodes=h[combinator](nodes);}
for(var i=0,node;node=nodes[i];i++)
if(node==targetNode)return[targetNode];return[];}
return(targetNode&&Element.descendantOf(targetNode,root))?[targetNode]:[];},className:function(nodes,root,className,combinator){if(nodes&&combinator)nodes=this[combinator](nodes);return Selector.handlers.byClassName(nodes,root,className);},byClassName:function(nodes,root,className){if(!nodes)nodes=Selector.handlers.descendant([root]);var needle=' '+className+' ';for(var i=0,results=[],node,nodeClassName;node=nodes[i];i++){nodeClassName=node.className;if(nodeClassName.length==0)continue;if(nodeClassName==className||(' '+nodeClassName+' ').include(needle))
results.push(node);}
return results;},attrPresence:function(nodes,root,attr,combinator){if(!nodes)nodes=root.getElementsByTagName("*");if(nodes&&combinator)nodes=this[combinator](nodes);var results=[];for(var i=0,node;node=nodes[i];i++)
if(Element.hasAttribute(node,attr))results.push(node);return results;},attr:function(nodes,root,attr,value,operator,combinator){if(!nodes)nodes=root.getElementsByTagName("*");if(nodes&&combinator)nodes=this[combinator](nodes);var handler=Selector.operators[operator],results=[];for(var i=0,node;node=nodes[i];i++){var nodeValue=Element.readAttribute(node,attr);if(nodeValue===null)continue;if(handler(nodeValue,value))results.push(node);}
return results;},pseudo:function(nodes,name,value,root,combinator){if(nodes&&combinator)nodes=this[combinator](nodes);if(!nodes)nodes=root.getElementsByTagName("*");return Selector.pseudos[name](nodes,value,root);}},pseudos:{'first-child':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(Selector.handlers.previousElementSibling(node))continue;results.push(node);}
return results;},'last-child':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(Selector.handlers.nextElementSibling(node))continue;results.push(node);}
return results;},'only-child':function(nodes,value,root){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++)
if(!h.previousElementSibling(node)&&!h.nextElementSibling(node))
results.push(node);return results;},'nth-child':function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root);},'nth-last-child':function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,true);},'nth-of-type':function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,false,true);},'nth-last-of-type':function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,true,true);},'first-of-type':function(nodes,formula,root){return Selector.pseudos.nth(nodes,"1",root,false,true);},'last-of-type':function(nodes,formula,root){return Selector.pseudos.nth(nodes,"1",root,true,true);},'only-of-type':function(nodes,formula,root){var p=Selector.pseudos;return p['last-of-type'](p['first-of-type'](nodes,formula,root),formula,root);},getIndices:function(a,b,total){if(a==0)return b>0?[b]:[];return $R(1,total).inject([],function(memo,i){if(0==(i-b)%a&&(i-b)/a>=0)memo.push(i);return memo;});},nth:function(nodes,formula,root,reverse,ofType){if(nodes.length==0)return[];if(formula=='even')formula='2n+0';if(formula=='odd')formula='2n+1';var h=Selector.handlers,results=[],indexed=[],m;h.mark(nodes);for(var i=0,node;node=nodes[i];i++){if(!node.parentNode._countedByPrototype){h.index(node.parentNode,reverse,ofType);indexed.push(node.parentNode);}}
if(formula.match(/^\d+$/)){formula=Number(formula);for(var i=0,node;node=nodes[i];i++)
if(node.nodeIndex==formula)results.push(node);}else if(m=formula.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(m[1]=="-")m[1]=-1;var a=m[1]?Number(m[1]):1;var b=m[2]?Number(m[2]):0;var indices=Selector.pseudos.getIndices(a,b,nodes.length);for(var i=0,node,l=indices.length;node=nodes[i];i++){for(var j=0;j<l;j++)
if(node.nodeIndex==indices[j])results.push(node);}}
h.unmark(nodes);h.unmark(indexed);return results;},'empty':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(node.tagName=='!'||node.firstChild)continue;results.push(node);}
return results;},'not':function(nodes,selector,root){var h=Selector.handlers,selectorType,m;var exclusions=new Selector(selector).findElements(root);h.mark(exclusions);for(var i=0,results=[],node;node=nodes[i];i++)
if(!node._countedByPrototype)results.push(node);h.unmark(exclusions);return results;},'enabled':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++)
if(!node.disabled&&(!node.type||node.type!=='hidden'))
results.push(node);return results;},'disabled':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++)
if(node.disabled)results.push(node);return results;},'checked':function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++)
if(node.checked)results.push(node);return results;}},operators:{'=':function(nv,v){return nv==v;},'!=':function(nv,v){return nv!=v;},'^=':function(nv,v){return nv==v||nv&&nv.startsWith(v);},'$=':function(nv,v){return nv==v||nv&&nv.endsWith(v);},'*=':function(nv,v){return nv==v||nv&&nv.include(v);},'~=':function(nv,v){return(' '+nv+' ').include(' '+v+' ');},'|=':function(nv,v){return('-'+(nv||"").toUpperCase()+'-').include('-'+(v||"").toUpperCase()+'-');}},split:function(expression){var expressions=[];expression.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/,function(m){expressions.push(m[1].strip());});return expressions;},matchElements:function(elements,expression){var matches=$$(expression),h=Selector.handlers;h.mark(matches);for(var i=0,results=[],element;element=elements[i];i++)
if(element._countedByPrototype)results.push(element);h.unmark(matches);return results;},findElement:function(elements,expression,index){if(Object.isNumber(expression)){index=expression;expression=false;}
return Selector.matchElements(elements,expression||'*')[index||0];},findChildElements:function(element,expressions){expressions=Selector.split(expressions.join(','));var results=[],h=Selector.handlers;for(var i=0,l=expressions.length,selector;i<l;i++){selector=new Selector(expressions[i].strip());h.concat(results,selector.findElements(element));}
return(l>1)?h.unique(results):results;}});if(Prototype.Browser.IE){Object.extend(Selector.handlers,{concat:function(a,b){for(var i=0,node;node=b[i];i++)
if(node.tagName!=="!")a.push(node);return a;}});}
function $$(){return Selector.findChildElements(document,$A(arguments));}
var Form={reset:function(form){form=$(form);form.reset();return form;},serializeElements:function(elements,options){if(typeof options!='object')options={hash:!!options};else if(Object.isUndefined(options.hash))options.hash=true;var key,value,submitted=false,submit=options.submit;var data=elements.inject({},function(result,element){if(!element.disabled&&element.name){key=element.name;value=$(element).getValue();if(value!=null&&element.type!='file'&&(element.type!='submit'||(!submitted&&submit!==false&&(!submit||key==submit)&&(submitted=true)))){if(key in result){if(!Object.isArray(result[key]))result[key]=[result[key]];result[key].push(value);}
else result[key]=value;}}
return result;});return options.hash?data:Object.toQueryString(data);}};Form.Methods={serialize:function(form,options){return Form.serializeElements(Form.getElements(form),options);},getElements:function(form){var elements=$(form).getElementsByTagName('*'),element,arr=[],serializers=Form.Element.Serializers;for(var i=0;element=elements[i];i++){arr.push(element);}
return arr.inject([],function(elements,child){if(serializers[child.tagName.toLowerCase()])
elements.push(Element.extend(child));return elements;})},getInputs:function(form,typeName,name){form=$(form);var inputs=form.getElementsByTagName('input');if(!typeName&&!name)return $A(inputs).map(Element.extend);for(var i=0,matchingInputs=[],length=inputs.length;i<length;i++){var input=inputs[i];if((typeName&&input.type!=typeName)||(name&&input.name!=name))
continue;matchingInputs.push(Element.extend(input));}
return matchingInputs;},disable:function(form){form=$(form);Form.getElements(form).invoke('disable');return form;},enable:function(form){form=$(form);Form.getElements(form).invoke('enable');return form;},findFirstElement:function(form){var elements=$(form).getElements().findAll(function(element){return'hidden'!=element.type&&!element.disabled;});var firstByIndex=elements.findAll(function(element){return element.hasAttribute('tabIndex')&&element.tabIndex>=0;}).sortBy(function(element){return element.tabIndex}).first();return firstByIndex?firstByIndex:elements.find(function(element){return/^(?:input|select|textarea)$/i.test(element.tagName);});},focusFirstElement:function(form){form=$(form);form.findFirstElement().activate();return form;},request:function(form,options){form=$(form),options=Object.clone(options||{});var params=options.parameters,action=form.readAttribute('action')||'';if(action.blank())action=window.location.href;options.parameters=form.serialize(true);if(params){if(Object.isString(params))params=params.toQueryParams();Object.extend(options.parameters,params);}
if(form.hasAttribute('method')&&!options.method)
options.method=form.method;return new Ajax.Request(action,options);}};Form.Element={focus:function(element){$(element).focus();return element;},select:function(element){$(element).select();return element;}};Form.Element.Methods={serialize:function(element){element=$(element);if(!element.disabled&&element.name){var value=element.getValue();if(value!=undefined){var pair={};pair[element.name]=value;return Object.toQueryString(pair);}}
return'';},getValue:function(element){element=$(element);var method=element.tagName.toLowerCase();return Form.Element.Serializers[method](element);},setValue:function(element,value){element=$(element);var method=element.tagName.toLowerCase();Form.Element.Serializers[method](element,value);return element;},clear:function(element){$(element).value='';return element;},present:function(element){return $(element).value!='';},activate:function(element){element=$(element);try{element.focus();if(element.select&&(element.tagName.toLowerCase()!='input'||!(/^(?:button|reset|submit)$/i.test(element.type))))
element.select();}catch(e){}
return element;},disable:function(element){element=$(element);element.disabled=true;return element;},enable:function(element){element=$(element);element.disabled=false;return element;}};var Field=Form.Element;var $F=Form.Element.Methods.getValue;Form.Element.Serializers={input:function(element,value){switch(element.type.toLowerCase()){case'checkbox':case'radio':return Form.Element.Serializers.inputSelector(element,value);default:return Form.Element.Serializers.textarea(element,value);}},inputSelector:function(element,value){if(Object.isUndefined(value))return element.checked?element.value:null;else element.checked=!!value;},textarea:function(element,value){if(Object.isUndefined(value))return element.value;else element.value=value;},select:function(element,value){if(Object.isUndefined(value))
return this[element.type=='select-one'?'selectOne':'selectMany'](element);else{var opt,currentValue,single=!Object.isArray(value);for(var i=0,length=element.length;i<length;i++){opt=element.options[i];currentValue=this.optionValue(opt);if(single){if(currentValue==value){opt.selected=true;return;}}
else opt.selected=value.include(currentValue);}}},selectOne:function(element){var index=element.selectedIndex;return index>=0?this.optionValue(element.options[index]):null;},selectMany:function(element){var values,length=element.length;if(!length)return null;for(var i=0,values=[];i<length;i++){var opt=element.options[i];if(opt.selected)values.push(this.optionValue(opt));}
return values;},optionValue:function(opt){return Element.extend(opt).hasAttribute('value')?opt.value:opt.text;}};Abstract.TimedObserver=Class.create(PeriodicalExecuter,{initialize:function($super,element,frequency,callback){$super(callback,frequency);this.element=$(element);this.lastValue=this.getValue();},execute:function(){var value=this.getValue();if(Object.isString(this.lastValue)&&Object.isString(value)?this.lastValue!=value:String(this.lastValue)!=String(value)){this.callback(this.element,value);this.lastValue=value;}}});Form.Element.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=Class.create({initialize:function(element,callback){this.element=$(element);this.callback=callback;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=='form')
this.registerFormCallbacks();else
this.registerCallback(this.element);},onElementEvent:function(){var value=this.getValue();if(this.lastValue!=value){this.callback(this.element,value);this.lastValue=value;}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback,this);},registerCallback:function(element){if(element.type){switch(element.type.toLowerCase()){case'checkbox':case'radio':Event.observe(element,'click',this.onElementEvent.bind(this));break;default:Event.observe(element,'change',this.onElementEvent.bind(this));break;}}}});Form.Element.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.serialize(this.element);}});(function(){var Event={KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,KEY_INSERT:45,cache:{}};var docEl=document.documentElement;var MOUSEENTER_MOUSELEAVE_EVENTS_SUPPORTED='onmouseenter'in docEl&&'onmouseleave'in docEl;var _isButton;if(Prototype.Browser.IE){var buttonMap={0:1,1:4,2:2};_isButton=function(event,code){return event.button===buttonMap[code];};}else if(Prototype.Browser.WebKit){_isButton=function(event,code){switch(code){case 0:return event.which==1&&!event.metaKey;case 1:return event.which==1&&event.metaKey;default:return false;}};}else{_isButton=function(event,code){return event.which?(event.which===code+1):(event.button===code);};}
function isLeftClick(event){return _isButton(event,0)}
function isMiddleClick(event){return _isButton(event,1)}
function isRightClick(event){return _isButton(event,2)}
function element(event){event=Event.extend(event);var node=event.target,type=event.type,currentTarget=event.currentTarget;if(currentTarget&&currentTarget.tagName){if(type==='load'||type==='error'||(type==='click'&&currentTarget.tagName.toLowerCase()==='input'&&currentTarget.type==='radio'))
node=currentTarget;}
if(node.nodeType==Node.TEXT_NODE)
node=node.parentNode;return Element.extend(node);}
function findElement(event,expression){var element=Event.element(event);if(!expression)return element;var elements=[element].concat(element.ancestors());return Selector.findElement(elements,expression,0);}
function pointer(event){return{x:pointerX(event),y:pointerY(event)};}
function pointerX(event){var docElement=document.documentElement,body=document.body||{scrollLeft:0};return event.pageX||(event.clientX+
(docElement.scrollLeft||body.scrollLeft)-
(docElement.clientLeft||0));}
function pointerY(event){var docElement=document.documentElement,body=document.body||{scrollTop:0};return event.pageY||(event.clientY+
(docElement.scrollTop||body.scrollTop)-
(docElement.clientTop||0));}
function stop(event){Event.extend(event);event.preventDefault();event.stopPropagation();event.stopped=true;}
Event.Methods={isLeftClick:isLeftClick,isMiddleClick:isMiddleClick,isRightClick:isRightClick,element:element,findElement:findElement,pointer:pointer,pointerX:pointerX,pointerY:pointerY,stop:stop};var methods=Object.keys(Event.Methods).inject({},function(m,name){m[name]=Event.Methods[name].methodize();return m;});if(Prototype.Browser.IE){function _relatedTarget(event){var element;switch(event.type){case'mouseover':element=event.fromElement;break;case'mouseout':element=event.toElement;break;default:return null;}
return Element.extend(element);}
Object.extend(methods,{stopPropagation:function(){this.cancelBubble=true},preventDefault:function(){this.returnValue=false},inspect:function(){return'[object Event]'}});Event.extend=function(event,element){if(!event)return false;if(event._extendedByPrototype)return event;event._extendedByPrototype=Prototype.emptyFunction;var pointer=Event.pointer(event);Object.extend(event,{target:event.srcElement||element,relatedTarget:_relatedTarget(event),pageX:pointer.x,pageY:pointer.y});return Object.extend(event,methods);};}else{Event.prototype=window.Event.prototype||document.createEvent('HTMLEvents').__proto__;Object.extend(Event.prototype,methods);Event.extend=Prototype.K;}
function _createResponder(element,eventName,handler){var registry=Element.retrieve(element,'prototype_event_registry');if(Object.isUndefined(registry)){CACHE.push(element);registry=Element.retrieve(element,'prototype_event_registry',$H());}
var respondersForEvent=registry.get(eventName);if(Object.isUndefined(respondersForEvent)){respondersForEvent=[];registry.set(eventName,respondersForEvent);}
if(respondersForEvent.pluck('handler').include(handler))return false;var responder;if(eventName.include(":")){responder=function(event){if(Object.isUndefined(event.eventName))
return false;if(event.eventName!==eventName)
return false;Event.extend(event,element);handler.call(element,event);};}else{if(!MOUSEENTER_MOUSELEAVE_EVENTS_SUPPORTED&&(eventName==="mouseenter"||eventName==="mouseleave")){if(eventName==="mouseenter"||eventName==="mouseleave"){responder=function(event){Event.extend(event,element);var parent=event.relatedTarget;while(parent&&parent!==element){try{parent=parent.parentNode;}
catch(e){parent=element;}}
if(parent===element)return;handler.call(element,event);};}}else{responder=function(event){Event.extend(event,element);handler.call(element,event);};}}
responder.handler=handler;respondersForEvent.push(responder);return responder;}
function _destroyCache(){for(var i=0,length=CACHE.length;i<length;i++){Event.stopObserving(CACHE[i]);CACHE[i]=null;}}
var CACHE=[];if(Prototype.Browser.IE)
window.attachEvent('onunload',_destroyCache);if(Prototype.Browser.WebKit)
window.addEventListener('unload',Prototype.emptyFunction,false);var _getDOMEventName=Prototype.K;if(!MOUSEENTER_MOUSELEAVE_EVENTS_SUPPORTED){_getDOMEventName=function(eventName){var translations={mouseenter:"mouseover",mouseleave:"mouseout"};return eventName in translations?translations[eventName]:eventName;};}
function observe(element,eventName,handler){element=$(element);var responder=_createResponder(element,eventName,handler);if(!responder)return element;if(eventName.include(':')){if(element.addEventListener)
element.addEventListener("dataavailable",responder,false);else{element.attachEvent("ondataavailable",responder);element.attachEvent("onfilterchange",responder);}}else{var actualEventName=_getDOMEventName(eventName);if(element.addEventListener)
element.addEventListener(actualEventName,responder,false);else
element.attachEvent("on"+actualEventName,responder);}
return element;}
function stopObserving(element,eventName,handler){element=$(element);var registry=Element.retrieve(element,'prototype_event_registry');if(Object.isUndefined(registry))return element;if(eventName&&!handler){var responders=registry.get(eventName);if(Object.isUndefined(responders))return element;responders.each(function(r){Element.stopObserving(element,eventName,r.handler);});return element;}else if(!eventName){registry.each(function(pair){var eventName=pair.key,responders=pair.value;responders.each(function(r){Element.stopObserving(element,eventName,r.handler);});});return element;}
var responders=registry.get(eventName);if(!responders)return;var responder=responders.find(function(r){return r.handler===handler;});if(!responder)return element;var actualEventName=_getDOMEventName(eventName);if(eventName.include(':')){if(element.removeEventListener)
element.removeEventListener("dataavailable",responder,false);else{element.detachEvent("ondataavailable",responder);element.detachEvent("onfilterchange",responder);}}else{if(element.removeEventListener)
element.removeEventListener(actualEventName,responder,false);else
element.detachEvent('on'+actualEventName,responder);}
registry.set(eventName,responders.without(responder));return element;}
function fire(element,eventName,memo,bubble){element=$(element);if(Object.isUndefined(bubble))
bubble=true;if(element==document&&document.createEvent&&!element.dispatchEvent)
element=document.documentElement;var event;if(document.createEvent){event=document.createEvent('HTMLEvents');event.initEvent('dataavailable',true,true);}else{event=document.createEventObject();event.eventType=bubble?'ondataavailable':'onfilterchange';}
event.eventName=eventName;event.memo=memo||{};if(document.createEvent)
element.dispatchEvent(event);else
element.fireEvent(event.eventType,event);return Event.extend(event);}
Object.extend(Event,Event.Methods);Object.extend(Event,{fire:fire,observe:observe,stopObserving:stopObserving});Element.addMethods({fire:fire,observe:observe,stopObserving:stopObserving});Object.extend(document,{fire:fire.methodize(),observe:observe.methodize(),stopObserving:stopObserving.methodize(),loaded:false});if(window.Event)Object.extend(window.Event,Event);else window.Event=Event;})();(function(){var timer;function fireContentLoadedEvent(){if(document.loaded)return;if(timer)window.clearTimeout(timer);document.loaded=true;document.fire('dom:loaded');}
function checkReadyState(){if(document.readyState==='complete'){document.stopObserving('readystatechange',checkReadyState);fireContentLoadedEvent();}}
function pollDoScroll(){try{document.documentElement.doScroll('left');}
catch(e){timer=pollDoScroll.defer();return;}
fireContentLoadedEvent();}
if(document.addEventListener){document.addEventListener('DOMContentLoaded',fireContentLoadedEvent,false);}else{document.observe('readystatechange',checkReadyState);if(window==top)
timer=pollDoScroll.defer();}
Event.observe(window,'load',fireContentLoadedEvent);})();Element.addMethods();Hash.toQueryString=Object.toQueryString;var Toggle={display:Element.toggle};Element.Methods.childOf=Element.Methods.descendantOf;var Insertion={Before:function(element,content){return Element.insert(element,{before:content});},Top:function(element,content){return Element.insert(element,{top:content});},Bottom:function(element,content){return Element.insert(element,{bottom:content});},After:function(element,content){return Element.insert(element,{after:content});}};var $continue=new Error('"throw $continue" is deprecated, use "return" instead');var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;},within:function(element,x,y){if(this.includeScrollOffsets)
return this.withinIncludingScrolloffsets(element,x,y);this.xcomp=x;this.ycomp=y;this.offset=Element.cumulativeOffset(element);return(y>=this.offset[1]&&y<this.offset[1]+element.offsetHeight&&x>=this.offset[0]&&x<this.offset[0]+element.offsetWidth);},withinIncludingScrolloffsets:function(element,x,y){var offsetcache=Element.cumulativeScrollOffset(element);this.xcomp=x+offsetcache[0]-this.deltaX;this.ycomp=y+offsetcache[1]-this.deltaY;this.offset=Element.cumulativeOffset(element);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+element.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+element.offsetWidth);},overlap:function(mode,element){if(!mode)return 0;if(mode=='vertical')
return((this.offset[1]+element.offsetHeight)-this.ycomp)/element.offsetHeight;if(mode=='horizontal')
return((this.offset[0]+element.offsetWidth)-this.xcomp)/element.offsetWidth;},cumulativeOffset:Element.Methods.cumulativeOffset,positionedOffset:Element.Methods.positionedOffset,absolutize:function(element){Position.prepare();return Element.absolutize(element);},relativize:function(element){Position.prepare();return Element.relativize(element);},realOffset:Element.Methods.cumulativeScrollOffset,offsetParent:Element.Methods.getOffsetParent,page:Element.Methods.viewportOffset,clone:function(source,target,options){options=options||{};return Element.clonePosition(target,source,options);}};if(!document.getElementsByClassName)document.getElementsByClassName=function(instanceMethods){function iter(name){return name.blank()?null:"[contains(concat(' ', @class, ' '), ' "+name+" ')]";}
instanceMethods.getElementsByClassName=Prototype.BrowserFeatures.XPath?function(element,className){className=className.toString().strip();var cond=/\s/.test(className)?$w(className).map(iter).join(''):iter(className);return cond?document._getElementsByXPath('.//*'+cond,element):[];}:function(element,className){className=className.toString().strip();var elements=[],classNames=(/\s/.test(className)?$w(className):null);if(!classNames&&!className)return elements;var nodes=$(element).getElementsByTagName('*');className=' '+className+' ';for(var i=0,child,cn;child=nodes[i];i++){if(child.className&&(cn=' '+child.className+' ')&&(cn.include(className)||(classNames&&classNames.all(function(name){return!name.toString().blank()&&cn.include(' '+name+' ');}))))
elements.push(Element.extend(child));}
return elements;};return function(className,parentElement){return $(parentElement||document.body).getElementsByClassName(className);};}(Element.Methods);Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(element){this.element=$(element);},_each:function(iterator){this.element.className.split(/\s+/).select(function(name){return name.length>0;})._each(iterator);},set:function(className){this.element.className=className;},add:function(classNameToAdd){if(this.include(classNameToAdd))return;this.set($A(this).concat(classNameToAdd).join(' '));},remove:function(classNameToRemove){if(!this.include(classNameToRemove))return;this.set($A(this).without(classNameToRemove).join(' '));},toString:function(){return $A(this).join(' ');}};Object.extend(Element.ClassNames.prototype,Enumerable);String.prototype.parseColor=function(){var color='#';if(this.slice(0,4)=='rgb('){var cols=this.slice(4,this.length-1).split(',');var i=0;do{color+=parseInt(cols[i]).toColorPart()}while(++i<3);}else{if(this.slice(0,1)=='#'){if(this.length==4)for(var i=1;i<4;i++)color+=(this.charAt(i)+this.charAt(i)).toLowerCase();if(this.length==7)color=this.toLowerCase();}}
return(color.length==7?color:(arguments[0]||this));};Element.collectTextNodes=function(element){return $A($(element).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:(node.hasChildNodes()?Element.collectTextNodes(node):''));}).flatten().join('');};Element.collectTextNodesIgnoreClass=function(element,className){return $A($(element).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:((node.hasChildNodes()&&!Element.hasClassName(node,className))?Element.collectTextNodesIgnoreClass(node,className):''));}).flatten().join('');};Element.setContentZoom=function(element,percent){element=$(element);element.setStyle({fontSize:(percent/100)+'em'});if(Prototype.Browser.WebKit)window.scrollBy(0,0);return element;};Element.getInlineOpacity=function(element){return $(element).style.opacity||'';};Element.forceRerendering=function(element){try{element=$(element);var n=document.createTextNode(' ');element.appendChild(n);element.removeChild(n);}catch(e){}};var Effect={_elementDoesNotExistError:{name:'ElementDoesNotExistError',message:'The specified DOM element does not exist, but is required for this effect to operate'},Transitions:{linear:Prototype.K,sinoidal:function(pos){return(-Math.cos(pos*Math.PI)/2)+.5;},reverse:function(pos){return 1-pos;},flicker:function(pos){var pos=((-Math.cos(pos*Math.PI)/4)+.75)+Math.random()/4;return pos>1?1:pos;},wobble:function(pos){return(-Math.cos(pos*Math.PI*(9*pos))/2)+.5;},pulse:function(pos,pulses){return(-Math.cos((pos*((pulses||5)-.5)*2)*Math.PI)/2)+.5;},spring:function(pos){return 1-(Math.cos(pos*4.5*Math.PI)*Math.exp(-pos*6));},none:function(pos){return 0;},full:function(pos){return 1;}},DefaultOptions:{duration:1.0,fps:100,sync:false,from:0.0,to:1.0,delay:0.0,queue:'parallel'},tagifyText:function(element){var tagifyStyle='position:relative';if(Prototype.Browser.IE)tagifyStyle+=';zoom:1';element=$(element);$A(element.childNodes).each(function(child){if(child.nodeType==3){child.nodeValue.toArray().each(function(character){element.insertBefore(new Element('span',{style:tagifyStyle}).update(character==' '?String.fromCharCode(160):character),child);});Element.remove(child);}});},multiple:function(element,effect){var elements;if(((typeof element=='object')||Object.isFunction(element))&&(element.length))
elements=element;else
elements=$(element).childNodes;var options=Object.extend({speed:0.1,delay:0.0},arguments[2]||{});var masterDelay=options.delay;$A(elements).each(function(element,index){new effect(element,Object.extend(options,{delay:index*options.speed+masterDelay}));});},PAIRS:{'slide':['SlideDown','SlideUp'],'blind':['BlindDown','BlindUp'],'appear':['Appear','Fade']},toggle:function(element,effect){element=$(element);effect=(effect||'appear').toLowerCase();var options=Object.extend({queue:{position:'end',scope:(element.id||'global'),limit:1}},arguments[2]||{});Effect[element.visible()?Effect.PAIRS[effect][1]:Effect.PAIRS[effect][0]](element,options);}};Effect.DefaultOptions.transition=Effect.Transitions.sinoidal;Effect.ScopedQueue=Class.create(Enumerable,{initialize:function(){this.effects=[];this.interval=null;},_each:function(iterator){this.effects._each(iterator);},add:function(effect){var timestamp=new Date().getTime();var position=Object.isString(effect.options.queue)?effect.options.queue:effect.options.queue.position;switch(position){case'front':this.effects.findAll(function(e){return e.state=='idle'}).each(function(e){e.startOn+=effect.finishOn;e.finishOn+=effect.finishOn;});break;case'with-last':timestamp=this.effects.pluck('startOn').max()||timestamp;break;case'end':timestamp=this.effects.pluck('finishOn').max()||timestamp;break;}
effect.startOn+=timestamp;effect.finishOn+=timestamp;if(!effect.options.queue.limit||(this.effects.length<effect.options.queue.limit))
this.effects.push(effect);if(!this.interval)
this.interval=setInterval(this.loop.bind(this),15);},remove:function(effect){this.effects=this.effects.reject(function(e){return e==effect});if(this.effects.length==0){clearInterval(this.interval);this.interval=null;}},loop:function(){var timePos=new Date().getTime();for(var i=0,len=this.effects.length;i<len;i++)
this.effects[i]&&this.effects[i].loop(timePos);}});Effect.Queues={instances:$H(),get:function(queueName){if(!Object.isString(queueName))return queueName;return this.instances.get(queueName)||this.instances.set(queueName,new Effect.ScopedQueue());}};Effect.Queue=Effect.Queues.get('global');Effect.Base=Class.create({position:null,start:function(options){function codeForEvent(options,eventName){return((options[eventName+'Internal']?'this.options.'+eventName+'Internal(this);':'')+
(options[eventName]?'this.options.'+eventName+'(this);':''));}
if(options&&options.transition===false)options.transition=Effect.Transitions.linear;this.options=Object.extend(Object.extend({},Effect.DefaultOptions),options||{});this.currentFrame=0;this.state='idle';this.startOn=this.options.delay*1000;this.finishOn=this.startOn+(this.options.duration*1000);this.fromToDelta=this.options.to-this.options.from;this.totalTime=this.finishOn-this.startOn;this.totalFrames=this.options.fps*this.options.duration;this.render=(function(){function dispatch(effect,eventName){if(effect.options[eventName+'Internal'])
effect.options[eventName+'Internal'](effect);if(effect.options[eventName])
effect.options[eventName](effect);}
return function(pos){if(this.state==="idle"){this.state="running";dispatch(this,'beforeSetup');if(this.setup)this.setup();dispatch(this,'afterSetup');}
if(this.state==="running"){pos=(this.options.transition(pos)*this.fromToDelta)+this.options.from;this.position=pos;dispatch(this,'beforeUpdate');if(this.update)this.update(pos);dispatch(this,'afterUpdate');}};})();this.event('beforeStart');if(!this.options.sync)
Effect.Queues.get(Object.isString(this.options.queue)?'global':this.options.queue.scope).add(this);},loop:function(timePos){if(timePos>=this.startOn){if(timePos>=this.finishOn){this.render(1.0);this.cancel();this.event('beforeFinish');if(this.finish)this.finish();this.event('afterFinish');return;}
var pos=(timePos-this.startOn)/this.totalTime,frame=(pos*this.totalFrames).round();if(frame>this.currentFrame){this.render(pos);this.currentFrame=frame;}}},cancel:function(){if(!this.options.sync)
Effect.Queues.get(Object.isString(this.options.queue)?'global':this.options.queue.scope).remove(this);this.state='finished';},event:function(eventName){if(this.options[eventName+'Internal'])this.options[eventName+'Internal'](this);if(this.options[eventName])this.options[eventName](this);},inspect:function(){var data=$H();for(property in this)
if(!Object.isFunction(this[property]))data.set(property,this[property]);return'#<Effect:'+data.inspect()+',options:'+$H(this.options).inspect()+'>';}});Effect.Parallel=Class.create(Effect.Base,{initialize:function(effects){this.effects=effects||[];this.start(arguments[1]);},update:function(position){this.effects.invoke('render',position);},finish:function(position){this.effects.each(function(effect){effect.render(1.0);effect.cancel();effect.event('beforeFinish');if(effect.finish)effect.finish(position);effect.event('afterFinish');});}});Effect.Tween=Class.create(Effect.Base,{initialize:function(object,from,to){object=Object.isString(object)?$(object):object;var args=$A(arguments),method=args.last(),options=args.length==5?args[3]:null;this.method=Object.isFunction(method)?method.bind(object):Object.isFunction(object[method])?object[method].bind(object):function(value){object[method]=value};this.start(Object.extend({from:from,to:to},options||{}));},update:function(position){this.method(position);}});Effect.Event=Class.create(Effect.Base,{initialize:function(){this.start(Object.extend({duration:0},arguments[0]||{}));},update:Prototype.emptyFunction});Effect.Opacity=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout))
this.element.setStyle({zoom:1});var options=Object.extend({from:this.element.getOpacity()||0.0,to:1.0},arguments[1]||{});this.start(options);},update:function(position){this.element.setOpacity(position);}});Effect.Move=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({x:0,y:0,mode:'relative'},arguments[1]||{});this.start(options);},setup:function(){this.element.makePositioned();this.originalLeft=parseFloat(this.element.getStyle('left')||'0');this.originalTop=parseFloat(this.element.getStyle('top')||'0');if(this.options.mode=='absolute'){this.options.x=this.options.x-this.originalLeft;this.options.y=this.options.y-this.originalTop;}},update:function(position){this.element.setStyle({left:(this.options.x*position+this.originalLeft).round()+'px',top:(this.options.y*position+this.originalTop).round()+'px'});}});Effect.MoveBy=function(element,toTop,toLeft){return new Effect.Move(element,Object.extend({x:toLeft,y:toTop},arguments[3]||{}));};Effect.Scale=Class.create(Effect.Base,{initialize:function(element,percent){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:'box',scaleFrom:100.0,scaleTo:percent},arguments[2]||{});this.start(options);},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;this.elementPositioning=this.element.getStyle('position');this.originalStyle={};['top','left','width','height','fontSize'].each(function(k){this.originalStyle[k]=this.element.style[k];}.bind(this));this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;var fontSize=this.element.getStyle('font-size')||'100%';['em','px','%','pt'].each(function(fontSizeType){if(fontSize.indexOf(fontSizeType)>0){this.fontSize=parseFloat(fontSize);this.fontSizeType=fontSizeType;}}.bind(this));this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;this.dims=null;if(this.options.scaleMode=='box')
this.dims=[this.element.offsetHeight,this.element.offsetWidth];if(/^content/.test(this.options.scaleMode))
this.dims=[this.element.scrollHeight,this.element.scrollWidth];if(!this.dims)
this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];},update:function(position){var currentScale=(this.options.scaleFrom/100.0)+(this.factor*position);if(this.options.scaleContent&&this.fontSize)
this.element.setStyle({fontSize:this.fontSize*currentScale+this.fontSizeType});this.setDimensions(this.dims[0]*currentScale,this.dims[1]*currentScale);},finish:function(position){if(this.restoreAfterFinish)this.element.setStyle(this.originalStyle);},setDimensions:function(height,width){var d={};if(this.options.scaleX)d.width=width.round()+'px';if(this.options.scaleY)d.height=height.round()+'px';if(this.options.scaleFromCenter){var topd=(height-this.dims[0])/2;var leftd=(width-this.dims[1])/2;if(this.elementPositioning=='absolute'){if(this.options.scaleY)d.top=this.originalTop-topd+'px';if(this.options.scaleX)d.left=this.originalLeft-leftd+'px';}else{if(this.options.scaleY)d.top=-topd+'px';if(this.options.scaleX)d.left=-leftd+'px';}}
this.element.setStyle(d);}});Effect.Highlight=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({startcolor:'#ffff99'},arguments[1]||{});this.start(options);},setup:function(){if(this.element.getStyle('display')=='none'){this.cancel();return;}
this.oldStyle={};if(!this.options.keepBackgroundImage){this.oldStyle.backgroundImage=this.element.getStyle('background-image');this.element.setStyle({backgroundImage:'none'});}
if(!this.options.endcolor)
this.options.endcolor=this.element.getStyle('background-color').parseColor('#ffffff');if(!this.options.restorecolor)
this.options.restorecolor=this.element.getStyle('background-color');this._base=$R(0,2).map(function(i){return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16)}.bind(this));this._delta=$R(0,2).map(function(i){return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i]}.bind(this));},update:function(position){this.element.setStyle({backgroundColor:$R(0,2).inject('#',function(m,v,i){return m+((this._base[i]+(this._delta[i]*position)).round().toColorPart());}.bind(this))});},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}));}});Effect.ScrollTo=function(element){var options=arguments[1]||{},scrollOffsets=document.viewport.getScrollOffsets(),elementOffsets=$(element).cumulativeOffset();if(options.offset)elementOffsets[1]+=options.offset;return new Effect.Tween(null,scrollOffsets.top,elementOffsets[1],options,function(p){scrollTo(scrollOffsets.left,p.round());});};Effect.Fade=function(element){element=$(element);var oldOpacity=element.getInlineOpacity();var options=Object.extend({from:element.getOpacity()||1.0,to:0.0,afterFinishInternal:function(effect){if(effect.options.to!=0)return;effect.element.hide().setStyle({opacity:oldOpacity});}},arguments[1]||{});return new Effect.Opacity(element,options);};Effect.Appear=function(element){element=$(element);var options=Object.extend({from:(element.getStyle('display')=='none'?0.0:element.getOpacity()||0.0),to:1.0,afterFinishInternal:function(effect){effect.element.forceRerendering();},beforeSetup:function(effect){effect.element.setOpacity(effect.options.from).show();}},arguments[1]||{});return new Effect.Opacity(element,options);};Effect.Puff=function(element){element=$(element);var oldStyle={opacity:element.getInlineOpacity(),position:element.getStyle('position'),top:element.style.top,left:element.style.left,width:element.style.width,height:element.style.height};return new Effect.Parallel([new Effect.Scale(element,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(element,{sync:true,to:0.0})],Object.extend({duration:1.0,beforeSetupInternal:function(effect){Position.absolutize(effect.effects[0].element);},afterFinishInternal:function(effect){effect.effects[0].element.hide().setStyle(oldStyle);}},arguments[1]||{}));};Effect.BlindUp=function(element){element=$(element);element.makeClipping();return new Effect.Scale(element,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(effect){effect.element.hide().undoClipping();}},arguments[1]||{}));};Effect.BlindDown=function(element){element=$(element);var elementDimensions=element.getDimensions();return new Effect.Scale(element,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makeClipping().setStyle({height:'0px'}).show();},afterFinishInternal:function(effect){effect.element.undoClipping();}},arguments[1]||{}));};Effect.SwitchOff=function(element){element=$(element);var oldOpacity=element.getInlineOpacity();return new Effect.Appear(element,Object.extend({duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(effect){new Effect.Scale(effect.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(effect){effect.element.makePositioned().makeClipping();},afterFinishInternal:function(effect){effect.element.hide().undoClipping().undoPositioned().setStyle({opacity:oldOpacity});}});}},arguments[1]||{}));};Effect.DropOut=function(element){element=$(element);var oldStyle={top:element.getStyle('top'),left:element.getStyle('left'),opacity:element.getInlineOpacity()};return new Effect.Parallel([new Effect.Move(element,{x:0,y:100,sync:true}),new Effect.Opacity(element,{sync:true,to:0.0})],Object.extend({duration:0.5,beforeSetup:function(effect){effect.effects[0].element.makePositioned();},afterFinishInternal:function(effect){effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle);}},arguments[1]||{}));};Effect.Shake=function(element){element=$(element);var options=Object.extend({distance:20,duration:0.5},arguments[1]||{});var distance=parseFloat(options.distance);var split=parseFloat(options.duration)/10.0;var oldStyle={top:element.getStyle('top'),left:element.getStyle('left')};return new Effect.Move(element,{x:distance,y:0,duration:split,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance,y:0,duration:split,afterFinishInternal:function(effect){effect.element.undoPositioned().setStyle(oldStyle);}});}});}});}});}});}});};Effect.SlideDown=function(element){element=$(element).cleanWhitespace();var oldInnerBottom=element.down().getStyle('bottom');var elementDimensions=element.getDimensions();return new Effect.Scale(element,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makePositioned();effect.element.down().makePositioned();if(window.opera)effect.element.setStyle({top:''});effect.element.makeClipping().setStyle({height:'0px'}).show();},afterUpdateInternal:function(effect){effect.element.down().setStyle({bottom:(effect.dims[0]-effect.element.clientHeight)+'px'});},afterFinishInternal:function(effect){effect.element.undoClipping().undoPositioned();effect.element.down().undoPositioned().setStyle({bottom:oldInnerBottom});}},arguments[1]||{}));};Effect.SlideUp=function(element){element=$(element).cleanWhitespace();var oldInnerBottom=element.down().getStyle('bottom');var elementDimensions=element.getDimensions();return new Effect.Scale(element,window.opera?0:1,Object.extend({scaleContent:false,scaleX:false,scaleMode:'box',scaleFrom:100,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makePositioned();effect.element.down().makePositioned();if(window.opera)effect.element.setStyle({top:''});effect.element.makeClipping().show();},afterUpdateInternal:function(effect){effect.element.down().setStyle({bottom:(effect.dims[0]-effect.element.clientHeight)+'px'});},afterFinishInternal:function(effect){effect.element.hide().undoClipping().undoPositioned();effect.element.down().undoPositioned().setStyle({bottom:oldInnerBottom});}},arguments[1]||{}));};Effect.Squish=function(element){return new Effect.Scale(element,window.opera?1:0,{restoreAfterFinish:true,beforeSetup:function(effect){effect.element.makeClipping();},afterFinishInternal:function(effect){effect.element.hide().undoClipping();}});};Effect.Grow=function(element){element=$(element);var options=Object.extend({direction:'center',moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.full},arguments[1]||{});var oldStyle={top:element.style.top,left:element.style.left,height:element.style.height,width:element.style.width,opacity:element.getInlineOpacity()};var dims=element.getDimensions();var initialMoveX,initialMoveY;var moveX,moveY;switch(options.direction){case'top-left':initialMoveX=initialMoveY=moveX=moveY=0;break;case'top-right':initialMoveX=dims.width;initialMoveY=moveY=0;moveX=-dims.width;break;case'bottom-left':initialMoveX=moveX=0;initialMoveY=dims.height;moveY=-dims.height;break;case'bottom-right':initialMoveX=dims.width;initialMoveY=dims.height;moveX=-dims.width;moveY=-dims.height;break;case'center':initialMoveX=dims.width/2;initialMoveY=dims.height/2;moveX=-dims.width/2;moveY=-dims.height/2;break;}
return new Effect.Move(element,{x:initialMoveX,y:initialMoveY,duration:0.01,beforeSetup:function(effect){effect.element.hide().makeClipping().makePositioned();},afterFinishInternal:function(effect){new Effect.Parallel([new Effect.Opacity(effect.element,{sync:true,to:1.0,from:0.0,transition:options.opacityTransition}),new Effect.Move(effect.element,{x:moveX,y:moveY,sync:true,transition:options.moveTransition}),new Effect.Scale(effect.element,100,{scaleMode:{originalHeight:dims.height,originalWidth:dims.width},sync:true,scaleFrom:window.opera?1:0,transition:options.scaleTransition,restoreAfterFinish:true})],Object.extend({beforeSetup:function(effect){effect.effects[0].element.setStyle({height:'0px'}).show();},afterFinishInternal:function(effect){effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle);}},options));}});};Effect.Shrink=function(element){element=$(element);var options=Object.extend({direction:'center',moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.none},arguments[1]||{});var oldStyle={top:element.style.top,left:element.style.left,height:element.style.height,width:element.style.width,opacity:element.getInlineOpacity()};var dims=element.getDimensions();var moveX,moveY;switch(options.direction){case'top-left':moveX=moveY=0;break;case'top-right':moveX=dims.width;moveY=0;break;case'bottom-left':moveX=0;moveY=dims.height;break;case'bottom-right':moveX=dims.width;moveY=dims.height;break;case'center':moveX=dims.width/2;moveY=dims.height/2;break;}
return new Effect.Parallel([new Effect.Opacity(element,{sync:true,to:0.0,from:1.0,transition:options.opacityTransition}),new Effect.Scale(element,window.opera?1:0,{sync:true,transition:options.scaleTransition,restoreAfterFinish:true}),new Effect.Move(element,{x:moveX,y:moveY,sync:true,transition:options.moveTransition})],Object.extend({beforeStartInternal:function(effect){effect.effects[0].element.makePositioned().makeClipping();},afterFinishInternal:function(effect){effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle);}},options));};Effect.Pulsate=function(element){element=$(element);var options=arguments[1]||{},oldOpacity=element.getInlineOpacity(),transition=options.transition||Effect.Transitions.linear,reverser=function(pos){return 1-transition((-Math.cos((pos*(options.pulses||5)*2)*Math.PI)/2)+.5);};return new Effect.Opacity(element,Object.extend(Object.extend({duration:2.0,from:0,afterFinishInternal:function(effect){effect.element.setStyle({opacity:oldOpacity});}},options),{transition:reverser}));};Effect.Fold=function(element){element=$(element);var oldStyle={top:element.style.top,left:element.style.left,width:element.style.width,height:element.style.height};element.makeClipping();return new Effect.Scale(element,5,Object.extend({scaleContent:false,scaleX:false,afterFinishInternal:function(effect){new Effect.Scale(element,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(effect){effect.element.hide().undoClipping().setStyle(oldStyle);}});}},arguments[1]||{}));};Effect.Morph=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({style:{}},arguments[1]||{});if(!Object.isString(options.style))this.style=$H(options.style);else{if(options.style.include(':'))
this.style=options.style.parseStyle();else{this.element.addClassName(options.style);this.style=$H(this.element.getStyles());this.element.removeClassName(options.style);var css=this.element.getStyles();this.style=this.style.reject(function(style){return style.value==css[style.key];});options.afterFinishInternal=function(effect){effect.element.addClassName(effect.options.style);effect.transforms.each(function(transform){effect.element.style[transform.style]='';});};}}
this.start(options);},setup:function(){function parseColor(color){if(!color||['rgba(0, 0, 0, 0)','transparent'].include(color))color='#ffffff';color=color.parseColor();return $R(0,2).map(function(i){return parseInt(color.slice(i*2+1,i*2+3),16);});}
this.transforms=this.style.map(function(pair){var property=pair[0],value=pair[1],unit=null;if(value.parseColor('#zzzzzz')!='#zzzzzz'){value=value.parseColor();unit='color';}else if(property=='opacity'){value=parseFloat(value);if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout))
this.element.setStyle({zoom:1});}else if(Element.CSS_LENGTH.test(value)){var components=value.match(/^([\+\-]?[0-9\.]+)(.*)$/);value=parseFloat(components[1]);unit=(components.length==3)?components[2]:null;}
var originalValue=this.element.getStyle(property);return{style:property.camelize(),originalValue:unit=='color'?parseColor(originalValue):parseFloat(originalValue||0),targetValue:unit=='color'?parseColor(value):value,unit:unit};}.bind(this)).reject(function(transform){return((transform.originalValue==transform.targetValue)||(transform.unit!='color'&&(isNaN(transform.originalValue)||isNaN(transform.targetValue))));});},update:function(position){var style={},transform,i=this.transforms.length;while(i--)
style[(transform=this.transforms[i]).style]=transform.unit=='color'?'#'+
(Math.round(transform.originalValue[0]+
(transform.targetValue[0]-transform.originalValue[0])*position)).toColorPart()+
(Math.round(transform.originalValue[1]+
(transform.targetValue[1]-transform.originalValue[1])*position)).toColorPart()+
(Math.round(transform.originalValue[2]+
(transform.targetValue[2]-transform.originalValue[2])*position)).toColorPart():(transform.originalValue+
(transform.targetValue-transform.originalValue)*position).toFixed(3)+
(transform.unit===null?'':transform.unit);this.element.setStyle(style,true);}});Effect.Transform=Class.create({initialize:function(tracks){this.tracks=[];this.options=arguments[1]||{};this.addTracks(tracks);},addTracks:function(tracks){tracks.each(function(track){track=$H(track);var data=track.values().first();this.tracks.push($H({ids:track.keys().first(),effect:Effect.Morph,options:{style:data}}));}.bind(this));return this;},play:function(){return new Effect.Parallel(this.tracks.map(function(track){var ids=track.get('ids'),effect=track.get('effect'),options=track.get('options');var elements=[$(ids)||$$(ids)].flatten();return elements.map(function(e){return new effect(e,Object.extend({sync:true},options))});}).flatten(),this.options);}});Element.CSS_PROPERTIES=$w('backgroundColor backgroundPosition borderBottomColor borderBottomStyle '+'borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth '+'borderRightColor borderRightStyle borderRightWidth borderSpacing '+'borderTopColor borderTopStyle borderTopWidth bottom clip color '+'fontSize fontWeight height left letterSpacing lineHeight '+'marginBottom marginLeft marginRight marginTop markerOffset maxHeight '+'maxWidth minHeight minWidth opacity outlineColor outlineOffset '+'outlineWidth paddingBottom paddingLeft paddingRight paddingTop '+'right textIndent top width wordSpacing zIndex');Element.CSS_LENGTH=/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;String.__parseStyleElement=document.createElement('div');String.prototype.parseStyle=function(){var style,styleRules=$H();if(Prototype.Browser.WebKit)
style=new Element('div',{style:this}).style;else{String.__parseStyleElement.innerHTML='<div style="'+this+'"></div>';style=String.__parseStyleElement.childNodes[0].style;}
Element.CSS_PROPERTIES.each(function(property){if(style[property])styleRules.set(property,style[property]);});if(Prototype.Browser.IE&&this.include('opacity'))
styleRules.set('opacity',this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1]);return styleRules;};if(document.defaultView&&document.defaultView.getComputedStyle){Element.getStyles=function(element){var css=document.defaultView.getComputedStyle($(element),null);return Element.CSS_PROPERTIES.inject({},function(styles,property){styles[property]=css[property];return styles;});};}else{Element.getStyles=function(element){element=$(element);var css=element.currentStyle,styles;styles=Element.CSS_PROPERTIES.inject({},function(results,property){results[property]=css[property];return results;});if(!styles.opacity)styles.opacity=element.getOpacity();return styles;};}
Effect.Methods={morph:function(element,style){element=$(element);new Effect.Morph(element,Object.extend({style:style},arguments[2]||{}));return element;},visualEffect:function(element,effect,options){element=$(element);var s=effect.dasherize().camelize(),klass=s.charAt(0).toUpperCase()+s.substring(1);new Effect[klass](element,options);return element;},highlight:function(element,options){element=$(element);new Effect.Highlight(element,options);return element;}};$w('fade appear grow shrink fold blindUp blindDown slideUp slideDown '+'pulsate shake puff squish switchOff dropOut').each(function(effect){Effect.Methods[effect]=function(element,options){element=$(element);Effect[effect.charAt(0).toUpperCase()+effect.substring(1)](element,options);return element;};});$w('getInlineOpacity forceRerendering setContentZoom collectTextNodes collectTextNodesIgnoreClass getStyles').each(function(f){Effect.Methods[f]=Element[f];});Element.addMethods(Effect.Methods);var ownedAndEditedSitesPageNumber=1;var lastShownExtendedInfo=-1;var wasCarouselInited=false;function updateSites(executePeriodically,delay)
{var ownedAndEditedSitesStatusList=document.getElementById("owned_and_edited_sites_status_list").getElementsByTagName("div");siteIdsStatusMap=""
for(var i=0;i<ownedAndEditedSitesStatusList.length;i++){siteIdsStatusMap+="sites["+ownedAndEditedSitesStatusList[i].id+"]="+
ownedAndEditedSitesStatusList[i].getAttributeNode("name").value+"&";}
new Ajax.Request("/dashboard/update_status_for_sites?"+siteIdsStatusMap+"owned_and_edited_page="+ownedAndEditedSitesPageNumber,{asynchronous:true,onSuccess:function(r){if(executePeriodically){var update_function="updateSites(true,"+delay+")";setTimeout(update_function,delay);}}});StorageLimit.refreshUsedSpace('storageLimit');}
function cancelImport(siteId){new Ajax.Request("/dashboard/stop_progress/"+siteId,{asynchronous:true});}
function refreshTooltip(){try{enableTooltips(null,true);}catch(err){}}
function refreshPageNumber(stype,page){if(stype=='owned'){ownedSitesPageNumber=page;}else{editedSitesPageNumber=page;}}
function hideExtendedInfo(siteId){var image=document.getElementById("expand_button_"+siteId);lastShownExtendedInfo=-1;Element.show("site_info"+siteId);Element.hide("site_extended_info"+siteId);Element.hide("site_advertisement"+siteId);image.src="/images/more_details.gif";renderLayout();}
function showExtendedInfo(siteId){var image=document.getElementById("expand_button_"+siteId);if(lastShownExtendedInfo!=-1){try{Element.show("site_info"+lastShownExtendedInfo);Element.hide("site_extended_info"+lastShownExtendedInfo);var old_image=document.getElementById("expand_button_"+lastShownExtendedInfo);old_image.src="/images/more_details.gif";}catch(err){}}
lastShownExtendedInfo=siteId;Element.hide("site_info"+siteId);Element.hide("site_advertisement"+siteId);Element.show("site_extended_info"+siteId);image.src="/images/hide_details.gif";renderLayout();}
function showAdvertising(siteId){Element.hide("site_info"+siteId);Element.hide("site_extended_info"+siteId);Element.show("site_advertisement"+siteId);renderLayout();}
function showSiteDetails(siteId){Element.hide("permission_active_permission_and_advanced_links"+siteId);Element.hide("advanced_active_permission_and_details_links"+siteId);Element.show("details_active_permission_and_advanced_links"+siteId);Element.hide("permissions_body"+siteId);Element.hide("advanced_body"+siteId);Element.show("details_body"+siteId);renderLayout();}
function showSitePermissions(siteId){Element.show("permission_active_permission_and_advanced_links"+siteId);Element.hide("details_active_permission_and_advanced_links"+siteId);Element.hide("advanced_active_permission_and_details_links"+siteId);Element.hide("details_body"+siteId);Element.hide("advanced_body"+siteId);Element.show("permissions_body"+siteId);renderLayout();}
function showSiteAdvanced(siteId){Element.show("advanced_active_permission_and_details_links"+siteId);Element.hide("permission_active_permission_and_advanced_links"+siteId);Element.hide("details_active_permission_and_advanced_links"+siteId);Element.hide("details_body"+siteId);Element.hide("permissions_body"+siteId);Element.show("advanced_body"+siteId);renderLayout();}
function showAddEditorForm(siteId){Element.show("add_new_editor_table"+siteId);$("new_editor_login"+siteId).focus();disableLink("showAddEditor"+siteId);renderLayout();}
function hideAddEditorForm(siteId){Element.hide("add_new_editor_table"+siteId);$("new_editor_login"+siteId).value="";enableLink("showAddEditor"+siteId);renderLayout();}
function cancelAddEditor(siteId){hideAddEditorForm(siteId);Element.update("add_new_editor_error"+siteId,"");}
function addSiteEditor(siteId){var inputField=document.getElementById("new_editor_login"+siteId);new Ajax.Request("/dashboard/add_site_editor/"+siteId+"?login="+escape(inputField.value),{asynchronous:true,onSuccess:function(response){addSiteEditorSuccess(siteId,response.responseText)},onFailure:function(response){if(handleRedirectResponse(response.responseText)==false){addSiteEditorFailure(siteId,response.responseText)}}});}
function addSiteEditorSuccess(siteId,newEditorTag){var editorsList=document.getElementById("site_editors"+siteId);var newEditor=document.createElement("div");editorsList.appendChild(newEditor);Element.replace(newEditor,newEditorTag);Element.update("add_new_editor_error"+siteId,"");hideAddEditorForm(siteId);enableTooltips("site_editor"+siteId+"_"+newEditor.id,true);}
function addSiteEditorFailure(siteId,errorMessage){Element.update("add_new_editor_error"+siteId,errorMessage);}
function removeSiteEditor(siteId,siteEditorId,confirmQuestion){if(confirm(confirmQuestion)){new Ajax.Request("/dashboard/remove_site_editor/"+siteId+"?siteEditorId="+siteEditorId,{asynchronous:true,onSuccess:function(response){removeSiteEditorSuccess(siteId,siteEditorId);},onFailure:function(response){if(handleRedirectResponse(response.responseText)==false){removeSiteEditorFailure(siteId,response.responseText);}}});}}
function removeSiteEditorSuccess(siteId,siteEditorId){var list=document.getElementById("site_editors"+siteId);var element=document.getElementById("site_editor"+siteId+"_"+siteEditorId);list.removeChild(element);}
function removeSiteEditorFailure(siteId,errorMessage){Element.update("add_new_editor_error"+siteId,errorMessage);}
function changeSiteListPage(stype,pageNumber){new Ajax.Request("/dashboard/site_list?page="+pageNumber+"&stype="+stype,{asynchronous:true,evalScripts:true,onSuccess:function(response){if(action=="owned_list"){ownedSitesPageNumber=pageNumber;}else{editedSitesPageNumber=pageNumber;}}});}
function deleteSite(siteId,confirmation){if(confirm(confirmation)){document.body.style.cursor='wait';new Ajax.Request("/dashboard/destroy/"+siteId,{asynchronous:true,onSuccess:function(response){if(new String(self.location).indexOf('/dashboard/list')==-1){self.location='/dashboard/list'}
updateSites(false);lastShownExtendedInfo=-1;document.body.style.cursor='auto';},onFailure:function(response){document.body.style.cursor='auto';}});}}
function clickUseDns(id,edit){if($('dashboard_advanced_use_dns_form'+id).checked){if(edit){changeDnsName(id,false);}else{cancelAddDnsName(id);}
Element.show('dashboard_advanced_dns_name'+id);$("new_dns_name_form"+id).focus();}else{Element.hide('dashboard_advanced_dns_name'+id);}
addUseDns(id);renderLayout();}
function changeDnsName(id,focus){Element.hide('dashboard_advanced_show_dns_name'+id);Element.show('dashboard_advanced_edit_dns_name'+id);if(focus){$("new_dns_name_form"+id).focus();}}
function cancelAddDnsName(id){Element.hide('dashboard_advanced_edit_dns_name'+id);Element.show('dashboard_advanced_show_dns_name'+id);}
function addDnsName(siteId){var checkBox=document.getElementById('dashboard_advanced_use_dns_form'+siteId);var inputField=document.getElementById('new_dns_name_form'+siteId);var value=checkBox.checked?1:0;new Ajax.Updater('advanced_body'+siteId,"/dashboard/update_dns_name/"+siteId+"?use_dns="+value+"&dns_name="+escape(inputField.value),{asynchronous:true});}
function addUseDns(id){var inputField=document.getElementById('dashboard_advanced_use_dns_form'+id);var value=inputField.checked?1:0;new Ajax.Updater('advanced_body'+id,"/dashboard/update_use_dns/"+id+"?use_dns="+value,{asynchronous:true});}
function switchDashboard(){$('dashboard_content').toggle();$('create_now').toggle();$('bottom_pane').toggle();if($('create_now').style.display!='none'){if(!wasCarouselInited){initCarousel_templates_preview_carousel();wasCarouselInited=true;}
$('left_pane').style.padding='0';$('left_pane').style.width='100%';$('right_pane').style.display='none';}
else{$('right_pane').style.display='';$('left_pane').style.width='';$('left_pane').style.padding='10px';}}
function FieldsCreator(maxFieldCount,fieldCount,email,name){this.fieldCount=fieldCount;this.maxFieldCount=maxFieldCount;this.localizedEmail=email;this.localizedName=name;}
FieldsCreator.prototype.addEmailField=function(next,description){this.fieldCount++;if(this.fieldCount<=this.maxFieldCount||this.maxFieldCount==-1){innerHtmlText='<tr>'+'<td class="fieldLabel">'+this.localizedEmail+':</td>'+'<td>'+'<table cellpadding="0" cellspacing="0" style="width:100%;"><tr>'+'<td><input type="text" style="width:200px;" id="email_'+this.fieldCount+'" name="emails['+this.fieldCount+']"/></td>'+'<td class="fieldLabel">'+this.localizedName+':</td>'+'<td align="right"><input type="text" style="width:150px;" id="name_'+this.fieldCount+'" name="names['+this.fieldCount+']"/></td>'+'</tr></table>'+'</td>'+'</tr>'
new Insertion.Before(next,innerHtmlText);if(this.fieldCount==this.maxFieldCount){$(next).hide();$(description).hide();}
renderLayout();}}
var LinkManagerSet=new Hash();var LinkManager=Class.create();LinkManager.prototype={initialize:function(id,options){this.id=id;this.currentShow=options.startShow;this.originalLabel=options.originalLabel||'';this.originalUrl=options.originalUrl||'';this.index=options.index||LinkManagerSet.keys().size();this.sliderId=options.sliderId||'';if(this.originalUrl.length>0&&this.isOriginalUrlExisting())
eval('this.show'+options.startShow+'()');else
this.showUrl();this.callLinkPrefix="phone:";LinkManagerSet.set(id,this);},hideAll:function(){var linkToLabel=$(this.id+'LinkToLabel');if(linkToLabel){linkToLabel.hide();}
var callLinkLabel=$(this.id+'CallLinkLabel');if(callLinkLabel){callLinkLabel.hide();}
var referenceExisting=$(this.id+'ReferenceExisting');if(referenceExisting){referenceExisting.hide();}
var linksOptionsExisting=$(this.id+'LinksOptionsExisting');if(linksOptionsExisting){linksOptionsExisting.show();}
var referenceUrl=$(this.id+'ReferenceUrl');if(referenceUrl){referenceUrl.hide();}
var linksOptionsUrl=$(this.id+'LinksOptionsUrl');if(linksOptionsUrl){linksOptionsUrl.show();}
var referenceCallLink=$(this.id+'ReferenceCallLink');if(referenceCallLink){referenceCallLink.hide();}
var linksOptionsCallLink=$(this.id+'LinksOptionsCallLink');if(linksOptionsCallLink){linksOptionsCallLink.show();}},isOriginalUrlExisting:function(){var select=$(this.id+"ReferenceExistingSelect");if(select){var options=select.getElementsByTagName("option");for(var i=0;i<options.length;i++){if(options[i].value==this.originalUrl){return true;}}}
return false;},showExisting:function(){this.currentShow='Existing';this.hideAll();var linkToLabel=$(this.id+'LinkToLabel');if(linkToLabel){linkToLabel.show();}
var referenceExisting=$(this.id+'ReferenceExisting');if(referenceExisting){referenceExisting.show();}
var linksOptionsExisting=$(this.id+'LinksOptionsExisting');if(linksOptionsExisting){linksOptionsExisting.hide();}
this.selectOriginalUrlInExisting();},selectOriginalUrlInExisting:function(){var select=$(this.id+"ReferenceExistingSelect");if(select){var options=select.getElementsByTagName("option");for(var i=0;i<options.length;i++){if(options[i].value==this.originalUrl){options[i].selected=true;}}}},showUrl:function(){this.currentShow='Url';this.hideAll();var linkToLabel=$(this.id+'LinkToLabel');if(linkToLabel){linkToLabel.show();}
var referenceUrl=$(this.id+'ReferenceUrl');if(referenceUrl){referenceUrl.show();}
var linksOptionsUrl=$(this.id+'LinksOptionsUrl');if(linksOptionsUrl){linksOptionsUrl.hide();}},showCallLink:function(){this.currentShow='CallLink';this.hideAll();var callLinkLabel=$(this.id+'CallLinkLabel');if(callLinkLabel){callLinkLabel.show();}
var referenceCallLink=$(this.id+'ReferenceCallLink');if(referenceCallLink){referenceCallLink.show();}
var linksOptionsCallLink=$(this.id+'LinksOptionsCallLink');if(linksOptionsCallLink){linksOptionsCallLink.hide();}},validate:function(){var result="";if(this.callLinkGiven()){var regExp=/^\+\d+$/;if(!regExp.test($(this.id+'ReferenceCallLinkValue').value)){result="call_link_phone_validates_format_of"}}
return result;},getCallLinkPrefixIfCallLink:function(){if(this.callLinkGiven()){return this.callLinkPrefix}
return'';},getCurrentLabel:function(){if($(this.id+'LabelValue')){return $(this.id+'LabelValue').value;}
return'';},setIndex:function(newIndex){this.index=newIndex;},getIndex:function(){return this.index;},reset:function(){if($(this.id+'LabelValue')){$(this.id+'LabelValue').value=this.originalLabel;}
if(this.originalUrl.indexOf(this.callLinkPrefix)==0){$(this.id+'ReferenceCallLinkValue').value=this.originalUrl.substr(this.callLinkPrefix.length);this.showCallLink();}else{$(this.id+'ReferenceUrlValue').value=this.originalUrl;if(this.isOriginalUrlExisting()){this.showExisting();}else{this.showUrl();}}
this.reset_error();},reset_error:function(){if($(this.id+'LabelValue')){var labelError=$(this.id+'LabelError');labelError.innerHTML='<!---->';if(labelError.visible()){labelError.hide();this.updateComponentHeight(-35);}
$(this.id+'LabelError').hide();$(this.id+'LabelValue').style["border"]="";}
if($(this.id+'ReferenceUrlValue')){$(this.id+'ReferenceUrlValue').style["border"]="";}
if($(this.id+'ReferenceCallLinkValue')){$(this.id+'ReferenceCallLinkValue').style["border"]="";}
if($(this.id+'ReferenceExistingSelect')){$(this.id+'ReferenceExistingSelect').style["border"]="";}
var referenceError=$(this.id+'ReferenceError');referenceError.innerHTML='<!---->';if(referenceError.visible()){referenceError.hide();this.updateComponentHeight(-35);}},urlGiven:function(){return(this.currentShow=='Url');},callLinkGiven:function(){return(this.currentShow=='CallLink');},getCurrentValue:function(){if(this.urlGiven()){return $(this.id+'ReferenceUrlValue').value;}
else if(this.callLinkGiven()){return $(this.id+'ReferenceCallLinkValue').value;}
else{return $(this.id+'ReferenceExistingSelect').value;}},update:function(newLabel,newUrl){this.originalLabel=newLabel;this.originalUrl=newUrl;this.reset();},updateExistingPages:function(newOptions){$(this.id+'ReferenceExistingSelect').replace("<select id='"+this.id+"ReferenceExistingSelect' style='width:100px'>"+
newOptions+"</select>");},updateUrlPath:function(newPath){$(this.id+'ReferenceUrlValue').value=newPath;},setError:function(type,error){this.reset_error();if(type=='Label'){this.setLabelError(error);}
else{if(type=="Url"||type=="Existing"||type=="CallLink"){this.setReferenceError(error);}
else{}}},updateComponentHeight:function(addHeight){if($(this.sliderId)){$(this.sliderId).setStyle({height:parseInt($(this.sliderId).getStyle('height'))+addHeight+'px'});}},setLabelError:function(error){var labelError=$(this.id+'LabelError');labelError.innerHTML=error;if(!labelError.visible()){this.updateComponentHeight(35);labelError.style["display"]="block";}
$(this.id+'LabelValue').style["border"]="2px solid #800000";},setReferenceError:function(error){var referenceError=$(this.id+'ReferenceError');referenceError.innerHTML=error;if(!referenceError.visible()){this.updateComponentHeight(35);referenceError.style["display"]="block";;}
var borderStyle="2px solid #800000";if($(this.id+'ReferenceUrlValue')){$(this.id+'ReferenceUrlValue').style["border"]=borderStyle;}
if($(this.id+'ReferenceCallLinkValue')){$(this.id+'ReferenceCallLinkValue').style["border"]=borderStyle;}
if($(this.id+'ReferenceExistingSelect')){$(this.id+'ReferenceExistingSelect').style["border"]=borderStyle;}},remove:function(){LinkManagerSet.unset(this.id);},setOnCancel:function(onCancelFunction){var id=this.id;$(this.id+'OnCancel').onclick=function(){eval(onCancelFunction);}},setOnApply:function(onApplyFunction){$(this.id+'OnApply').onclick=function(){eval(onApplyFunction);}}}
function storeSelection(){var inst=tinyMCE.selectedInstance;var storeSelection=(tinyMCE.isRealIE)&&!this.isWindow&&tinyMCE.getWindowArg('mce_store_selection',true);inst.selectionBookmark=inst.selection.getBookmark(true);}
function restoreSelection(){var inst=tinyMCE.selectedInstance;inst.getWin().focus();if(inst.selectionBookmark)
inst.selection.moveToBookmark(inst.selectionBookmark);}
function insertImage(image_src){var alt=null;var border=null;var vspace=null;var hspace=null;var width=null;var height=null;var align=null;var inst=tinyMCE.selectedInstance;restoreSelection();tinyMCE.themes['advanced']._insertImage(image_src,alt,border,hspace,vspace,width,height,align);var additionalId=tinyMCE.selectedInstance.formElement.id.replace('tinyTextarea','');tinyMCE.closeWindow('fileManagement'+additionalId);}
function applyAddLink(warrnings){var additionalId=tinyMCE.selectedInstance.formElement.id.replace('tinyTextarea','');var linkManager=LinkManagerSet.get('linkManager'+additionalId);var error=linkManager.validate();if(error==""){var href=linkManager.getCallLinkPrefixIfCallLink()+linkManager.getCurrentValue();var target="";var title=linkManager.getCurrentLabel();var style_class="";var dummy;restoreSelection();tinyMCE.themes['advanced']._insertLink(href,target,title,dummy,style_class);tinyMCE.closeWindow('linkHtmSlider'+additionalId);}else{linkManager.setError("CallLink",new JavascriptManager().getErrorValue(error,warrnings));}}
function saveContent(contenerId){var re=/(<([^>]+)>)/ig;var htmlSource=$(contenerId).value;var htmlSourceClean=htmlSource.replace(re,'');restoreSelection();var inst=tinyMCE.selectedInstance;inst.execCommand('mcePasteText',false,{html:htmlSourceClean,linebreaks:''});var additionalId=tinyMCE.selectedInstance.formElement.id.replace('tinyTextarea','');tinyMCE.closeWindow('pastetextHtmSlider'+additionalId);}
var workingWin;function showWorking(actionName){x=screen.availWidth/2-200;y=screen.availHeight/2-125;workingWin=window.open("/progress/"+actionName,"working"+Math.random(),"left="+x+",top="+y+",height=250,width=400,fullscreen=no,toolbar=no,"+"status=no,menubar=no,scrollbars=no,resizable=no,"+"directories=no,location=no");}
function clearWorking(){try{workingWin.close();}catch(e){}}
function goToPage(formId,controller,action,siteId){var form=document.getElementById(formId);form.action="/"+controller+"/"+action+"/"+siteId;form.submit();}
function updateProgress(id,controller){new Ajax.Request("/"+controller+"/status_indicator/"+id,{asynchronous:true,evalScripts:true,onSuccess:function(response){Element.update("progressIndicator",response.responseText);},onFailure:function(response){document.location.reload();}});}
function addRule(rulesetName,id,rsType){var v=$('select_add_new_rule_'+rulesetName).options[$('select_add_new_rule_'+rulesetName).selectedIndex].value;new Ajax.Updater('rules-data-'+rsType,"/convert/add_rule/"+id+"?rs_type="+rsType+"&rule_type="+v,{asynchronous:true,evalScripts:true,onComplete:function(response){},onFailure:function(response){document.location.reload();}});return false;}
function removeRule(id,ruleId,rsType){new Ajax.Updater('rules-data-'+rsType,"/convert/remove_rule/"+id+"?rule_id="+ruleId,{asynchronous:true,evalScripts:true,onComplete:function(response){},onFailure:function(response){document.location.reload();}});return false;}
function updateButtons(){if($('cancel_button')&&$('close_button')){Element.toggle('cancel_button');Element.toggle('close_button');}}
function clickUseDns(id){if($('site_import_use_dns_'+id).checked){if($('row_dns_name_'+id+'_error')!=null){Element.show('row_dns_name_'+id+'_error');}
Element.show('row_dns_name_'+id);Element.show("dns_name");}else{if($('row_dns_name_'+id+'_error')!=null){Element.hide('row_dns_name_'+id+'_error');}
Element.hide('row_dns_name_'+id);}}
function toggle_active(id){Element.toggle('activate-'+id);Element.toggle('deactivate-'+id);Element.toggle('ia-activate-'+id);Element.toggle('ia-deactivate-'+id);}
function toggle_info(id){Element.toggle('more-href-'+id);Element.toggle('less-href-'+id);Element.hide('reorder-'+id);if(Element.visible('more-href-'+id))
Element.hide('info-'+id);else
Element.show('info-'+id);renderLayout();}
function reorder(id){Element.hide('more-href-'+id);Element.show('less-href-'+id);Element.hide('info-'+id);Element.show('reorder-'+id);renderLayout();}
function toggle_action_form(id){Element.toggle('actions-'+id);Element.toggle('actions-inactive-'+id);if(Element.visible('action-form-'+id))
Element.hide('action-form-'+id);else
Element.show('action-form-'+id);renderLayout();}
function cancel_action(id){Element.show('actions-'+id);Element.hide('actions-inactive-'+id);Element.hide('action-form-'+id);renderLayout();}
function update_tooltips(){enableTooltips('section-rules');}
function reorder_finish(id){Element.toggle('reorder-'+id);Element.show('info-'+id);renderLayout();}
function rule_form_submit(id){if($('hits-'+id)){$('hits-'+id).innerHTML='unknown # of';}
$('action-form-element['+id+']').onsubmit();}
function enable_change_description(){$('change_link').style.display='none';$('description_text').style.display='none';$('description_actions').style.display='';Element.show('description_block');$('description_field').focus();renderLayout();}
function disable_change_description(){$('change_link').style.display='block';$('description_text').style.display='inline';$('description_block').style.display='none';$('description_actions').style.display='none';renderLayout();}
function enable_icon_change(){$('site_icon_change_link').style.display='none';Element.show('site_icon_block');}
function disable_icon_change(){$('site_icon_change_link').style.display='block';$('site_icon_block').style.display='none';$('site_icon').value='';}
function enable_tags_edit(){$('tag_edit_link').style.display='none';$('tags_list_simple').style.display='none';Element.show('tags_list_expanded');renderLayout();$('tag_input').select();}
function disable_tags_edit(siteid){$('tag_edit_link').style.display='inline';$('tags_list_simple').style.display='block';$('tags_list_expanded').style.display='none';renderLayout();new Ajax.Request('/site_profile/simple_tags/'+siteid,{asynchronous:true,evalScripts:true,onSuccess:function(request){Element.update('tags_list_simple',request.responseText);renderLayout();if(window.tagging_callback_on_disable_edit!=null)
tagging_callback_on_disable_edit();},onFailure:function(request){handleFailureResponse(request.responseText);}});}
function add_comment_action(){$('add_comment_link').style.display='none';Element.show('new_comment_form');renderLayout();$('new_comment_buttons').style.display='block';}
function cancel_add_comment_action(){$('new_comment_buttons').style.display='none';$('new_comment_form').setStyle({border:'',padding:'3px',display:'none'});$('comment_errors_box').style.display='none';$('add_comment_link').style.display='';renderLayout();}
function new_comment_form_failure(responseText){if(handleFailureResponse(responseText)==false){Element.show('comment_errors_box');$('new_comment_form').setStyle({border:'2px #f00 solid',padding:'3px'});}}
var promptPublishName=true;var validatePublishName=false;function selectItem(itemName,storeElementID){var selectedItem=document.getElementById(storeElementID);var outerDiv=null;var innerDiv=null;if(selectedItem.value.length>0){outerDiv=document.getElementById("outer"+selectedItem.value);innerDiv=document.getElementById("inner"+selectedItem.value);if(outerDiv!=null){outerDiv.className="outer_not_selected";}
if(innerDiv!=null){innerDiv.className="inner_not_selected";}}
outerDiv=document.getElementById("outer"+itemName);innerDiv=document.getElementById("inner"+itemName);outerDiv.className="outer_selected";innerDiv.className="inner_selected";selectedItem.value=itemName;}
function create_now(){var selectedTemplateValue=document.getElementById("template_name").value
if(!selectedTemplateValue||selectedTemplateValue==""){showPopWin('/create/list_all_templates',800,350,null);}else{showPopWin('/create/list_pages?template_name='+selectedTemplateValue,800,350,null);}
return true;}
function create_site_now(){showPopWin('/create/list_all_templates',800,350,null);}
function submitSelectTemplate(){$("field_form").submit();}
function switchToCustomSiteAddress(){Element.hide("default_site_publish_name_cell");$("site_publish_name_input").value=$("publish_name_prompt").innerHTML;Element.show("custom_site_publish_name_cell");promptPublishName=false;validatePublishName=true;}
function reloadColorsBox(siteId,theme_name){new Ajax.Updater('colorableBox','/editor/change_colors_ajax/'+siteId+'?theme='+theme_name,{onFailure:function(request){handleFailureResponse(request.responseText);}});}
function sitePublishNameUpdater(){if(promptPublishName){var site_name=$("site_name_input").value;new Ajax.Request("/create/prompt_publish_name?site_display_name="+escape(site_name),{onFailure:function(request){handleFailureResponse(request.responseText);}});}}
function sitePublishNameValidator(){if(validatePublishName){$("validation_info").innerHTML="<img src='/images/sitemap_anim_transp.gif' alt='Please wait...'/>"
Element.hide("link_create_site")
Element.show("link_create_site_grey")
var site_name_value=$("site_publish_name_input").value;new Ajax.Request("/create/validate_publish_name?site_publish_name="+escape(site_name_value),{onFailure:function(request){handleFailureResponse(request.responseText);}});}}
function submitSelectTheme(siteId){var scheme=$("scheme").value;var selectedColor=$("selectedColor").value;new Ajax.Request("/editor/themes/"+siteId+"?scheme="+scheme+"&selectedColor="+selectedColor+"&"+Form.serialize("themes_field_form"),{onSuccess:function(request){window.parent.editor.updateEditor();refreshWholeSitemap();},onFailure:function(request){handleFailureResponse(request.responseText);}});}
function submitCreateFromTemplate(sender,adding_pages,warnings){var result=true;var onclick=sender.onclick;sender.onclick="return false;"
if(adding_pages){var pageNameValue=document.getElementById("page_name_input").value;if(!pageNameValue||pageNameValue.strip()==""){alert(new JavascriptManager().getErrorValue("add_pages_select_pages_error_empty_page_name",warnings));result=false;}}else{var siteNameValue=document.getElementById("site_name_input").value;if(!siteNameValue||siteNameValue.strip()==""){alert(new JavascriptManager().getErrorValue("create_site_from_template_error_empty_site_name",warnings));result=false;}}
if(result){$("list_pages_form").submit();}else{sender.onclick=onclick;}}
function submitAddPage(sender,siteId,warnings){var onclick=sender.onclick;sender.onclick="return false;"
var pageName=$("page_name_input").value.trim();if(!pageName||pageName==""){var empty_warning=new JavascriptManager().getErrorValue('add_pages_select_pages_error_empty_page_name',warnings)
setTextfieldModuleMsgError('page_name',empty_warning);sender.onclick=onclick;return false;}else{setTextfieldModuleMsg('page_name','');new Ajax.Request("/create/perform_add_page",{parameters:Form.serialize($("list_pages_form")),asynchronous:true,evalScripts:true,onSuccess:function(request){var status=get_value_by_key('status',request.responseText);if(status=='OK'){var pageId=get_value_by_key('page_id',request.responseText);parent.location.href='/editor/index/'+siteId+'?pageId='+pageId;}else{setTextfieldModuleMsgError('page_name',status);sender.onclick=onclick;}},onFailure:function(request){sender.onclick=onclick;handleFailureRespone(request.responseText);}});}}
function addNewPage(templateName,warnings,site_id,page_id,call_type){if(!site_id||!page_id){if(!SitemapEditor.getCurrentMarkedNode(fstree._root).id){alert(new JavascriptManager().getErrorValue("sitemap_add_new_page_error_parent_page_not_selected",warnings));return false;}else{var node=SitemapEditor.getCurrentMarkedNode(fstree._root).id;var node_tab=node.split('__');site_id=node_tab[0];page_id=node_tab[1];}}
var params='?id='+site_id+'&parentPageId='+page_id+'&template_name='+templateName+'&adding_pages=true'
if(call_type=='popup'||call_type==null){window.parent.showPopWin('/create/list_pages'+params,800,350,null);}else{location.href='/create/list_pages'+params+'&call_type='+call_type;}}
function ImportWorkflow(creatingType){this.creatingType=creatingType;this.stepShown=0;this.stepSelected=0;}
ImportWorkflow.prototype.mouseOverStep=function(step){$(this.creatingType+"_workflow_window_preview_"+this.stepShown).hide();$(this.creatingType+"_workflow_window_preview_"+step).show();$(this.creatingType+"_workflow_window_description_"+this.stepShown).hide();$(this.creatingType+"_workflow_window_description_"+step).show();$(this.creatingType+"_workflow_window_step_"+step).style.backgroundColor="#800000";this.stepShown=step;}
ImportWorkflow.prototype.mouseOutStep=function(){if(this.stepShown!=this.stepSelected){$(this.creatingType+"_workflow_window_preview_"+this.stepShown).hide();$(this.creatingType+"_workflow_window_preview_"+this.stepSelected).show();$(this.creatingType+"_workflow_window_description_"+this.stepShown).hide();$(this.creatingType+"_workflow_window_description_"+this.stepSelected).show();$(this.creatingType+"_workflow_window_step_"+this.stepShown).style.backgroundColor="#000000";this.stepShown=this.stepSelected;}}
ImportWorkflow.prototype.selectStep=function(){if(this.stepShown==this.stepSelected){this.stepSelected=0;}else{if(this.stepSelected>0){$(this.creatingType+"_workflow_window_step_"+this.stepSelected).style.backgroundColor="#000000";}
this.stepSelected=this.stepShown;}}
var StorageLimit=Class.create();StorageLimit={border_color:{'green':'#00a0ff','red':'#880300','gray':'#888888'},total_color:{'green':'#d9f1ff','red':'#eedad9'},used_color:{'green':'#80d0ff','red':'#c78481'},refreshUsedSpace:function(id){var opt={method:'post',onSuccess:function(t){var response=t.responseText.split("&");var actual=parseInt(response[0]);var total=parseInt(response[1]);var actualPercent=parseInt(response[2]);StorageLimit.setValues(id,actual,total,actualPercent);},onFailure:function(t){}}
new Ajax.Request('/user/get_actual_storage_limit',opt);},setValues:function(id,actual,total,actualPercent){if(total==-1){StorageLimit.setValuesUnlimited(id,actual,total,actualPercent);}
else{StorageLimit.setValuesLimited(id,actual,total,actualPercent);}},setValuesLimited:function(id,actual,total,actualPercent){var width=$(id).down('.totalSpace').getStyle('width');width=parseInt(width);var color=null;if(actualPercent<90){color='green';}
else{color='red';}
$(id).down('.borderSpace').setStyle({background:StorageLimit.border_color[color]});$(id).down('.totalSpace').setStyle({background:StorageLimit.total_color[color]});$(id).down('.usedSpace').setStyle({background:StorageLimit.used_color[color]});var actualWidth=actualPercent*width/100;actualWidth=parseInt(actualWidth)+'px'
$(id).down('.usedSpace').setStyle({width:actualWidth});$(id).down('.usedNumber').innerHTML=actual;$(id).down('.totalNumber').innerHTML=total;$(id).down('.percentage').innerHTML=actualPercent+'%';$(id).down('.limitedA').show();$(id).down('.limitedB').show();$(id).down('.limitedC').show();$(id).down('.unlimitedA').hide();},setValuesUnlimited:function(id,actual){var width=$(id).down('.totalSpace').getStyle('width');width=parseInt(width);var color='gray';$(id).down('.borderSpace').setStyle({background:StorageLimit.border_color[color]});$(id).down('.limitedA').hide();$(id).down('.limitedB').hide();$(id).down('.limitedC').hide();$(id).down('.unlimitedA').show();}}
var FormManagerSet=new Hash();var FormManager=Class.create();FormManager.prototype={initialize:function(id){this.id=id;this.fields=["select_items","ref","action","submission"];this.saveValues();FormManagerSet.set(id,this);},cancel:function(){this.hideErrors();this.loadValues();},apply:function(){this.hideErrors();this.saveValues();},loadValues:function(){var oldElement=$(this.id);oldElement.parentNode.insertBefore(this.backupValue.cloneNode(true),oldElement);oldElement.parentNode.removeChild(oldElement);},saveValues:function(){this.backupValue=$(this.id).cloneNode(true);},hideErrors:function(){for(var i=0;i<this.fields.length;i++){this.hideError(this.fields[i]);}},hideError:function(fieldId){var fieldError=$(this.id).getElementsBySelector("#"+fieldId+"_error")[0];if(fieldError!=null){fieldError.style.display="none";}
var field=$(this.id).getElementsBySelector("#"+fieldId)[0];if(field!=null){field.style.border="";}}}
function toggleDisplayDetails(site_id){var image=document.getElementById("detailsButton"+site_id);var detailsRow=document.getElementById("details"+site_id);if(detailsRow.style.display==""){detailsRow.style.display="none";image.src="/images/more_details.gif";}
else{detailsRow.style.display="";image.src="/images/hide_details.gif";}
renderLayout();}
function changeResultsPage(link_url,div_name){new Ajax.Updater({success:div_name},link_url,{asynchronous:true,evalScripts:true});}
function loadTopRatedSites(){new Ajax.Updater({success:"top_rated"},"/search/by_top_rated?page=1",{asynchronous:true,evalScripts:true});}
function sPopup(id,f,w,h,s){var param;if(s!='yes'){s='no';}else{s='yes'}
if(window.screen){aw=screen.availWidth;ah=screen.availHeight-140;}else{aw=640;ah=450;}
var winl=(aw-w)/2;var wint=(ah-h)/2;param="width="+w+",height="+h+",scrollbars="+s+",resizable=no,toolbar=no,userbar=no,location=no,status=no,menubar=no,top="+wint+",left="+winl;newwindow=open(f,id,param);newwindow.focus();}
function markCheckbox(checked,boxName)
{var elements=document.getElementsByName(boxName);for(var i=0;i<elements.length;i=i+1)
{if(!elements[i].disabled)
elements[i].checked=checked;}}
function MM_swapImgRestore(){if(document.MM_swapImgData!=null)
for(var i=0;i<(document.MM_swapImgData.length-1);i+=2)
document.MM_swapImgData[i].src=document.MM_swapImgData[i+1];}
function MM_preloadImages(){if(document.images){var imgFiles=MM_preloadImages.arguments;if(document.preloadArray==null)document.preloadArray=new Array();var i=document.preloadArray.length;with(document)for(var j=0;j<imgFiles.length;j++)if(imgFiles[j].charAt(0)!="#"){preloadArray[i]=new Image;preloadArray[i++].src=imgFiles[j];}}}
function MM_swapImage(){var i,j=0,objStr,obj,swapArray=new Array,oldArray=document.MM_swapImgData;for(i=0;i<(MM_swapImage.arguments.length-2);i+=3){objStr=MM_swapImage.arguments[(navigator.appName=='Netscape')?i:i+1];if((objStr.indexOf('document.layers[')==0&&document.layers==null)||(objStr.indexOf('document.all[')==0&&document.all==null))
objStr='document'+objStr.substring(objStr.lastIndexOf('.'),objStr.length);obj=eval(objStr);if(obj!=null){swapArray[j++]=obj;swapArray[j++]=(oldArray==null||oldArray[j-1]!=obj)?obj.src:oldArray[j];obj.src=MM_swapImage.arguments[i+2];}}
document.MM_swapImgData=swapArray;}
function addCodeToFunction(func,code){if(func==undefined){return code;}
else{return function(){func();code();}}}
function hideImportDetails(value){var node=$("import_details");if(node==null){return;}
if(value){Element.hide(node);}else{Element.show(node);}
renderLayout();}
function show_props_R(obj,obj_name,equ,delim,depth){var result=''
depth--
for(var i in obj){if(parseInt(navigator.appVersion)==2)
var typ='number'
else
var typ=typeof(obj[i])
if(typ=='number'&&i=='length')continue
var del=(typ=='string')?'"':''
var suf=(typ!='string'&&typ!='number'&&typ!='object')?' ('+typ+')':''
result+=obj_name+'.'+i+equ+del+obj[i]+del+suf+delim
if(depth>0)
result+=show_props_R(obj[i],obj_name+'.'+i,equ,delim,depth)}
return result;}
function show_obj(object,depth){var str=show_props_R(eval(object),object,'=</TD><TD VALIGN=TOP>','</TD></TR>\n<TR><TD VALIGN=TOP>',depth)
document.writeln('<TABLE>\n<TR><TD>',str,'</TABLE>')
document.close()}
function update_modal(el_id,txt){Element.update(el_id,txt);$('modal_div').show();}
function update_b_next(){var node=$('checkbox_agree');if(node==null){return;}
if(node.checked){Element.show("continue_blue");Element.hide("continue_grey");}else{Element.hide("continue_blue");Element.show("continue_grey");}}
function featuredButtonStateHandler(button,enabled){if(button.match("prev-arrow"))
$(button).src=enabled?"/images/sectionicons/carousel_small_left.png":"/images/sectionicons/carousel_small_left_dis.png"
else
$(button).src=enabled?"/images/sectionicons/carousel_small_right.png":"/images/sectionicons/carousel_small_right_dis.png"}
function carouselBigButtonStateHandler(button,enabled){if(button.match("prev-arrow"))
$(button).src=enabled?"/images/carousel_left_big.png":"/images/carousel_left_big_grey.png"
else
$(button).src=enabled?"/images/carousel_right_big.png":"/images/carousel_right_big_grey.png"}
function add_links(){var gPopupDoc=gPopFrame.contentDocument?gPopFrame.contentDocument:gPopFrame.contentWindow.document;var link_number=gPopupDoc.getElementById('link_number').value;var links="";for(var i=0;i<link_number;i=i+1)
{var link=gPopupDoc.getElementById('link_'+i);if(link.checked){links=links+"<a href=\""+link.value+"\">"+link.name+"</a><br/>";}}
var text=tinyMCE.getContent('comment_body');tinyMCE.setContent(text+'<br/>'+links);hidePopWin();}
function switchToCustomDomainContainer(){$('which_domain').setAttribute('value','custom');Element.hide("ubikDomainContainer");Element.show("customDomainContainer");Element.hide("bt_continue_grey");Element.show("bt_continue");customDomainValidator();}
function switchToUbikDomainContainer(){$('which_domain').setAttribute('value','ubik');Element.hide("customDomainContainer");Element.show("ubikDomainContainer");Element.hide("bt_continue_grey");Element.show("bt_continue");if($('publish_name').readAttribute('type')!='hidden'){sitePublishNameLastValidator();}}
function sitePublishNameLastValidator(){$("validation_info").innerHTML="<img src='/images/sitemap_anim_transp.gif' alt='Please wait...'/>"
Element.hide("bt_continue");Element.show("bt_continue_grey");var site_name_value=$("publish_name").value;new Ajax.Request("/publish/validate_publish_name",{onFailure:function(request){handleFailureResponse(request.responseText);},parameters:Form.serializeElements(Form.getElements($('publishform')))});}
function customDomainValidator(){$("custom_validation_info").innerHTML="<img src='/images/sitemap_anim_transp.gif' alt='Please wait...'/>"
Element.hide("bt_continue");Element.show("bt_continue_grey");new Ajax.Request("/publish/validate_custom_domain",{onFailure:function(request){handleFailureResponse(request.responseText);},parameters:Form.serializeElements(Form.getElements($('publishform')))});}
if(Object.isUndefined(Effect))
throw("dragdrop.js requires including script.aculo.us' effects.js library");var Droppables={drops:[],remove:function(element){this.drops=this.drops.reject(function(d){return d.element==$(element)});},add:function(element){element=$(element);var options=Object.extend({greedy:true,hoverclass:null,tree:false},arguments[1]||{});if(options.containment){options._containers=[];var containment=options.containment;if(Object.isArray(containment)){containment.each(function(c){options._containers.push($(c))});}else{options._containers.push($(containment));}}
if(options.accept)options.accept=[options.accept].flatten();Element.makePositioned(element);options.element=element;this.drops.push(options);},findDeepestChild:function(drops){deepest=drops[0];for(i=1;i<drops.length;++i)
if(Element.isParent(drops[i].element,deepest.element))
deepest=drops[i];return deepest;},isContained:function(element,drop){var containmentNode;if(drop.tree){containmentNode=element.treeNode;}else{containmentNode=element.parentNode;}
return drop._containers.detect(function(c){return containmentNode==c});},isAffected:function(point,element,drop){return((drop.element!=element)&&((!drop._containers)||this.isContained(element,drop))&&((!drop.accept)||(Element.classNames(element).detect(function(v){return drop.accept.include(v)})))&&Position.within(drop.element,point[0],point[1]));},deactivate:function(drop){if(drop.hoverclass)
Element.removeClassName(drop.element,drop.hoverclass);this.last_active=null;},activate:function(drop){if(drop.hoverclass)
Element.addClassName(drop.element,drop.hoverclass);this.last_active=drop;},show:function(point,element){if(!this.drops.length)return;var drop,affected=[];this.drops.each(function(drop){if(Droppables.isAffected(point,element,drop))
affected.push(drop);});if(affected.length>0)
drop=Droppables.findDeepestChild(affected);if(this.last_active&&this.last_active!=drop)this.deactivate(this.last_active);if(drop){Position.within(drop.element,point[0],point[1]);if(drop.onHover)
drop.onHover(element,drop.element,Position.overlap(drop.overlap,drop.element));if(drop!=this.last_active)Droppables.activate(drop);}},fire:function(event,element){if(!this.last_active)return;Position.prepare();if(this.isAffected([Event.pointerX(event),Event.pointerY(event)],element,this.last_active))
if(this.last_active.onDrop){this.last_active.onDrop(element,this.last_active.element,event);return true;}},reset:function(){if(this.last_active)
this.deactivate(this.last_active);}};var Draggables={drags:[],observers:[],register:function(draggable){if(this.drags.length==0){this.eventMouseUp=this.endDrag.bindAsEventListener(this);this.eventMouseMove=this.updateDrag.bindAsEventListener(this);this.eventKeypress=this.keyPress.bindAsEventListener(this);Event.observe(document,"mouseup",this.eventMouseUp);Event.observe(document,"mousemove",this.eventMouseMove);Event.observe(document,"keypress",this.eventKeypress);}
this.drags.push(draggable);},unregister:function(draggable){this.drags=this.drags.reject(function(d){return d==draggable});if(this.drags.length==0){Event.stopObserving(document,"mouseup",this.eventMouseUp);Event.stopObserving(document,"mousemove",this.eventMouseMove);Event.stopObserving(document,"keypress",this.eventKeypress);}},activate:function(draggable){if(draggable.options.delay){this._timeout=setTimeout(function(){Draggables._timeout=null;window.focus();Draggables.activeDraggable=draggable;}.bind(this),draggable.options.delay);}else{window.focus();this.activeDraggable=draggable;}},deactivate:function(){this.activeDraggable=null;},updateDrag:function(event){if(!this.activeDraggable)return;var pointer=[Event.pointerX(event),Event.pointerY(event)];if(this._lastPointer&&(this._lastPointer.inspect()==pointer.inspect()))return;this._lastPointer=pointer;this.activeDraggable.updateDrag(event,pointer);},endDrag:function(event){if(this._timeout){clearTimeout(this._timeout);this._timeout=null;}
if(!this.activeDraggable)return;this._lastPointer=null;this.activeDraggable.endDrag(event);this.activeDraggable=null;},keyPress:function(event){if(this.activeDraggable)
this.activeDraggable.keyPress(event);},addObserver:function(observer){this.observers.push(observer);this._cacheObserverCallbacks();},removeObserver:function(element){this.observers=this.observers.reject(function(o){return o.element==element});this._cacheObserverCallbacks();},notify:function(eventName,draggable,event){if(this[eventName+'Count']>0)
this.observers.each(function(o){if(o[eventName])o[eventName](eventName,draggable,event);});if(draggable.options[eventName])draggable.options[eventName](draggable,event);},_cacheObserverCallbacks:function(){['onStart','onEnd','onDrag'].each(function(eventName){Draggables[eventName+'Count']=Draggables.observers.select(function(o){return o[eventName];}).length;});}};var Draggable=Class.create({initialize:function(element){var defaults={handle:false,reverteffect:function(element,top_offset,left_offset){var dur=Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02;new Effect.Move(element,{x:-left_offset,y:-top_offset,duration:dur,queue:{scope:'_draggable',position:'end'}});},endeffect:function(element){var toOpacity=Object.isNumber(element._opacity)?element._opacity:1.0;new Effect.Opacity(element,{duration:0.2,from:0.7,to:toOpacity,queue:{scope:'_draggable',position:'end'},afterFinish:function(){Draggable._dragging[element]=false}});},zindex:1000,revert:false,quiet:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,snap:false,delay:0};if(!arguments[1]||Object.isUndefined(arguments[1].endeffect))
Object.extend(defaults,{starteffect:function(element){element._opacity=Element.getOpacity(element);Draggable._dragging[element]=true;new Effect.Opacity(element,{duration:0.2,from:element._opacity,to:0.7});}});var options=Object.extend(defaults,arguments[1]||{});this.element=$(element);if(options.handle&&Object.isString(options.handle))
this.handle=this.element.down('.'+options.handle,0);if(!this.handle)this.handle=$(options.handle);if(!this.handle)this.handle=this.element;if(options.scroll&&!options.scroll.scrollTo&&!options.scroll.outerHTML){options.scroll=$(options.scroll);this._isScrollChild=Element.childOf(this.element,options.scroll);}
Element.makePositioned(this.element);this.options=options;this.dragging=false;this.eventMouseDown=this.initDrag.bindAsEventListener(this);Event.observe(this.handle,"mousedown",this.eventMouseDown);Draggables.register(this);},destroy:function(){Event.stopObserving(this.handle,"mousedown",this.eventMouseDown);Draggables.unregister(this);},currentDelta:function(){return([parseInt(Element.getStyle(this.element,'left')||'0'),parseInt(Element.getStyle(this.element,'top')||'0')]);},initDrag:function(event){if(!Object.isUndefined(Draggable._dragging[this.element])&&Draggable._dragging[this.element])return;if(Event.isLeftClick(event)){var src=Event.element(event);if((tag_name=src.tagName.toUpperCase())&&(tag_name=='INPUT'||tag_name=='SELECT'||tag_name=='OPTION'||tag_name=='BUTTON'||tag_name=='TEXTAREA'))return;var pointer=[Event.pointerX(event),Event.pointerY(event)];var pos=Position.cumulativeOffset(this.element);this.offset=[0,1].map(function(i){return(pointer[i]-pos[i])});Draggables.activate(this);Event.stop(event);}},startDrag:function(event){this.dragging=true;if(!this.delta)
this.delta=this.currentDelta();if(this.options.zindex){this.originalZ=parseInt(Element.getStyle(this.element,'z-index')||0);this.element.style.zIndex=this.options.zindex;}
if(this.options.ghosting){this._clone=this.element.cloneNode(true);this._originallyAbsolute=(this.element.getStyle('position')=='absolute');if(!this._originallyAbsolute)
Position.absolutize(this.element);this.element.parentNode.insertBefore(this._clone,this.element);}
if(this.options.scroll){if(this.options.scroll==window){var where=this._getWindowScroll(this.options.scroll);this.originalScrollLeft=where.left;this.originalScrollTop=where.top;}else{this.originalScrollLeft=this.options.scroll.scrollLeft;this.originalScrollTop=this.options.scroll.scrollTop;}}
Draggables.notify('onStart',this,event);if(this.options.starteffect)this.options.starteffect(this.element);},updateDrag:function(event,pointer){if(!this.dragging)this.startDrag(event);if(!this.options.quiet){Position.prepare();Droppables.show(pointer,this.element);}
Draggables.notify('onDrag',this,event);this.draw(pointer);if(this.options.change)this.options.change(this);if(this.options.scroll){this.stopScrolling();var p;if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){p=[left,top,left+width,top+height];}}else{p=Position.page(this.options.scroll);p[0]+=this.options.scroll.scrollLeft+Position.deltaX;p[1]+=this.options.scroll.scrollTop+Position.deltaY;p.push(p[0]+this.options.scroll.offsetWidth);p.push(p[1]+this.options.scroll.offsetHeight);}
var speed=[0,0];if(pointer[0]<(p[0]+this.options.scrollSensitivity))speed[0]=pointer[0]-(p[0]+this.options.scrollSensitivity);if(pointer[1]<(p[1]+this.options.scrollSensitivity))speed[1]=pointer[1]-(p[1]+this.options.scrollSensitivity);if(pointer[0]>(p[2]-this.options.scrollSensitivity))speed[0]=pointer[0]-(p[2]-this.options.scrollSensitivity);if(pointer[1]>(p[3]-this.options.scrollSensitivity))speed[1]=pointer[1]-(p[3]-this.options.scrollSensitivity);this.startScrolling(speed);}
if(Prototype.Browser.WebKit)window.scrollBy(0,0);Event.stop(event);},finishDrag:function(event,success){this.dragging=false;if(this.options.quiet){Position.prepare();var pointer=[Event.pointerX(event),Event.pointerY(event)];Droppables.show(pointer,this.element);}
if(this.options.ghosting){if(!this._originallyAbsolute)
Position.relativize(this.element);delete this._originallyAbsolute;Element.remove(this._clone);this._clone=null;}
var dropped=false;if(success){dropped=Droppables.fire(event,this.element);if(!dropped)dropped=false;}
if(dropped&&this.options.onDropped)this.options.onDropped(this.element);Draggables.notify('onEnd',this,event);var revert=this.options.revert;if(revert&&Object.isFunction(revert))revert=revert(this.element);var d=this.currentDelta();if(revert&&this.options.reverteffect){if(dropped==0||revert!='failure')
this.options.reverteffect(this.element,d[1]-this.delta[1],d[0]-this.delta[0]);}else{this.delta=d;}
if(this.options.zindex)
this.element.style.zIndex=this.originalZ;if(this.options.endeffect)
this.options.endeffect(this.element);Draggables.deactivate(this);Droppables.reset();},keyPress:function(event){if(event.keyCode!=Event.KEY_ESC)return;this.finishDrag(event,false);Event.stop(event);},endDrag:function(event){if(!this.dragging)return;this.stopScrolling();this.finishDrag(event,true);Event.stop(event);},draw:function(point){var pos=Position.cumulativeOffset(this.element);if(this.options.ghosting){var r=Position.realOffset(this.element);pos[0]+=r[0]-Position.deltaX;pos[1]+=r[1]-Position.deltaY;}
var d=this.currentDelta();pos[0]-=d[0];pos[1]-=d[1];if(this.options.scroll&&(this.options.scroll!=window&&this._isScrollChild)){pos[0]-=this.options.scroll.scrollLeft-this.originalScrollLeft;pos[1]-=this.options.scroll.scrollTop-this.originalScrollTop;}
var p=[0,1].map(function(i){return(point[i]-pos[i]-this.offset[i])}.bind(this));if(this.options.snap){if(Object.isFunction(this.options.snap)){p=this.options.snap(p[0],p[1],this);}else{if(Object.isArray(this.options.snap)){p=p.map(function(v,i){return(v/this.options.snap[i]).round()*this.options.snap[i]}.bind(this));}else{p=p.map(function(v){return(v/this.options.snap).round()*this.options.snap}.bind(this));}}}
var style=this.element.style;if((!this.options.constraint)||(this.options.constraint=='horizontal'))
style.left=p[0]+"px";if((!this.options.constraint)||(this.options.constraint=='vertical'))
style.top=p[1]+"px";if(style.visibility=="hidden")style.visibility="";},stopScrolling:function(){if(this.scrollInterval){clearInterval(this.scrollInterval);this.scrollInterval=null;Draggables._lastScrollPointer=null;}},startScrolling:function(speed){if(!(speed[0]||speed[1]))return;this.scrollSpeed=[speed[0]*this.options.scrollSpeed,speed[1]*this.options.scrollSpeed];this.lastScrolled=new Date();this.scrollInterval=setInterval(this.scroll.bind(this),10);},scroll:function(){var current=new Date();var delta=current-this.lastScrolled;this.lastScrolled=current;if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){if(this.scrollSpeed[0]||this.scrollSpeed[1]){var d=delta/1000;this.options.scroll.scrollTo(left+d*this.scrollSpeed[0],top+d*this.scrollSpeed[1]);}}}else{this.options.scroll.scrollLeft+=this.scrollSpeed[0]*delta/1000;this.options.scroll.scrollTop+=this.scrollSpeed[1]*delta/1000;}
Position.prepare();Droppables.show(Draggables._lastPointer,this.element);Draggables.notify('onDrag',this);if(this._isScrollChild){Draggables._lastScrollPointer=Draggables._lastScrollPointer||$A(Draggables._lastPointer);Draggables._lastScrollPointer[0]+=this.scrollSpeed[0]*delta/1000;Draggables._lastScrollPointer[1]+=this.scrollSpeed[1]*delta/1000;if(Draggables._lastScrollPointer[0]<0)
Draggables._lastScrollPointer[0]=0;if(Draggables._lastScrollPointer[1]<0)
Draggables._lastScrollPointer[1]=0;this.draw(Draggables._lastScrollPointer);}
if(this.options.change)this.options.change(this);},_getWindowScroll:function(w){var T,L,W,H;with(w.document){if(w.document.documentElement&&documentElement.scrollTop){T=documentElement.scrollTop;L=documentElement.scrollLeft;}else if(w.document.body){T=body.scrollTop;L=body.scrollLeft;}
if(w.innerWidth){W=w.innerWidth;H=w.innerHeight;}else if(w.document.documentElement&&documentElement.clientWidth){W=documentElement.clientWidth;H=documentElement.clientHeight;}else{W=body.offsetWidth;H=body.offsetHeight;}}
return{top:T,left:L,width:W,height:H};}});Draggable._dragging={};var SortableObserver=Class.create({initialize:function(element,observer){this.element=$(element);this.observer=observer;this.lastValue=Sortable.serialize(this.element);},onStart:function(){this.lastValue=Sortable.serialize(this.element);},onEnd:function(){Sortable.unmark();if(this.lastValue!=Sortable.serialize(this.element))
this.observer(this.element)}});var Sortable={SERIALIZE_RULE:/^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/,sortables:{},_findRootElement:function(element){while(element.tagName.toUpperCase()!="BODY"){if(element.id&&Sortable.sortables[element.id])return element;element=element.parentNode;}},options:function(element){element=Sortable._findRootElement($(element));if(!element)return;return Sortable.sortables[element.id];},destroy:function(element){element=$(element);var s=Sortable.sortables[element.id];if(s){Draggables.removeObserver(s.element);s.droppables.each(function(d){Droppables.remove(d)});s.draggables.invoke('destroy');delete Sortable.sortables[s.element.id];}},create:function(element){element=$(element);var options=Object.extend({element:element,tag:'li',dropOnEmpty:false,tree:false,treeTag:'ul',overlap:'vertical',constraint:'vertical',containment:element,handle:false,only:false,delay:0,hoverclass:null,ghosting:false,quiet:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,format:this.SERIALIZE_RULE,elements:false,handles:false,onChange:Prototype.emptyFunction,onUpdate:Prototype.emptyFunction},arguments[1]||{});this.destroy(element);var options_for_draggable={revert:true,quiet:options.quiet,scroll:options.scroll,scrollSpeed:options.scrollSpeed,scrollSensitivity:options.scrollSensitivity,delay:options.delay,ghosting:options.ghosting,constraint:options.constraint,handle:options.handle};if(options.starteffect)
options_for_draggable.starteffect=options.starteffect;if(options.reverteffect)
options_for_draggable.reverteffect=options.reverteffect;else
if(options.ghosting)options_for_draggable.reverteffect=function(element){element.style.top=0;element.style.left=0;};if(options.endeffect)
options_for_draggable.endeffect=options.endeffect;if(options.zindex)
options_for_draggable.zindex=options.zindex;var options_for_droppable={overlap:options.overlap,containment:options.containment,tree:options.tree,hoverclass:options.hoverclass,onHover:Sortable.onHover};var options_for_tree={onHover:Sortable.onEmptyHover,overlap:options.overlap,containment:options.containment,hoverclass:options.hoverclass};Element.cleanWhitespace(element);options.draggables=[];options.droppables=[];if(options.dropOnEmpty||options.tree){Droppables.add(element,options_for_tree);options.droppables.push(element);}
(options.elements||this.findElements(element,options)||[]).each(function(e,i){var handle=options.handles?$(options.handles[i]):(options.handle?$(e).select('.'+options.handle)[0]:e);options.draggables.push(new Draggable(e,Object.extend(options_for_draggable,{handle:handle})));Droppables.add(e,options_for_droppable);if(options.tree)e.treeNode=element;options.droppables.push(e);});if(options.tree){(Sortable.findTreeElements(element,options)||[]).each(function(e){Droppables.add(e,options_for_tree);e.treeNode=element;options.droppables.push(e);});}
this.sortables[element.id]=options;Draggables.addObserver(new SortableObserver(element,options.onUpdate));},findElements:function(element,options){return Element.findChildren(element,options.only,options.tree?true:false,options.tag);},findTreeElements:function(element,options){return Element.findChildren(element,options.only,options.tree?true:false,options.treeTag);},onHover:function(element,dropon,overlap){if(Element.isParent(dropon,element))return;if(overlap>.33&&overlap<.66&&Sortable.options(dropon).tree){return;}else if(overlap>0.5){Sortable.mark(dropon,'before');if(dropon.previousSibling!=element){var oldParentNode=element.parentNode;element.style.visibility="hidden";dropon.parentNode.insertBefore(element,dropon);if(dropon.parentNode!=oldParentNode)
Sortable.options(oldParentNode).onChange(element);Sortable.options(dropon.parentNode).onChange(element);}}else{Sortable.mark(dropon,'after');var nextElement=dropon.nextSibling||null;if(nextElement!=element){var oldParentNode=element.parentNode;element.style.visibility="hidden";dropon.parentNode.insertBefore(element,nextElement);if(dropon.parentNode!=oldParentNode)
Sortable.options(oldParentNode).onChange(element);Sortable.options(dropon.parentNode).onChange(element);}}},onEmptyHover:function(element,dropon,overlap){var oldParentNode=element.parentNode;var droponOptions=Sortable.options(dropon);if(!Element.isParent(dropon,element)){var index;var children=Sortable.findElements(dropon,{tag:droponOptions.tag,only:droponOptions.only});var child=null;if(children){var offset=Element.offsetSize(dropon,droponOptions.overlap)*(1.0-overlap);for(index=0;index<children.length;index+=1){if(offset-Element.offsetSize(children[index],droponOptions.overlap)>=0){offset-=Element.offsetSize(children[index],droponOptions.overlap);}else if(offset-(Element.offsetSize(children[index],droponOptions.overlap)/2)>=0){child=index+1<children.length?children[index+1]:null;break;}else{child=children[index];break;}}}
dropon.insertBefore(element,child);Sortable.options(oldParentNode).onChange(element);droponOptions.onChange(element);}},unmark:function(){if(Sortable._marker)Sortable._marker.hide();},mark:function(dropon,position){var sortable=Sortable.options(dropon.parentNode);if(sortable&&!sortable.ghosting)return;if(!Sortable._marker){Sortable._marker=($('dropmarker')||Element.extend(document.createElement('DIV'))).hide().addClassName('dropmarker').setStyle({position:'absolute'});document.getElementsByTagName("body").item(0).appendChild(Sortable._marker);}
var offsets=Position.cumulativeOffset(dropon);Sortable._marker.setStyle({left:offsets[0]+'px',top:offsets[1]+'px'});if(position=='after')
if(sortable.overlap=='horizontal')
Sortable._marker.setStyle({left:(offsets[0]+dropon.clientWidth)+'px'});else
Sortable._marker.setStyle({top:(offsets[1]+dropon.clientHeight)+'px'});Sortable._marker.show();},_tree:function(element,options,parent){var children=Sortable.findElements(element,options)||[];for(var i=0;i<children.length;++i){var match=children[i].id.match(options.format);if(!match)continue;var child={id:encodeURIComponent(match?match[1]:null),element:element,parent:parent,children:[],position:parent.children.length,container:$(children[i]).down(options.treeTag)};if(child.container)
this._tree(child.container,options,child);parent.children.push(child);}
return parent;},tree:function(element){element=$(element);var sortableOptions=this.options(element);var options=Object.extend({tag:sortableOptions.tag,treeTag:sortableOptions.treeTag,only:sortableOptions.only,name:element.id,format:sortableOptions.format},arguments[1]||{});var root={id:null,parent:null,children:[],container:element,position:0};return Sortable._tree(element,options,root);},_constructIndex:function(node){var index='';do{if(node.id)index='['+node.position+']'+index;}while((node=node.parent)!=null);return index;},sequence:function(element){element=$(element);var options=Object.extend(this.options(element),arguments[1]||{});return $(this.findElements(element,options)||[]).map(function(item){return item.id.match(options.format)?item.id.match(options.format)[1]:'';});},setSequence:function(element,new_sequence){element=$(element);var options=Object.extend(this.options(element),arguments[2]||{});var nodeMap={};this.findElements(element,options).each(function(n){if(n.id.match(options.format))
nodeMap[n.id.match(options.format)[1]]=[n,n.parentNode];n.parentNode.removeChild(n);});new_sequence.each(function(ident){var n=nodeMap[ident];if(n){n[1].appendChild(n[0]);delete nodeMap[ident];}});},serialize:function(element){element=$(element);var options=Object.extend(Sortable.options(element),arguments[1]||{});var name=encodeURIComponent((arguments[1]&&arguments[1].name)?arguments[1].name:element.id);if(options.tree){return Sortable.tree(element,arguments[1]).children.map(function(item){return[name+Sortable._constructIndex(item)+"[id]="+
encodeURIComponent(item.id)].concat(item.children.map(arguments.callee));}).flatten().join('&');}else{return Sortable.sequence(element,arguments[1]).map(function(item){return name+"[]="+encodeURIComponent(item);}).join('&');}}};Element.isParent=function(child,element){if(!child.parentNode||child==element)return false;if(child.parentNode==element)return true;return Element.isParent(child.parentNode,element);};Element.findChildren=function(element,only,recursive,tagName){if(!element.hasChildNodes())return null;tagName=tagName.toUpperCase();if(only)only=[only].flatten();var elements=[];$A(element.childNodes).each(function(e){if(e.tagName&&e.tagName.toUpperCase()==tagName&&(!only||(Element.classNames(e).detect(function(v){return only.include(v)}))))
elements.push(e);if(recursive){var grandchildren=Element.findChildren(e,only,recursive,tagName);if(grandchildren)elements.push(grandchildren);}});return(elements.length>0?elements.flatten():[]);};Element.offsetSize=function(element,type){return element['offset'+((type=='vertical'||type=='height')?'Height':'Width')];};var _siteId=null;var _pageLink=null;var _previewUAString=null;var _previewSide=null;var _runtimeParams=null;var _warnings=null;function initializePreview(siteId,pageLink,previewSide,warnings){_siteId=siteId;_pageLink=pageLink;_previewSide=previewSide;_warnings=warnings;}
function setPreview(previewUAString,runtimeParams){_previewUAString=previewUAString;_runtimeParams=runtimeParams;}
function previewLinkModal(pageLink,mode,paramArray,noHistory){if(noHistory==undefined)noHistory=false;var ext_link='';var originalPageUrl=null;for(var i=0;i<paramArray.length;i++){var param=paramArray[i]
var paramName=param[0];var paramValue=param[1];ext_link+="&"+paramName+"="+paramValue;if(paramName=="mb-pageLink"){originalPageUrl=paramValue;}}
switch(mode){case'internal':case'transcoded':case'recipe':case'pagefragment':if(noHistory==false){pagePreviewHistoryModal.push(new Array(pageLink,mode,paramArray));}
_pageLink=pageLink;var preview_frame=document.getElementById("preview-frame");var href=preview_frame.contentWindow.location.href;href=replacePreviewPageLinkModal(href,pageLink);href=replacePreviewFolding(href,ext_link);href=replacePageFragment(href,ext_link);href=replacePrevPageFragment(href,ext_link);preview_frame.contentWindow.location.href=href;checkBackButton();break;case'outside':alert(_warnings['editor_preview_link_discover_outside']);break;case'external':alert(_warnings['editor_preview_link_external']);break;case'calllink':alert(_warnings['editor_preview_link_calllink']);break;case'paypal':alert(_warnings['editor_preview_paypal']);break;default:alert(_warnings['editor_preview_link_unknown']);}}
function historyAvailable(){return(pagePreviewHistoryModal.length>1);}
function checkBackButton(){if(historyAvailable()){document.getElementById("back_preview_button").style["display"]="inline";}else{document.getElementById("back_preview_button").style["display"]="none";}}
function backPreview(){if(historyAvailable()){pagePreviewHistoryModal.pop();var historyElement=pagePreviewHistoryModal[pagePreviewHistoryModal.length-1]
var pageLink=historyElement[0];var mode=historyElement[1];var params=historyElement[2];if(mode==null)mode="internal";if(params==null)params=new Array();previewLinkModal(pageLink,mode,params,true);}}
function previewForm(){alert(_warnings['editor_preview_form']);return false;}
function previewGalleryView()
{alert(_warnings['editor_preview_gallery_view']);return false;}
function previewGalleryNavigation()
{alert(_warnings['editor_preview_gallery_navigation']);return false;}
function onPreviewLoad(iframe){iframe.parentNode.scrollTop=0;var height=null;try{if(iframe.contentWindow.document.height){height=iframe.contentWindow.document.height;}
else
if(iframe.contentWindow.document.body.scrollHeight){height=iframe.contentWindow.document.body.scrollHeight;}
height=height+"px";iframe.style.height=height;}catch(e){}}
function whileScrollPreview(direction){new Ajax.Updater('previewPane','/editor/preview_pane_discover_sites/'+_siteId+'?previewUAString='+_previewUAString+'&pageLink='+_pageLink+'&direction='+direction+'&'+_runtimeParams,{onFailure:function(request){handleFailureResponse(request.responseText);},onSuccess:function(){},evalScripts:true});}
function whilePrevScrollPreview(){whileScrollPreview('prev');}
function whileNextScrollPreview(){whileScrollPreview('next');}
function LiveTree(id,options){this.id=id;if(options==null){options={};}
this.dataUrl=options.dataUrl;this.cssClass=options.cssClass;this.cssStyle=options.cssStyle;this.expandRootItem=(options.expandRootItem==null?true:options.expandRootItem);this.hideRootItem=(options.hideRootItem==null?false:options.hideRootItem);this.rootItemId=options.rootItemId;this.expandItemOnClick=(options.expandItemOnClick==null?true:options.expandItemOnClick);this.initialData=options.initialData;this.scroll=(options.scroll==null?true:options.scroll);this.preloadItems=(options.preloadItems==null?false:options.preloadItems);this.onClickItem=options.onClickItem;this.allowClickBranch=(options.allowClickBranch==null?true:options.allowClickBranch);this.allowClickLeaf=(options.allowClickLeaf==null?true:options.allowClickLeaf);this.onExpandItem=options.onExpandItem;this.onCollapseItem=options.onCollapseItem;this.onLoadItem=options.onLoadItem;this.onUpdateDisplay=options.onUpdateDisplay;this._root={};this._itemsIndex={};this._activeItemId=null;this._scrollToItemIdOnLoad=null;this._scrollToItemMustBeExpanded=false;this._searchCount=0;this._preloadCount=0;this._updateItemDisplay=null;this._renderer=options.renderer;if(this._renderer==null){this._renderer=new LiveTreeRenderer(options);}
this._renderer.tree=this;this._layoutManager=options.layoutManager;if(this._layoutManager==null){this._layoutManager=new LayoutManager(options);}
this._layoutManager.tree=this;}
LiveTree.prototype._markItemForUpdateDisplay=function(item){var tree=this;if(tree._updateItemDisplay==null){tree._updateItemDisplay=item;}else if(tree._updateItemDisplay!=item){tree._updateItemDisplay=tree._root;}}
LiveTree.prototype._getClass=function(suffix){if(suffix!=""){suffix="_"+suffix;}
result='live_tree'+suffix;if(this.cssClass!=null){result+=' '+this.cssClass+suffix;}
return result;}
LiveTree.prototype._escapeId=function(itemId){return escape(itemId);}
LiveTree.prototype._startPreloads=function(item){var tree=this;if(!tree.preloadItems||tree._preloadCount>0){return false;}
if(item==null){item=tree._root;}
if(!item.isExpanded||item.isLoading){return false;}
var tailBranch=true;for(var i=0;i<item.children.length;i++){var child=item.children[i];if(!child.isLeaf&&(child.isLoaded||child.isLoading)){tailBranch=false;}}
var doLoad=false;if(tailBranch){for(var i=0;i<item.children.length;i++){var child=item.children[i];if(!child.isLeaf){if(!child.isLoaded&&!child.isLoading){doLoad=true;child.isLoading=true;child.isLoadingBackground=true;}}}}
var didLoad=false;if(doLoad){tree._preloadCount++;if(item==tree._root){tree._requestItem(tree._root.children[0].id,2,tree._onPreloadItemReceived.bind(tree));}else{tree._requestItem(item.id,3,tree._onPreloadItemReceived.bind(tree));}
if(LiveTree.DEV_SHOW_PRELOADS){tree._markItemForUpdateDisplay(item);}
didLoad=true;}else{for(var i=0;i<item.children.length;i++){var child=item.children[i];if(!child.isLeaf&&child.isLoaded){if(tree._startPreloads(child)){didLoad=true;}}}}
return didLoad;}
LiveTree.prototype._stopLoading=function(){var tree=this;function recurse(item){if(item.isLoading){item.isLoading=false;item.isExpanded=false;}
if(item.children!=null){for(var i=0;i<item.children.length;i++){recurse(item.children[i]);}}}
recurse(tree._root);tree._markItemForUpdateDisplay(tree._root);tree._searchCount=0;tree._preloadCount=0;tree._updateDisplay();}
LiveTree.prototype._onItemFailure=function(request){if(handleRedirectResponse(request.responseText)==false){alert("LiveTree error: could not get data from server: HTTP error: "+request.status);this._stopLoading();}}
LiveTree.prototype._requestItem=function(itemId,depth,onItemCallback,options){var tree=this;if(options==null){options={};}
var url=tree.dataUrl;var requestOptions=new Object();var delim="?";if(itemId!=null){requestOptions.itemId=itemId;url+=delim+"item_id="+escape(itemId);delim="&";}
if(depth!=null){requestOptions.depth=depth;url+=delim+"depth="+depth;delim="&";}
if(options.includeParents){requestOptions.includeParents=true;requestOptions.rootItemId=tree.rootItemId;url+=delim+"include_parents=1&root_item_id="+escape(tree.rootItemId);tree._searchCount++;}
if(options.initialRequest){requestOptions.initialRequest=true;}
new Ajax.Request(url,{onSuccess:function(request){tree._onItemResponse(request,onItemCallback,requestOptions)},onFailure:tree._onItemFailure.bind(tree),evalScripts:true,asynchronous:true,method:"get"});return true;}
LiveTree.prototype._onExpandItemReceived=function(item,requestOptions){var tree=this;item.isLoading=false;tree._markItemForUpdateDisplay(item);tree._startPreloads();tree._updateDisplay();}
LiveTree.prototype._onPreloadItemReceived=function(item,requestOptions){var tree=this;if(tree._preloadCount<=0){return;}
tree._preloadCount--;item.isLoading=false;for(var i=0;i<item.children.length;i++){item.children[i].isLoading=false;}
tree._startPreloads();tree._markItemForUpdateDisplay(item);tree._updateDisplay();}
LiveTree.prototype._onClickExpand=function(item,reload){var tree=this;if(reload==true){item.children=null;item.isLoaded=false;}
var expanded=tree._expandItem(item);tree._updateDisplay();if(expanded){tree.scrollToItem(item.id);if(item.isLoading){tree._scrollToItemIdOnLoad=item.id;tree._scrollToItemMustBeExpanded=true;}
if(tree.onExpandItem!=null){tree.onExpandItem(item);}}}
LiveTree.prototype._onClickCollapse=function(item){var tree=this;if(!item.isExpanded){return;}
item.isExpanded=false;tree._markItemForUpdateDisplay(item);tree._updateDisplay();if(tree.onCollapseItem!=null){tree.onCollapseItem(item);}}
LiveTree.prototype._onClickItem=function(item){var tree=this;if(tree.expandItemOnClick&&!item.isExpanded&&!item.isLeaf){tree._onClickExpand(item);}
if(tree.onClickItem!=null&&((tree.allowClickLeaf&&item.isLeaf)||(tree.allowClickBranch&&!item.isLeaf))){tree.onClickItem(item);}
tree._updateDisplay();}
LiveTree.prototype._getItem=function(itemId){return this._itemsIndex[itemId];}
LiveTree.prototype._getItemElementId=function(itemId){return this.id+"_item_"+this._escapeId(itemId);}
LiveTree.prototype._getItemElement=function(itemId){return $(this._getItemElementId(itemId));}
LiveTree.prototype._isRootItem=function(item){var tree=this;return item==tree._root||(tree.hideRootItem&&item==tree._root.children[0]);}
LiveTree.prototype.isRoot=function(item){var tree=this;if(item.parent.id){return false;}
else{return true;}}
LiveTree.prototype._renderItemContent=function(item){var tree=this;this._layoutManager.renderItem(item,this._renderer);}
LiveTree.prototype._hideItem=function(child){var tree=this;var elem=tree._getItemElement(child.id);if(elem){$(tree.id).removeChild(elem);if(child.isLoaded||(child.isLoading&&!child.isLoadingBackground)){tree._hideItemChildren(child);}}}
LiveTree.prototype._expandItem=function(item,reload){var tree=this;if(tree._layoutManager.onBeforeExpandItem!=null){tree._layoutManager.onBeforeExpandItem(item);}
var didExpand=false;var parent=item.parent;while(parent!=tree._root&&parent!=null){if(!parent.isExpanded){parent.isExpanded=true;tree._markItemForUpdateDisplay(parent);didExpand=true;}
parent=parent.parent;}
var needToLoad=false;if(!item.isExpanded){needToLoad=reload||(item.children==null&&!item.isLoading);if(reload){tree._markItemForUpdateDisplay(item);tree._updateDisplay();item.isLoaded=false;tree._removeChildren(item);}
if(needToLoad){item.isLoading=true;}
item.isLoadingBackground=false;item.isExpanded=true;tree._markItemForUpdateDisplay(item);didExpand=true;}
if(needToLoad){tree._requestItem(item.id,2,tree._onExpandItemReceived.bind(tree));}
if(reload){tree._updateDisplay();}
tree._startPreloads();return didExpand;}
LiveTree.prototype.expandItem=function(itemId){var tree=this;var item=tree._getItem(itemId);var search=false;if(item==null){tree._requestItem(itemId,2,tree._onExpandItemParentsReceived.bind(tree),{includeParents:true});search=true;}else{this._expandItem(this._itemsIndex[itemId]);}
tree._updateDisplay();if(search){tree._scrollTo(0);tree._scrollToItemIdOnLoad=itemId;tree._scrollToItemMustBeExpanded=false;}else{tree.scrollToItem(itemId);}}
LiveTree.prototype.refreshItem=function(itemId,reload){var tree=this;var item=tree._getItem(itemId);if(item!=null){if(reload==true){tree._requestItem(itemId,1,tree._onReloadItemReceived.bind(tree));}
tree._markItemForUpdateDisplay(item);tree._updateDisplay();}}
LiveTree.prototype._hideItemChildren=function(item){var tree=this;tree._hideItem(tree._getLoadingDisplayChild(item));if(!item.isLoading){for(var i=0;i<item.children.length;i++){tree._hideItem(item.children[i]);}}
item.childrenVisible=false;}
LiveTree.prototype._getLoadingDisplayChild=function(item){var tree=this;var loadingChild={id:"___LIVE_TREE_LOADING_"+item.id+"___",name:tree._renderer._getLoadingItemHtml(),children:[],isLoadingDisplay:true,parent:item};tree._setItemDerivedAttributes(loadingChild);return loadingChild;}
LiveTree.prototype._updateDisplay=function(){var tree=this;if(tree._searchCount>0){Element.show(tree.id+"_searching");}else{Element.hide(tree.id+"_searching");}
var updateItem=tree._updateItemDisplay;if(updateItem!=null){tree._updateItemDisplay=null;if(tree._isRootItem(updateItem)){if(tree.hideRootItem){updateItem=tree._root.children[0];}
tree._layoutManager._updateItemChildren(updateItem,$(tree.id+"_root"),0,$(tree.id));}else{tree._renderItemContent(updateItem);var indentLevel=0;var parentItem=updateItem;while(!tree._isRootItem(parentItem)){indentLevel++;parentItem=parentItem.parent;}
if(updateItem.isLoaded||(updateItem.isLoading&&!updateItem.isLoadingBackground)){tree._layoutManager._updateItemChildren(updateItem,tree._getItemElement(updateItem.id),indentLevel,$(tree.id));}}}
tree._checkScrollOnLoad();if(this.onUpdateDisplay!=null){this.onUpdateDisplay();}}
LiveTree.prototype._checkScrollOnLoad=function(){var tree=this;if(tree._scrollToItemIdOnLoad==null){return;}
var item=tree._itemsIndex[tree._scrollToItemIdOnLoad];if(item==null){return;}
if(tree._scrollToItemMustBeExpanded){if(item.isLoaded){if(item.isExpanded){tree.scrollToItem(item.id);}
tree._scrollToItemIdOnLoad=null;}}else{tree.scrollToItem(item.id);tree._scrollToItemIdOnLoad=null;}}
LiveTree.prototype._getElementPosition=function(destinationLink){var destx=destinationLink.offsetLeft;var desty=destinationLink.offsetTop;var thisNode=destinationLink;while(thisNode.offsetParent&&(thisNode.offsetParent!=document.body)){thisNode=thisNode.offsetParent;destx+=thisNode.offsetLeft;desty+=thisNode.offsetTop;}
return{x:destx,y:desty}}
LiveTree.prototype._scrollTo=function(top){var tree=this;if(!tree.scroll){return;}
var containerElem=$(tree.id);containerElem.scrollTop=top;}
LiveTree.prototype.scrollToItem=function(itemId){var tree=this;if(!tree.scroll){return;}
var itemElem=tree._getItemElement(itemId);if(itemElem==null){return;}
var containerElem=$(tree.id);var itemPos=tree._getElementPosition(itemElem);var containerPos=tree._getElementPosition(containerElem);var itemTop=itemPos.y-containerPos.y;var containerHeight=containerElem.offsetHeight-35;if(itemTop+itemElem.offsetHeight>containerElem.scrollTop+containerHeight||itemTop<containerElem.scrollTop){if(itemElem.offsetHeight>containerHeight){tree._scrollTo(itemTop);}else{if(itemTop<containerElem.scrollTop+containerHeight){tree._scrollTo(itemTop+itemElem.offsetHeight-containerHeight);}else{tree._scrollTo(itemTop-containerHeight/2+itemElem.offsetHeight/2);}}}
tree._scrollToItemOnLoad=null;}
LiveTree.prototype._onExpandItemParentsReceived=function(item,requestOptions){var tree=this;var requestedItem=tree._getItem(requestOptions.itemId);this._expandItem(requestedItem);tree._startPreloads();tree._updateDisplay();}
LiveTree.prototype._onExpandParentsOfItemReceived=function(item,requestOptions){var tree=this;var requestedItem=tree._getItem(requestOptions.itemId);tree._expandItem(requestedItem.parent);tree._startPreloads();tree._updateDisplay();}
LiveTree.prototype._onReloadItemReceived=function(item,requestOptions){var tree=this;tree._markItemForUpdateDisplay(item);tree._updateDisplay();}
LiveTree.prototype.expandParentsOfItem=function(itemId){var tree=this;var item=tree._getItem(itemId);var search=false;if(item==null){tree._requestItem(itemId,1,tree._onExpandParentsOfItemReceived.bind(tree),{includeParents:true});search=true;}else{tree._expandItem(item.parent);}
tree._updateDisplay();if(search){tree._scrollTo(0);tree._scrollToItemIdOnLoad=itemId;tree._scrollToItemMustBeExpanded=false;}else{tree.scrollToItem(itemId);}}
LiveTree.prototype.activateItem=function(itemId){var tree=this;var oldElem=$(tree.id+'_item_name_'+tree._escapeId(tree._activeItemId));if(oldElem!=null){oldElem.className=tree._getClass("item_name");}
var elem=$(tree.id+'_item_name_'+tree._escapeId(itemId));if(elem!=null){elem.className=tree._getClass("item_name")+" "+tree._getClass("active_item_name");}
tree._activeItemId=itemId;tree.scrollToItem(itemId);}
LiveTree.prototype._setItemDerivedAttributes=function(child){child.isLeaf=!(child.children==null||child.children.length>0);child.isLoaded=child.children!=null;}
LiveTree.prototype._setupNewItemChildren=function(item){var tree=this;if(item.children!=null){for(var i=0;i<item.children.length;i++){var child=item.children[i];tree._setItemDerivedAttributes(child);child.parent=item;tree._itemsIndex[child.id]=child;tree._setupNewItemChildren(child);}}}
LiveTree.prototype._removeChildren=function(item){if(item.children!=null){for(var i=0;i<item.children.length;i++){var child=item.children[i];this._removeChildren(child);this._itemsIndex[child.id]=null;}
item.children=null;this._setItemDerivedAttributes(item);}}
LiveTree.prototype._addNewItems=function(newItem){var tree=this;var oldItem=tree._getItem(newItem.id);if(oldItem!=null){var oldChildren=oldItem.children;for(var i in newItem){oldItem[i]=newItem[i];}
oldItem.children=oldChildren;if(newItem.children!=null){tree._removeChildren(oldItem);oldItem.children=newItem.children;tree._setupNewItemChildren(oldItem);tree._setItemDerivedAttributes(oldItem);}}
return oldItem;}
LiveTree.prototype._onItemResponse=function(request,onItemCallback,requestOptions){var tree=this;if(requestOptions.includeParents&&tree._searchCount>0){tree._searchCount--;}
var item;try{eval("item = "+request.responseText);}catch(e){alert("LiveTree error: cannot parse data from server: "+e);tree._stopLoading();return;}
if(requestOptions.initialRequest){tree._handleInitialItem(item);}else{var oldItem=tree._addNewItems(item);if(oldItem==null){alert("LiveTree error: cannot add received item to tree");tree._stopLoading();return;}}
onItemCallback(oldItem,requestOptions);}
LiveTree.prototype._onInitialItemReceived=function(){var tree=this;this.rootItemId=tree._root.children[0].id;Element.hide($(tree.id+"_loading"));if(tree.hideRootItem||tree.expandRootItem){tree._expandItem(tree._root.children[0]);}
tree._root.isExpanded=true;tree._markItemForUpdateDisplay(tree._root);tree._startPreloads();tree._updateDisplay();}
LiveTree.prototype._handleInitialItem=function(item){var tree=this;tree._root.children=[item];tree._root.isLoaded=true;tree._setupNewItemChildren(tree._root);}
LiveTree.prototype.start=function(){var tree=this;if(tree.initialData!=null){tree._handleInitialItem(tree.initialData);tree._onInitialItemReceived(tree.initialData);}else{tree._requestItem(tree.rootItemId,(tree.expandRootItem||tree.hideRootItem)?2:1,tree._onInitialItemReceived.bind(tree),{initialRequest:true});}}
LiveTree.prototype.render=function(){var tree=this;document.write(tree._renderer.getHtml());tree.start();}
function LiveTreeRenderer(options){this.tree=null;if(options==null){options={};}
this.collapsedItemIconHtml=options.collapsedItemIconHtml;this.expandedItemIconHtml=options.expandedItemIconHtml;this.leafIconHtml=options.leafIconHtml;this.loadingIconHtml=options.loadingIconHtml;this.loadingTreeHtml=options.loadingTreeHtml;this.searchingHtml=options.searchingHtml;this.loadingItemHtml=options.loadingItemHtml;}
LiveTreeRenderer.prototype._getCollapsedItemIconHtml=function(item){var tree=this.tree;if(this.collapsedItemIconHtml!=null){return this.collapsedItemIconHtml;}else{return'<img src="/images/live_tree_transparent_pixel.gif" alt="&gt;" id="'+tree.id+'_item_icon_'+tree._escapeId(item.id)+'" class="'+tree._getClass("item_icon")+' '+tree._getClass("branch_collapsed_icon")+'" />';}}
LiveTreeRenderer.prototype._getExpandedItemIconHtml=function(item){var tree=this.tree;if(this.expandedItemIconHtml!=null){return this.expandedItemIconHtml;}else{return'<img src="/images/live_tree_transparent_pixel.gif" alt="v" id="'+tree.id+'_item_icon_'+tree._escapeId(item.id)+'" class="'+tree._getClass("item_icon")+' '+tree._getClass("branch_expanded_icon")+'" />';}}
LiveTreeRenderer.prototype._getLeafIconHtml=function(item){var tree=this.tree;if(this.leafIconHtml!=null){return this.leafIconHtml;}else{return'<img src="/images/live_tree_transparent_pixel.gif" alt=" " id="'+tree.id+'_item_icon_'+tree._escapeId(item.id)+'" class="'+tree._getClass("item_icon")+' '+tree._getClass("leaf_icon")+'" />';}}
LiveTreeRenderer.prototype._getLoadingIconHtml=function(){var tree=this.tree;if(this.loadingIconHtml!=null){return this.loadingIconHtml;}else{return'<img src="/images/live_tree_loading_spinner.gif" alt="[loading]" class="'+tree._getClass("loading_icon")+'" />';}}
LiveTreeRenderer.prototype._getLoadingTreeHtml=function(){var tree=this.tree;if(this.loadingTreeHtml!=null){return this.loadingTreeHtml;}else{return'<span class="'+tree._getClass("loading_tree")+'">'+this._getLoadingIconHtml()+'Loading tree data&hellip;</span>';}}
LiveTreeRenderer.prototype._getSearchingHtml=function(){var tree=this.tree;if(this.searchingHtml!=null){return this.searchingHtml;}else{return'<div class="'+tree._getClass("searching")+'">'+this._getLoadingIconHtml()+'Searching for item&hellip;</div>';}}
LiveTreeRenderer.prototype._getLoadingItemHtml=function(){var tree=this.tree;if(this.loadingItemHtml!=null){return this.loadingItemHtml;}else{return this._getLoadingIconHtml()+'Loading&hellip;';}}
LiveTreeRenderer.prototype.getHtml=function(){var tree=this.tree;var html='';html+='<div id="'+tree.id+'" class="'+tree._getClass("")+'"';if(tree.cssStyle!=null){html+=' style="'+tree.cssStyle+'"';}
html+='>';html+='<div id="'+tree.id+'_searching" style="display:none">'+this._getSearchingHtml()+'</div>';html+='<div id="'+tree.id+'_loading">'+this._getLoadingTreeHtml()+'</div>';html+='<div id="'+tree.id+'_root"></div>';html+='</div>';return html;}
LiveTreeRenderer.prototype.renderItemContent=function(tree,item){var html='';if(!item.isLeaf){html+='<a href="#" id="'+tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)+'" class="'+tree._getClass("branch_expand_collapse_link")+'">';if(item.isExpanded){html+=this._getExpandedItemIconHtml(item);}else{html+=this._getCollapsedItemIconHtml(item);}
html+='</a>';}else{html+=this._getLeafIconHtml(item);}
var itemLinkExists=false;var extraNameClass="";if(item.id==tree._activeItemId){extraNameClass=" "+tree._getClass("active_item_name");}
var name_html='<span id="'+tree.id+'_item_name_'+tree._escapeId(item.id)+'" class="'+tree._getClass("item_name")+extraNameClass+'">'+item.name+'</span>';if(((tree.onClickItem!=null&&((tree.allowClickLeaf&&item.isLeaf)||(tree.allowClickBranch&&!item.isLeaf)))||(tree.expandItemOnClick&&!item.isLeaf&&!item.isExpanded))&&!item.isLoadingDisplay){name_html='<a href="#" id="'+tree.id+'_item_link_'+tree._escapeId(item.id)+'" class="'+tree._getClass("item_link")+'">'+name_html+'</a>';itemLinkExists=true;}
if(LiveTree.DEV_SHOW_ITEM_IDS){name_html="("+item.id+") "+name_html;}
html+=name_html;if(LiveTree.DEV_SHOW_PRELOADS){if(item.isLoading&&item.isLoadingBackground){html+=" "+this._getLoadingIconHtml();}}
$(tree.id+"_item_content_"+tree._escapeId(item.id)).innerHTML=html;if(!item.isLeaf){if(item.isExpanded){$(tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)).onclick=function(){tree._onClickCollapse(item);return false}}else{$(tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)).onclick=function(){tree._onClickExpand(item);return false}}}
if(itemLinkExists){$(tree.id+'_item_link_'+tree._escapeId(item.id)).onclick=function(){tree._onClickItem(item);return false}}}
function LayoutManager(options){this.tree=null;if(options==null){options={};}}
LayoutManager.prototype._updateItemChildren=function(item,afterElem,indentLevel,containerElem){var tree=this.tree;if(!item.isExpanded){tree._hideItemChildren(item);}else{if(item.isLoaded){tree._hideItem(tree._getLoadingDisplayChild(item));for(var i=0;i<item.children.length;i++){this.createChild(item.children[i],indentLevel,afterElem,containerElem);}}else{this.createChild(tree._getLoadingDisplayChild(item),afterElem,containerElem);}
item.childrenVisible=true;}
return afterElem;}
LayoutManager.prototype.createChild=function(child,indentLevel,afterElem,containerElem){var tree=this.tree;var elem=tree._getItemElement(child.id);if(elem==null){var html="";html+='<div style="border-style: solid; border-color: red;" id="'+tree.id+'_item_'+tree._escapeId(child.id)+'" class="'+tree._getClass("item")+'">';for(var j=0;j<indentLevel;j++){html+='<div class="'+tree._getClass("item_indent")+'">';}
html+='<span id="'+tree.id+'_item_content_'+tree._escapeId(child.id)+'" class="'+tree._getClass("item_heading")+'"></span>';for(var j=0;j<indentLevel;j++){html+='</div>';}
html+='</div>';new Insertion.After(afterElem,html);elem=tree._getItemElement(child.id);}
tree._renderItemContent(child);afterElem=elem;if(child.isLoaded||(child.isLoading&&!child.isLoadingBackground)){afterElem=this._updateItemChildren(child,afterElem,indentLevel+1,containerElem);}}
LayoutManager.prototype.renderItem=function(item,renderer){renderer.renderItemContent(this.tree,item);}
var _siteId=null;var _previewUAString=null;var _previewSide=null;var _runtimeParams=null;var _warnings=null;function initializePreview(siteId,previewSide,warnings){_siteId=siteId;_previewSide=previewSide;_warnings=warnings;}
function setPreview(previewUAString,runtimeParams){_previewUAString=previewUAString;_runtimeParams=runtimeParams;}
function previewLink(pageId,mode,paramArray,noHistory,noScroll){if(noHistory==undefined)noHistory=false;var ext_link='';var originalPageUrl=null;for(var i=0;i<paramArray.length;i++){var param=paramArray[i]
var paramName=param[0];var paramValue=param[1];ext_link+="&"+paramName+"="+paramValue;if(paramName=="mb-pageLink"){originalPageUrl=paramValue;}}
switch(mode){case'internal':case'transcoded':case'recipe':case'pagefragment':if(noHistory==false){top.pagePreviewHistory.push(new Array(pageId,mode,paramArray));}
var previousPageId=top.editorTabsSwitcher.currentPageId;top.goToEditPage(_siteId,previousPageId,pageId,_previewSide,ext_link,noScroll);break;case'outside':window.parent.showPopWin('/dialogue/requester/'+_siteId+'?pageId='+
top.editorTabsSwitcher.currentPageId+ext_link,700,350,null);break;case'external':alert(_warnings['editor_preview_link_external']);break;case'calllink':alert(_warnings['editor_preview_link_calllink']);break;case'paypal':alert(_warnings['editor_preview_paypal']);break;default:alert(_warnings['editor_preview_link_unknown']);}}
function historyAvailable(){return(top.pagePreviewHistory.length>1);}
function checkBackButton(){if(historyAvailable()){document.getElementById("back_preview_button").style["visibility"]="visible";}else{document.getElementById("back_preview_button").style["visibility"]="hidden";}}
function backPreview(){if(historyAvailable()){top.pagePreviewHistory.pop();var historyElement=top.pagePreviewHistory[top.pagePreviewHistory.length-1]
var pageId=historyElement[0];var mode=historyElement[1];var params=historyElement[2];if(mode==null)mode="internal";if(params==null)params=new Array();previewLink(pageId,mode,params,true);}}
function previewForm(){alert(_warnings['editor_preview_form']);return false;}
function previewGalleryView()
{alert(_warnings['editor_preview_gallery_view']);return false;}
function previewGalleryNavigation()
{alert(_warnings['editor_preview_gallery_navigation']);return false;}
function whileScrollPreview(direction,isDevicePreview){if(isDevicePreview==undefined)
isDevicePreview=true;new Ajax.Request('/editor/preview_pane/'+_siteId+'?previewUAString='+_previewUAString+'&pageId='+top.editorTabsSwitcher.currentPageId+'&direction='+direction+'&isDevicePreview='+isDevicePreview+'&iframeId=device_iframe'+'&'+_runtimeParams,{onFailure:function(request){handleFailureResponse(request.responseText);},onSuccess:function(request){Element.update("previewPane",request.responseText);top.renderPreviewLayout();},evalScripts:true});}
function whilePrevScrollPreview(){whileScrollPreview('prev');}
function whileNextScrollPreview(){whileScrollPreview('next');}
function showMobilePreviewLink(){whileScrollPreview("curr",true);$("hideMobilePreviewLink").show();$("showMobilePreviewLink").hide();$("editorPreviewCarouselAndDetails").show();}
function hideMobilePreviewLink(){whileScrollPreview("curr",false);$("hideMobilePreviewLink").hide();$("showMobilePreviewLink").show();$("editorPreviewCarouselAndDetails").hide();}
function ContentItemsManager(siteId){this.siteId=siteId;this.contentItemTypeSelected=null;}
function addContentItem(){if(contentItemsManager.contentItemTypeSelected!=null){disableContentItemsEditing();new Ajax.Request("/content_item/add/"+contentItemsManager.siteId+"?content_type="+contentItemsManager.contentItemTypeSelected,{asynchronous:true,onSuccess:function(response){onAddContentItemSuccess(response);},onFailure:function(response){if(handleFailureResponse(response.responseText)==false){enableContentItemsEditing();showContentItemsError(response.responseText);}}});}}
function deleteContentItem(siteId,contentItemId){disableContentItemsEditing();Element.remove(contentItemId);contentItemId=contentItemId.substring("content_item".length);new Ajax.Request("/content_item/delete/"+siteId+"?content_id="+contentItemId,{asynchronous:true,onSuccess:function(response){enableContentItemsEditing();refreshDevicePreview();},onFailure:function(response){if(handleFailureResponse(response.responseText)==false){enableContentItemsEditing();refreshContainer();}}});}
function disableContentItemsEditing(){disableContent("blockingProgressIn");disableContentLists();}
function enableContentItemsEditing(){enableContent("blockingProgressIn");enableContentLists();}
function onAddContentItemSuccess(response){Element.update("content_items_types_and_list",response.responseText);enableContentItemsEditing();refreshDevicePreview();}
function showContentItemsError(errorMessage){showErrorMessage(errorMessage);}
function switchDetailsDisplaying(contentItemId){var detailsInfo=document.getElementById("details_body"+contentItemId);var headerInfo=document.getElementById("content_item_header"+contentItemId);if(detailsInfo.style.display=="none"){detailsInfo.style.display="";headerInfo.style.display="none";}else{detailsInfo.style.display="none";headerInfo.style.display="";}}
function showTextItemEditor(contentItemId){var textElement=document.getElementById("text_item_text_"+contentItemId);var textEditElement=document.getElementById("text_item_text_edit_"+contentItemId);textElement.style.display="none";textEditElement.style.display="";var newContent=$('tinyTextarea'+contentItemId).innerHTML;if(tinyMCE.getInstanceById("tinyTextarea"+contentItemId)==null){textEditElement.focus();tinyMCE.execCommand('mceAddControl',false,"tinyTextarea"+contentItemId);}
$('tinyTextarea'+contentItemId).innerHTML=newContent;}
function hideTextItemEditor(contentItemId){var textElement=document.getElementById("text_item_text_"+contentItemId);if(textElement==null){return;}
var textEditElement=document.getElementById("text_item_text_edit_"+contentItemId);textElement.style.display="";textEditElement.style.display="none";}
function isSafari(){return navigator.userAgent.indexOf("Safari")>=0;}
function isExplorer(){return(navigator.appName=="Microsoft Internet Explorer");}
function replaceImage(contentItemId,text){Element.update("content_item_preview"+contentItemId,text);document.getElementById("image_filename"+contentItemId).style.display="inline";}
function replaceImageFilename(contentItemId,text){Element.update("image_filename"+contentItemId,text);}
function replaceImageFilesize(contentItemId,text){Element.update("image_filesize"+contentItemId,text);}
function renameClick(contentItemId){document.getElementById("content_details_name"+contentItemId).style.display="none";document.getElementById("content_rename"+contentItemId).style.display="";}
function showContentName(contentItemId){document.getElementById("content_details_name"+contentItemId).style.display="";document.getElementById("content_rename"+contentItemId).style.display="none";}
function renameCancelClick(contentItemId){showContentName(contentItemId);Element.update("content_rename_error"+contentItemId,"");}
function renameSaveClick(siteId,contentItemId,invalidNameMessage,revisionCheck){var inputField=document.getElementById("new_name_input"+contentItemId);var regExp=/[a-zA-Z0-9_]+/i;if(inputField.value.match(regExp)!=inputField.value){Element.update("content_rename_error"+contentItemId,invalidNameMessage);}else{new Ajax.Request("/content_item/rename/"+siteId+"?content_id="+contentItemId+"&content_new_name="+escape(inputField.value)+"&revision_check="+revisionCheck,{asynchronous:true,onSuccess:function(response){renameSuccess(contentItemId,response.responseText);enableContent();},onFailure:function(response){var result=handleFailureResponse(response.responseText,"renameSaveClick",new Array(siteId,contentItemId,invalidNameMessage,false));if(result==false){Element.update("content_rename_error"+contentItemId,response.responseText);}}});}}
function renameSuccess(contentItemId,responseText){showContentName(contentItemId);Element.update("content_name_field"+contentItemId,responseText);Element.update("content_details_name"+contentItemId,responseText);Element.update("content_rename_error"+contentItemId,"");refreshDevicePreview();}
function saveText(contentItemId,revisionCheck){var tinyEditor=tinyMCE.getInstanceById("tinyTextarea"+contentItemId);tinyEditor.triggerSave(false,false);form=$("text_item_content_form"+contentItemId);var newContent=$('tinyTextarea'+contentItemId).innerHTML;new Ajax.Request(form.action,{parameters:Form.serialize(form)+"&content_id="+contentItemId+"&revision_check="+revisionCheck,asynchronous:false,evalScripts:true,onSuccess:function(request){saveTextSuccess(contentItemId);enableContent();$('tinyTextarea'+contentItemId).innerHTML=newContent;},onFailure:function(request){handleFailureResponse(request.responseText,"saveText",new Array(contentItemId,false));}});}
function cancelEditText(contentItemId){tinyMCE.getInstanceById("tinyTextarea"+contentItemId).setHTML(document.getElementById("tinyTextarea"+contentItemId).innerHTML);hideTextItemEditor(contentItemId);}
function saveTextSuccess(contentItemId){document.getElementById("text_item_text_"+contentItemId).innerHTML=tinyMCE.getInstanceById("tinyTextarea"+contentItemId).getHTML();hideTextItemEditor(contentItemId);refreshDevicePreview();}
function showDescriptionEditor(contentItemId){Element.hide("content_item_description"+contentItemId);Element.show("content_item_description_editor"+contentItemId);document.getElementById("content_item_description_edited_value"+contentItemId).focus();var originalDescription=document.getElementById("content_item_description_original_value"+contentItemId);var editedDescription=document.getElementById("content_item_description_edited_value"+contentItemId);editedDescription.value=originalDescription.innerHTML.strip();}
function hideDescriptionEditor(contentItemId){Element.show("content_item_description"+contentItemId);Element.hide("content_item_description_editor"+contentItemId);}
function cancelDescriptionEdit(contentItemId){var originalDescription=document.getElementById("content_item_description_original_value"+contentItemId);var editedDescription=document.getElementById("content_item_description_edited_value"+contentItemId);hideDescriptionEditor(contentItemId);}
function saveDescription(contentItemId,siteId,revisionCheck){var editedDescription=document.getElementById("content_item_description_edited_value"+contentItemId);new Ajax.Request("/content_item/save_description?id="+siteId+"&content_id="+contentItemId+"&content_description="+editedDescription.value+"&revision_check="+revisionCheck,{asynchronous:true,onSuccess:function(response){var originalDescription=document.getElementById("content_item_description_original_value"+contentItemId);originalDescription.innerHTML=editedDescription.value;hideDescriptionEditor(contentItemId);enableContent();},onFailure:function(response){if(handleFailureResponse(response.responseText,"saveDescription",new Array(contentItemId,siteId,false))==false){hideDescriptionEditor(contentItemId);}}});}
function setImage(filename,resultDivId,siteId,contentItemId,revisionCheck){new Ajax.Request("/content_item/set_image/"+siteId+"?content_id="+contentItemId+"&filename="+filename+"&revision_check="+revisionCheck,{asynchronous:false,evalScripts:true,onSuccess:function(request){Element.update(resultDivId,request.responseText);enableContent();},onFailure:function(request){handleFailureResponse(request.responseText,"setImage",new Array(filename,resultDivId,siteId,contentItemId,false));}});}
function showLabelEditor(contentItemId){Element.hide("content_item_label"+contentItemId);Element.show("content_item_label_editor"+contentItemId);document.getElementById("content_item_label_edited_value"+contentItemId).focus();var originalLabel=document.getElementById("content_item_label_original_value"+contentItemId);var editedLabel=document.getElementById("content_item_label_edited_value"+contentItemId);editedLabel.value=originalLabel.innerHTML.strip();}
function hideLabelEditor(contentItemId){Element.show("content_item_label"+contentItemId);Element.hide("content_item_label_editor"+contentItemId);}
function cancelLabelEdit(contentItemId){var originalLabel=document.getElementById("content_item_label_original_value"+contentItemId);var editedLabel=document.getElementById("content_item_label_edited_value"+contentItemId);hideLabelEditor(contentItemId);}
function saveLabel(contentItemId,siteId,revisionCheck){var editedLabel=document.getElementById("content_item_label_edited_value"+contentItemId);new Ajax.Request("/content_item/save_label?id="+siteId+"&content_id="+contentItemId+"&content_label="+editedLabel.value+"&revision_check="+revisionCheck,{asynchronous:true,onSuccess:function(response){var originalLabel=document.getElementById("content_item_label_original_value"+contentItemId);originalLabel.innerHTML=editedLabel.value;hideLabelEditor(contentItemId);enableContent();},onFailure:function(response){if(handleFailureResponse(response.responseText,"saveLabel",new Array(contentItemId,siteId,false))==false){hideLabelEditor(contentItemId);}}});}
function cancelOperation(){refreshContainer();}
function cancelContentItemEdits(siteId,contentItemId){new Ajax.Request("/content_item/content_item/"+siteId+"?citemId="+contentItemId+"&showDetails=true",{asynchronous:false,evalScripts:true,onSuccess:function(request){hideTextItemEditor(contentItemId);FileFieldManagerSet.set("fileManagement"+contentItemId,null);Element.update("content_item"+contentItemId,request.responseText);enableContent();refreshDevicePreview();enableTooltips("content_item"+contentItemId,true);},onFailure:function(request){handleFailureResponse(request.responseText);enableContent();}});}
function enableContentItemsList(){Sortable.create('content_list',{constraint:false,containment:['carousel-list'],dropOnEmpty:true,onUpdate:function(r){disableContent("blockingProgressIn");addContentItem();},handle:'handle',revert:true,scroll:'content_item_editor_items_container',outSensitivityVertical:true,scrollSensitivity:60,outSensitivity:60});}
function disableContentItemsList(){Sortable.destroy("content_list");}
function enableContentTypesList(){Sortable.create('carousel-list',{onDragBegin:function(element){if(element.id=="contentitem_text_icon"){contentItemsManager.contentItemTypeSelected="ContentItems::TextItem";}else{contentItemsManager.contentItemTypeSelected="ContentItems::ImageItem";}},containment:[],constraint:false,handle:'handle',revert:true});}
function disableContentTypesList(){Sortable.destroy("carousel-list");}
function enableContentLists(){enableContentItemsList();enableContentTypesList();}
function disableContentLists(){disableContentItemsList();disableContentTypesList();}
if(typeof Effect=='undefined')
throw("controls.js requires including script.aculo.us' effects.js library");var Autocompleter={};Autocompleter.Base=Class.create({baseInitialize:function(element,update,options){element=$(element);this.element=element;this.update=$(update);this.hasFocus=false;this.changed=false;this.active=false;this.index=0;this.entryCount=0;this.oldElementValue=this.element.value;if(this.setOptions)
this.setOptions(options);else
this.options=options||{};this.options.paramName=this.options.paramName||this.element.name;this.options.tokens=this.options.tokens||[];this.options.frequency=this.options.frequency||0.4;this.options.minChars=this.options.minChars||1;this.options.onShow=this.options.onShow||function(element,update){if(!update.style.position||update.style.position=='absolute'){update.style.position='absolute';Position.clone(element,update,{setHeight:false,offsetTop:element.offsetHeight});}
Effect.Appear(update,{duration:0.15});};this.options.onHide=this.options.onHide||function(element,update){new Effect.Fade(update,{duration:0.15})};if(typeof(this.options.tokens)=='string')
this.options.tokens=new Array(this.options.tokens);if(!this.options.tokens.include('\n'))
this.options.tokens.push('\n');this.observer=null;this.element.setAttribute('autocomplete','off');Element.hide(this.update);Event.observe(this.element,'blur',this.onBlur.bindAsEventListener(this));Event.observe(this.element,'keydown',this.onKeyPress.bindAsEventListener(this));},show:function(){if(Element.getStyle(this.update,'display')=='none')this.options.onShow(this.element,this.update);if(!this.iefix&&(Prototype.Browser.IE)&&(Element.getStyle(this.update,'position')=='absolute')){new Insertion.After(this.update,'<iframe id="'+this.update.id+'_iefix" '+'style="display:none;position:absolute;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);" '+'src="javascript:false;" frameborder="0" scrolling="no"></iframe>');this.iefix=$(this.update.id+'_iefix');}
if(this.iefix)setTimeout(this.fixIEOverlapping.bind(this),50);},fixIEOverlapping:function(){Position.clone(this.update,this.iefix,{setTop:(!this.update.style.height)});this.iefix.style.zIndex=1;this.update.style.zIndex=2;Element.show(this.iefix);},hide:function(){this.stopIndicator();if(Element.getStyle(this.update,'display')!='none')this.options.onHide(this.element,this.update);if(this.iefix)Element.hide(this.iefix);},startIndicator:function(){if(this.options.indicator)Element.show(this.options.indicator);},stopIndicator:function(){if(this.options.indicator)Element.hide(this.options.indicator);},onKeyPress:function(event){if(this.active)
switch(event.keyCode){case Event.KEY_TAB:case Event.KEY_RETURN:this.selectEntry();Event.stop(event);case Event.KEY_ESC:this.hide();this.active=false;Event.stop(event);return;case Event.KEY_LEFT:case Event.KEY_RIGHT:return;case Event.KEY_UP:this.markPrevious();this.render();Event.stop(event);return;case Event.KEY_DOWN:this.markNext();this.render();Event.stop(event);return;}
else
if(event.keyCode==Event.KEY_TAB||event.keyCode==Event.KEY_RETURN||(Prototype.Browser.WebKit>0&&event.keyCode==0))return;this.changed=true;this.hasFocus=true;if(this.observer)clearTimeout(this.observer);this.observer=setTimeout(this.onObserverEvent.bind(this),this.options.frequency*1000);},activate:function(){this.changed=false;this.hasFocus=true;this.getUpdatedChoices();},onHover:function(event){var element=Event.findElement(event,'LI');if(this.index!=element.autocompleteIndex)
{this.index=element.autocompleteIndex;this.render();}
Event.stop(event);},onClick:function(event){var element=Event.findElement(event,'LI');this.index=element.autocompleteIndex;this.selectEntry();this.hide();},onBlur:function(event){setTimeout(this.hide.bind(this),250);this.hasFocus=false;this.active=false;},render:function(){if(this.entryCount>0){for(var i=0;i<this.entryCount;i++)
this.index==i?Element.addClassName(this.getEntry(i),"selected"):Element.removeClassName(this.getEntry(i),"selected");if(this.hasFocus){this.show();this.active=true;}}else{this.active=false;this.hide();}},markPrevious:function(){if(this.index>0)this.index--;else this.index=this.entryCount-1;this.getEntry(this.index).scrollIntoView(true);},markNext:function(){if(this.index<this.entryCount-1)this.index++;else this.index=0;this.getEntry(this.index).scrollIntoView(false);},getEntry:function(index){return this.update.firstChild.childNodes[index];},getCurrentEntry:function(){return this.getEntry(this.index);},selectEntry:function(){this.active=false;this.updateElement(this.getCurrentEntry());},updateElement:function(selectedElement){if(this.options.updateElement){this.options.updateElement(selectedElement);return;}
var value='';if(this.options.select){var nodes=$(selectedElement).select('.'+this.options.select)||[];if(nodes.length>0)value=Element.collectTextNodes(nodes[0],this.options.select);}else
value=Element.collectTextNodesIgnoreClass(selectedElement,'informal');var bounds=this.getTokenBounds();if(bounds[0]!=-1){var newValue=this.element.value.substr(0,bounds[0]);var whitespace=this.element.value.substr(bounds[0]).match(/^\s+/);if(whitespace)
newValue+=whitespace[0];this.element.value=newValue+value+this.element.value.substr(bounds[1]);}else{this.element.value=value;}
this.oldElementValue=this.element.value;this.element.focus();if(this.options.afterUpdateElement)
this.options.afterUpdateElement(this.element,selectedElement);},updateChoices:function(choices){if(!this.changed&&this.hasFocus){this.update.innerHTML=choices;Element.cleanWhitespace(this.update);Element.cleanWhitespace(this.update.down());if(this.update.firstChild&&this.update.down().childNodes){this.entryCount=this.update.down().childNodes.length;for(var i=0;i<this.entryCount;i++){var entry=this.getEntry(i);entry.autocompleteIndex=i;this.addObservers(entry);}}else{this.entryCount=0;}
this.stopIndicator();this.index=0;if(this.entryCount==1&&this.options.autoSelect){this.selectEntry();this.hide();}else{this.render();}}},addObservers:function(element){Event.observe(element,"mouseover",this.onHover.bindAsEventListener(this));Event.observe(element,"click",this.onClick.bindAsEventListener(this));},onObserverEvent:function(){this.changed=false;this.tokenBounds=null;if(this.getToken().length>=this.options.minChars){this.getUpdatedChoices();}else{this.active=false;this.hide();}
this.oldElementValue=this.element.value;},getToken:function(){var bounds=this.getTokenBounds();return this.element.value.substring(bounds[0],bounds[1]).strip();},getTokenBounds:function(){if(null!=this.tokenBounds)return this.tokenBounds;var value=this.element.value;if(value.strip().empty())return[-1,0];var diff=arguments.callee.getFirstDifferencePos(value,this.oldElementValue);var offset=(diff==this.oldElementValue.length?1:0);var prevTokenPos=-1,nextTokenPos=value.length;var tp;for(var index=0,l=this.options.tokens.length;index<l;++index){tp=value.lastIndexOf(this.options.tokens[index],diff+offset-1);if(tp>prevTokenPos)prevTokenPos=tp;tp=value.indexOf(this.options.tokens[index],diff+offset);if(-1!=tp&&tp<nextTokenPos)nextTokenPos=tp;}
return(this.tokenBounds=[prevTokenPos+1,nextTokenPos]);}});Autocompleter.Base.prototype.getTokenBounds.getFirstDifferencePos=function(newS,oldS){var boundary=Math.min(newS.length,oldS.length);for(var index=0;index<boundary;++index)
if(newS[index]!=oldS[index])
return index;return boundary;};Ajax.Autocompleter=Class.create(Autocompleter.Base,{initialize:function(element,update,url,options){this.baseInitialize(element,update,options);this.options.asynchronous=true;this.options.onComplete=this.onComplete.bind(this);this.options.defaultParams=this.options.parameters||null;this.url=url;},getUpdatedChoices:function(){this.startIndicator();var entry=encodeURIComponent(this.options.paramName)+'='+
encodeURIComponent(this.getToken());this.options.parameters=this.options.callback?this.options.callback(this.element,entry):entry;if(this.options.defaultParams)
this.options.parameters+='&'+this.options.defaultParams;new Ajax.Request(this.url,this.options);},onComplete:function(request){this.updateChoices(request.responseText);}});Autocompleter.Local=Class.create(Autocompleter.Base,{initialize:function(element,update,array,options){this.baseInitialize(element,update,options);this.options.array=array;},getUpdatedChoices:function(){this.updateChoices(this.options.selector(this));},setOptions:function(options){this.options=Object.extend({choices:10,partialSearch:true,partialChars:2,ignoreCase:true,fullSearch:false,selector:function(instance){var ret=[];var partial=[];var entry=instance.getToken();var count=0;for(var i=0;i<instance.options.array.length&&ret.length<instance.options.choices;i++){var elem=instance.options.array[i];var foundPos=instance.options.ignoreCase?elem.toLowerCase().indexOf(entry.toLowerCase()):elem.indexOf(entry);while(foundPos!=-1){if(foundPos==0&&elem.length!=entry.length){ret.push("<li><strong>"+elem.substr(0,entry.length)+"</strong>"+
elem.substr(entry.length)+"</li>");break;}else if(entry.length>=instance.options.partialChars&&instance.options.partialSearch&&foundPos!=-1){if(instance.options.fullSearch||/\s/.test(elem.substr(foundPos-1,1))){partial.push("<li>"+elem.substr(0,foundPos)+"<strong>"+
elem.substr(foundPos,entry.length)+"</strong>"+elem.substr(foundPos+entry.length)+"</li>");break;}}
foundPos=instance.options.ignoreCase?elem.toLowerCase().indexOf(entry.toLowerCase(),foundPos+1):elem.indexOf(entry,foundPos+1);}}
if(partial.length)
ret=ret.concat(partial.slice(0,instance.options.choices-ret.length));return"<ul>"+ret.join('')+"</ul>";}},options||{});}});Field.scrollFreeActivate=function(field){setTimeout(function(){Field.activate(field);},1);};Ajax.InPlaceEditor=Class.create({initialize:function(element,url,options){this.url=url;this.element=element=$(element);this.prepareOptions();this._controls={};arguments.callee.dealWithDeprecatedOptions(options);Object.extend(this.options,options||{});if(!this.options.formId&&this.element.id){this.options.formId=this.element.id+'-inplaceeditor';if($(this.options.formId))
this.options.formId='';}
if(this.options.externalControl)
this.options.externalControl=$(this.options.externalControl);if(!this.options.externalControl)
this.options.externalControlOnly=false;this._originalBackground=this.element.getStyle('background-color')||'transparent';this.element.title=this.options.clickToEditText;this._boundCancelHandler=this.handleFormCancellation.bind(this);this._boundComplete=(this.options.onComplete||Prototype.emptyFunction).bind(this);this._boundFailureHandler=this.handleAJAXFailure.bind(this);this._boundSubmitHandler=this.handleFormSubmission.bind(this);this._boundWrapperHandler=this.wrapUp.bind(this);this.registerListeners();},checkForEscapeOrReturn:function(e){if(!this._editing||e.ctrlKey||e.altKey||e.shiftKey)return;if(Event.KEY_ESC==e.keyCode)
this.handleFormCancellation(e);else if(Event.KEY_RETURN==e.keyCode)
this.handleFormSubmission(e);},createControl:function(mode,handler,extraClasses){var control=this.options[mode+'Control'];var text=this.options[mode+'Text'];if('button'==control){var btn=document.createElement('input');btn.type='submit';btn.value=text;btn.className='editor_'+mode+'_button';if('cancel'==mode)
btn.onclick=this._boundCancelHandler;this._form.appendChild(btn);this._controls[mode]=btn;}else if('link'==control){var link=document.createElement('a');link.href='#';link.appendChild(document.createTextNode(text));link.onclick='cancel'==mode?this._boundCancelHandler:this._boundSubmitHandler;link.className='editor_'+mode+'_link';if(extraClasses)
link.className+=' '+extraClasses;this._form.appendChild(link);this._controls[mode]=link;}},createEditField:function(){var text=(this.options.loadTextURL?this.options.loadingText:this.getText());var fld;if(1>=this.options.rows&&!/\r|\n/.test(this.getText())){fld=document.createElement('input');fld.type='text';var size=this.options.size||this.options.cols||0;if(0<size)fld.size=size;}else{fld=document.createElement('textarea');fld.rows=(1>=this.options.rows?this.options.autoRows:this.options.rows);fld.cols=this.options.cols||40;}
fld.name=this.options.paramName;fld.value=text;fld.className='editor_field';if(this.options.submitOnBlur)
fld.onblur=this._boundSubmitHandler;this._controls.editor=fld;if(this.options.loadTextURL)
this.loadExternalText();this._form.appendChild(this._controls.editor);},createForm:function(){var ipe=this;function addText(mode,condition){var text=ipe.options['text'+mode+'Controls'];if(!text||condition===false)return;ipe._form.appendChild(document.createTextNode(text));};this._form=$(document.createElement('form'));this._form.id=this.options.formId;this._form.addClassName(this.options.formClassName);this._form.onsubmit=this._boundSubmitHandler;this.createEditField();if('textarea'==this._controls.editor.tagName.toLowerCase())
this._form.appendChild(document.createElement('br'));if(this.options.onFormCustomization)
this.options.onFormCustomization(this,this._form);addText('Before',this.options.okControl||this.options.cancelControl);this.createControl('ok',this._boundSubmitHandler);addText('Between',this.options.okControl&&this.options.cancelControl);this.createControl('cancel',this._boundCancelHandler,'editor_cancel');addText('After',this.options.okControl||this.options.cancelControl);},destroy:function(){if(this._oldInnerHTML)
this.element.innerHTML=this._oldInnerHTML;this.leaveEditMode();this.unregisterListeners();},enterEditMode:function(e){if(this._saving||this._editing)return;this._editing=true;this.triggerCallback('onEnterEditMode');if(this.options.externalControl)
this.options.externalControl.hide();this.element.hide();this.createForm();this.element.parentNode.insertBefore(this._form,this.element);if(!this.options.loadTextURL)
this.postProcessEditField();if(e)Event.stop(e);},enterHover:function(e){if(this.options.hoverClassName)
this.element.addClassName(this.options.hoverClassName);if(this._saving)return;this.triggerCallback('onEnterHover');},getText:function(){return this.element.innerHTML.unescapeHTML();},handleAJAXFailure:function(transport){this.triggerCallback('onFailure',transport);if(this._oldInnerHTML){this.element.innerHTML=this._oldInnerHTML;this._oldInnerHTML=null;}},handleFormCancellation:function(e){this.wrapUp();if(e)Event.stop(e);},handleFormSubmission:function(e){var form=this._form;var value=$F(this._controls.editor);this.prepareSubmission();var params=this.options.callback(form,value)||'';if(Object.isString(params))
params=params.toQueryParams();params.editorId=this.element.id;if(this.options.htmlResponse){var options=Object.extend({evalScripts:true},this.options.ajaxOptions);Object.extend(options,{parameters:params,onComplete:this._boundWrapperHandler,onFailure:this._boundFailureHandler});new Ajax.Updater({success:this.element},this.url,options);}else{var options=Object.extend({method:'get'},this.options.ajaxOptions);Object.extend(options,{parameters:params,onComplete:this._boundWrapperHandler,onFailure:this._boundFailureHandler});new Ajax.Request(this.url,options);}
if(e)Event.stop(e);},leaveEditMode:function(){this.element.removeClassName(this.options.savingClassName);this.removeForm();this.leaveHover();this.element.style.backgroundColor=this._originalBackground;this.element.show();if(this.options.externalControl)
this.options.externalControl.show();this._saving=false;this._editing=false;this._oldInnerHTML=null;this.triggerCallback('onLeaveEditMode');},leaveHover:function(e){if(this.options.hoverClassName)
this.element.removeClassName(this.options.hoverClassName);if(this._saving)return;this.triggerCallback('onLeaveHover');},loadExternalText:function(){this._form.addClassName(this.options.loadingClassName);this._controls.editor.disabled=true;var options=Object.extend({method:'get'},this.options.ajaxOptions);Object.extend(options,{parameters:'editorId='+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(transport){this._form.removeClassName(this.options.loadingClassName);var text=transport.responseText;if(this.options.stripLoadedTextTags)
text=text.stripTags();this._controls.editor.value=text;this._controls.editor.disabled=false;this.postProcessEditField();}.bind(this),onFailure:this._boundFailureHandler});new Ajax.Request(this.options.loadTextURL,options);},postProcessEditField:function(){var fpc=this.options.fieldPostCreation;if(fpc)
$(this._controls.editor)['focus'==fpc?'focus':'activate']();},prepareOptions:function(){this.options=Object.clone(Ajax.InPlaceEditor.DefaultOptions);Object.extend(this.options,Ajax.InPlaceEditor.DefaultCallbacks);[this._extraDefaultOptions].flatten().compact().each(function(defs){Object.extend(this.options,defs);}.bind(this));},prepareSubmission:function(){this._saving=true;this.removeForm();this.leaveHover();this.showSaving();},registerListeners:function(){this._listeners={};var listener;$H(Ajax.InPlaceEditor.Listeners).each(function(pair){listener=this[pair.value].bind(this);this._listeners[pair.key]=listener;if(!this.options.externalControlOnly)
this.element.observe(pair.key,listener);if(this.options.externalControl)
this.options.externalControl.observe(pair.key,listener);}.bind(this));},removeForm:function(){if(!this._form)return;this._form.remove();this._form=null;this._controls={};},showSaving:function(){this._oldInnerHTML=this.element.innerHTML;this.element.innerHTML=this.options.savingText;this.element.addClassName(this.options.savingClassName);this.element.style.backgroundColor=this._originalBackground;this.element.show();},triggerCallback:function(cbName,arg){if('function'==typeof this.options[cbName]){this.options[cbName](this,arg);}},unregisterListeners:function(){$H(this._listeners).each(function(pair){if(!this.options.externalControlOnly)
this.element.stopObserving(pair.key,pair.value);if(this.options.externalControl)
this.options.externalControl.stopObserving(pair.key,pair.value);}.bind(this));},wrapUp:function(transport){this.leaveEditMode();this._boundComplete(transport,this.element);}});Object.extend(Ajax.InPlaceEditor.prototype,{dispose:Ajax.InPlaceEditor.prototype.destroy});Ajax.InPlaceCollectionEditor=Class.create(Ajax.InPlaceEditor,{initialize:function($super,element,url,options){this._extraDefaultOptions=Ajax.InPlaceCollectionEditor.DefaultOptions;$super(element,url,options);},createEditField:function(){var list=document.createElement('select');list.name=this.options.paramName;list.size=1;this._controls.editor=list;this._collection=this.options.collection||[];if(this.options.loadCollectionURL)
this.loadCollection();else
this.checkForExternalText();this._form.appendChild(this._controls.editor);},loadCollection:function(){this._form.addClassName(this.options.loadingClassName);this.showLoadingText(this.options.loadingCollectionText);var options=Object.extend({method:'get'},this.options.ajaxOptions);Object.extend(options,{parameters:'editorId='+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(transport){var js=transport.responseText.strip();if(!/^\[.*\]$/.test(js))
throw('Server returned an invalid collection representation.');this._collection=eval(js);this.checkForExternalText();}.bind(this),onFailure:this.onFailure});new Ajax.Request(this.options.loadCollectionURL,options);},showLoadingText:function(text){this._controls.editor.disabled=true;var tempOption=this._controls.editor.firstChild;if(!tempOption){tempOption=document.createElement('option');tempOption.value='';this._controls.editor.appendChild(tempOption);tempOption.selected=true;}
tempOption.update((text||'').stripScripts().stripTags());},checkForExternalText:function(){this._text=this.getText();if(this.options.loadTextURL)
this.loadExternalText();else
this.buildOptionList();},loadExternalText:function(){this.showLoadingText(this.options.loadingText);var options=Object.extend({method:'get'},this.options.ajaxOptions);Object.extend(options,{parameters:'editorId='+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(transport){this._text=transport.responseText.strip();this.buildOptionList();}.bind(this),onFailure:this.onFailure});new Ajax.Request(this.options.loadTextURL,options);},buildOptionList:function(){this._form.removeClassName(this.options.loadingClassName);this._collection=this._collection.map(function(entry){return 2===entry.length?entry:[entry,entry].flatten();});var marker=('value'in this.options)?this.options.value:this._text;var textFound=this._collection.any(function(entry){return entry[0]==marker;}.bind(this));this._controls.editor.update('');var option;this._collection.each(function(entry,index){option=document.createElement('option');option.value=entry[0];option.selected=textFound?entry[0]==marker:0==index;option.appendChild(document.createTextNode(entry[1]));this._controls.editor.appendChild(option);}.bind(this));this._controls.editor.disabled=false;Field.scrollFreeActivate(this._controls.editor);}});Ajax.InPlaceEditor.prototype.initialize.dealWithDeprecatedOptions=function(options){if(!options)return;function fallback(name,expr){if(name in options||expr===undefined)return;options[name]=expr;};fallback('cancelControl',(options.cancelLink?'link':(options.cancelButton?'button':options.cancelLink==options.cancelButton==false?false:undefined)));fallback('okControl',(options.okLink?'link':(options.okButton?'button':options.okLink==options.okButton==false?false:undefined)));fallback('highlightColor',options.highlightcolor);fallback('highlightEndColor',options.highlightendcolor);};Object.extend(Ajax.InPlaceEditor,{DefaultOptions:{ajaxOptions:{},autoRows:3,cancelControl:'link',cancelText:'cancel',clickToEditText:'Click to edit',externalControl:null,externalControlOnly:false,fieldPostCreation:'activate',formClassName:'inplaceeditor-form',formId:null,highlightColor:'#ffff99',highlightEndColor:'#ffffff',hoverClassName:'',htmlResponse:true,loadingClassName:'inplaceeditor-loading',loadingText:'Loading...',okControl:'button',okText:'ok',paramName:'value',rows:1,savingClassName:'inplaceeditor-saving',savingText:'Saving...',size:0,stripLoadedTextTags:false,submitOnBlur:false,textAfterControls:'',textBeforeControls:'',textBetweenControls:''},DefaultCallbacks:{callback:function(form){return Form.serialize(form);},onComplete:function(transport,element){new Effect.Highlight(element,{startcolor:this.options.highlightColor,keepBackgroundImage:true});},onEnterEditMode:null,onEnterHover:function(ipe){ipe.element.style.backgroundColor=ipe.options.highlightColor;if(ipe._effect)
ipe._effect.cancel();},onFailure:function(transport,ipe){alert('Error communication with the server: '+transport.responseText.stripTags());},onFormCustomization:null,onLeaveEditMode:null,onLeaveHover:function(ipe){ipe._effect=new Effect.Highlight(ipe.element,{startcolor:ipe.options.highlightColor,endcolor:ipe.options.highlightEndColor,restorecolor:ipe._originalBackground,keepBackgroundImage:true});}},Listeners:{click:'enterEditMode',keydown:'checkForEscapeOrReturn',mouseover:'enterHover',mouseout:'leaveHover'}});Ajax.InPlaceCollectionEditor.DefaultOptions={loadingCollectionText:'Loading options...'};Form.Element.DelayedObserver=Class.create({initialize:function(element,delay,callback){this.delay=delay||0.5;this.element=$(element);this.callback=callback;this.timer=null;this.lastValue=$F(this.element);Event.observe(this.element,'keyup',this.delayedListener.bindAsEventListener(this));},delayedListener:function(event){if(this.lastValue==$F(this.element))return;if(this.timer)clearTimeout(this.timer);this.timer=setTimeout(this.onTimerEvent.bind(this),this.delay*1000);this.lastValue=$F(this.element);},onTimerEvent:function(){this.timer=null;this.callback(this.element,$F(this.element));}});function updateTranscode(request,itemId)
{var requestOptions={};var onItemCallback=fstree._onReloadItemReceived.bind(fstree);fstree._onItemResponse(request,onItemCallback,requestOptions);}
var linksNode;var linksTimeout;var redirect_to_root=false;function showLinks(siteid,pageid,itemid){linksNode=itemid;var x=screen.availWidth/2-300;var y=screen.availHeight/2-175;window.parent.showPopWin('/sitemap/get_links/'+siteid+'?pageId='+pageid,700,350,null);}
function updateDisplay(){window.clearTimeout(linksTimeout);var item=fstree._getItem(linksNode);fstree._expandItem(item,true);linksNode=null;}
function expandTreeByItemId(itemid){fstree.expandItem(itemid);fstree.scrollToItem(itemid);}
function closeLinks(completed,update){try{}catch(e){}
linksTimeout=window.setTimeout('updateDisplay()',10);}
function selectPage(siteId,pageId,pageBack){top.goToEditPage(siteId,top.editorTabsSwitcher.currentPageId,pageId,'left',undefined,true);top.document.getElementById('return-to').value=pageBack;}
function selectCurrentPage(){if(top.editorTabsSwitcher&&top.editorTabsSwitcher.currentPageId){var sitemapFrame=top.document.getElementById("sitemap_frame");unmarkPages(sitemapFrame);markPage(sitemapFrame,top.editorTabsSwitcher.currentPageId);}}
function unmarkPages(sitemapFrame){var sitemap=sitemapFrame.contentWindow.$("sitemapMain");var selected=sitemap.getElementsByClassName("selected_left");var i;for(i=0;i<selected.length;i++){selected[i].className="deselected_left";}
selected=sitemap.getElementsByClassName("selected_right");for(i=0;i<selected.length;i++){selected[i].className="deselected_right";}}
function markPage(sitemapFrame,pageId){sitemapFrame.contentWindow.$("page_left_"+pageId).className="selected_left";sitemapFrame.contentWindow.$("page_right_"+pageId).className="selected_right";}
function deletePage(siteId,pageToDelete,pageName,editedPage){window.parent.showPopWin("/editor/delete_page/"+siteId+"?pageId="+pageToDelete+"&pageName="+encodeURIComponent(pageName)+"&editedPageId="+editedPage,700,250,null);}
function updateThumbnail(siteId,pageId){new Ajax.Request("/sitemap/list_item",{parameters:"id="+siteId+"&pageId="+pageId,asynchronous:true,evalScripts:true,onSuccess:function(request){$('page_div_'+pageId).innerHTML=request.responseText;selectCurrentPage();},onFailure:function(t){handleFailureResponse(t.responseText,"updateThumbnail",new Array(siteId,pageId));}});}
function redirectionType(){return redirect_to_root;}
function renamePage(tree,item){var item_id=tree._escapeId(item.id);var options={okButton:false,okText:'Apply',okLink:true,cancelLink:true,cancelText:'Cancel',textBeforeControls:' ',textBetweenControls:' | ',clickToEditText:'',highlightcolor:'#fff',callback:function(form,value){return'pageId='+item.page_id+'&name='+encodeURIComponent(value.replace(/(^\s)|(\s$)/g,''));},onComplete:function(r,e){if((r!=null)&&(r.responseText!=item.fullname)&&r.status=="200"){if(r.responseText==""){alert("The name cannot be empty.")
expandTreeByItemId(item.id);}else{fstree._expandItem(item,true);}}
else{expandTreeByItemId(item.id);}},onFailure:function(r){handleRedirectResponse(r.responseText);}};var editor=new Ajax.InPlaceEditor(tree.id+'_branch_expand_collapse_link_'+item_id,'/sitemap/rename_page/'+item.site_id,options);editor.enterEditMode();$(tree.id+'_branch_expand_collapse_link_'+item_id+'-inplaceeditor').childNodes[0].value=item.fullname;$('title_bar_'+item_id).style.border="0px solid #fff";$('rename_href_'+item_id).style.display="none";$('popup_'+item_id).style.color="#000";$('popup_'+item_id).style.background="#fff5da";$('popup_'+item_id).style.border="#866100 1px solid";$('popup_'+item_id).style.width="106px";$('popup_'+item_id).style.height="45px";$('delete_href_'+item_id).style.display="none";}
var SitemapEditor=Class.create();SitemapEditor={getCurrentMarkedNode:function(parent){if(parent.children!=null){childrens=parent.children.length;for(i=0;i<childrens;i++){current=parent.children[i];if(current.childrenVisible==true&&current.isExpanded==true){return SitemapEditor.getCurrentMarkedNode(current);}}}
return parent;}}
function showSitemap(siteId,pageId){window.parent.showPopWin('/sitemap/list/'+siteId+'?pageId='+pageId,770,560,null);}
function closeSitemap(siteId,redirect){if(redirect){window.parent.location.href='/editor/index/'+siteId;}else{window.parent.location.reload();}
window.parent.hidePopWin();}
function showFileManagerForIcons(){$('section_action').style.height='190px';adjSize();FileFieldManagerSet.get('fileManagement').showLibrary();}
function hideFileManagerForIcons(){$('section_action').style.height='75px';adjSize();}
var Carousel=Class.create();Carousel.prototype={initialize:function(carouselElemID){this.carouselElemID=carouselElemID;this.options=Object.extend({numVisible:4,scrollInc:3,initPosition:0,cyclic:false,whilePrevScroll:function(){},whileNextScroll:function(){},animParameters:{},buttonStateHandler:null,animHandler:null,ajaxHandler:null,initDoneHandler:null,queue:"carousel",size:0,prevElementID:"prev-arrow",nextElementID:"next-arrow",ajaxParameters:null,url:null},arguments[1]||{});this.initDone=false;this.animRunning="none";this.requestIsRunning=false;this.animAfterFinish=this.options.animParameters.afterFinish;Object.extend(this.options.animParameters,{afterFinish:this._animDone.bind(this),queue:{position:'end',scope:this.options.queue}});this.prevScroll=this._prevScroll.bindAsEventListener(this);this.nextScroll=this._nextScroll.bindAsEventListener(this);this.onComplete=this._onComplete.bindAsEventListener(this);this.onFailure=this._onFailure.bindAsEventListener(this);Event.observe(this.options.prevElementID,"click",this.prevScroll);Event.observe(this.options.nextElementID,"click",this.nextScroll);var carouselListClass="carousel-list";var listSelector='div#'+carouselElemID+' ul.'+carouselListClass;this.carouselList=$$(listSelector)[0]
this._init();},destroy:function(){Event.stopObserving(this.options.prevElementID,"click",this.prevScroll);Event.stopObserving(this.options.nextElementID,"click",this.nextScroll);},scrollTo:function(newStart){var old_inc=this.options.scrollInc;this.ignoreNoMoreImages=true;if(newStart>this.currentIndex){this.options.scrollInc=newStart-this.currentIndex;this._nextScroll(this);}else{this.options.scrollInc=this.currentIndex-newStart;this._prevScroll(this);}
this.options.scrollInc=old_inc;},cyclicScrollTo:function(deviceClickedName){var current_index=this._getElementIndexById('id_'+deviceClickedName);if(current_index<this.middleIndex)
this._prevScroll();else if(current_index>this.middleIndex)
this._nextScroll();},_init:function(){if(this.options.cyclic){this.currentIndex=this.options.initPosition;}
else{this.currentIndex=0;}
if(this.options.url){this._request(this.currentIndex,this.options.numVisible);}
else{this._getLiElementSize();this._updateButtonStateHandler(this.options.prevElementID,false);this._updateButtonStateHandler(this.options.nextElementID,this.options.size>this.options.numVisible);}
if(this.options.cyclic){this.carouselList.style.left='-'+(this.currentIndex*this.elementSize)+'px';this.middleIndex=Math.floor(this.options.numVisible/2)+this.options.initPosition;}},_prevScroll:function(event){if(event){event.cancelBubble=true;}
if(this.animRunning!="none"||this.currentIndex==0)
return;var inc=this.options.scrollInc;if(this.currentIndex-inc<0)
inc=this.currentIndex;this._scroll(inc);this.options.whilePrevScroll();return false;},_nextScroll:function(event){if(event){event.cancelBubble=true;}
if(this.animRunning!="none")
return false;if(this.currentIndex+this.options.numVisible+this.options.scrollInc<=this.options.size)
this._scroll(-this.options.scrollInc);else{this.nbInCache=this.options.size-(this.currentIndex+this.options.numVisible);if(this.options.url&&this.noMoreImages==false){this._request(this.currentIndex+this.options.numVisible+this.nbInCache,this.options.scrollInc-this.nbInCache);}
else{if(this.nbInCache>0)
this._scroll(-this.nbInCache);}}
this.options.whileNextScroll();return false;},_request:function(start,nb){if(this.options.url&&!this.requestIsRunning){this.requestIsRunning=true;if(this.options.ajaxHandler)
this.options.ajaxHandler(this,"before");var params="start="+start+"&nb="+nb;if(this.options.ajaxParameters!=null)
params+="&"+this.options.ajaxParameters
new Ajax.Request(this.options.url,{parameters:params,onComplete:this.onComplete,onFailure:this.onFailure});}},_onComplete:function(originalRequest){this.requestIsRunning=false;var div=document.createElement("div");div.innerHTML=originalRequest.responseText;while(div.firstChild){this.carouselList.appendChild(div.removeChild(div.firstChild));}
var size=this.options.size;this.options.size=this.carouselList.getElementsByTagName("li").length;var inc=this.options.size-size;if(this.initDone==false){this._getLiElementSize();this.currentIndex=0;this.initDone=true;if(this.options.initDoneHandler)
this.options.initDoneHandler(this);this._updateButtonStateHandler(this.options.prevElementID,false);this._updateButtonStateHandler(this.options.nextElementID,this.options.size==this.options.numVisible);this.noMoreImages=this.options.size<this.options.numVisible;}
else{if(!this.ignoreNoMoreImages)
this.noMoreImages=inc!=this.options.scrollInc;else
this.ignoreNoMoreImages=false;if(inc>0){this._scroll(-inc,this.noMoreImages)}
else{if(this.nbInCache>0)
this._scroll(-this.nbInCache,true);this._updateButtonStateHandler(this.options.nextElementID,false);}}
if(this.options.ajaxHandler)
this.options.ajaxHandler(this,"after");},_onFailure:function(originalRequest){this.requestIsRunning=false;},_animDone:function(event){if(this.options.animHandler)
this.options.animHandler(this.carouselElemID,"after",this.animRunning);this.animRunning="none";if(this.animAfterFinish)
this.animAfterFinish(event);},_updateButtonStateHandler:function(button,state){if(!this.options.cyclic){if(this.options.buttonStateHandler)
this.options.buttonStateHandler(button,state);}},_switch:function(delta){var descendants=this.carouselList.immediateDescendants();if(this.animRunning=="prev"){this.carouselList.insertBefore(descendants[descendants.size()-1],descendants[0]);this.carouselList.style.left=(this.carouselList.offsetLeft-this.elementSize)+'px';}
else{this.carouselList.appendChild(descendants[0]);this.carouselList.style.left=(this.carouselList.offsetLeft+this.elementSize)+'px';}
new Effect.MoveBy(this.carouselList,0,delta*this.elementSize,this.options.animParameters);},_scroll:function(delta,forceDisableNext){this.animRunning=delta>0?"prev":"next";if(this.options.animHandler)
this.options.animHandler(this.carouselElemID,"before",this.animRunning);if(this.options.cyclic){this._switch(delta);}
else{new Effect.MoveBy(this.carouselList,0,delta*this.elementSize,this.options.animParameters);this.currentIndex-=delta;}
this._updateButtonStateHandler(this.options.prevElementID,this.currentIndex!=0);if(this.options.url&&this.noMoreImages==false)
enable=true;else
enable=(this.currentIndex+this.options.numVisible<this.options.size);this._updateButtonStateHandler(this.options.nextElementID,(forceDisableNext?false:enable));},_getLiElementSize:function(){var li=$(this.carouselList.getElementsByTagName("li")[0]);this.elementSize=li.getDimensions().width+parseFloat(li.getStyle("margin-left"))+parseFloat(li.getStyle("margin-right"));},_getElementIndexById:function(element_id){var elements=this.carouselList.immediateDescendants();for(var i=elements.length;i--&&elements[i].id!==element_id;){}
return i;}}
function change_mode(mode){if(mode=="preview")
var mode_op="edit";else
var mode_op="preview";old_str=document.getElementById("undo_link").href;new_str=old_str.replace(new RegExp("mode="+mode_op),"mode="+mode);document.getElementById("undo_link").href=new_str;old_str=document.getElementById("redo_link").href;new_str=old_str.replace(new RegExp("mode="+mode_op),"mode="+mode);document.getElementById("redo_link").href=new_str;switch_element=document.getElementById("switch_view")
if(switch_element!=null){old_str=switch_element.href;new_str=old_str.replace(new RegExp("mode="+mode_op),"mode="+mode);switch_element.href=new_str;}}
function change_previewUAString(sender,previewUAString){document.getElementById("undo_link").href=replacePreviewUAStringTo(document.getElementById("undo_link").href,previewUAString);document.getElementById("redo_link").href=replacePreviewUAStringTo(document.getElementById("redo_link").href,previewUAString);sender.ownerDocument.location=replacePreviewUAStringTo(sender.ownerDocument.location.href,previewUAString);}
function replacePreviewUAStringTo(previewUrl,newPreviewString){var regExp=new RegExp("previewUAString=[a-zA-Z]+");if(previewUrl.match(regExp)){return previewUrl.replace(regExp,"previewUAString="+newPreviewString);}else{return previewUrl+"&previewUAString="+newPreviewString;}}
function replaceParameter(previewUrl,newPreviewParams,reqularExpr){var regExp=new RegExp(reqularExpr);var newFoldingParam=newPreviewParams.match(regExp);if(previewUrl.match(regExp)){return previewUrl.replace(regExp,newFoldingParam==null?"":newFoldingParam);}else{if(newFoldingParam!=null){return previewUrl+"&"+newFoldingParam;}else{return previewUrl;}}}
function replacePreviewFolding(previewUrl,newPreviewParams){return replaceParameter(previewUrl,newPreviewParams,"mb-menuToUnfoldId=_?[a-zA-Z0-9]+");}
function replacePageFragment(previewUrl,newPreviewParams){return replaceParameter(previewUrl,newPreviewParams,"mb-pageFragment=[0-9]+");}
function replacePrevPageFragment(previewUrl,newPreviewParams){return replaceParameter(previewUrl,newPreviewParams,"mb-prevPageFrag=[0-9]+");}
function replacePreviewPageId(previewUrl,pageId){return previewUrl.replace(new RegExp("([\?\&]mb-pageId=)([^&]+)"),"$1"+pageId);}
function replacePreviewPageLinkModal(previewUrl,pageLink){return previewUrl.replace(new RegExp("([\?\&]mb-pageLink=)([^&]+)"),"$1"+pageLink);}
function refresh_undo(desc){if(desc==null){document.getElementById("undo_link").style["display"]="none";document.getElementById("undo_link_disabled").style["display"]="inline";}else{document.getElementById("undo_link_disabled").style["display"]="none";document.getElementById("undo_link").style["display"]="inline";}
document.getElementById('undo_link').title=desc;}
function refresh_redo(desc){if(desc==null){document.getElementById("redo_link").style["display"]="none";document.getElementById("redo_link_disabled").style["display"]="inline";}else{document.getElementById("redo_link_disabled").style["display"]="none";document.getElementById("redo_link").style["display"]="inline";}
document.getElementById('redo_link').title=desc;}
function refresh_all(){top.enableTooltips('contentTooltip');}
function refreshDevicePreviewForContentWindow(contentWindow,pageId,extraPreviewParams){var elementOuter=contentWindow.document;if(elementOuter!=null){var elementInner=elementOuter.getElementById("preview-frame");if(elementInner!=null){if(pageId==undefined||pageId==null){elementInner.contentWindow.location=elementInner.contentWindow.location.href;}else{var newUrl=elementInner.contentWindow.location.href;newUrl=replacePreviewPageId(newUrl,pageId);if(extraPreviewParams!=undefined){newUrl=replacePreviewFolding(newUrl,extraPreviewParams);newUrl=replacePageFragment(newUrl,extraPreviewParams);newUrl=replacePrevPageFragment(newUrl,extraPreviewParams);}
elementInner.contentWindow.location=newUrl;contentWindow.checkBackButton();}}}}
function refreshDevicePreview(pageId,extraPreviewParams){var iframe=top.document.getElementById("preview_iframes").getElementsByTagName("iframe")[0];if(iframe.id=="device_iframe"){refreshDevicePreviewForContentWindow(iframe.contentWindow,pageId,extraPreviewParams);}}
function refreshCurrentTab(siteId,pageId){parent.editorTabsSwitcher.refreshCurrent(siteId,pageId);}
function EditorTabsSwitcher(currentPageId){this.currentPageId=currentPageId;this.tabs_names=["page_preview_tab","page_editor_tab","page_color_tab","content_tab"];this.tabs=new Hash();this.tabs.set("page_preview_tab",["right_preview","preview"]);this.tabs.set("page_editor_tab",["mobile","edit"]);this.tabs.set("page_color_tab",["colors",null]);this.tabs.set("content_tab",["content",null]);}
EditorTabsSwitcher.prototype.switchTo=function(siteId,tabName,pageId,extraParams){var editor=top.document.getElementById("editor");if(editor!=null){if(pageId!=undefined){this.currentPageId=pageId;}else{pageId=this.currentPageId;}
link="/editor/"+this.tabs.get(tabName)[0]+"/"+siteId+"?pageId="+pageId;if(extraParams!=undefined){link+=extraParams;}
editor.contentWindow.location=link;editor.focus();}}
EditorTabsSwitcher.prototype.currentActiveTab=function(){return"page_editor_tab";}
EditorTabsSwitcher.prototype.refreshCurrent=function(siteId,pageId,extraParams){var currentTab=this.currentActiveTab();if(currentTab!=null){if(currentTab=="page_preview_tab"){if(pageId==undefined){pageId=this.currentPageId;}else{this.currentPageId=pageId;}
var editorFrame=top.window.frames["editor"];editorFrame._pageId=pageId;refreshDevicePreviewForContentWindow(editorFrame,pageId,extraParams);}else{this.switchTo(siteId,currentTab,pageId,extraParams);}}}
function redoClick(siteId,pageId,mode,previewUAString,revisionCheck){new Ajax.Request("/editor/page_redo/"+siteId+"?pageId="+top.editorTabsSwitcher.currentPageId+"&mode="+mode+"&previewUAString="+previewUAString+"&revision_check="+revisionCheck,{asynchronous:true,evalScripts:true,onSuccess:function(r){undoRedoClickSuccess(siteId,top.editorTabsSwitcher.currentPageId);},onFailure:function(request){document.getElementById("editor").contentWindow.handleFailureResponse(request.responseText,"redoClick",new Array(siteId,top.editorTabsSwitcher.currentPageId,mode,previewUAString,false));}});}
function undoClick(siteId,pageId,mode,previewUAString,revisionCheck){new Ajax.Request("/editor/page_undo/"+siteId+"?pageId="+top.editorTabsSwitcher.currentPageId+"&mode="+mode+"&previewUAString="+previewUAString+"&revision_check="+revisionCheck,{asynchronous:true,evalScripts:true,onSuccess:function(r){undoRedoClickSuccess(siteId,top.editorTabsSwitcher.currentPageId);},onFailure:function(request){document.getElementById("editor").contentWindow.handleFailureResponse(request.responseText,"undoClick",new Array(siteId,top.editorTabsSwitcher.currentPageId,mode,previewUAString,false));}});}
function revertClick(siteId,pageId,mode,revisionCheck){window.parent.showPopWin("/editor/revert_click/"+siteId+"?pageId="+
top.editorTabsSwitcher.currentPageId+"&mode="+mode+"&revisionCheck="+
revisionCheck,700,250,null);}
function revertClickCancel(){window.parent.hidePopWin();}
function revertClickConfirm(siteId,pageId,mode,revisionCheck){new Ajax.Request("/editor/revert/"+siteId+"?pageId="+
top.editorTabsSwitcher.currentPageId+"&mode="+mode+"&revision_check="+revisionCheck,{asynchronous:true,evalScripts:true,onSuccess:function(r){undoRedoClickSuccess(siteId,pageId);window.parent.hidePopWin();},onFailure:function(request){document.getElementById("editor").contentWindow.handleFailureResponse(request.responseText,"revertClick",new Array(siteId,pageId,mode,false));}});}
function undoRedoClickSuccess(siteId,pageId){refreshCurrentTab(siteId,pageId);refreshDevicePreview();top.refreshUndoRedo(siteId);refresh_all();}
function refreshPreview(siteId,pageId,extraPreviewParams){if(top.document.getElementById("device_iframe")!=null){refreshDevicePreview(pageId,extraPreviewParams);}else{loadPreview(siteId,pageId);}}
function loadPreview(siteId,pageId){var previewSpan=top.document.getElementById("preview_iframes");new Ajax.Request("/editor/device_or_original_preview/"+siteId+"?pageId="+pageId,{asynchronous:false,evalScripts:true,onSuccess:function(request){Element.update(previewSpan,request.responseText);},onFailure:function(request){handleFailureResponse(request.responseText);}});}
function refreshPreviewHeader(siteId,pageId){var iframe=top.document.getElementById("preview_iframes").getElementsByTagName("iframe")[0];new Ajax.Request("/editor/preview_header/"+siteId+"?pageId="+pageId,{asynchronous:true,evalScripts:true,onSuccess:function(request){Element.update(iframe.contentWindow.document.getElementById("editorPreviewHeader"),request.responseText);},onFailure:function(request){handleFailureResponse(request.responseText);}});}
function selectThumb(page_id){deselectAllThumbs();var a=$('page_left_'+page_id);if(/MSIE/.test(navigator.userAgent)){var selectedLeftClass="selected_left_ie";}else{var selectedLeftClass="selected_left";}
a.className=selectedLeftClass;a=$('page_right_'+page_id);a.className="selected_right";}
function deselectAllThumbs(){var elem=$('sitemapMain');if(/MSIE/.test(navigator.userAgent)){var children=elem.getElementsByClassName('selected_left_ie');}else{var children=elem.getElementsByClassName('selected_left');}
for(var c=0;c<children.length;c++){children[c].className="deselected_left";}
var children=elem.getElementsByClassName('selected_left_ie');for(var c=0;c<children.length;c++){children[c].className="deselected_left";}
children=elem.getElementsByClassName('selected_right');for(var c=0;c<children.length;c++){children[c].className="deselected_right";}}
function goToEditPage(siteId,currentPageId,destinationPageId,previewSide,extraPreviewParams,noScroll){if(currentPageId!=destinationPageId||previewSide=="left"){refreshPreview(siteId,destinationPageId,extraPreviewParams);}
if(currentPageId!=destinationPageId||previewSide=="right"){top.editorTabsSwitcher.refreshCurrent(siteId,destinationPageId,extraPreviewParams);}
if(currentPageId!=destinationPageId){refreshPreviewHeader(siteId,destinationPageId);top.refreshUndoRedo(siteId);}
var iframe=$("sitemap_frame");iframe.contentWindow.selectThumb(destinationPageId);if(!noScroll==true){iframe.contentWindow.$("sitemapMain").scrollTop=iframe.contentWindow.$("page_div_"+destinationPageId).offsetTop;}}
function EditorModeSwitcher(){currentMode="simple";iconsCarouselInitialized=false;}
EditorModeSwitcher.prototype.showHideTrashes=function(){if(currentMode=="simple"){this.hideTrashIcons()}else{this.showTrashIcons()}}
EditorModeSwitcher.prototype.getCurrentMode=function(){return currentMode;}
EditorModeSwitcher.prototype.switchToCustom=function(){currentMode="custom";$("editor").contentWindow.$("simpleEditModeLink").show();$("editor").contentWindow.$("customEditModeLink").hide();$("editor").contentWindow.showIconsList();if(iconsCarouselInitialized==false){$("editor").contentWindow.initCarousel_icons_carousel();iconsCarouselInitialized=true;}
this.hideElement($("editor").contentWindow.$("simpleModeEditorDescription"));this.showElement($("editor").contentWindow.$("customModeEditorDescription"));this.showTrashIcons();this.enableDragging();}
EditorModeSwitcher.prototype.switchToSimple=function(){currentMode="simple";$("editor").contentWindow.$("simpleEditModeLink").hide();$("editor").contentWindow.$("customEditModeLink").show();$("editor").contentWindow.hideIconsList();this.showElement($("editor").contentWindow.$("simpleModeEditorDescription"));this.hideElement($("editor").contentWindow.$("customModeEditorDescription"));this.hideTrashIcons();this.disableDragging();}
EditorModeSwitcher.prototype.enableDragging=function(){$("editor").contentWindow.enableContentList();this.setSectionsHeadersCursor("move");}
EditorModeSwitcher.prototype.disableDragging=function(){$("editor").contentWindow.disableContentList();this.setSectionsHeadersCursor("auto");}
EditorModeSwitcher.prototype.setSectionsHeadersCursor=function(cursorName){var sectionsHeaders=$("editor").contentWindow.document.getElementsByClassName("sectionHead");for(var i=0;i<sectionsHeaders.length;i++){sectionsHeaders[i].style.cursor=cursorName;}}
EditorModeSwitcher.prototype.getTrashIcons=function(){return $("editor").contentWindow.document.getElementsByName("sectionTrashIcon");}
EditorModeSwitcher.prototype.hideTrashIcons=function(){var trashes=this.getTrashIcons();for(var i=0;i<trashes.length;i++){$(trashes[i]).hide();}}
EditorModeSwitcher.prototype.showTrashIcons=function(){var trashes=this.getTrashIcons();for(var i=0;i<trashes.length;i++){$(trashes[i]).show();}}
EditorModeSwitcher.prototype.resetCarouselInitializationFlag=function(){iconsCarouselInitialized=false;}
EditorModeSwitcher.prototype.showElement=function(element){if(element!=null)
element.show();}
EditorModeSwitcher.prototype.hideElement=function(element){if(element!=null)
element.hide();}
var isIE=(navigator.appVersion.indexOf("MSIE")!=-1)?true:false;var isWin=(navigator.appVersion.toLowerCase().indexOf("win")!=-1)?true:false;var isOpera=(navigator.userAgent.indexOf("Opera")!=-1)?true:false;function ControlVersion()
{var version;var axo;var e;try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");version=axo.GetVariable("$version");}catch(e){}
if(!version)
{try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");version="WIN 6,0,21,0";axo.AllowScriptAccess="always";version=axo.GetVariable("$version");}catch(e){}}
if(!version)
{try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");version=axo.GetVariable("$version");}catch(e){}}
if(!version)
{try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");version="WIN 3,0,18,0";}catch(e){}}
if(!version)
{try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");version="WIN 2,0,0,11";}catch(e){version=-1;}}
return version;}
function GetSwfVer(){var flashVer=-1;if(navigator.plugins!=null&&navigator.plugins.length>0){if(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]){var swVer2=navigator.plugins["Shockwave Flash 2.0"]?" 2.0":"";var flashDescription=navigator.plugins["Shockwave Flash"+swVer2].description;var descArray=flashDescription.split(" ");var tempArrayMajor=descArray[2].split(".");var versionMajor=tempArrayMajor[0];var versionMinor=tempArrayMajor[1];var versionRevision=descArray[3];if(versionRevision==""){versionRevision=descArray[4];}
if(versionRevision[0]=="d"){versionRevision=versionRevision.substring(1);}else if(versionRevision[0]=="r"){versionRevision=versionRevision.substring(1);if(versionRevision.indexOf("d")>0){versionRevision=versionRevision.substring(0,versionRevision.indexOf("d"));}}
var flashVer=versionMajor+"."+versionMinor+"."+versionRevision;}}
else if(navigator.userAgent.toLowerCase().indexOf("webtv/2.6")!=-1)flashVer=4;else if(navigator.userAgent.toLowerCase().indexOf("webtv/2.5")!=-1)flashVer=3;else if(navigator.userAgent.toLowerCase().indexOf("webtv")!=-1)flashVer=2;else if(isIE&&isWin&&!isOpera){flashVer=ControlVersion();}
return flashVer;}
function DetectFlashVer(reqMajorVer,reqMinorVer,reqRevision)
{versionStr=GetSwfVer();if(versionStr==-1){return false;}else if(versionStr!=0){if(isIE&&isWin&&!isOpera){tempArray=versionStr.split(" ");tempString=tempArray[1];versionArray=tempString.split(",");}else{versionArray=versionStr.split(".");}
var versionMajor=versionArray[0];var versionMinor=versionArray[1];var versionRevision=versionArray[2];if(versionMajor>parseFloat(reqMajorVer)){return true;}else if(versionMajor==parseFloat(reqMajorVer)){if(versionMinor>parseFloat(reqMinorVer))
return true;else if(versionMinor==parseFloat(reqMinorVer)){if(versionRevision>=parseFloat(reqRevision))
return true;}}
return false;}}
function AC_AddExtension(src,ext)
{if(src.indexOf('?')!=-1)
return src.replace(/\?/,ext+'?');else
return src+ext;}
function AC_Generateobj(objAttrs,params,embedAttrs)
{var str='';if(isIE&&isWin&&!isOpera)
{str+='<object ';for(var i in objAttrs)
{str+=i+'="'+objAttrs[i]+'" ';}
str+='>';for(var i in params)
{str+='<param name="'+i+'" value="'+params[i]+'" /> ';}
str+='</object>';}
else
{str+='<embed ';for(var i in embedAttrs)
{str+=i+'="'+embedAttrs[i]+'" ';}
str+='> </embed>';}
document.write(str);}
function AC_FL_RunContent(){var ret=AC_GetArgs
(arguments,".swf","movie","clsid:d27cdb6e-ae6d-11cf-96b8-444553540000","application/x-shockwave-flash");AC_Generateobj(ret.objAttrs,ret.params,ret.embedAttrs);}
function AC_SW_RunContent(){var ret=AC_GetArgs
(arguments,".dcr","src","clsid:166B1BCA-3F9C-11CF-8075-444553540000",null);AC_Generateobj(ret.objAttrs,ret.params,ret.embedAttrs);}
function AC_GetArgs(args,ext,srcParamName,classid,mimeType){var ret=new Object();ret.embedAttrs=new Object();ret.params=new Object();ret.objAttrs=new Object();for(var i=0;i<args.length;i=i+2){var currArg=args[i].toLowerCase();switch(currArg){case"classid":break;case"pluginspage":ret.embedAttrs[args[i]]=args[i+1];break;case"src":case"movie":args[i+1]=AC_AddExtension(args[i+1],ext);ret.embedAttrs["src"]=args[i+1];ret.params[srcParamName]=args[i+1];break;case"onafterupdate":case"onbeforeupdate":case"onblur":case"oncellchange":case"onclick":case"ondblclick":case"ondrag":case"ondragend":case"ondragenter":case"ondragleave":case"ondragover":case"ondrop":case"onfinish":case"onfocus":case"onhelp":case"onmousedown":case"onmouseup":case"onmouseover":case"onmousemove":case"onmouseout":case"onkeypress":case"onkeydown":case"onkeyup":case"onload":case"onlosecapture":case"onpropertychange":case"onreadystatechange":case"onrowsdelete":case"onrowenter":case"onrowexit":case"onrowsinserted":case"onstart":case"onscroll":case"onbeforeeditfocus":case"onactivate":case"onbeforedeactivate":case"ondeactivate":case"type":case"codebase":case"id":ret.objAttrs[args[i]]=args[i+1];break;case"width":case"height":case"align":case"vspace":case"hspace":case"class":case"title":case"accesskey":case"name":case"tabindex":ret.embedAttrs[args[i]]=ret.objAttrs[args[i]]=args[i+1];break;default:ret.embedAttrs[args[i]]=ret.params[args[i]]=args[i+1];}}
ret.objAttrs["classid"]=classid;if(mimeType)ret.embedAttrs["type"]=mimeType;return ret;}
var blockingDivs=[["blockingProgressIn","blockingInTransparent"],["blockingMessageIn","blockingIn"]];function handleRedirectResponse(responseText){var redirect="redirect:";if(responseText.indexOf(redirect)==0){top.document.location.href=responseText.substring(redirect.length);return true;}else{return false;}}
function handleEditFailureResponse(responseText,methodName,paramsArray){var prefixes=["no_section:","general_error:","command_error:"];for(var i=0;i<prefixes.length;i++){if(responseText.indexOf(prefixes[i])==0){showErrorMessage(responseText.substring(prefixes[i].length));return true;}}
return false;}
function handleVersionChangedResponse(responseText,methodName,paramsArray){var versionChanged="version_changed:";if(responseText.indexOf(versionChanged)==0){var methodCall=createMethodCall(methodName,paramsArray);responseText=responseText.substring(versionChanged.length);responseText=responseText.replace("onclick=\"_replace_me;","onclick=\""+methodCall);showErrorMessage(responseText);return true;}
return false;}
function handleStorageLimitError(responseText){var storageError="storage_limit_error:";if(responseText.indexOf(storageError)==0){responseText=responseText.substring(storageError.length);showErrorMessage(responseText);return true;}
return false;}
function handleLoginError(responseText){var limitError="login_error:";if(responseText.indexOf(limitError)==0){top.document.location.href="/user/login_for_ajax?return-to="+escape(top.document.location);return true;}
return false;}
function handleFailureResponse(responseText,methodName,paramsArray){if(handleRedirectResponse(responseText))
return true;if(handleEditFailureResponse(responseText,methodName,paramsArray))
return true;if(handleVersionChangedResponse(responseText,methodName,paramsArray))
return true;if(handleStorageLimitError(responseText))
return true;if(handleLoginError(responseText))
return true;return false;}
function createMethodCall(methodName,paramsArray){var result=methodName+"(";for(var i=0;i<paramsArray.length;i++){result+="'"+paramsArray[i]+"'";if(i<paramsArray.length-1){result+=",";}}
result+=");";return result;}
function showErrorMessage(messageError){Element.update("blockingMessageIn",messageError);disableContent("blockingMessageIn");}
function cancelEdits(siteId,page_xref){new Ajax.Request("/editor/clear_history_for_page?id="+siteId+"&page_xref="+page_xref,{asynchronous:false,evalScripts:true,onComplete:function(t){refreshContainer();refreshDevicePreview();}});}
function refreshContainer(){var href=window.location.href;if(href.charAt(href.length-1)=='#'){href=href.substring(0,href.length-1);}
window.location=href;}
function enableContent(){$("blocking").hide();for(var i=0;i<blockingDivs.length;i++){Element.hide(blockingDivs[i][0]);}}
function disableContent(blockingDivId){$("blocking").show();for(var i=0;i<blockingDivs.length;i++){if(blockingDivs[i][0]!=blockingDivId){Element.hide(blockingDivs[i][0]);}else{Element.show(blockingDivs[i][0]);$("blockingFillIn").className=blockingDivs[i][1];}}}
function isSafari(){return/AppleWebKit/.test(navigator.userAgent);}
function isSafari2X(){return/AppleWebKit\/4/.test(navigator.userAgent);}
function LinkedTabSwitcher(tabSwitcherId,array){this.tabSwitcherId=tabSwitcherId;this.links=array;}
LinkedTabSwitcher.prototype.switchTo=function(index){for(var i=0;i<this.links.length;i++){var spanElement=document.getElementById("span_"+this.tabSwitcherId+"_"+i);var aElement=document.getElementById("a_"+this.tabSwitcherId+"_"+i);var tabContentElement=document.getElementById(this.links[i][1]);if(i==index){spanElement.style["display"]="";aElement.style["display"]="none";tabContentElement.style["display"]="";}else{spanElement.style["display"]="none";aElement.style["display"]="";tabContentElement.style["display"]="none";}}}
function confirmBack(submit_form_id,confirmQuestion){if(confirm(confirmQuestion)){$(submit_form_id).submit();}}
function goToSubscriptionChange(){top.document.location="/user/subscription";}
function animHandler(carouselID,status,direction){var region=$("carousel-clip-region"+carouselID);if(region!=null){if(status=="before"){Effect.Fade(region,{to:0.3,queue:{position:'end',scope:"carousel"},duration:0.2})}
if(status=="after"){Effect.Fade(region,{to:1,queue:{position:'end',scope:"carousel"},duration:0.2})}}}
function buttonStateHandler(button,enabled){if(button.match("prev-arrow"))
$(button).src=enabled?"/images/sectionicons/carousel_small_left.png":"/images/sectionicons/carousel_small_left_dis.png";else
$(button).src=enabled?"/images/sectionicons/carousel_small_right.png":"/images/sectionicons/carousel_small_right_dis.png";}
function adv_more_cancel(){$('adv_more_options').value='';$('add_link').show();$('add_selected').hide();$('add_left').show();$('rem_left').hide();}
function adv_more_select_add(){adv_more_cancel();$('adv_more_options').value='add';$('add_link').hide();$('add_selected').show();}
function adv_more_select_rem(){adv_more_cancel();$('adv_more_options').value='rem';$('add_left').hide();$('rem_left').show();}
function rotateAwards(awd_name){new Ajax.Updater('awd_box','/start/award_rotate?awd_name='+awd_name,{asynchronous:true,evalScripts:true,onLoading:function(request){Effect.Fade($('awd_container'));},onSuccess:function(request){Effect.Appear($('awd_container'));}});}
function rotateAdverts(adv_name){new Ajax.Updater('adv_box','/start/advert_rotate?adv_name='+adv_name,{asynchronous:true,evalScripts:true,onLoading:function(request){Effect.Fade($('adv_container'));},onSuccess:function(request){Effect.Appear($('adv_container'));}});}
function MapsManager(zoom,longitude,latitude){this.count=0;this.parent=null;this.longitude=longitude;this.latitude=latitude;this.zoom=zoom;}
MapsManager.prototype.gmapUpdatePosition=function(){this.latitude=map.getCenter().lat();this.longitude=map.getCenter().lng();document.getElementById("latitude_label").innerHTML=this.latitude;document.getElementById("longitude_label").innerHTML=this.longitude;}
MapsManager.prototype.gmapUpdateZoom=function(oldlevel,newlevel){this.zoom=newlevel;document.getElementById("zoom_label").innerHTML=this.zoom;}
MapsManager.prototype.changeMapType=function(){var type=document.getElementById("formMapConfig_mapType");var type_class=(type.value=="G_NORMAL_MAP")?G_NORMAL_MAP:G_SATELLITE_MAP;map.setMapType(type_class);}
MapsManager.prototype.searchLocalization=function(siteId,som,originalPage,sectionId){var geocoder=new GClientGeocoder();var address=document.getElementById("address").value;var currentElement=this;geocoder.getLatLng(address,function(point){if(!point){alert(address+" not found");}else{var newZoom=13;map.setCenter(point,newZoom);currentElement.gmapUpdateZoom(null,newZoom);currentElement.gmapUpdatePosition();foundLocation=true;if(foundLocation){performEditMapSubmit(siteId,som,originalPage,sectionId,currentElement);}}});}
var TAG_SECTION_PREFIX="id_";var TAG_REGION_PREFIX="region_";var _siteId=null;var _pageId=null;var _sectionsQuantity=new Array();var linksTimeout;var _serializeContentList=new Array();var _disabledEditor=false;var _regionOrder=null;var _pageType=null;var _nextSection=null;var _draggedSectionTagId=null;function disableEditor(blockingDivId){disableContent(blockingDivId);_disabledEditor=true;}
function enableEditor(siteId,pageId,pageType){if(siteId!=null){_siteId=siteId;}
if(pageType!=null){_pageType=pageType;}
if(pageId!=null){_pageId=pageId;}
updateContentList();updateSectionsQuantity();enableIcons();enableContent();_disabledEditor=false;}
function refreshSection(sectionId,dontDisableEditor,allowNotExisting){refreshSections(new Array(sectionId),dontDisableEditor,allowNotExisting);}
function refreshSections(sectionsIds,dontDisableEditor,allowNotExisting){if(sectionsIds.length==0){return;}
if(dontDisableEditor==false){disableEditor("blockingProgressIn");}
var ids=""+sectionsIds[0];for(var i=1;i<sectionsIds.length;i++){ids+=","+sectionsIds[i];}
new Ajax.Request("/editor/sections/"+_siteId+"?pageId="+_pageId+"&sectionsIds="+ids+"&allowNotExisting="+allowNotExisting,{asynchronous:true,evalScripts:true,onFailure:function(request){handleRedirectResponse(request.responseText);},onSuccess:function(request){window.setTimeout("refreshUndoRedo();",10);refreshDevicePreview();},onComplete:function(request){checkCustomMode();enableEditor(null,null);enableTooltips(null,true);}});}
function refreshSectionsWithTitles(titles){var sectionsIds="";var sections=$("container").getElementsByTagName("li");for(var i=0;i<sections.length;i++){var section=sections[i];if(matches(section.title,titles))
sectionsIds+="'"+getSectionIdFromTagSectionId(section.id)+"',";}
if(sectionsIds.length>0){sectionsIds=sectionsIds.substring(0,sectionsIds.length-1);}
window.setTimeout("refreshSections(new Array("+sectionsIds+"), false, false)");}
function refreshSectionsWithTitle(title){refreshSectionsWithTitles(new Array(title));}
function refreshUndoRedoInternal(undo,redo){try{parent.refresh_undo(undo);parent.refresh_redo(redo);parent.refresh_all();}catch(err){}}
function refreshUndoRedo(siteId){if(siteId==undefined){siteId=_siteId;}
new Ajax.Request('/editor/refresh_undo/'+siteId+'?pageId='+
top.editorTabsSwitcher.currentPageId,{asynchronous:true,evalScripts:true,onSuccess:function(request){eval(request.responseText);},onFailure:function(request){handleRedirectResponse(request.responseText);}});}
function cancelOperation(){refreshContainer();}
function onlyRefreshEditor(div,refreshAll,allowNotExisting){if(refreshAll){disableEditor("blockingProgressIn");refreshContainer();refreshDevicePreview();}
else{linksTimeout=window.setTimeout('refreshSection("'+div+'", false, '+allowNotExisting+')',10);}}
function enableContentList(pageType){var region,i,regionId,regionList;var regionIdList=new Array();var containmentIdList=new Array();_regionOrder=new Array();containmentIdList.push('carousel-list');regionList=$$('[name="alterableRegion"]');if(pageType=="dciTemplate"||regionList.length>0){for(i=0;i<regionList.length;i++){region=$(regionList[i]);regionId=region.getAttribute("id");regionIdList.push(regionId);containmentIdList.push(regionId);_regionOrder[i]=regionId;}}else{regionIdList.push("region_contentlist");containmentIdList.push("region_contentlist");_regionOrder[regionList.length]="region_contentlist";}
initializeSortableLists(regionIdList,containmentIdList);}
function disableContentList(pageType){var region,i,regionId,regionList;var regionIdList=new Array();_regionOrder=null;regionList=$$('[name="alterableRegion"]');if(pageType=="dciTemplate"||regionList.length>0){for(i=0;i<regionList.length;i++){region=$(regionList[i]);regionId=region.getAttribute("id");regionIdList.push(regionId);}}else{regionIdList.push("region_contentlist");}
destroySortableLists(regionIdList);}
function initializeSortableLists(regionIdList,containmentIdList){if(regionIdList==null||containmentIdList==null){return;}
for(i=0;i<regionIdList.length;i++){regionId=regionIdList[i]
Sortable.create(regionId,{constraint:false,only:"section",onDragBegin:function(element){element.style.overflow='hidden';element.style.height='25px';element.style.borderBottom='medium dotted gray';_draggedSectionTagId=element.id;_nextSection=element.next();},onDragEnd:function(element){element.style.height='';element.style.overflow='';element.style.borderBottom='';},containment:containmentIdList,dropOnEmpty:true,onUpdate:function(container){updateRegion(_siteId,_pageId,true,container.getAttribute("id"));},handle:'handle',revert:true,scroll:'container',outSensitivityVertical:true,scrollSensitivity:60,outSensitivity:58});_serializeContentList[regionId]=Sortable.serialize(regionId);_sectionsQuantity[regionId]=getSectionQuantity(_serializeContentList[regionId]);}}
function destroySortableLists(regionIdList){for(var i=0;i<regionIdList.length;i++){Sortable.destroy(regionIdList[i]);}}
function updateContentList(){if(_regionOrder!=null){for(var i=0;i<_regionOrder.length;i++){regionId=_regionOrder[i];_serializeContentList[regionId]=Sortable.serialize(regionId);}}}
function updateSectionsQuantity(){if(_regionOrder!=null){for(var i=0;i<_regionOrder.length;i++){regionId=_regionOrder[i];_sectionsQuantity[regionId]=getSectionQuantity(_serializeContentList[regionId]);}}}
function enableIcons(){Sortable.create('carousel-list',{constraint:false,containment:[''],dropOnEmpty:true,handle:'handle',onDragBegin:function(element){},onDragEnd:function(element){},onUpdate:function(container){return false;},revert:true,scroll:'container',scrollSensitivity:60,onDragBegin:function(element){_draggedSectionTagId=element.id;}});}
function disableIcons(){Sortable.destroy('carousel-list');}
function getTagSectionId(sectionId){return TAG_SECTION_PREFIX+sectionId;}
function getSectionIdFromTagSectionId(tagSectionId){return tagSectionId.substring(TAG_SECTION_PREFIX.length);}
function getRegionIdFromTagRegionId(tagRegionId){return tagRegionId.substring(TAG_REGION_PREFIX.length);}
function getSectionQuantity(list){if(list==""){return 0;}else{return list.split("&").length;}}
function deleteSection(siteId,pageId,tagSectionId,revisionCheck){if(_disabledEditor)return;disableEditor("blockingProgressIn");Element.hide(tagSectionId);var sectionId=getSectionIdFromTagSectionId(tagSectionId);new Ajax.Request('/editor/remove/'+siteId,{parameters:'pageId='+pageId+'&sectionId='+sectionId+"&revision_check="+revisionCheck,asynchronous:true,evalScripts:true,onSuccess:function(){if($(tagSectionId).title=='Search'){activateSearchIcon();}
Element.remove(tagSectionId);refreshDevicePreview();enableEditor();refreshUndoRedo();refreshThumbnail(siteId,pageId);},onFailure:function(request){Element.show(tagSectionId);handleFailureResponse(request.responseText,"deleteSection",new Array(siteId,pageId,tagSectionId,false));}});}
function activateSearchIcon(){var search_element=$('search');search_element.childNodes[0].setAttribute('class','handle');search_element.childNodes[0].style.cursor='move';var src=search_element.childNodes[0].firstChild.src;src=src.replace('_disabled','');search_element.childNodes[0].firstChild.src=src;var alt=search_element.childNodes[0].firstChild.alt;alt=alt.replace('_disabled','');search_element.childNodes[0].firstChild.alt=alt;search_element.down('div.handle').remove();search_element.id=TAG_SECTION_PREFIX+'search';}
function updateRegion(siteId,pageId,revisionCheck,regionTagId){updateContentList();if(!shallUpdateRegion(regionTagId))return;if(revisionCheck.toString()=="true"&&_disabledEditor)return;disableEditor("blockingProgressIn");var regionId=getRegionIdFromTagRegionId(regionTagId);var sectionId=getSectionIdFromTagSectionId(_draggedSectionTagId);var previousSectionId=getPreviousSectionId(sectionId);if(previousSectionId==null){previousSectionId="";}
_draggedSectionTagId=null;new Ajax.Request('/editor/modify_region/'+siteId+'?pageId='+pageId+"&revision_check="+revisionCheck+"&regionId="+regionId+"&sectionId="+sectionId+"&previousSectionId="+previousSectionId,{asynchronous:true,evalScripts:true,onFailure:function(request){handleFailureResponse(request.responseText,"updateRegion",new Array(siteId,pageId,false,regionTagId));},onComplete:function(request){checkCustomMode();ajaxRefreshAfterUpdateRegion();refreshThumbnail(siteId,pageId);}});}
function checkCustomMode(){if(parent.editorModeSwitcher.getCurrentMode()=="custom"){parent.editorModeSwitcher.switchToCustom();}}
function refreshThumbnail(siteId,pageId){top.document.getElementById('sitemap_frame').contentWindow.updateThumbnail(siteId,pageId);}
function refreshWholeSitemap(){top.document.getElementById('sitemap_frame').contentWindow.document.location.reload();}
function ajaxRefreshAfterUpdateRegion(){enableEditor();refreshUndoRedo();refreshDevicePreview();}
function shallUpdateRegion(regionId){if((getSectionQuantity(_serializeContentList[regionId])-_sectionsQuantity[regionId])<0){return false;}else{return true;}}
function displaySection(siteId,sectionId,originalPage,som,url,sourceSectionId){window.parent.showSection(siteId,sectionId,originalPage,som,url,700,400,null,sourceSectionId);}
function switchSection(siteId,pageId,sectionId,revisionCheck){if(disableEditor("blockingProgressIn"))return;new Ajax.Request('/editor/switch_dynamic/'+siteId+'?pageId='+pageId+'&sectionId='+sectionId+"&revision_check="+revisionCheck,{asynchronous:true,evalScripts:true,onFailure:function(request){handleFailureResponse(request.responseText,"switchSection",new Array(siteId,pageId,sectionId,false));},onSuccess:function(t){enableEditor();refreshUndoRedo();refreshDevicePreview();},onComplete:function(t){enableTooltips(null,true);}});}
function getPreviousSectionId(sectionId){var previousSectionId=null;var currentSection=$(getTagSectionId(sectionId));if(currentSection!=null){var previousSection=currentSection.previous();if(previousSection!=null){previousSectionId=previousSection.id
previousSectionId=getSectionIdFromTagSectionId(previousSectionId);}}
return previousSectionId;}
function mergeSameSections(siteId,pageId,sectionId,revisionCheck){if(disableEditor("blockingProgressIn"))return;var previousSectionId=getPreviousSectionId(sectionId);new Ajax.Request('/editor/merge/'+siteId+'?pageId='+pageId+'&sectionId='+sectionId+"&previousSectionId="+previousSectionId+"&revision_check="+revisionCheck,{asynchronous:true,evalScripts:true,parameters:_serializeContentList,onFailure:function(request){handleFailureResponse(request.responseText,"mergeSameSections",new Array(siteId,pageId,previousSectionId,sectionId,false));},onSuccess:function(t){var nextSection=$(getTagSectionId(sectionId)).next();Element.remove(getTagSectionId(sectionId));var sectionsIds=new Array();sectionsIds.push(previousSectionId);if(nextSection!=null){sectionsIds.push(getSectionIdFromTagSectionId(nextSection.id));}
refreshSections(sectionsIds,true);}});}
function showButton(buttonId){if(parent.editorModeSwitcher.getCurrentMode()=="simple")
return;var currentSection=$(buttonId).up(1);var previousSection=$(currentSection).previous();if(previousSection&&(currentSection.title==previousSection.title)&&(currentSection.attributes.section_style.value=="static"||currentSection.attributes.section_style.value=="STATIC")&&(previousSection.attributes.section_style.value=="static"||previousSection.attributes.section_style.value=="STATIC")){$(buttonId).style.visibility='visible';}}
function hideButton(buttonId){$(buttonId).style.visibility='hidden';}
function ajaxHandler(carousel,status){var overlay=$('overlay-'+carousel.carouselElemID);if(status=="before"){if(overlay){overlay.setOpacity(0);overlay.show();Effect.Fade(overlay,{from:0,to:0.8,duration:0.2})}
else
new Insertion.Top(carousel.carouselElemID,"<div id='overlay-"+carousel.carouselElemID+"' class='gallery_overlay'><img src='/images/please_wait.gif'/></div>");}
else
Effect.Fade(overlay,{from:0.8,to:0.0,duration:0.2})}
function showContentEdit(id){Element.hide("contentLabel_"+id);Element.show("contentInput_"+id);$("content_"+id+"_name").focus();}
function hideContentEdit(id){Element.show("contentLabel_"+id);Element.hide("contentInput_"+id);}
function applyContentChanges(id,revisionCheck){Element.hide("contentInput_"+id);Element.show("contentSaving_"+id);new Ajax.Request("/editor/set_content_item",{parameters:Form.serialize($("content_"+id))+"&revision_check="+revisionCheck,asynchronous:true,evalScripts:true,onSuccess:function(request){refreshSection(id,true);},onFailure:function(request){handleFailureResponse(request.responseText,"applyContentChanges",new Array(id,false));}});}
function disableLink(linkId){var link=document.getElementById(linkId);var hidden_container=document.getElementById(linkId+"_hidden_container");hidden_container.className=link.className;hidden_container.style.display="none";link.className=link.className+"_disabled";hidden_container.onclick=link.onclick;link.onclick=function(event){return false;}}
function enableLink(linkId){var link=document.getElementById(linkId);var hidden_container=document.getElementById(linkId+"_hidden_container");link.className=hidden_container.className;link.onclick=hidden_container.onclick;}
function showErrorMessage(messageError){Element.update("blockingMessageIn",messageError);disableEditor("blockingMessageIn");}
var iconListShown=false;function renamePageClick(){$("editor_header").hide();if($("mobile_iconlist").visible()){iconListShown=true;$("mobile_iconlist").hide();}else{iconListShown=false;}
moveSections(34);$("pageEditorTitleEdit").show();}
function renamePageCancel(){setTextfieldModuleMsg('rename_page','');$("rename_page_input").value=$("titleFullPageName").innerHTML;renamePageHide();}
function renamePageHide(){$("editor_header").show();if(iconListShown)
$("mobile_iconlist").show();if($("mobile_iconlist").visible()){moveSectionsDown();}else{moveSectionsUp();}
$("pageEditorTitleEdit").hide();}
function onPageRename(pageTitle,responseText){var ids=get_value_by_key('ids',responseText);var pageTitleCut=get_value_by_key('name',responseText);pageTitleCut=pageTitleCut.escapeHTML();$("pageTitleLabelEditor").innerHTML=pageTitleCut
$("titleFullPageName").innerHTML=pageTitle;var iframe=top.document.getElementById("preview_iframes").getElementsByTagName("iframe")[0];var span=iframe.contentWindow.document.getElementById('pageTitleLabelPreview');span.innerHTML=pageTitleCut;span.title=pageTitle;iframe.contentWindow.enableTooltips(iframe.contentWindow.$('pageTitleLabelPreview'),true);if($("rename_page_input").value==""){$("pageTitleLabelEditor").title=" ";}else{$("pageTitleLabelEditor").title=pageTitle;}
enableTooltips($("pageTitleLabelEditor"),true);$("rename_page_input").value=pageTitle;refreshSectionsWithTitles(new Array('Title','Navigation'));}
function renamePageApply(empty_warning,siteId,pageId,revisionCheck){var pageNameValue=$("rename_page_input").value.trim();if(!pageNameValue||pageNameValue==""){setTextfieldModuleMsgError('rename_page',empty_warning);return false;}else{setTextfieldModuleMsg('rename_page','');new Ajax.Request("/sitemap/rename_page/"+siteId+"?pageId="+pageId+"&revision_check="+revisionCheck+"&name="+encodeURIComponent(pageNameValue),{asynchronous:true,evalScripts:true,onSuccess:function(request){var status=get_value_by_key('status',request.responseText);if(status=='OK'){renamePageHide();onPageRename(pageNameValue,request.responseText);setTimeout('refreshThumbnail('+siteId+','+pageId+')',2000);}else{moveSections(47);setTextfieldModuleMsgError('rename_page',status);}},onFailure:function(request){handleFailureResponse(request.responseText,"renamePageApply",new Array(siteId,pageId,false));}});}}
function renameSiteClick(){$("siteEditorHeaderLinks").hide();$("siteEditorTitleEdit").show();}
function renameSiteCancel(){renameSiteHide();}
function renameSiteHide(){$("siteEditorTitleEdit").hide();$("siteEditorHeaderLinks").show();}
function renameSiteApply(empty_warning,siteId){var siteNameValue=$("titleInput").value.replace(/(^\s)|(\s$)/g,'')
if(!siteNameValue||siteNameValue==""){alert(empty_warning);return false;}else{new Ajax.Request("/sitemap/rename_site/"+siteId+"?name="+encodeURIComponent(siteNameValue),{asynchronous:true,evalScripts:true,onSuccess:function(request){renameSiteHide();onSiteRename(request.responseText);window.parent.editor.updateEditor();refreshWholeSitemap();},onFailure:function(request){handleFailureResponse(request.responseText,"renameSiteApply",new Array(siteId));}});}}
function onSiteRename(responseText){$("siteDisplayNameLabelEditor").innerHTML=responseText.escapeHTML();}
function showIconsList(){$("mobile_iconlist").show();moveSectionsDown();}
function hideIconsList(){$("mobile_iconlist").hide();moveSectionsUp();}
function moveSections(pixels){$("container").style.top=pixels+"px";document.getElementsByTagName("body")[0].style.padding=(pixels+2)+"px 0 40px 0";}
function moveSectionsUp(){moveSections(24);}
function moveSectionsDown(){moveSections(64);}
function deletePageClick(siteId,pageId,pageName){window.parent.showPopWin("/editor/delete_page/"+siteId+"?pageId="+pageId+"&editedPageId="+pageId+"&pageName="+encodeURIComponent(pageName),700,250,null);}
function deletePageCancel(){window.parent.hidePopWin();}
function deletePageConfirm(siteId,pageToDelete,editedPage,noReload){new Ajax.Request("/sitemap/remove_page/"+siteId+"?pageId="+pageToDelete+"&editedPageId="+editedPage,{asynchronous:true,evalScripts:true,onSuccess:function(request){if(noReload==true){if(pageToDelete==editedPage){top.location.reload();}else{var iframe=top.document.getElementById("sitemap_frame")
try{top.goToEditPage(siteId,editedPage,editedPage,'left',undefined,true);var div=iframe.contentDocument.getElementById("page_div_"+pageToDelete);div.remove();window.parent.editor.updateEditor();}catch(err){var a=top.document.frames["sitemap_frame"].document.getElementById("page_div_"+pageToDelete);a.remove();}
window.parent.hidePopWin();}}else{top.document.location.href="/editor/index/"+siteId;}},onFailure:function(request){handleFailureResponse(request.responseText);}});}
function deletePropagatedSection(siteId,pageId,tagSectionId,revisionCheck){window.parent.showPopWin("/editor/delete_propagated_section/"+siteId+"?pageId="+pageId+"&tagSectionId="+tagSectionId+"&revisionCheck="+revisionCheck,700,250,null);}
function deletePropagatedSectionCancel(){window.parent.hidePopWin();}
function deleteNavigationSection(siteId,pageId,tagSectionId,revisionCheck){window.parent.showPopWin("/editor/delete_navigation_section/"+siteId+"?pageId="+pageId+"&tagSectionId="+tagSectionId+"&revisionCheck="+revisionCheck,700,250,null);}
function deleteNavigationSectionCancel(){window.parent.hidePopWin();}
function updateEditor(){window.parent.hidePopWin();top.document.getElementById("editor").contentWindow.refreshContainer();refreshDevicePreview();}
function deletePropagatedSectionConfirm(siteId,pageId,tagSectionId,revisionCheck){var sourceSectionId=getSectionIdFromTagSectionId(tagSectionId);new Ajax.Request('/editor/remove/'+siteId,{parameters:'pageId='+pageId+'&sectionId='+sourceSectionId+"&revision_check="+revisionCheck,asynchronous:true,evalScripts:true,onSuccess:function(request){window.parent.editor.updateEditor();refreshWholeSitemap();},onFailure:function(request){Element.show(tagSectionId);window.parent.editor.reload();handleFailureResponse(request.responseText,"deleteSection",new Array(siteId,pageId,tagSectionId,false));}});}
function deleteNavigationSectionConfirm(siteId,pageId,tagSectionId,revisionCheck){var sectionId=getSectionIdFromTagSectionId(tagSectionId);new Ajax.Request('/editor/remove/'+siteId,{parameters:'pageId='+pageId+'&sectionId='+sectionId+"&revision_check="+revisionCheck,asynchronous:true,evalScripts:true,onSuccess:function(){window.parent.editor.updateEditor();},onFailure:function(request){Element.show(tagSectionId);window.parent.editor.reload();handleFailureResponse(request.responseText,"deleteSection",new Array(siteId,pageId,tagSectionId,false));}});}
function assignUserAsLogged(){new Ajax.Request('/user/assign_user_as_logged/',{parameters:'',asynchronous:true,evalScripts:true,onSuccess:function(){top.document.location.href="/dashboard/list";},onFailure:function(request){handleFailureResponse(request.responseText);}});}
function TreeRenderer(options){this.tree=null;if(options==null){options={};}
this.collapsedItemIconHtml=options.collapsedItemIconHtml;this.expandedItemIconHtml=options.expandedItemIconHtml;this.leafIconHtml=options.leafIconHtml;this.loadingIconHtml=options.loadingIconHtml;this.loadingTreeHtml=options.loadingTreeHtml;this.searchingHtml=options.searchingHtml;this.loadingItemHtml=options.loadingItemHtml;}
TreeRenderer.prototype._getLoadingIconHtml=function(){var tree=this.tree;if(this.loadingIconHtml!=null){return this.loadingIconHtml;}else{return'<img src="/images/sitemap_anim_transp.gif" alt="[loading]" class="'+tree._getClass("loading_icon")+'" />';}}
TreeRenderer.prototype._getLoadingTreeHtml=function(){var tree=this.tree;if(this.loadingTreeHtml!=null){return this.loadingTreeHtml;}else{return'<span class="'+tree._getClass("loading_tree")+'">'+this._getLoadingIconHtml()+'Loading tree data&hellip;</span>';}}
TreeRenderer.prototype._getSearchingHtml=function(){var tree=this.tree;if(this.searchingHtml!=null){return this.searchingHtml;}else{return'<div style="padding-left:40%" class="'+tree._getClass("searching")+'">'+this._getLoadingIconHtml()+'Searching for item&hellip;</div>';}}
TreeRenderer.prototype._getLoadingItemHtml=function(){var tree=this.tree;if(this.loadingItemHtml!=null){return this.loadingItemHtml;}else{return this._getLoadingIconHtml()+'&nbsp;Loading&hellip;';}}
TreeRenderer.prototype.getHtml=function(){var tree=this.tree;var html='';html+='<div id="'+tree.id+'" class="'+tree._getClass("")+'"';if(tree.cssStyle!=null){html+=' style="'+tree.cssStyle+'"';}
html+='>';html+='<div id="'+tree.id+'_searching" style="display:none">'+this._getSearchingHtml()+'</div>';html+='<div id="'+tree.id+'_loading">'+this._getLoadingTreeHtml()+'</div>';html+='<div id="'+tree.id+'_root"></div>';html+='</div>';return html;}
TreeRenderer.prototype.renderItemContent=function(tree,item){if(item.isLoadingDisplay){this.renderLoadingDisplayContent(tree,item);}else{this.renderLoadedItemContent(tree,item);}}
TreeRenderer.prototype.getUrlParam=function(name){name=name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regexS="[\\?&]"+name+"=([^&#]*)";var regex=new RegExp(regexS);var results=regex.exec(window.location.href);if(results==null)
return"";else
return results[1];}
TreeRenderer.prototype.renderLoadedItemContent=function(tree,item){var html='';html+='<div class="box-outer-border" style="border-color:'+(item.isExpanded?'#000':'#999')+'">'
html+='<div id="title_bar_'+tree._escapeId(item.id)+'" class="box-title-bar" '
if(item.isExpanded){html+=' style="background-color:#000; border-color:#000" >'}
else{html+=' style="background-color:#999; border-color:#999" >'}
html+='<div class="box-popup" id="popup_'+tree._escapeId(item.id)+'"> '
html+='<span class="box-pencil" id="rename_href_'+tree._escapeId(item.id)+'">'
html+='       <img class="bubble" src="/images/'+(item.isExpanded?'sitemap_pencil_blk.gif':'sitemap_pencil_grey.gif')+'" alt="Rename" title="Click to edit name for this page" border="0">'
html+='</span>'
if(item.isLeaf){html+='<span class="box-title-text" id="'+tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)+'">'
html+='  <span id="bubble_'+tree.id+'_'+tree._escapeId(item.id)+'"'+(item.name!=item.fullname?' title="'+item.fullname+'"':'')+'>'+item.name+'</span></span>'}
else{html+='<span class="box-title-text" id="'+tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)+'" title="Click here to show or hide site levels"><span id="bubble"'+(item.name!=item.fullname?' title="'+item.fullname+'"':'')+'>'+item.name+'</span></span>'}
html+='</div>'
html+='<span id="delete_href_'+tree._escapeId(item.id)+'" class="box-delete">'
if(tree.isRoot(item)){if(item.isExpanded){html+='  <img src="/images/sitemap_trash_white_blk_50.gif" border="0">'}
else{html+='  <img src="/images/sitemap_trash_white_grey_50.gif" border="0">'}}else{var pageId_in_edition=this.getUrlParam('pageId');if(item.isExpanded){html+='  <a class="button" onclick="return deletePage(\''+item.site_id+'\',\''+item.page_id+'\', \''+item.id+'\', \''+pageId_in_edition+'\');" href="javascript: void(0);"><img class="bubble" src="/images/sitemap_trash_white_blk.gif" alt="Remove" title="Click here to remove this page from the mobile website" border="0"></a>'}
else{html+='  <a class="button" onclick="return deletePage(\''+item.site_id+'\',\''+item.page_id+'\', \''+item.id+'\', \''+pageId_in_edition+'\');" href="javascript: void(0);"><img class="bubble" src="/images/sitemap_trash_white_grey.gif" alt="Remove" title="Click here to remove this page from the mobile website" border="0"></a>'}}
html+='</span>'
html+='</div>'
html+='<div class="box-content-text">'
html+='<img src="'+item.thumbnail_url+'" alt="" title="">'
html+='<div style="width:25px;overflow:hidden;position:absolute;left:79px" id="'+
tree.id+'_item_reload_link_'+tree._escapeId(item.id)+'">'
var updateTranscodeStatusReq='<a class="button" '+'onclick="new Ajax.Request(\'/sitemap/update_transcode_status/'+item.site_id+'?pageId='+item.page_id+'\','+' { asynchronous:true, evalScripts:true, '+' onSuccess:function(request){updateTranscode(request, \''+item.id+'\');},'+' onFailure:function(request){handleRedirectResponse(request.responseText);}'+'}); return false;">'
html+='        </div>'
html+='      </div>'
html+='      <div class="box-bottom" >'
html+='        <div >'
if(item.edit=="true"){html+='          <span class="bubble" title="Click here to open Mobilizer Editor and edit this page"><a class="button" href="#" onclick="parent.location.href=\'/editor/index/'+item.site_id+'?mode=edit&pageId='+item.page_id+'\'">Edit Page</a></span>&nbsp;&nbsp;'}
if(item.preview=="true"){}
if(item.origin!="created"){html+='          <span><a class="button linked_pages_icon" href="javascript:showLinks(\''+item.site_id+'\',\''+item.page_id+'\', \''+item.id+'\');"><img class="bubble" src="/images/icon_link.gif" alt="Add linked pages" title="Click here to see a list of linked pages." border="0"></a></span>'}
html+='        </div>'
html+='    </div>'
html+='  </div>'
if(!item.isLeaf&&!item.isExpanded){html+='  <div class="box-black-pile-right"></div>'
html+='  <div class="box-black-pile-right-repeater"></div>'
html+='  <div class="box-black-pile-bottom"></div>'
html+='  <div class="box-black-pile-bottom-repeater"></div>'
html+='  <div class="box-black-pile-corner"></div>'}
$(tree.id+"_item_content_"+tree._escapeId(item.id)).innerHTML=html;$('rename_href_'+tree._escapeId(item.id)).onclick=function(){renamePage(tree,item);}
var clickableLifs=true;if(!item.isLeaf){if(item.isExpanded){$(tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)).onclick=function(){tree._onClickCollapse(item);return false}}else{$(tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)).onclick=function(){tree._onClickExpand(item);return false}}}else{if(clickableLifs){if(item.isExpanded){$(tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)).onclick=function(){tree._onClickCollapse(item);return false}}else{$(tree.id+'_branch_expand_collapse_link_'+tree._escapeId(item.id)).onclick=function(){tree._onClickExpand(item);return false}}}}}
TreeRenderer.prototype.renderLoadingDisplayContent=function(tree,item){var html='';html+='<div class="box-title-bar" style="background-color:#ddd">';html+='<div class="box-title-text" >'+item.name+'</div>';html+='</div>'
$(tree.id+"_item_content_"+tree._escapeId(item.id)).innerHTML=html;}
Draggable.prototype.initialize=function(element){var defaults={handle:false,reverteffect:function(element,top_offset,left_offset){var dur=Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02;new Effect.Move(element,{x:-left_offset,y:-top_offset,duration:dur,queue:{scope:'_draggable',position:'end'}});},endeffect:function(element){var toOpacity=typeof element._opacity=='number'?element._opacity:1.0;new Effect.Opacity(element,{duration:0.2,from:0.7,to:toOpacity,queue:{scope:'_draggable',position:'end'},afterFinish:function(){Draggable._dragging[element]=false}});},onDragBegin:Prototype.emptyFunction,onDragEnd:Prototype.emptyFunction,outSensitivity:40,outSensitivityHorizontal:false,outSensitivityVertical:false,showRelatively:false,zindex:1000,revert:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,snap:false,delay:0};if(!arguments[1]||typeof arguments[1].endeffect=='undefined')
Object.extend(defaults,{starteffect:function(element){element._opacity=Element.getOpacity(element);Draggable._dragging[element]=true;new Effect.Opacity(element,{duration:0.2,from:element._opacity,to:0.7});}});var options=Object.extend(defaults,arguments[1]||{});this.element=$(element);if(options.handle&&(typeof options.handle=='string'))
this.handle=this.element.down('.'+options.handle,0);if(!this.handle)this.handle=$(options.handle);if(!this.handle)this.handle=this.element;if(options.scroll&&!options.scroll.scrollTo&&!options.scroll.outerHTML){options.scroll=$(options.scroll);this._isScrollChild=Element.childOf(this.element,options.scroll);}
Element.makePositioned(this.element);this.delta=this.currentDelta();this.options=options;this.dragging=false;this.eventMouseDown=this.initDrag.bindAsEventListener(this);Event.observe(this.handle,"mousedown",this.eventMouseDown);Draggables.register(this);}
Draggable.prototype.startDrag=function(event){this.dragging=true;if(this.options.scroll){this.options.scroll.scrollTopBegin=this.options.scroll.scrollTop;this.options.scroll.scrollLeftBegin=this.options.scroll.scrollLeft;}
this.options.onDragBegin(this.element);if(this.options.zindex){this.originalZ=parseInt(Element.getStyle(this.element,'z-index')||0);this.element.style.zIndex=this.options.zindex;}
if(this.options.ghosting){this._clone=this.element.cloneNode(true);Position.absolutize(this.element);this.element.parentNode.insertBefore(this._clone,this.element);}
if(this.options.scroll){if(this.options.scroll==window){var where=this._getWindowScroll(this.options.scroll);this.originalScrollLeft=where.left;this.originalScrollTop=where.top;}else{this.originalScrollLeft=this.options.scroll.scrollLeft;this.originalScrollTop=this.options.scroll.scrollTop;}}
Draggables.notify('onStart',this,event);if(this.options.starteffect)this.options.starteffect(this.element);}
Draggable.prototype.updateDrag=function(event,pointer){if(!this.dragging)this.startDrag(event);Position.prepare();var pos=new Array(pointer[0],pointer[1]);if(this.options.showRelatively&&this.options.scroll!=window){pos[0]+=this.options.scroll.scrollLeft;pos[1]+=this.options.scroll.scrollTop;}
Droppables.show(pos,this.element);Draggables.notify('onDrag',this,event);this.draw(pointer);if(this.options.change)this.options.change(this);if(this.options.scroll){this.stopScrolling();var p;if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){p=[left,top,left+width,top+height];}}else{p=Position.page(this.options.scroll);p[0]+=this.options.scroll.scrollLeft+Position.deltaX;p[1]+=this.options.scroll.scrollTop+Position.deltaY;p.push(p[0]+this.options.scroll.offsetWidth);p.push(p[1]+this.options.scroll.offsetHeight);}
var speed=[0,0];if(pointer[0]<(p[0]+this.options.scrollSensitivity))speed[0]=pointer[0]-(p[0]+this.options.scrollSensitivity);if(pointer[1]<(p[1]+this.options.scrollSensitivity))speed[1]=pointer[1]-(p[1]+this.options.scrollSensitivity);if((this.options.outSensitivityHorizontal&&pointer[0]>(p[2]-this.options.scrollSensitivity+this.options.outSensitivity))||(this.options.outSensitivityVertical&&pointer[1]>(p[3]-this.options.scrollSensitivity+this.options.outSensitivity))){if(!this.originalElement){this.element.style.visibility="hidden";this.originalElement=this.element;this.element=this.element.cloneNode(true);this.originalElement.parentNode.parentNode.parentNode.insertBefore(this.element,this.originalElement.parentNode.parentNode);Position.absolutize(this.element);}}
else{if(this.originalElement){Element.remove(this.element);this.element=this.originalElement;this.element.style.visibility="visible";this.originalElement=null;}}
if(!this.originalElement){if(pointer[0]>(p[2]-this.options.scrollSensitivity)){if(!this.options.outSensitivityHorizontal||pointer[0]<(p[2]-this.options.scrollSensitivity+this.options.outSensitivity)){speed[0]=pointer[0]-(p[2]-this.options.scrollSensitivity);}}
if(pointer[1]>(p[3]-this.options.scrollSensitivity)){if(!this.options.outSensitivityVertical||pointer[1]<(p[3]-this.options.scrollSensitivity+this.options.outSensitivity)){speed[1]=pointer[1]-(p[3]-this.options.scrollSensitivity);}}}
this.startScrolling(speed);}
if(navigator.appVersion.indexOf('AppleWebKit')>0)window.scrollBy(0,0);Event.stop(event);}
Draggable.prototype.finishDrag=function(event,success){this.dragging=false;if(this.originalElement){Element.remove(this.element);this.element=this.originalElement;this.element.style.visibility="visible";this.originalElement=null;}
this.options.onDragEnd(this.element);if(this.options.ghosting){Position.relativize(this.element);Element.remove(this._clone);this._clone=null;}
if(success)Droppables.fire(event,this.element);Draggables.notify('onEnd',this,event);var revert=this.options.revert;if(revert&&typeof revert=='function')revert=revert(this.element);var d=this.currentDelta();if(revert&&this.options.reverteffect){this.options.reverteffect(this.element,d[1]-this.delta[1],d[0]-this.delta[0]);}else{this.delta=d;}
if(this.options.zindex)
this.element.style.zIndex=this.originalZ;if(this.options.endeffect)
this.options.endeffect(this.element);Draggables.deactivate(this);Droppables.reset();}
Draggable.prototype.scroll=function(){var current=new Date();var delta=current-this.lastScrolled;this.lastScrolled=current;if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){if(this.scrollSpeed[0]||this.scrollSpeed[1]){var d=delta/1000;this.options.scroll.scrollTo(left+d*this.scrollSpeed[0],top+d*this.scrollSpeed[1]);}}}else{this.options.scroll.scrollLeft+=this.scrollSpeed[0]*delta/1000;this.options.scroll.scrollTop+=this.scrollSpeed[1]*delta/1000;}
Position.prepare();Droppables.show(Draggables._lastPointer,this.element);Draggables.notify('onDrag',this);if(this._isScrollChild){Draggables._lastScrollPointer=Draggables._lastScrollPointer||$A(Draggables._lastPointer);if(Draggables._lastScrollPointer[0]<0)
Draggables._lastScrollPointer[0]=0;if(Draggables._lastScrollPointer[1]<0)
Draggables._lastScrollPointer[1]=0;this.draw(Draggables._lastScrollPointer);}
if(this.options.change)this.options.change(this);}
Draggable.prototype.draw=function(point){var pos=Position.cumulativeOffset(this.element);if(this.options.ghosting){var r=Position.realOffset(this.element);pos[0]+=r[0]-Position.deltaX;pos[1]+=r[1]-Position.deltaY;}
var d=this.currentDelta();pos[0]-=d[0];pos[1]-=d[1];if(this.options.scroll){if(this.originalElement){pos[0]+=this.options.scroll.scrollLeftBegin;pos[1]+=this.options.scroll.scrollTopBegin;}
else if(this.options.scroll!=window&&this._isScrollChild){pos[0]-=this.options.scroll.scrollLeft-this.originalScrollLeft;pos[1]-=this.options.scroll.scrollTop-this.originalScrollTop;}
else{pos[0]-=this.options.scroll.scrollLeft;pos[1]-=this.options.scroll.scrollTop;}}
var p=[0,1].map(function(i){return(point[i]-pos[i]-this.offset[i])}.bind(this));if(this.options.snap){if(typeof this.options.snap=='function'){p=this.options.snap(p[0],p[1],this);}else{if(this.options.snap instanceof Array){p=p.map(function(v,i){return Math.round(v/this.options.snap[i])*this.options.snap[i]}.bind(this))}else{p=p.map(function(v){return Math.round(v/this.options.snap)*this.options.snap}.bind(this))}}}
var style=this.element.style;if((!this.options.constraint)||(this.options.constraint=='horizontal'))
style.left=p[0]+"px";if((!this.options.constraint)||(this.options.constraint=='vertical'))
style.top=p[1]+"px";if(style.visibility=="hidden")style.visibility="";}
Draggable.prototype.keyPress=function(event){if(event.keyCode!=Event.KEY_ESC)return;this.stopScrolling();this.finishDrag(event,false);Event.stop(event);}
Sortable.SERIALIZE_RULE=/^[^_\-](?:[A-Za-z0-9\-]*)[_](.*)$/;Sortable.create=function(element){element=$(element);var options=Object.extend({element:element,tag:'li',dropOnEmpty:false,tree:false,treeTag:'ul',overlap:'vertical',constraint:'vertical',containment:element,handle:false,only:false,delay:0,hoverclass:null,ghosting:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,format:this.SERIALIZE_RULE,onDragBegin:Prototype.emptyFunction,onDragEnd:Prototype.emptyFunction,outSensitivity:40,outSensitivityHorizontal:false,outSensitivityVertical:false,showRelatively:false,onChange:Prototype.emptyFunction,onUpdate:Prototype.emptyFunction},arguments[1]||{});this.destroy(element);var options_for_draggable={revert:true,scroll:options.scroll,scrollSpeed:options.scrollSpeed,scrollSensitivity:options.scrollSensitivity,delay:options.delay,ghosting:options.ghosting,constraint:options.constraint,onDragBegin:options.onDragBegin,onDragEnd:options.onDragEnd,outSensitivity:options.outSensitivity,outSensitivityHorizontal:options.outSensitivityHorizontal,outSensitivityVertical:options.outSensitivityVertical,showRelatively:options.showRelatively,handle:options.handle};if(options.starteffect)
options_for_draggable.starteffect=options.starteffect;if(options.reverteffect)
options_for_draggable.reverteffect=options.reverteffect;else
if(options.ghosting)options_for_draggable.reverteffect=function(element){element.style.top=0;element.style.left=0;};if(options.endeffect)
options_for_draggable.endeffect=options.endeffect;if(options.zindex)
options_for_draggable.zindex=options.zindex;var options_for_droppable={overlap:options.overlap,containment:options.containment,tree:options.tree,hoverclass:options.hoverclass,onHover:Sortable.onHover}
var options_for_tree={onHover:Sortable.onEmptyHover,overlap:options.overlap,containment:options.containment,hoverclass:options.hoverclass}
Element.cleanWhitespace(element);options.draggables=[];options.droppables=[];if(options.dropOnEmpty||options.tree){Droppables.add(element,options_for_tree);options.droppables.push(element);}
(this.findElements(element,options)||[]).each(function(e){var handle=options.handle?$(e).down('.'+options.handle,0):e;options.draggables.push(new Draggable(e,Object.extend(options_for_draggable,{handle:handle})));Droppables.add(e,options_for_droppable);if(options.tree)e.treeNode=element;options.droppables.push(e);});if(options.tree){(Sortable.findTreeElements(element,options)||[]).each(function(e){Droppables.add(e,options_for_tree);e.treeNode=element;options.droppables.push(e);});}
this.sortables[element.id]=options;Draggables.addObserver(new SortableObserver(element,options.onUpdate));}
Ajax.InPlaceEditor.prototype.initialize=function(element,url,options){this.url=url;this.element=$(element);this.options=Object.extend({paramName:"value",okButton:true,okLink:false,okText:"ok",cancelButton:false,cancelLink:true,cancelText:"cancel",textBeforeControls:'',textBetweenControls:'',textAfterControls:'',savingText:"Saving...",clickToEditText:"Click to edit",okText:"ok",rows:1,onComplete:function(transport,element){new Effect.Highlight(element,{startcolor:this.options.highlightcolor});},onFailure:function(transport){alert("Error communicating with the server: "+transport.responseText.stripTags());},callback:function(form){return Form.serialize(form);},handleLineBreaks:true,loadingText:'Loading...',savingClassName:'inplaceeditor-saving',loadingClassName:'inplaceeditor-loading',formClassName:'inplaceeditor-form',highlightcolor:Ajax.InPlaceEditor.defaultHighlightColor,highlightendcolor:"#FFFFFF",externalControl:null,submitOnBlur:false,ajaxOptions:{},evalScripts:false},options||{});if(!this.options.formId&&this.element.id){this.options.formId=this.element.id+"-inplaceeditor";if($(this.options.formId)){this.options.formId=null;}}
if(this.options.externalControl){this.options.externalControl=$(this.options.externalControl);}
this.originalBackground=Element.getStyle(this.element,'background-color');if(!this.originalBackground){this.originalBackground="transparent";}
this.element.title=this.options.clickToEditText;this.onclickListener=this.enterEditMode.bindAsEventListener(this);this.mouseoverListener=this.enterHover.bindAsEventListener(this);this.mouseoutListener=this.leaveHover.bindAsEventListener(this);if(this.options.externalControl){Event.observe(this.options.externalControl,'click',this.onclickListener);Event.observe(this.options.externalControl,'mouseover',this.mouseoverListener);Event.observe(this.options.externalControl,'mouseout',this.mouseoutListener);}else{Event.observe(this.element,'click',this.onclickListener);Event.observe(this.element,'mouseover',this.mouseoverListener);Event.observe(this.element,'mouseout',this.mouseoutListener);}}
Ajax.InPlaceEditor.prototype.createForm=function(){this.form=document.createElement("form");this.form.id=this.options.formId;Element.addClassName(this.form,this.options.formClassName)
this.form.onsubmit=this.onSubmit.bind(this);this.createEditField();if(this.options.textarea||this.options.buttonsInNewLine){var br=document.createElement("br");this.form.appendChild(br);}
var controlsDiv=document.createElement("div");controlsDiv.className="editor_controlls_div";this.form.appendChild(controlsDiv);if(this.options.textBeforeControls)
this.form.appendChild(document.createTextNode(this.options.textBeforeControls));if(this.options.cancelButton){var cancelButton=document.createElement("input");cancelButton.type="submit";cancelButton.value=this.options.cancelText;cancelButton.onclick=this.onclickCancel.bind(this);cancelButton.className='editor_cancel_button';controlsDiv.appendChild(cancelButton);}
if(this.options.cancelLink){var cancelLink=document.createElement("a");cancelLink.href="#";cancelLink.appendChild(document.createTextNode(this.options.cancelText));cancelLink.onclick=this.onclickCancel.bind(this);cancelLink.className='editor_cancel editor_cancel_link';controlsDiv.appendChild(cancelLink);}
if(this.options.textBetweenControls&&(this.options.okLink||this.options.okButton)&&(this.options.cancelLink||this.options.cancelButton))
controlsDiv.appendChild(document.createTextNode(this.options.textBetweenControls));if(this.options.okButton){var okButton=document.createElement("input");okButton.type="submit";okButton.value=this.options.okText;okButton.className='editor_ok_button';controlsDiv.appendChild(okButton);}
if(this.options.okLink){var okLink=document.createElement("a");okLink.href="#";okLink.appendChild(document.createTextNode(this.options.okText));okLink.onclick=this.onSubmit.bind(this);okLink.className='editor_ok_link';controlsDiv.appendChild(okLink);}
if(this.options.textAfterControls)
controlsDiv.appendChild(document.createTextNode(this.options.textAfterControls));}
Ajax.Autocompleter.prototype.getUpdatedChoices=function(){entry=encodeURIComponent(this.options.paramName)+'='+
encodeURIComponent(this.getToken());this.options.parameters=this.options.callback?this.options.callback(this.element,entry):entry;if(this.options.defaultParams)
this.options.parameters+='&'+this.options.defaultParams;if(this.options.formParameters){this.options.parameters+='&'+Form.serialize(this.options.formParameters);}
new Ajax.Request(this.url,this.options);}
function toAbsoluteBox(set){var result="position:absolute;";for(var prop in set){result+=prop+":"+set[prop]+"px;";}
return result;}
function TreeLayoutManager(options){this.tree=null;if(options==null){options={};}
this._itemWidth=112;this._itemHeight=160;this._itemHSpacing=10;this._itemVSpacingTop=7;this._itemVSpacingBottom=7;this._itemContainerClass="box-container";this._itemConnectorClass="box-connector";this._cellWidth=this._itemWidth+this._itemHSpacing;this._cellHeight=this._itemHeight+this._itemVSpacingTop+this._itemVSpacingBottom;}
TreeLayoutManager.prototype._updateItemChildren=function(item,afterElem,indentLevel,containerElem){var tree=this.tree;if(!item.isExpanded){tree._hideItemChildren(item);}else{var offsetBase=afterElem.offsetLeft;if(item.isLoaded){tree._hideItem(tree._getLoadingDisplayChild(item));offsetBase=offsetBase+(1-item.children.length)*this._cellWidth/2;if(offsetBase<0){offsetBase=0;}
for(var i=0;i<item.children.length;i++){this.createChild(item.children[i],i,offsetBase,indentLevel,afterElem,containerElem);}}else{this.createChild(tree._getLoadingDisplayChild(item),0,offsetBase,indentLevel,afterElem,containerElem);}
item.childrenVisible=true;}
return afterElem;}
TreeLayoutManager.prototype.createChild=function(child,index,offsetBase,indentLevel,afterElem,containerElem){var tree=this.tree;var elem=tree._getItemElement(child.id);if(elem==null){var html="";var x=offsetBase+index*this._cellWidth;var y=indentLevel*this._cellHeight;html+='<div id="'+tree.id+'_item_'+tree._escapeId(child.id)+'" style="'+
toAbsoluteBox({left:x,top:y,width:this._cellWidth,height:this._cellHeight})+'" >';html+='<div id="'+tree.id+'_link_top_'+tree._escapeId(child.id)+'"" style="'+
toAbsoluteBox({left:0,top:0,width:this._cellWidth,height:this._itemVSpacingTop})+'"></div>';html+='<div id="'+tree.id+'_item_content_'+tree._escapeId(child.id)+'" class="'+
this._itemContainerClass+'" style="'+
toAbsoluteBox({left:0,top:this._itemVSpacingTop,width:this._itemWidth,height:this._itemHeight})+'"></div>';html+='<div id="'+tree.id+'_link_bottom_'+tree._escapeId(child.id)+'" style="'+
toAbsoluteBox({left:0,top:this._itemVSpacingTop+this._itemHeight,width:this._cellWidth,height:this._itemVSpacingBottom})+'"></div>';html+='</div>';new Insertion.After(afterElem,html);elem=tree._getItemElement(child.id);}
tree._renderItemContent(child);afterElem=elem;if(child.isLoaded||(child.isLoading&&!child.isLoadingBackground)){afterElem=this._updateItemChildren(child,afterElem,indentLevel+1,containerElem);}}
TreeLayoutManager.prototype.renderItem=function(item,renderer){var tree=this.tree;renderer.renderItemContent(tree,item);if(!item.isLoadingDisplay){if(item.children!=null&&item.children.length>0){this.renderItemTreeBottomLink(item);}
if(item.parent.isExpanded&&item!=tree._root.children[0]){this.renderItemTreeUpperLink(item);}}}
TreeLayoutManager.prototype.onBeforeExpandItem=function(item){var tree=this.tree;var parent=item.parent;for(var i=0;i<parent.children.length;i++){if(parent.children[i].isExpanded){parent.children[i].isExpanded=false;tree._markItemForUpdateDisplay(parent);}}}
TreeLayoutManager.prototype.renderItemTreeBottomLink=function(item){var tree=this.tree;var html="";var horizontalBottomExt=0;var linkBottomDiv=$(tree.id+"_link_bottom_"+tree._escapeId(item.id));if(item.isExpanded){html+='<div style="'+
toAbsoluteBox({height:this._itemVSpacingBottom+horizontalBottomExt,left:this._itemWidth/2,top:0-horizontalBottomExt})+'" class="'+
this._itemConnectorClass+'" ></div>';}
$(tree.id+"_link_bottom_"+tree._escapeId(item.id)).innerHTML=html;}
TreeLayoutManager.prototype.renderItemTreeUpperLink=function(item){var tree=this.tree;var childrenArray=item.parent.children;var html="";html+='<div style="'+
toAbsoluteBox({height:this._itemVSpacingTop,left:this._itemWidth/2,top:0})+'" class="'+
this._itemConnectorClass+'" ></div>';if(childrenArray.length>1){var horizontalWidth=this._cellWidth;var horizontalLeft=0;if(item==childrenArray[0]){horizontalLeft=this._itemWidth/2;horizontalWidth-=horizontalLeft;}
else if(item==childrenArray[childrenArray.length-1]){horizontalWidth=this._itemWidth/2;horizontalLeft=0;}
html+='<div style="'+
toAbsoluteBox({width:horizontalWidth,left:horizontalLeft,top:0})+'" class="'+
this._itemConnectorClass+'" ></div>';}
$(tree.id+"_link_top_"+tree._escapeId(item.id)).innerHTML=html;}
function enableTooltips(zoneId,init){var links,i,h;if(init==true&&document.getElementById("btc")==null){h=document.createElement("span");h.id="btc";h.style.position="absolute";document.getElementsByTagName("body")[0].appendChild(h);$("btc").setStyle({zIndex:2});}
if(document.getElementById("btc")==null)return;if(!document.getElementById||!document.getElementsByTagName)return;hideTooltip();prepareLink("a",zoneId);prepareLink("span",zoneId);prepareLink("div",zoneId);if($(zoneId)==null){links=$$('.bubble');}
else{links=$(zoneId).getElementsBySelector('[class="bubble"]');}
for(i=0;i<links.length;i++){Prepare(links[i]);}}
function prepareLink(tagName,zoneId){if(zoneId==null){links=document.getElementsByTagName(tagName);}
else{links=document.getElementsByTagName(tagName,zoneId);}
for(i=0;i<links.length;i++){Prepare(links[i]);}}
function stringDivide(input,chars){output="";if(input.length>chars){while(input.length){indx=input.indexOf(' ')
if(indx==-1||indx>chars){str=input.substring(0,chars)+' ';input=input.substring(str.length-1);}
else if(indx>=0){str=input.substring(0,indx+1);input=input.substring(str.length);}
output+=str;}}else{output=input;}
return output;}
String.prototype.htmlEntities=function(){return this.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');};function Prepare(el){var tooltip,t,b,s,l;t=el.getAttribute("title");if(t==null||t.length==0)return;el.removeAttribute("title");tooltip=CreateEl("span","tooltip");s=CreateEl("span","top","");var thisMatch=t.split("::");if(thisMatch[1]){var testNode=document.getElementById(thisMatch[1]);testNode=stringDivide(testNode,18);if(testNode==null){return;}
var newNode=testNode.cloneNode(1);s.appendChild(newNode);}
else{var oDiv=CreateEl("div","tooltip-pad","");var oSpan=document.createElement("span");t=t.htmlEntities();oSpan.innerHTML=stringDivide(t,18);oDiv.appendChild(oSpan);s.appendChild(oDiv);}
tooltip.appendChild(s);b=CreateEl("b","bottom");l=el.getAttribute("href");tooltip.appendChild(b);setOpacity(tooltip);el.tooltip=tooltip;el.onmouseover=showTooltip;el.onmouseout=hideTooltip;el.onmousedown=hideTooltip;el.onmousemove=Locate;}
function showTooltip(e){try{document.getElementById("btc").appendChild(this.tooltip);Locate(e);}
catch(e){}}
function hideTooltip(e){try{var d=document.getElementById("btc");if(d.childNodes.length>0){d.removeChild(d.firstChild);}}
catch(e){}}
function setOpacity(el){el.style.filter="alpha(opacity:95)";el.style.KHTMLOpacity="0.95";el.style.MozOpacity="0.95";el.style.opacity="0.95";}
function CreateEl(t,c){var x=document.createElement(t);x.className=c;x.style.display="block";return(x);}
function Locate(e){var posx=0;var posy=0;try{if(e==null){e=window.event;}
if(e.pageX||e.pageY){if(e.pageX>innerWidth-200){posx=e.pageX-170;}
else{posx=e.pageX;}
if(e.pageY>document.body.scrollTop+innerHeight-70){posy=e.pageY-(70-(document.body.scrollTop+innerHeight-e.pageY));}
else{posy=e.pageY;}}
else if(e.clientX||e.clientY){if(document.documentElement.scrollTop){posx=e.clientX+document.documentElement.scrollLeft;posy=e.clientY+document.documentElement.scrollTop;}else{if(e.clientX+document.body.scrollLeft>document.body.clientWidth-200){posx=e.clientX+document.body.scrollLeft-170;}
else{posx=e.clientX+document.body.scrollLeft;}
if(e.clientY+document.body.scrollTop>document.body.clientHeight-70){posy=e.clientY+document.body.scrollTop-60;}
else{posy=e.clientY+document.body.scrollTop;}}}
document.getElementById("btc").style.top=(posy+10)+"px";document.getElementById("btc").style.left=(posx+5)+"px";}
catch(e){}}
var Behaviour={list:new Array,register:function(sheet){Behaviour.list.push(sheet);},start:function(){Behaviour.addLoadEvent(function(){Behaviour.apply();});},apply:function(){for(h=0;sheet=Behaviour.list[h];h++){for(selector in sheet){list=document.getElementsBySelector(selector);if(!list){continue;}
for(i=0;element=list[i];i++){sheet[selector](element);}}}},addLoadEvent:function(func){var oldonload=window.onload;if(typeof window.onload!='function'){window.onload=func;}else{window.onload=function(){oldonload();func();}}}}
Behaviour.start();function getAllChildren(e){return e.all?e.all:e.getElementsByTagName('*');}
document.getElementsBySelector=function(selector){if(!document.getElementsByTagName){return new Array();}
var tokens=selector.split(' ');var currentContext=new Array(document);for(var i=0;i<tokens.length;i++){token=tokens[i].replace(/^\s+/,'').replace(/\s+$/,'');;if(token.indexOf('#')>-1){var bits=token.split('#');var tagName=bits[0];var id=bits[1];var element=document.getElementById(id);if(tagName&&element.nodeName.toLowerCase()!=tagName){return new Array();}
currentContext=new Array(element);continue;}
if(token.indexOf('.')>-1){var bits=token.split('.');var tagName=bits[0];var className=bits[1];if(!tagName){tagName='*';}
var found=new Array;var foundCount=0;for(var h=0;h<currentContext.length;h++){var elements;if(tagName=='*'){elements=getAllChildren(currentContext[h]);}else{elements=currentContext[h].getElementsByTagName(tagName);}
for(var j=0;j<elements.length;j++){found[foundCount++]=elements[j];}}
currentContext=new Array;var currentContextIndex=0;for(var k=0;k<found.length;k++){if(found[k].className&&found[k].className.match(new RegExp('\\b'+className+'\\b'))){currentContext[currentContextIndex++]=found[k];}}
continue;}
if(token.match(/^(\w*)\[(\w+)([=~\|\^\$\*]?)=?"?([^\]"]*)"?\]$/)){var tagName=RegExp.$1;var attrName=RegExp.$2;var attrOperator=RegExp.$3;var attrValue=RegExp.$4;if(!tagName){tagName='*';}
var found=new Array;var foundCount=0;for(var h=0;h<currentContext.length;h++){var elements;if(tagName=='*'){elements=getAllChildren(currentContext[h]);}else{elements=currentContext[h].getElementsByTagName(tagName);}
for(var j=0;j<elements.length;j++){found[foundCount++]=elements[j];}}
currentContext=new Array;var currentContextIndex=0;var checkFunction;switch(attrOperator){case'=':checkFunction=function(e){return(e.getAttribute(attrName)==attrValue);};break;case'~':checkFunction=function(e){return(e.getAttribute(attrName).match(new RegExp('\\b'+attrValue+'\\b')));};break;case'|':checkFunction=function(e){return(e.getAttribute(attrName).match(new RegExp('^'+attrValue+'-?')));};break;case'^':checkFunction=function(e){return(e.getAttribute(attrName).indexOf(attrValue)==0);};break;case'$':checkFunction=function(e){return(e.getAttribute(attrName).lastIndexOf(attrValue)==e.getAttribute(attrName).length-attrValue.length);};break;case'*':checkFunction=function(e){return(e.getAttribute(attrName).indexOf(attrValue)>-1);};break;default:checkFunction=function(e){return e.getAttribute(attrName);};}
currentContext=new Array;var currentContextIndex=0;for(var k=0;k<found.length;k++){if(checkFunction(found[k])){currentContext[currentContextIndex++]=found[k];}}
continue;}
if(!currentContext[0]){return;}
tagName=token;var found=new Array;var foundCount=0;for(var h=0;h<currentContext.length;h++){var elements=currentContext[h].getElementsByTagName(tagName);for(var j=0;j<elements.length;j++){found[foundCount++]=elements[j];}}
currentContext=found;}
return currentContext;}
function setTextfieldModuleMsg(id,msg){var msg_field_id=id+"_validation_msg";$(msg_field_id).innerHTML=msg;}
function setTextfieldModuleMsgError(id,msg){var msg_field_id=id+"_validation_msg";msg="<span class='error'>"+msg+"</span>";$(msg_field_id).innerHTML=msg;}
function setTextfieldModuleMsgSuccess(id,msg){var msg_field_id=id+"_validation_msg";msg="<span style='color: green;'>"+msg+"</span>";$(msg_field_id).innerHTML=msg;}
function $S(v){return(document.getElementById(v).style);}
function absPos(o){var r={x:o.offsetLeft,y:o.offsetTop};if(o.offsetParent){var v=absPos(o.offsetParent);r.x+=v.x;r.y+=v.y;}return(r);}
function agent(v){return(Math.max(navigator.userAgent.toLowerCase().indexOf(v),0));}
function toggle(v){$S(v).display=($S(v).display=='none'?'block':'none');}
function within(v,a,z){return((v>=a&&v<=z)?true:false);}
function XY(e,v){var z=agent('msie')?[event.clientX+document.body.scrollLeft,event.clientY+document.body.scrollTop]:[e.pageX,e.pageY];return(z[zero(v)]);}
function XYwin(v){var z=agent('msie')?[document.body.clientHeight,document.body.clientWidth]:[window.innerHeight,window.innerWidth];return(!isNaN(v)?z[v]:z);}
function zero(v){v=parseInt(v);return(!isNaN(v)?v:0);}
var maxValue={'h':360,'s':100,'v':100},HSV={0:360,1:100,2:100};var hSV=115,wSV=112,hH=113,slideHSV={0:360,1:100,2:100},zINDEX=15,stop=1;var boxColorSuffix=null;var labelColorSuffix=null;var textColorSuffix=null;var prefixLabelName=null;var oldColor=null;function HSVslide(d,o,e){function tXY(e){tY=XY(e,1)-ab.y;tX=XY(e)-ab.x;}
function mkHSV(a,b,c){return(Math.min(a,Math.max(0,Math.ceil((parseInt(c)/b)*a))));}
function ckHSV(a,b){if(within(a,0,b))return(a);else if(a>b)return(b);else if(a<0)return('-'+oo);}
function drag(e){if(!stop){if(d!='drag')tXY(e);if(d=='SVslide'){ds.left=ckHSV(tX-oo,wSV)+'px';ds.top=ckHSV(tY-oo,wSV)+'px';slideHSV[1]=mkHSV(100,wSV,ds.left);slideHSV[2]=100-mkHSV(100,wSV,ds.top);HSVupdate();}
else if(d=='Hslide'){var ck=ckHSV(tY-oo,hH),j,r='hsv',z={};ds.top=(ck-5)+'px';slideHSV[0]=mkHSV(360,hH,ck);for(var i=0;i<=r.length-1;i++){j=r.substr(i,1);z[i]=(j=='h')?maxValue[j]-mkHSV(maxValue[j],hH,ck):HSV[i];}
HSVupdate(z);$S('SV').backgroundColor='#'+hsv2hex([HSV[0],100,100]);}
else if(d=='drag'){ds.left=XY(e)+oX-eX+'px';ds.top=XY(e,1)+oY-eY+'px';}}}
if(stop){stop='';var ds=$S(d!='drag'?d:o);if(d=='drag'){var oX=parseInt(ds.left),oY=parseInt(ds.top),eX=XY(e),eY=XY(e,1);$S(o).zIndex=zINDEX++;}
else{var ab=absPos($(o)),tX,tY,oo=(d=='Hslide')?2:4;ab.x+=10;ab.y+=32;if(d=='SVslide')slideHSV[0]=HSV[0];}
document.onmousemove=drag;document.onmouseup=function(){stop=1;document.onmousemove='';document.onmouseup='';};drag(e);}}
function HSVupdate(v){v=hsv2hex(HSV=v?v:slideHSV);$('selectedColor').value=v;$S('plugCUR').background='#'+v;return(v);}
function loadColorPicker(){var z='';for(var i=hSV;i>=0;i--)z+="<div style=\"BACKGROUND: #"+hsv2hex([Math.round((360/hSV)*i),100,100])+";\"><br /><\/div>";$('Hmodel').innerHTML=z;$('selectedColor').value='FFFFFF';}
function toHex(v){v=Math.round(Math.min(Math.max(0,v),255));return("0123456789ABCDEF".charAt((v-v%16)/16)+"0123456789ABCDEF".charAt(v%16));}
function rgb2hex(r){return(toHex(r[0])+toHex(r[1])+toHex(r[2]));}
function hsv2hex(h){return(rgb2hex(hsv2rgb(h)));}
function hsv2rgb(r){var R,B,G,S=r[1]/100,V=r[2]/100,H=r[0]/360;if(S>0){if(H>=1)H=0;H=6*H;F=H-Math.floor(H);A=Math.round(255*V*(1.0-S));B=Math.round(255*V*(1.0-(S*F)));C=Math.round(255*V*(1.0-(S*(1.0-F))));V=Math.round(255*V);switch(Math.floor(H)){case 0:R=V;G=C;B=A;break;case 1:R=B;G=V;B=A;break;case 2:R=A;G=V;B=C;break;case 3:R=A;G=B;B=V;break;case 4:R=C;G=A;B=V;break;case 5:R=V;G=A;B=B;break;}
return([R?R:0,G?G:0,B?B:0]);}
else return([(V=Math.round(V*255)),V,V]);}
function showColorPicker(colorPickerID,boxSuffix,labelSuffix,textSuffix,color,prefixLabel,label){resetColors();var color=color
if(color.substring(0,3)=='rgb'){rgbStr=color.substring(color.indexOf('(')+1,color.indexOf(')'))
color='#'+rgb2hex(rgbStr.split(','))}
var pickerColorElem=$(colorPickerID);if(pickerColorElem.style.visibility=='visible'){pickerColorElem.style.visibility='hidden';return;}
pickerColorElem.style.visibility='visible';$('pickerColorLabel').innerHTML=label;$('selectedColor').value=color.gsub("#","");$('plugCUR').style.background=color;boxColorSuffix=boxSuffix;labelColorSuffix=labelSuffix;textColorSuffix=textSuffix;prefixLabelName=prefixLabel;oldColor=color;}
function hideColorPicker(colorPickerID,setColors){if(setColors==true){var selectedColor='#'+$('selectedColor').value;var boxColorID=prefixLabelName+'_'+boxColorSuffix;var labelColorID=prefixLabelName+'_'+labelColorSuffix;var textColorID=prefixLabelName+'_'+textColorSuffix;$(boxColorID).style.background=selectedColor;if(labelColorSuffix.length>0){$(labelColorID).style.background=selectedColor
if(oldColor!=selectedColor){$(prefixLabelName+'_'+labelColorSuffix+'_form').value=selectedColor;}}
if(textColorSuffix.length>0){$(textColorID).style.color=selectedColor
if(oldColor!=selectedColor){$(prefixLabelName+'_'+textColorSuffix+'_form').value=selectedColor;}}}
$(colorPickerID).style.visibility='hidden';}
function resetColors(){$S('SVslide').left='0px';$S('SVslide').top='0px';$S('Hslide').left='-8px';$S('Hslide').top='-7px';}
function updateSelectedColorBox(color){if(color.length==6){$('plugCUR').style.background='#'+color;}}
var FileFieldManager=Class.create();var FileFieldManagerSet=new Hash();FileFieldManager.prototype={initialize:function(id,options){this.count=0;this.unique_id=0;this.uploadLibrary='site';this.imageNumberPerPage=options.imageNumberPerPage;this.library=options.library;this.librariesNames=options.librariesNames;this.imageSize=options.imageSize;this.siteName=options.siteName;this.controller=options.controller;this.listAction=options.listAction;this.uploadAction=options.uploadAction;this.deleteAction=options.deleteAction;this.addIndexes=options.addIndexes;this.unactiveImagesFunction=options.unactiveImagesFunction
this.fileLabel=options.fileLabel;this.onFailureFunction=options.onFailureFunction;this.id=id;this.libraries=$(this.id)
this.container=$(this.id+'_container');this.parent=$(this.id+'FilesForm');this.upload=$(this.id+'Upload');this.addNewLink=$(this.id+'AddNewLink');this.uploadButtonDiv=$(this.id+'UploadButton');this.externalContainer=$(options.externalContainer)||null;FileFieldManagerSet.set(id,this);},hideLibrary:function(functionCalledAfter){if(this.libraries.visible()){this.libraries.hide();eval(functionCalledAfter);}},hideUpload:function(){if(this.upload.visible()){this.removeAllFileField();this.upload.hide();}},showInternalContainer:function(){this.container.style.display='block';},hideInternalContainer:function(){this.container.style.display='none';},showExternalContainer:function(){if(this.externalContainer!=null){this.externalContainer.style.display='block';this.hideInternalContainer();adjSize();}},hideExternalContainer:function(){if(this.externalContainer!=null){this.externalContainer.style.display='none';this.showInternalContainer();}},showLibrary:function(){this.hideUpload();this.hideExternalContainer();this.libraries.show();$(this.id).focus();adjSize();},switchLibrary:function(library,updateAnyway){if(this.library!=library||updateAnyway){this.library=library;this.updateImageList();}
this.showLibrary();},showUpload:function(){this.hideLibrary();this.hideExternalContainer();if(this.count<1){this.addFileField();}
this.upload.show();adjSize();},addFileField:function(){var bNode=document.createElement("span");bNode.innerHTML=this.fileLabel+": ";var fileNode=document.createElement("input");fileNode.name="upload[icon_"+this.unique_id+"]";fileNode.type="file";fileNode.id="upload_icon_"+this.unique_id;fileNode.setAttribute("size","20");var sNode=document.createElement("span")
sNode.innerHTML="&nbsp;";var aNode=document.createElement("a");aNode.innerHTML="<img src='/images/trash_on_image.png'/ alt='Remove'>";aNode.setAttribute("href","#");var id=this.id;Event.observe(aNode,'click',function(){var toEval="FileFieldManagerSet.get('"+id+"').removeFileField('"+fileNode.id+"_div');";eval(toEval);return false;});var divNode=document.createElement("div");divNode.id=fileNode.id+"_div";divNode.appendChild(bNode);divNode.appendChild(fileNode);divNode.appendChild(sNode);divNode.appendChild(aNode);this.parent.appendChild(divNode);$(divNode).setStyle({cssFloat:'left',margin:'0 0 5px;',width:'50%'});this.count++;this.unique_id++;if(this.count==6){this.addNewLink.hide();}},removeFileField:function(id){$(id).remove();this.count--;this.addNewLink.show();},removeAllFileField:function(){if(this.parent){while(this.parent.firstChild!=null){this.parent.removeChild(this.parent.firstChild);}
this.count=0;this.addNewLink.show();}},startUploading:function(){this.parent.action='/'+this.controller+'/'+this.uploadAction+'?div_id='+this.id+'&site_name='+this.siteName+'&library='+this.uploadLibrary;this.parent.submit();},onSuccessUploading:function(uploaded_file_indexes){if(uploaded_file_indexes.length==0)return;if(this.addIndexes!=undefined){this.addIndexes(uploaded_file_indexes);}
this.switchLibrary('site',true);},onFailureUploading:function(text){this.removeAllFileField();this.onFailureFunction(text);this.updateImageList();this.showLibrary();},deleteImage:function(element){var index=$(element).readAttribute('index');var tempOnFailureFunction=this.onFailureFunction;new Ajax.Updater(this.getAjaxResultId(),'/'+this.controller+'/'+this.deleteAction+'?div_id='+this.id+'&site_name='+this.siteName+"&filename="+index+'&library='+this.library,{evalScripts:true,onFailure:function(request){tempOnFailureFunction(request.responseText);}});},updateImageList:function(){document.body.style.cursor='wait';var thisId=this.id;new Ajax.Updater({success:this.id+'ImagesPage'},'/'+this.controller+'/'+this.listAction+'?image_number_per_page='+this.imageNumberPerPage+'&div_id='+this.id+'&library='+this.library+'&page=1'+'&image_size='+this.imageSize+'&site_name='+this.siteName+'&unactive_images_function='+this.unactiveImagesFunction,{asynchronous:true,evalScripts:true,onFailure:function(request){document.body.style.cursor='auto';},onSuccess:function(request){document.body.style.cursor='auto';}});return false;},createAjaxResultId:function(){this.ajaxResultsId='ajaxResults';if(!$(this.ajaxResultsId)){var ajaxNode=document.createElement("span");ajaxNode.id=this.ajaxResultsId;ajaxNode.style.display='none';$(this.id).appendChild(ajaxNode);}},getAjaxResultId:function(){this.createAjaxResultId();return this.ajaxResultsId;},changeLibrary:function(library){this.library=library;this.updateImageList();},unactiveImages:function(images){this.libraries.getElementsBySelector('div.image').each(function(first){var changed=false;images.each(function(second){if(first.getAttribute('imgid')==second){first.up().down('div.handle').hide();changed=true;}})
if(!changed){first.up().down('div.handle').show();}});}}
var slideDownList=new Hash();function slideDown(id,focuse){if(slideDownList.get(id)==undefined){slideDownList.set(id,true);var showButtons="try{$('buttons_"+id+"').style.display='block';}catch(e){}";var hideButtons="try{$('buttons_'"+id+"').style.display='none';}catch(e){}";var focuseForm=(typeof(focuse)=="undefined")?"":"$('"+focuse+"').focus()";Effect.SlideDown(id,{queue:'front',duration:1.0});setTimeout("slideDownList.set('"+id+"', undefined);"+"$('"+id+"_inner').style.display = 'block';"+
showButtons+focuseForm,1100);}}
var slideUpList=new Hash();function slideUp(id,functionCalledAfter){if(slideUpList.get(id)==undefined){slideUpList.set(id,true);try{$('buttons_'+id).style.display='none';}
catch(e){}
$(id+'_inner').style.display='none';Effect.SlideUp(id,{duration:1.0});if(functionCalledAfter=="undefined"){functionCalledAfter='';}
setTimeout("slideUpList.set('"+id+"', undefined);"+functionCalledAfter,1100);}}
var gPopupMask=null;var gPopupContainer=null;var gPopFrame=null;var gReturnFunc;var gPopupIsShown=false;var gHideSelects=false;var gLoading="";var gTabIndexes=new Array();var gTabbableTags=new Array("A","BUTTON","TEXTAREA","INPUT","IFRAME");if(!document.all){document.onkeypress=keyDownHandler;}
function setPopUpLoadingPage(loading){gLoading=loading;}
function initPopUp(){var body=document.getElementsByTagName('body')[0];var popmask=document.getElementById("popupMask");if(popmask==null){popmask=document.createElement('div');popmask.id='popupMask';body.appendChild(popmask);}
var popcont=document.getElementById("popupContainer");if(popcont==null){popcont=document.createElement('div');popcont.id='popupContainer';popcont.innerHTML=''+'<div id="popupInner">'+'<iframe src="'+gLoading+'" style="width:100%;height:100%;background-color:transparent;" scrolling="no" frameborder="0" allowtransparency="true" id="popupFrame" name="popupFrame" width="100%" height="100%"></iframe>'+'</div>';body.appendChild(popcont);}
gPopupMask=document.getElementById("popupMask");gPopupContainer=document.getElementById("popupContainer");gPopFrame=document.getElementById("popupFrame");var brsVersion=parseInt(window.navigator.appVersion.charAt(0),10);if(brsVersion<=6&&window.navigator.userAgent.indexOf("MSIE")>-1){gHideSelects=true;}
var elms=document.getElementsByTagName('a');for(i=0;i<elms.length;i++){if(elms[i].className.indexOf("submodal")>=0){elms[i].onclick=function(){var startIndex=this.className.indexOf("submodal");var endIndex=this.className.indexOf(" ",startIndex);if(endIndex<0){endIndex=this.className.length;}
var clazz=this.className.substring(startIndex,endIndex);params=clazz.split('-');if(params.length==3){width=parseInt(params[1]);height=parseInt(params[2]);}
showPopWin(this.href,width,height,null);return false;}}}}
function adjustSize(width,height){try{if(height>800)height=800;if(height<200)height=200;if(width<700)width=700;$('popupContainer').style.height=height+"px";$('popupFrame').style.height=height+"px";centerPopWin(width,height);}catch(err){hidePopWin();}}
function showPopWin(url,width,height,returnFunc){try{gPopupIsShown=true;disableTabIndexes();gPopupMask.style.display="block";gPopupContainer.style.display="block";gPopupContainer.style.top="-1500px";gPopupContainer.style.width=width+"px";gPopupContainer.style.height=height+"px";gPopFrame.style.width=width+"px";gPopFrame.style.height=height+"px";gPopFrame.src=url;gReturnFunc=returnFunc;if(gHideSelects==true){operateSelectBoxes("hidden");}}catch(err){hidePopWin();}}
function showSection(siteId,sectionId,originalPage,som,url,width,height,returnFunc,sourceSectionId){try{gPopupIsShown=true;disableTabIndexes();gPopupMask.style.display="block";gPopupContainer.style.display="block";gPopupContainer.style.top="-1500px";gPopupContainer.style.width=width+"px";gPopupContainer.style.height=height+"px";gPopFrame.style.width=width+"px";gPopFrame.style.height=height+"px";if(!url)
url='/section/show?';gPopFrame.src=url+"site_id="+siteId+"&sectionId="+sectionId+"&originalPage="+originalPage+"&som="+som+"&sourceSectionId="+sourceSectionId;gReturnFunc=returnFunc;if(gHideSelects==true){operateSelectBoxes("hidden");}}catch(err){hidePopWin();}}
var gi=0;function centerPopWin(width,height){if(gPopupIsShown==true){if(width==null||isNaN(width)){width=gPopupContainer.offsetWidth;}
if(height==null){height=gPopupContainer.offsetHeight;}
var fullHeight=getViewportHeight();var fullWidth=getViewportWidth();var scLeft,scTop;if(self.pageYOffset){scLeft=self.pageXOffset;scTop=self.pageYOffset;}else if(document.documentElement&&document.documentElement.scrollTop){scLeft=document.documentElement.scrollLeft;scTop=document.documentElement.scrollTop;}else if(document.body){scLeft=document.body.scrollLeft;scTop=document.body.scrollTop;}
gPopupMask.style.height=fullHeight+"px";gPopupMask.style.width=fullWidth+"px";gPopupMask.style.top=scTop+"px";gPopupMask.style.left=scLeft+"px";window.status=gPopupMask.style.top+" "+gPopupMask.style.left+" "+gi++;var topMargin=scTop+((fullHeight-height)/2);if(topMargin<0){topMargin=0;}
gPopupContainer.style.top=topMargin+"px";gPopupContainer.style.left=(scLeft+((fullWidth-width)/2))+"px";}}
addEvent(window,"resize",centerPopWin);window.onscroll=centerPopWin;function hidePopWin(callReturnFunc){gPopupIsShown=false;restoreTabIndexes();if(gPopupMask==null){return;}
gPopupMask.style.display="none";gPopupContainer.style.display="none";if(callReturnFunc==true&&gReturnFunc!=null){gReturnFunc(window.frames["popupFrame"].returnVal);}
gPopFrame.src=gLoading;if(gHideSelects==true){operateSelectBoxes("visible");}}
function setPopTitleAndRewriteTargets(){if(window.frames["popupFrame"].document.title==null){window.setTimeout("setPopTitleAndRewriteTargets();",10);}else{var popupDocument=window.frames["popupFrame"].document;if(popupDocument.getElementsByTagName('base').length<1){var aList=window.frames["popupFrame"].document.getElementsByTagName('a');for(var i=0;i<aList.length;i++){if(aList.target==null)aList[i].target='_parent';}
var fList=window.frames["popupFrame"].document.getElementsByTagName('form');for(i=0;i<fList.length;i++){if(fList.target==null)fList[i].target='_parent';}}}}
function keyDownHandler(e){if(gPopupIsShown&&e.keyCode==9)return false;}
function disableTabIndexes(){if(document.all){var i=0;for(var j=0;j<gTabbableTags.length;j++){var tagElements=document.getElementsByTagName(gTabbableTags[j]);for(var k=0;k<tagElements.length;k++){gTabIndexes[i]=tagElements[k].tabIndex;tagElements[k].tabIndex="-1";i++;}}}}
function restoreTabIndexes(){if(document.all){var i=0;for(var j=0;j<gTabbableTags.length;j++){var tagElements=document.getElementsByTagName(gTabbableTags[j]);for(var k=0;k<tagElements.length;k++){tagElements[k].tabIndex=gTabIndexes[i];tagElements[k].tabEnabled=true;i++;}}}}
function operateSelectBoxes(state){if(top.document.getElementById("editor")&&top.document.getElementById("device_iframe")){var right_pane=top.document.getElementById("editor").contentWindow;var left_pane_first_iframe=top.document.getElementById("device_iframe").contentWindow;var left_pane=left_pane_first_iframe.document.getElementById("preview-frame").contentWindow;doOperateSelectBoxes(right_pane,state);doOperateSelectBoxes(left_pane,state);}else{doOperateSelectBoxes(window,state);}}
function doOperateSelectBoxes(obj,state){for(var i=0;i<obj.document.forms.length;i++){for(var e=0;e<obj.document.forms[i].length;e++){if(obj.document.forms[i].elements[e].tagName=="SELECT"){obj.document.forms[i].elements[e].style.visibility=state}}}}
function addEvent(obj,evType,fn){if(obj.addEventListener){obj.addEventListener(evType,fn,false);return true;}else if(obj.attachEvent){var r=obj.attachEvent("on"+evType,fn);return r;}else{return false;}}
function getViewportHeight(){if(window.innerHeight!=window.undefined)return window.innerHeight;if(document.compatMode=='CSS1Compat')return document.documentElement.clientHeight;if(document.body)return document.body.clientHeight;return window.undefined;}
function getViewportWidth(){if(window.innerWidth!=window.undefined)return window.innerWidth;if(document.compatMode=='CSS1Compat')return document.documentElement.clientWidth;if(document.body)return document.body.clientWidth;return window.undefined;}
var Browser={innerWidth:function(){return window.innerWidth||document.documentElement.clientWidth;},innerHeight:function(){return window.innerHeight||document.documentElement.clientHeight;}}
function adjustDialogSize(){try{if(window.top.adjustSize!=null){height=$("mainFrame").getHeight()+46;if(height<200)
height=200;window.top.adjustSize(document.width,height);if($("popup_footer")){$("popup_footer").style.bottom='0px';}}}catch(e){}}
function renderLayout(contentTagId){try{if(contentTagId==undefined)
contentTagId="content";var scrollInnerHeight=Browser.innerHeight()-$("header").offsetHeight-1;document.getElementById("scroll").style.height=scrollInnerHeight+"px";var a=$(contentTagId).offsetHeight;var b=$("footer").offsetHeight;if(($(contentTagId).offsetHeight+$("footer").offsetHeight)+60<scrollInnerHeight){$("footer").style.position="absolute";}else{$("footer").style.position="static";}}catch(e){}}
function init(){renderLayout();window.onresize=function(){renderLayout();}
Behaviour.register(myrules);Behaviour.apply();}
function initDialog(){Behaviour.register(myrules);Behaviour.apply();if(window.top.adjustSize!=null){setTimeout('adjustDialogSize()',150);}}
function initNoFrame(){renderLayout("no_frame_content");window.onresize=function(){renderLayout("no_frame_content");}}
var myrules={'a.link_box_hide':function(el){el.onclick=function(){$(this.parentNode).hide();renderLayout();listBoxAjaxUpdate(this,$('box_manager'));return false;}},'a.link_box':function(el){el.onclick=function(){listBoxAjaxUpdate(this,$(getBoxId(this.id)));return false;}},'a.link_help_thumb':function(el){el.onclick=function(){$(this).hide();$(getBoxId(this.id)).show();return false;}},'a.link_help_thumb_hide':function(el){el.onclick=function(){$(this.parentNode).hide();$('help_box_link').show();return false;}}};function getBoxId(link_id){return link_id.substr(0,link_id.length-5)}
function listBoxAjaxUpdate(caller,elem){new Ajax.Updater('box_list','/common_gui/ajax_box_update?box='+getBoxId(caller.id),{asynchronous:true,evalScripts:true,onComplete:function(request){Behaviour.apply();hideParentIfEmpty($('box_list'));setTimeout('renderLayout();',100);},onSuccess:function(request){Effect.Appear(elem);}});}
function hideParentIfEmpty(elem){if(elem.innerHTML.length==0)
elem.parentNode.hide();}
function showLoginForm(){Element.toggle("loginForm");Element.toggle("loginLinks");}
function updateHelpContent(help_key){new Ajax.Updater({success:'help_content'},'/common_gui/ajax_help_content_update?help_key='+help_key,{asynchronous:false});}
function switch_login_view(){$('show_use_ubikid_link').toggle();$('show_use_openid_link').toggle();$('ubik_id').toggle();$('open_id').toggle();if($('with_open_id').value=='')
$('with_open_id').value='1';else
$('with_open_id').value='';}
function switch_header_login_view(){$('user_pass_form').toggle();$('open_id_form').toggle();}
function post_openid_form(identity_url){hidePopWin();$('openid_url').value=identity_url;$('openid_signin').submit();}
function showSignInInputs(){$('sign_in_button').style.display='none';$('sign_in_inputs').style.display='block';}
function submitenter(myfield,e)
{var keycode;if(window.event)keycode=window.event.keyCode;else if(e)keycode=e.which;else return true;if(keycode==13)
{myfield.form.submit();return false;}
else
return true;}
var JavascriptManager=Class.create();JavascriptManager.prototype={initialize:function(){},getErrorValue:function(error,errors_array){var errorValue="";for(var i=0;i<errors_array.length&&errorValue=="";i++){var param=errors_array[i]
var paramName=param[0];if(paramName==error){errorValue=param[1]}}
return errorValue;}}
String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,'');}
function get_value_by_key(key,str){var i=str?str.indexOf(key):-1;if(i>=0){i=i+key.length+1;var i2=str.indexOf(';',i);return i2>0?str.substring(i,i2):str.substring(i);}
return null;}
function matches(value,patterns){if(value!=null&&patterns!=null){for(var i=0;i<patterns.length;i++){if(value==patterns[i]){return true;}}}
return false;}
function update_subscr_next(){Element.show("continue_blue");Element.hide("continue_grey");}
var orginal_state;function rating_mouse_over(id,stars,object_id){if(orginal_state==null){for(j=1;j<=stars;j++){if($(object_id+"_"+j).getAttribute("src").indexOf('/plugin_assets/volantis_rating/images/rating/rating_star_big_inactive.gif')!=-1){orginal_state=j-1;break;}}
if(orginal_state==null){orginal_state=stars;}}
for(i=1;i<=stars;i++){imgNode=document.getElementById(object_id+"_"+i);if(i<=id){imgNode.setAttribute("src","/plugin_assets/volantis_rating/images/rating/rating_star_big_active.gif");imgNode.setAttribute("alt","+");}else{imgNode.setAttribute("src","/plugin_assets/volantis_rating/images/rating/rating_star_big_inactive.gif");imgNode.setAttribute("alt","+");}}}
function rating_mouse_out(e,max_id,stars,object_id){if(!e)var e=window.event;var tg=(window.event)?e.srcElement:e.target;if(tg.nodeName=='IMG'){var reltg=(e.relatedTarget)?e.relatedTarget:e.toElement;if(reltg.nodeName=='IMG')return;}
for(i=1;i<=stars;i++){imgNode=document.getElementById(object_id+"_"+i);if(i<=orginal_state){imgNode.setAttribute("src","/plugin_assets/volantis_rating/images/rating/rating_star_big_active.gif");}else{imgNode.setAttribute("src","/plugin_assets/volantis_rating/images/rating/rating_star_big_inactive.gif");}
imgNode.setAttribute("alt","-");}}