//window.onerror=new Function('return true');
var Prototype={Version:'1.5.0_rc0',ScriptFragment:'(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)',emptyFunction:function(){},K:function(x){return x}};var Class={create:function(){return function(){this.initialize.apply(this,arguments);};}};var Abstract=new Object();Object.extend=function(destination,source){for(var property in source){destination[property]=source[property];}return destination;};Object.inspect=function(object){try{if(object==undefined) return 'undefined';if(object==null) return 'null';return object.inspect?object.inspect():object.toString();}catch(e){if(e instanceof RangeError) return '...';throw e;}};Function.prototype.bind=function(){var __method=this,args=$A(arguments),object=args.shift();return function(){return __method.apply(object,args.concat($A(arguments)));};};Function.prototype.bindAsEventListener=function(object){var __method=this;return function(event){return __method.call(object,event||window.event);};};Object.extend(Number.prototype,{toColorPart:function(){var digits=this.toString(16);if(this<16) return '0'+digits;return digits;},succ:function(){return this+1;},times:function(iterator){$R(0,this,true).each(iterator);return this;}});var Try={these:function(){var returnValue;for(var i=0;i<arguments.length;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}return returnValue;}};var PeriodicalExecuter=Class.create();PeriodicalExecuter.prototype={initialize:function(callback,frequency){this.callback=callback;this.frequency=frequency;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.callback();}finally{this.currentlyExecuting=false;}}}};Object.extend(String.prototype,{gsub:function(pattern,replacement){var result='',source=this,match;replacement=arguments.callee.prepareReplacement(replacement);while(source.length>0){if(match=source.match(pattern)){result+=source.slice(0,match.index);result+=(replacement(match)||'').toString();source=source.slice(match.index+match[0].length);}else{result+=source,source='';}}return result;},sub:function(pattern,replacement,count){replacement=this.gsub.prepareReplacement(replacement);count=count===undefined?1:count;return this.gsub(pattern,function(match){if(--count<0) return match[0];return replacement(match);});},scan:function(pattern,iterator){this.gsub(pattern,iterator);return this;},truncate:function(length,truncation){length=length||30;truncation=truncation===undefined?'...':truncation;return this.length>length?this.slice(0,length-truncation.length)+truncation:this;},strip:function(){return this.replace(/^\s+/,'').replace(/\s+$/,'');},stripTags:function(){return this.replace(/<\/?[^>]+>/gi,'');},stripScripts:function(){return this.replace(new RegExp(Prototype.ScriptFragment,'img'),'');},extractScripts:function(){var matchAll=new RegExp(Prototype.ScriptFragment,'img');var matchOne=new RegExp(Prototype.ScriptFragment,'im');return(this.match(matchAll)||[]).map(function(scriptTag){return(scriptTag.match(matchOne)||['',''])[1];});},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script)});},escapeHTML:function(){var div=document.createElement('div');var text=document.createTextNode(this);div.appendChild(text);return div.innerHTML;},unescapeHTML:function(){var div=document.createElement('div');div.innerHTML=this.stripTags();return div.childNodes[0]?div.childNodes[0].nodeValue:'';},toQueryParams:function(){var pairs=this.match(/^\??(.*)$/)[1].split('&');return pairs.inject({},function(params,pairString){var pair=pairString.split('=');params[pair[0]]=pair[1];return params;});},toArray:function(){return this.split('');},camelize:function(){var oStringList=this.split('-');if(oStringList.length==1) return oStringList[0];var camelizedString=this.indexOf('-')==0?oStringList[0].charAt(0).toUpperCase()+oStringList[0].substring(1):oStringList[0];for(var i=1,len=oStringList.length;i<len;i++){var s=oStringList[i];camelizedString+=s.charAt(0).toUpperCase()+s.substring(1);}return camelizedString;},inspect:function(){return "'"+this.replace(/\\/g,'\\\\').replace(/\'/g,'\\\'')+"'";}});String.prototype.gsub.prepareReplacement=function(replacement){if(typeof replacement=='function') return replacement;var template=new Template(replacement);return function(match){return template.evaluate(match)};};/*-farmer_chs*/String.prototype.trim=function(){return this.replace(/^\s+/,'').replace(/\s+$/,'');};String.prototype.unilength=function(){	if(this.length==0) return 0;	var l=0;	for(i=0;i<this.length;i++){		l++;		if(this.charCodeAt(i)>127){l++;}	}	return l;};String.prototype.unileft=function(length){	if(length>this.unilength()){return this;}	var s="";k=0;	for(i=0;i<length;i++){		s+=this.charAt(i);		k++;		if(this.charCodeAt(i)>127){k++;}		if(k>=length){return s;}	}};/*-END*/String.prototype.parseQuery=String.prototype.toQueryParams;var Template=Class.create();Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;Template.prototype={initialize:function(template,pattern){this.template=template.toString();this.pattern=pattern||Template.Pattern;},evaluate:function(object){return this.template.gsub(this.pattern,function(match){var before=match[1];if(before=='\\') return match[2];return before+(object[match[3]]||'').toString();});}};var $break=new Object();var $continue=new Object();var Enumerable={each:function(iterator){var index=0;try{this._each(function(value){try{iterator(value,index++);}catch(e){if(e!=$continue) throw e;}});}catch(e){if(e!=$break) throw e;}},all:function(iterator){var result=true;this.each(function(value,index){result=result&&!!(iterator||Prototype.K)(value,index);if(!result) throw $break;});return result;},any:function(iterator){var result=true;this.each(function(value,index){if(result=!!(iterator||Prototype.K)(value,index)) throw $break;});return result;},collect:function(iterator){var results=[];this.each(function(value,index){results.push(iterator(value,index));});return results;},detect:function(iterator){var result;this.each(function(value,index){if(iterator(value,index)){result=value;throw $break;}});return result;},findAll:function(iterator){var results=[];this.each(function(value,index){if(iterator(value,index)) results.push(value);});return results;},grep:function(pattern,iterator){var results=[];this.each(function(value,index){var stringValue=value.toString();if(stringValue.match(pattern)) results.push((iterator||Prototype.K)(value,index));});return results;},include:function(object){var found=false;this.each(function(value){if(value==object){found=true;throw $break;}});return found;},inject:function(memo,iterator){this.each(function(value,index){memo=iterator(memo,value,index);});return memo;},invoke:function(method){var args=$A(arguments).slice(1);return this.collect(function(value){return value[method].apply(value,args);});},max:function(iterator){var result;this.each(function(value,index){value=(iterator||Prototype.K)(value,index);if(result==undefined||value>=result) result=value;});return result;},min:function(iterator){var result;this.each(function(value,index){value=(iterator||Prototype.K)(value,index);if(result==undefined||value<result) result=value;});return result;},partition:function(iterator){var trues=[],falses=[];this.each(function(value,index){((iterator||Prototype.K)(value,index)?trues:falses).push(value);});return [trues,falses];},pluck:function(property){var results=[];this.each(function(value,index){results.push(value[property]);});return results;},reject:function(iterator){var results=[];this.each(function(value,index){if(!iterator(value,index)) results.push(value);});return results;},sortBy:function(iterator){return this.collect(function(value,index){return{value:value,criteria:iterator(value,index)};}).sort(function(left,right){var a=left.criteria,b=right.criteria;return a<b?-1:a>b?1:0;}).pluck('value');},toArray:function(){return this.collect(Prototype.K);},zip:function(){var iterator=Prototype.K,args=$A(arguments);if(typeof args.last()=='function') iterator=args.pop();var collections=[this].concat(args).map($A);return this.map(function(value,index){return iterator(collections.pluck(index));});},inspect:function(){return '#<Enumerable:'+this.toArray().inspect()+'>';}};Object.extend(Enumerable,{map:Enumerable.collect,find:Enumerable.detect,select:Enumerable.findAll,member:Enumerable.include,entries:Enumerable.toArray});var $A=Array.from=function(iterable){if(!iterable) return [];if(iterable.toArray){return iterable.toArray();}else{var results=[];for(var i=0;i<iterable.length;i++) results.push(iterable[i]);return results;}};Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse) Array.prototype._reverse=Array.prototype.reverse;Object.extend(Array.prototype,{_each:function(iterator){for(var i=0;i<this.length;i++) iterator(this[i]);},clear:function(){this.length=0;return this;},first:function(){return this[0];},last:function(){return this[this.length-1];},compact:function(){return this.select(function(value){return value!=undefined||value!=null;});},flatten:function(){return this.inject([],function(array,value){return array.concat(value&&value.constructor==Array?value.flatten():[value]);});},without:function(){var values=$A(arguments);return this.select(function(value){return !values.include(value);});},indexOf:function(object){for(var i=0;i<this.length;i++) if(this[i]==object) return i;return -1;},reverse:function(inline){return(inline!==false?this:this.toArray())._reverse();},inspect:function(){return '['+this.map(Object.inspect).join(',')+']';}});var Hash={_each:function(iterator){for(var key in this){var value=this[key];if(typeof value=='function') continue;var pair=[key,value];pair.key=key;pair.value=value;iterator(pair);}},keys:function(){return this.pluck('key');},values:function(){return this.pluck('value');},merge:function(hash){return $H(hash).inject($H(this),function(mergedHash,pair){mergedHash[pair.key]=pair.value;return mergedHash;});},toQueryString:function(){return this.map(function(pair){return pair.map(encodeURIComponent).join('=');}).join('&');},inspect:function(){return '#<Hash:{'+this.map(function(pair){return pair.map(Object.inspect).join(':');}).join(',')+'}>';}};function $H(object){var hash=Object.extend({},object||{});Object.extend(hash,Enumerable);Object.extend(hash,Hash);return hash;};ObjectRange=Class.create();Object.extend(ObjectRange.prototype,Enumerable);Object.extend(ObjectRange.prototype,{initialize:function(start,end,exclusive){this.start=start;this.end=end;this.exclusive=exclusive;},_each:function(iterator){var value=this.start;do{iterator(value);value=value.succ();}while(this.include(value));},include:function(value){if(value<this.start) return false;if(this.exclusive) return value<this.end;return value<=this.end;}});var $R=function(start,end,exclusive){return new ObjectRange(start,end,exclusive);};var Ajax={getTransport:function(){return Try.these( function(){return new XMLHttpRequest()},function(){return new ActiveXObject('Msxml2.XMLHTTP')},function(){return new ActiveXObject('Microsoft.XMLHTTP')})||false;},activeRequestCount:0};Ajax.Responders={responders:[],_each:function(iterator){this.responders._each(iterator);},register:function(responderToAdd){if(!this.include(responderToAdd)) this.responders.push(responderToAdd);},unregister:function(responderToRemove){this.responders=this.responders.without(responderToRemove);},dispatch:function(callback,request,transport,json){this.each(function(responder){if(responder[callback]&&typeof responder[callback]=='function'){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=function(){};Ajax.Base.prototype={setOptions:function(options){this.options={method:'post',asynchronous:true,contentType:'application/x-www-form-urlencoded',parameters:''};Object.extend(this.options,options||{});},responseIsSuccess:function(){return this.transport.status==undefined||this.transport.status==0 ||(this.transport.status>=200&&this.transport.status<300);},responseIsFailure:function(){return !this.responseIsSuccess();}};Ajax.Request=Class.create();Ajax.Request.Events=['Uninitialized','Loading','Loaded','Interactive','Complete'];Ajax.Request.prototype=Object.extend(new Ajax.Base(),{initialize:function(url,options){this.transport=Ajax.getTransport();this.setOptions(options);this.request(url);},request:function(url){var parameters=this.options.parameters||'';if(parameters.length>0) parameters+='&_=';try{this.url=url;if(this.options.method=='get'&&parameters.length>0) this.url+=(this.url.match(/\?/)?'&':'?')+parameters;Ajax.Responders.dispatch('onCreate',this,this.transport);this.transport.open(this.options.method,this.url,this.options.asynchronous);if(this.options.asynchronous){this.transport.onreadystatechange=this.onStateChange.bind(this);setTimeout((function(){this.respondToReadyState(1)}).bind(this),10);}this.setRequestHeaders();var body=this.options.postBody?this.options.postBody:parameters;this.transport.send(this.options.method=='post'?body:null);}catch(e){this.dispatchException(e);}},setRequestHeaders:function(){var requestHeaders=['X-Requested-With','XMLHttpRequest','X-Prototype-Version',Prototype.Version,'Accept','text/javascript,text/html,application/xml,text/xml,*/*'];if(this.options.method=='post'){requestHeaders.push('Content-type',this.options.contentType);if(this.transport.overrideMimeType) requestHeaders.push('Connection','close');}if(this.options.requestHeaders) requestHeaders.push.apply(requestHeaders,this.options.requestHeaders);for(var i=0;i<requestHeaders.length;i+=2) this.transport.setRequestHeader(requestHeaders[i],requestHeaders[i+1]);},onStateChange:function(){var readyState=this.transport.readyState;if(readyState!=1) this.respondToReadyState(this.transport.readyState);},header:function(name){try{return this.transport.getResponseHeader(name);}catch(e){}},evalJSON:function(){try{return eval('('+this.header('X-JSON')+')');}catch(e){}},evalResponse:function(){try{return eval(this.transport.responseText);}catch(e){this.dispatchException(e);}},respondToReadyState:function(readyState){var event=Ajax.Request.Events[readyState];var transport=this.transport,json=this.evalJSON();if(event=='Complete'){try{(this.options['on'+this.transport.status] ||this.options['on'+(this.responseIsSuccess()?'Success':'Failure')] ||Prototype.emptyFunction)(transport,json);}catch(e){this.dispatchException(e);}if((this.header('Content-type')||'').match(/^text\/javascript/i)) this.evalResponse();}try{(this.options['on'+event]||Prototype.emptyFunction)(transport,json);Ajax.Responders.dispatch('on'+event,this,transport,json);}catch(e){this.dispatchException(e);}if(event=='Complete') this.transport.onreadystatechange=Prototype.emptyFunction;},dispatchException:function(exception){(this.options.onException||Prototype.emptyFunction)(this,exception);Ajax.Responders.dispatch('onException',this,exception);}});Ajax.Updater=Class.create();Object.extend(Object.extend(Ajax.Updater.prototype,Ajax.Request.prototype),{initialize:function(container,url,options){this.containers={success:container.success?$(container.success):$(container),failure:container.failure?$(container.failure):(container.success?null:$(container))};this.transport=Ajax.getTransport();this.setOptions(options);var onComplete=this.options.onComplete||Prototype.emptyFunction;this.options.onComplete=(function(transport,object){this.updateContent();onComplete(transport,object);}).bind(this);this.request(url);},updateContent:function(){var receiver=this.responseIsSuccess()?this.containers.success:this.containers.failure;var response=this.transport.responseText;if(!this.options.evalScripts) response=response.stripScripts();if(receiver){if(this.options.insertion){new this.options.insertion(receiver,response);}else{Element.update(receiver,response);		}}if(this.responseIsSuccess()){if(this.onComplete) setTimeout(this.onComplete.bind(this),10);}}});Ajax.PeriodicalUpdater=Class.create();Ajax.PeriodicalUpdater.prototype=Object.extend(new Ajax.Base(),{initialize:function(container,url,options){this.setOptions(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.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this,arguments);},updateComplete:function(request){if(this.options.decay){this.decay=(request.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=request.responseText;}this.timer=setTimeout(this.onTimerEvent.bind(this),this.decay*this.frequency*1000);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});function $(){var results=[],element;for(var i=0;i<arguments.length;i++){element=arguments[i];if(typeof element=='string') element=document.getElementById(element);results.push(Element.extend(element));}return results.length<2?results[0]:results;};document.getElementsByClassName=function(className,parentElement){var children=($(parentElement)||document.body).getElementsByTagName('*');return $A(children).inject([],function(elements,child){if(child.className.match(new RegExp("(^|\\s)"+className+"(\\s|$)"))) elements.push(Element.extend(child));return elements;});};if(!window.Element) var Element=new Object();Element.extend=function(element){if(!element) return;if(_nativeExtensions) return element;if(!element._extended&&element.tagName&&element!=window){var methods=Element.Methods,cache=Element.extend.cache;for(property in methods){var value=methods[property];if(typeof value=='function') element[property]=cache.findOrStore(value);}}element._extended=true;return element;};Element.extend.cache={findOrStore:function(value){return this[value]=this[value]||function(){return value.apply(null,[this].concat($A(arguments)));}}};Element.Methods={visible:function(element){return $(element).style.display!='none';},toggle:function(){for(var i=0;i<arguments.length;i++){var element=$(arguments[i]);Element[Element.visible(element)?'hide':'show'](element);}},hide:function(){for(var i=0;i<arguments.length;i++){var element=$(arguments[i]);element.style.display='none';}},show:function(){for(var i=0;i<arguments.length;i++){var element=$(arguments[i]);element.style.display='';}},remove:function(element){element=$(element);element.parentNode.removeChild(element);},update:function(element,html){$(element).innerHTML=html.stripScripts();setTimeout(function(){html.evalScripts()},10);},replace:function(element,html){element=$(element);if(element.outerHTML){element.outerHTML=html.stripScripts();}else{var range=element.ownerDocument.createRange();range.selectNodeContents(element);element.parentNode.replaceChild( range.createContextualFragment(html.stripScripts()),element);}setTimeout(function(){html.evalScripts()},10);},getHeight:function(element){element=$(element);return element.offsetHeight;},classNames:function(element){return new Element.ClassNames(element);},hasClassName:function(element,className){if(!(element=$(element))) return;return Element.classNames(element).include(className);},addClassName:function(element,className){if(!(element=$(element))) return;return Element.classNames(element).add(className);},removeClassName:function(element,className){if(!(element=$(element))) return;return Element.classNames(element).remove(className);}, cleanWhitespace:function(element){element=$(element);for(var i=0;i<element.childNodes.length;i++){var node=element.childNodes[i];if(node.nodeType==3&&!/\S/.test(node.nodeValue)) Element.remove(node);}},empty:function(element){return $(element).innerHTML.match(/^\s*$/);},childOf:function(element,ancestor){element=$(element),ancestor=$(ancestor);while(element=element.parentNode) if(element==ancestor) return true;return false;},scrollTo:function(element){element=$(element);var x=element.x?element.x:element.offsetLeft,y=element.y?element.y:element.offsetTop;window.scrollTo(x,y);},getStyle:function(element,style){element=$(element);var value=element.style[style.camelize()];if(!value){if(document.defaultView&&document.defaultView.getComputedStyle){var css=document.defaultView.getComputedStyle(element,null);value=css?css.getPropertyValue(style):null;}else if(element.currentStyle){value=element.currentStyle[style.camelize()];}}if(window.opera&&['left','top','right','bottom'].include(style)) if(Element.getStyle(element,'position')=='static') value='auto';return value=='auto'?null:value;},setStyle:function(element,style){element=$(element);for(var name in style) element.style[name.camelize()]=style[name];},getDimensions:function(element){element=$(element);if(Element.getStyle(element,'display')!='none') return{width:element.offsetWidth,height:element.offsetHeight};var els=element.style;var originalVisibility=els.visibility;var originalPosition=els.position;els.visibility='hidden';els.position='absolute';els.display='';var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;els.display='none';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(window.opera){element.style.top=0;element.style.left=0;}}},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='';}},makeClipping:function(element){element=$(element);if(element._overflow) return;element._overflow=element.style.overflow;if((Element.getStyle(element,'overflow')||'visible')!='hidden') element.style.overflow='hidden';},undoClipping:function(element){element=$(element);if(element._overflow) return;element.style.overflow=element._overflow;element._overflow=undefined;}};Object.extend(Element,Element.Methods);var _nativeExtensions=false;if(!HTMLElement&&/Konqueror|Safari|KHTML/.test(navigator.userAgent)){var HTMLElement={};HTMLElement.prototype=document.createElement('div').__proto__;};Element.addMethods=function(methods){Object.extend(Element.Methods,methods||{});if(typeof HTMLElement!='undefined'){var methods=Element.Methods,cache=Element.extend.cache;for(property in methods){var value=methods[property];if(typeof value=='function') HTMLElement.prototype[property]=cache.findOrStore(value);}_nativeExtensions=true;}};Element.addMethods();var Toggle=new Object();Toggle.display=Element.toggle;Abstract.Insertion=function(adjacency){this.adjacency=adjacency;};Abstract.Insertion.prototype={initialize:function(element,content){this.element=$(element);this.content=content.stripScripts();if(this.adjacency&&this.element.insertAdjacentHTML){try{this.element.insertAdjacentHTML(this.adjacency,this.content);}catch(e){var tagName=this.element.tagName.toLowerCase();if(tagName=='tbody'||tagName=='tr'){this.insertContent(this.contentFromAnonymousTable());}else{throw e;}}}else{this.range=this.element.ownerDocument.createRange();if(this.initializeRange) this.initializeRange();this.insertContent([this.range.createContextualFragment(this.content)]);}setTimeout(function(){content.evalScripts()},10);},contentFromAnonymousTable:function(){var div=document.createElement('div');div.innerHTML='<table><tbody>'+this.content+'</tbody></table>';return $A(div.childNodes[0].childNodes[0].childNodes);}};var Insertion=new Object();Insertion.Before=Class.create();Insertion.Before.prototype=Object.extend(new Abstract.Insertion('beforeBegin'),{initializeRange:function(){this.range.setStartBefore(this.element);},insertContent:function(fragments){fragments.each((function(fragment){this.element.parentNode.insertBefore(fragment,this.element);}).bind(this));}});Insertion.Top=Class.create();Insertion.Top.prototype=Object.extend(new Abstract.Insertion('afterBegin'),{initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(true);},insertContent:function(fragments){fragments.reverse(false).each((function(fragment){this.element.insertBefore(fragment,this.element.firstChild);}).bind(this));}});Insertion.Bottom=Class.create();Insertion.Bottom.prototype=Object.extend(new Abstract.Insertion('beforeEnd'),{initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(this.element);},insertContent:function(fragments){fragments.each((function(fragment){this.element.appendChild(fragment);}).bind(this));}});Insertion.After=Class.create();Insertion.After.prototype=Object.extend(new Abstract.Insertion('afterEnd'),{initializeRange:function(){this.range.setStartAfter(this.element);},insertContent:function(fragments){fragments.each((function(fragment){this.element.parentNode.insertBefore(fragment,this.element.nextSibling);}).bind(this));}});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(this.toArray().concat(classNameToAdd).join(' '));},remove:function(classNameToRemove){if(!this.include(classNameToRemove)) return;this.set(this.select(function(className){return className!=classNameToRemove;}).join(' '));},toString:function(){return this.toArray().join(' ');}};Object.extend(Element.ClassNames.prototype,Enumerable);var Selector=Class.create();Selector.prototype={initialize:function(expression){this.params={classNames:[]};this.expression=expression.toString().strip();this.parseExpression();this.compileMatcher();},parseExpression:function(){function abort(message){throw 'Parse error in selector:'+message;}if(this.expression=='') abort('empty expression');var params=this.params,expr=this.expression,match,modifier,clause,rest;while(match=expr.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=)(?:"([^\"]*)"|([^\]\s]*)))?\]$/i)){params.attributes=params.attributes||[];params.attributes.push({name:match[2],operator:match[3],value:match[4]||match[5]||''});expr=match[1];}if(expr=='*') return this.params.wildcard=true;while(match=expr.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)){modifier=match[1],clause=match[2],rest=match[3];switch(modifier){case '#':params.id=clause;break;case '.':params.classNames.push(clause);break;case '':case undefined:params.tagName=clause.toUpperCase();break;default:abort(expr.inspect());}expr=rest;}if(expr.length>0) abort(expr.inspect());},buildMatchExpression:function(){var params=this.params,conditions=[],clause;if(params.wildcard) conditions.push('true');if(clause=params.id) conditions.push('element.id=='+clause.inspect());if(clause=params.tagName) conditions.push('element.tagName.toUpperCase()=='+clause.inspect());if((clause=params.classNames).length>0) for(var i=0;i<clause.length;i++) conditions.push('Element.hasClassName(element,'+clause[i].inspect()+')');if(clause=params.attributes){clause.each(function(attribute){var value='element.getAttribute('+attribute.name.inspect()+')';var splitValueBy=function(delimiter){return value+'&&'+value+'.split('+delimiter.inspect()+')';};switch(attribute.operator){case '=':conditions.push(value+'=='+attribute.value.inspect());break;case '~=':conditions.push(splitValueBy(' ')+'.include('+attribute.value.inspect()+')');break;case '|=':conditions.push( splitValueBy('-')+'.first().toUpperCase()=='+attribute.value.toUpperCase().inspect() );break;case '!=':conditions.push(value+'!='+attribute.value.inspect());break;case '':case undefined:conditions.push(value+'!=null');break;default:throw 'Unknown operator '+attribute.operator+' in selector';}});}return conditions.join('&&');},compileMatcher:function(){this.match=new Function('element','if(!element.tagName) return false;\ return '+this.buildMatchExpression());},findElements:function(scope){var element;if(element=$(this.params.id)) if(this.match(element)) if(!scope||Element.childOf(element,scope)) return [element];scope=(scope||document).getElementsByTagName(this.params.tagName||'*');var results=[];for(var i=0;i<scope.length;i++) if(this.match(element=scope[i])) results.push(Element.extend(element));return results;},toString:function(){return this.expression;}};function $$(){return $A(arguments).map(function(expression){return expression.strip().split(/\s+/).inject([null],function(results,expr){var selector=new Selector(expr);return results.map(selector.findElements.bind(selector)).flatten();});}).flatten();};var Field={clear:function(){for(var i=0;i<arguments.length;i++) $(arguments[i]).value='';},focus:function(element){$(element).focus();},present:function(){for(var i=0;i<arguments.length;i++) if($(arguments[i]).value=='') return false;return true;},select:function(element){$(element).select();},activate:function(element){element=$(element);element.focus();if(element.select) element.select();}};var Form={serialize:function(form){var elements=Form.getElements($(form));var queryComponents=new Array();for(var i=0;i<elements.length;i++){var queryComponent=Form.Element.serialize(elements[i]);if(queryComponent) queryComponents.push(queryComponent);}return queryComponents.join('&');},getElements:function(form){form=$(form);var elements=new Array();for(var tagName in Form.Element.Serializers){var tagElements=form.getElementsByTagName(tagName);for(var j=0;j<tagElements.length;j++) elements.push(tagElements[j]);}return elements;},getInputs:function(form,typeName,name){form=$(form);var inputs=form.getElementsByTagName('input');if(!typeName&&!name) return inputs;var matchingInputs=new Array();for(var i=0;i<inputs.length;i++){var input=inputs[i];if((typeName&&input.type!=typeName)||(name&&input.name!=name)) continue;matchingInputs.push(input);}return matchingInputs;},disable:function(form){var elements=Form.getElements(form);for(var i=0;i<elements.length;i++){var element=elements[i];element.blur();element.disabled='true';}},enable:function(form){var elements=Form.getElements(form);for(var i=0;i<elements.length;i++){var element=elements[i];element.disabled='';}},findFirstElement:function(form){return Form.getElements(form).find(function(element){return element.type!='hidden'&&!element.disabled&&['input','select','textarea'].include(element.tagName.toLowerCase());});},focusFirstElement:function(form){Field.activate(Form.findFirstElement(form));},reset:function(form){$(form).reset();}};Form.Element={serialize:function(element){element=$(element);var method=element.tagName.toLowerCase();var parameter=Form.Element.Serializers[method](element);if(parameter){var key=encodeURIComponent(parameter[0]);if(key.length==0) return;if(parameter[1].constructor!=Array) parameter[1]=[parameter[1]];return parameter[1].map(function(value){return key+'='+encodeURIComponent(value);}).join('&');}},getValue:function(element){element=$(element);var method=element.tagName.toLowerCase();var parameter=Form.Element.Serializers[method](element);if(parameter) return parameter[1];}};Form.Element.Serializers={input:function(element){switch(element.type.toLowerCase()){case 'submit':case 'hidden':case 'password':case 'text':return Form.Element.Serializers.textarea(element);case 'checkbox':case 'radio':return Form.Element.Serializers.inputSelector(element);}return false;},inputSelector:function(element){if(element.checked) return [element.name,element.value];},textarea:function(element){return [element.name,element.value];},select:function(element){return Form.Element.Serializers[element.type=='select-one'?'selectOne':'selectMany'](element);},selectOne:function(element){var value='',opt,index=element.selectedIndex;if(index>=0){opt=element.options[index];value=opt.value||opt.text;}return [element.name,value];},selectMany:function(element){var value=[];for(var i=0;i<element.length;i++){var opt=element.options[i];if(opt.selected) value.push(opt.value||opt.text);}return [element.name,value];}};var $F=Form.Element.getValue;Abstract.TimedObserver=function(){};Abstract.TimedObserver.prototype={initialize:function(element,frequency,callback){this.frequency=frequency;this.element=$(element);this.callback=callback;this.lastValue=this.getValue();this.registerCallback();},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},onTimerEvent:function(){var value=this.getValue();if(this.lastValue!=value){this.callback(this.element,value);this.lastValue=value;}}};Form.Element.Observer=Class.create();Form.Element.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create();Form.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=function(){};Abstract.EventObserver.prototype={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(){var elements=Form.getElements(this.element);for(var i=0;i<elements.length;i++) this.registerCallback(elements[i]);},registerCallback:function(element){if(element.type){switch(element.type.toLowerCase()){case 'checkbox':case 'radio':Event.observe(element,'click',this.onElementEvent.bind(this));break;case 'password':case 'text':case 'textarea':case 'select-one':case 'select-multiple':Event.observe(element,'change',this.onElementEvent.bind(this));break;}}}};Form.Element.EventObserver=Class.create();Form.Element.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create();Form.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.serialize(this.element);}});if(!window.Event){var Event=new Object();}Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,element:function(event){return event.target||event.srcElement;},isLeftClick:function(event){return(((event.which)&&(event.which==1))||((event.button)&&(event.button==1)));},pointerX:function(event){return event.pageX ||(event.clientX +(document.documentElement.scrollLeft||document.body.scrollLeft));},pointerY:function(event){return event.pageY ||(event.clientY +(document.documentElement.scrollTop||document.body.scrollTop));},stop:function(event){if(event.preventDefault){event.preventDefault();event.stopPropagation();}else{event.returnValue=false;event.cancelBubble=true;}}, findElement:function(event,tagName){var element=Event.element(event);while(element.parentNode&&(!element.tagName ||(element.tagName.toUpperCase()!=tagName.toUpperCase()))) element=element.parentNode;return element;},observers:false,_observeAndCache:function(element,name,observer,useCapture){if(!this.observers) this.observers=[];if(element.addEventListener){this.observers.push([element,name,observer,useCapture]);element.addEventListener(name,observer,useCapture);}else if(element.attachEvent){this.observers.push([element,name,observer,useCapture]);element.attachEvent('on'+name,observer);}},unloadCache:function(){if(!Event.observers) return;for(var i=0;i<Event.observers.length;i++){Event.stopObserving.apply(this,Event.observers[i]);Event.observers[i][0]=null;}Event.observers=false;},observe:function(element,name,observer,useCapture){var element=$(element);useCapture=useCapture||false;if(name=='keypress'&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.attachEvent)) name='keydown';this._observeAndCache(element,name,observer,useCapture);},stopObserving:function(element,name,observer,useCapture){var element=$(element);useCapture=useCapture||false;if(name=='keypress'&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.detachEvent)) name='keydown';if(element.removeEventListener){element.removeEventListener(name,observer,useCapture);}else if(element.detachEvent){element.detachEvent('on'+name,observer);}}});/* prevent memory leaks in IE */if(navigator.appVersion.match(/\bMSIE\b/)){Event.observe(window,'unload',Event.unloadCache,false);}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;},realOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.scrollTop||0;valueL+=element.scrollLeft||0;element=element.parentNode;}while(element);return [valueL,valueT];},cumulativeOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;}while(element);return [valueL,valueT];},positionedOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;if(element){p=Element.getStyle(element,'position');if(p=='relative'||p=='absolute') break;}}while(element);return [valueL,valueT];},offsetParent: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;},within:function(element,x,y){if(this.includeScrollOffsets) return this.withinIncludingScrolloffsets(element,x,y);this.xcomp=x;this.ycomp=y;this.offset=this.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=this.realOffset(element);this.xcomp=x+offsetcache[0]-this.deltaX;this.ycomp=y+offsetcache[1]-this.deltaY;this.offset=this.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;},clone:function(source,target){source=$(source);target=$(target);target.style.position='absolute';var offsets=this.cumulativeOffset(source);target.style.top=offsets[1]+'px';target.style.left=offsets[0]+'px';target.style.width=source.offsetWidth+'px';target.style.height=source.offsetHeight+'px';},page:function(forElement){var valueT=0,valueL=0;var element=forElement;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body) if(Element.getStyle(element,'position')=='absolute') break;}while(element=element.offsetParent);element=forElement;do{valueT -=element.scrollTop||0;valueL -=element.scrollLeft||0;}while(element=element.parentNode);return [valueL,valueT];},clone:function(source,target){var options=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});source=$(source);var p=Position.page(source);target=$(target);var delta=[0,0];var parent=null; if(Element.getStyle(target,'position')=='absolute'){parent=Position.offsetParent(target);delta=Position.page(parent);}if(parent==document.body){delta[0] -=document.body.offsetLeft;delta[1] -=document.body.offsetTop;}if(options.setLeft) target.style.left=(p[0]-delta[0]+options.offsetLeft)+'px';if(options.setTop) target.style.top=(p[1]-delta[1]+options.offsetTop)+'px';if(options.setWidth) target.style.width=source.offsetWidth+'px';if(options.setHeight) target.style.height=source.offsetHeight+'px';},absolutize:function(element){element=$(element);if(element.style.position=='absolute') return;Position.prepare();var offsets=Position.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';;},relativize:function(element){element=$(element);if(element.style.position=='relative') return;Position.prepare();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;}};if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){Position.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 [valueL,valueT];}};/*-effects.js*/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(element,{fontSize:(percent/100)+'em'});if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0);};Element.getOpacity=function(element){var opacity;if(opacity=Element.getStyle(element,'opacity')) return parseFloat(opacity);if(opacity=(Element.getStyle(element,'filter')||'').match(/alpha\(opacity=(.*)\)/)) if(opacity[1]) return parseFloat(opacity[1])/100;return 1.0;};Element.setOpacity=function(element,value){element=$(element);if(value==1){Element.setStyle(element,{opacity:(/Gecko/.test(navigator.userAgent)&&!/Konqueror|Safari|KHTML/.test(navigator.userAgent))?0.999999:null});if(/MSIE/.test(navigator.userAgent)) Element.setStyle(element,{filter:Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')});}else{if(value<0.00001) value=0;Element.setStyle(element,{opacity:value});if(/MSIE/.test(navigator.userAgent)) Element.setStyle(element,{filter:Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'') + 'alpha(opacity='+value*100+')'});}};Element.getInlineOpacity=function(element){return $(element).style.opacity||'';};Element.childrenWithClassName=function(element,className,findFirst){var classNameRegExp=new RegExp("(^|\\s)"+className+"(\\s|$)");var results=$A($(element).getElementsByTagName('*'))[findFirst?'detect':'select']( function(c){return(c.className&&c.className.match(classNameRegExp));});if(!results) results=[];return results;};Element.forceRerendering=function(element){try{element=$(element);var n=document.createTextNode(' ');element.appendChild(n);element.removeChild(n);}catch(e){}};Array.prototype.call=function(){var args=arguments;this.each(function(f){f.apply(this,args)});};var Effect={tagifyText:function(element){var tagifyStyle='position:relative';if(/MSIE/.test(navigator.userAgent)) tagifyStyle+=';zoom:1';element=$(element);$A(element.childNodes).each( function(child){if(child.nodeType==3){child.nodeValue.toArray().each( function(character){element.insertBefore( Builder.node('span',{style:tagifyStyle},character==' '?String.fromCharCode(160):character),child);});Element.remove(child);}});},multiple:function(element,effect){var elements;if(((typeof element=='object')||(typeof element=='function'))&&(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);}};var Effect2=Effect;Effect.Transitions={};Effect.Transitions.linear=Prototype.K;Effect.Transitions.sinoidal=function(pos){return(-Math.cos(pos*Math.PI)/2)+0.5;};Effect.ScopedQueue=Class.create();Object.extend(Object.extend(Effect.ScopedQueue.prototype,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=(typeof effect.options.queue=='string')?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 '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),40);},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();this.effects.invoke('loop',timePos);}});Effect.Queues={instances:$H(),get:function(queueName){if(typeof queueName!='string') return queueName;if(!this.instances[queueName]) this.instances[queueName]=new Effect.ScopedQueue();return this.instances[queueName];}};Effect.Queue=Effect.Queues.get('global');Effect.DefaultOptions={transition:Effect.Transitions.sinoidal,duration:1.0,fps:25.0,sync:false,from:0.0,to:1.0,delay:0.0,queue:'parallel'};Effect.Base=function(){};Effect.Base.prototype={position:null,start:function(options){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.event('beforeStart');if(!this.options.sync) Effect.Queues.get(typeof this.options.queue=='string'?'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.finishOn-this.startOn);var frame=Math.round(pos*this.options.fps*this.options.duration);if(frame>this.currentFrame){this.render(pos);this.currentFrame=frame;}}},render:function(pos){if(this.state=='idle'){this.state='running';this.event('beforeSetup');if(this.setup) this.setup();this.event('afterSetup');}if(this.state=='running'){if(this.options.transition) pos=this.options.transition(pos);pos *=(this.options.to-this.options.from);pos+=this.options.from;this.position=pos;this.event('beforeUpdate');if(this.update) this.update(pos);this.event('afterUpdate');}},cancel:function(){if(!this.options.sync) Effect.Queues.get(typeof this.options.queue=='string'?'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(){return '#<Effect:'+$H(this).inspect()+',options:'+$H(this.options).inspect()+'>';}};Effect.Opacity=Class.create();Object.extend(Object.extend(Effect.Opacity.prototype,Effect.Base.prototype),{initialize:function(element){this.element=$(element);if(/MSIE/.test(navigator.userAgent)&&(!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.Highlight=Class.create();Object.extend(Object.extend(Effect.Highlight.prototype,Effect.Base.prototype),{initialize:function(element){this.element=$(element);var options=Object.extend({startcolor:'#ffff99'},arguments[1]||{});this.start(options);},setup:function(){if(this.element.getStyle('display')=='none'){this.cancel();return;}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+(Math.round(this._base[i]+(this._delta[i]*position)).toColorPart());}.bind(this))});},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}));}});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();effect.element.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);effect.element.show();}},arguments[1]||{});return new Effect.Opacity(element,options);};/*controls.js */var Autocompleter={};Autocompleter.Base=function(){};Autocompleter.Base.prototype={baseInitialize:function(element,update,options){this.element=$(element);this.update=$(update);this.hasFocus=false;this.changed=false;this.active=false;this.index=0;this.entryCount=0;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);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,"keypress",this.onKeyPress.bindAsEventListener(this));},show:function(){if(Element.getStyle(this.update,'display')=='none') this.options.onShow(this.element,this.update);if(!this.iefix&&(navigator.appVersion.indexOf('MSIE')>0)&&(navigator.userAgent.indexOf('Opera')<0)&&(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();if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event);return;case Event.KEY_DOWN:this.markNext();this.render();if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event);return;}else if(event.keyCode==Event.KEY_TAB||event.keyCode==Event.KEY_RETURN|| (navigator.appVersion.indexOf('AppleWebKit')>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=document.getElementsByClassName(this.options.select,selectedElement)||[];if(nodes.length>0) value=Element.collectTextNodes(nodes[0],this.options.select);}else value=Element.collectTextNodesIgnoreClass(selectedElement,'informal');var lastTokenPos=this.findLastToken();if(lastTokenPos!=-1){var newValue=this.element.value.substr(0,lastTokenPos+1);var whitespace=this.element.value.substr(lastTokenPos+1).match(/^\s+/);if(whitespace) newValue+=whitespace[0];this.element.value=newValue+value;}else{this.element.value=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.firstChild);if(this.update.firstChild&&this.update.firstChild.childNodes){this.entryCount=this.update.firstChild.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;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;if(this.getToken().length>=this.options.minChars){this.startIndicator();this.getUpdatedChoices();}else{this.active=false;this.hide();}},getToken:function(){var tokenPos=this.findLastToken();if(tokenPos!=-1) var ret=this.element.value.substr(tokenPos+1).replace(/^\s+/,'').replace(/\s+$/,'');else var ret=this.element.value;return /\n/.test(ret)?'':ret;},findLastToken:function(){var lastTokenPos=-1;for(var i=0;i<this.options.tokens.length;i++){var thisTokenPos=this.element.value.lastIndexOf(this.options.tokens[i]);if(thisTokenPos>lastTokenPos) lastTokenPos=thisTokenPos;}return lastTokenPos;}};Ajax.Autocompleter=Class.create();Object.extend(Object.extend(Ajax.Autocompleter.prototype,Autocompleter.Base.prototype),{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(){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.Local.prototype=Object.extend(new 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();Ajax.InPlaceEditor.defaultHighlightColor="#FFFF99";Ajax.InPlaceEditor.prototype={initialize:function(element,url,options){this.url=url;this.element=$(element);this.options=Object.extend({okButton:true,okText:"确定",cancelLink:true,cancelText:"取消",savingText:"保存中...",clickToEditText:"点击修改",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:'载入中...',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);Event.observe(this.element,'click',this.onclickListener);Event.observe(this.element,'mouseover',this.mouseoverListener);Event.observe(this.element,'mouseout',this.mouseoutListener);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);}},enterEditMode:function(evt){if(this.saving) return;if(this.editing) return;this.editing=true;this.onEnterEditMode();if(this.options.externalControl){Element.hide(this.options.externalControl);}Element.hide(this.element);this.createForm();this.element.parentNode.insertBefore(this.form,this.element);if(!this.options.loadTextURL) Field.scrollFreeActivate(this.editField);if(evt){Event.stop(evt);}return false;},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){var br=document.createElement("br");this.form.appendChild(br);}if(this.options.okButton){okButton=document.createElement("input");okButton.type="submit";okButton.value=this.options.okText;okButton.className='editor_ok_button';this.form.appendChild(okButton);}if(this.options.cancelLink){cancelLink=document.createElement("a");cancelLink.href="#";cancelLink.appendChild(document.createTextNode(this.options.cancelText));cancelLink.onclick=this.onclickCancel.bind(this);cancelLink.className='editor_cancel';this.form.appendChild(cancelLink);}},hasHTMLLineBreaks:function(string){if(!this.options.handleLineBreaks) return false;return string.match(/<br/i)||string.match(/<p>/i);},convertHTMLLineBreaks:function(string){return string.replace(/<br>/gi,"\n").replace(/<br\/>/gi,"\n").replace(/<\/p>/gi,"\n").replace(/<p>/gi,"");},createEditField:function(){var text;if(this.options.loadTextURL){text=this.options.loadingText;}else{text=this.getText();}var obj=this;if(this.options.rows==1&&!this.hasHTMLLineBreaks(text)){this.options.textarea=false;var textField=document.createElement("input");textField.obj=this;textField.type="text";textField.name="value";textField.value=text;textField.style.backgroundColor=this.options.highlightcolor;textField.className='editor_field';var size=this.options.size||this.options.cols||0;if(size!=0) textField.size=size;if(this.options.submitOnBlur) textField.onblur=this.onSubmit.bind(this);this.editField=textField;}else{this.options.textarea=true;var textArea=document.createElement("textarea");textArea.obj=this;textArea.name="value";textArea.value=this.convertHTMLLineBreaks(text);textArea.rows=this.options.rows;textArea.cols=this.options.cols||40;textArea.className='editor_field';if(this.options.submitOnBlur) textArea.onblur=this.onSubmit.bind(this);this.editField=textArea;}if(this.options.loadTextURL){this.loadExternalText();}this.form.appendChild(this.editField);},getText:function(){return this.element.innerHTML;},loadExternalText:function(){Element.addClassName(this.form,this.options.loadingClassName);this.editField.disabled=true;new Ajax.Request( this.options.loadTextURL,Object.extend({asynchronous:true,onComplete:this.onLoadedExternalText.bind(this)},this.options.ajaxOptions) );},onLoadedExternalText:function(transport){Element.removeClassName(this.form,this.options.loadingClassName);this.editField.disabled=false;this.editField.value=transport.responseText.stripTags();Field.scrollFreeActivate(this.editField);},onclickCancel:function(){this.onComplete();this.leaveEditMode();return false;},onFailure:function(transport){this.options.onFailure(transport);if(this.oldInnerHTML){this.element.innerHTML=this.oldInnerHTML;this.oldInnerHTML=null;}return false;},onSubmit:function(){var form=this.form;var value=this.editField.value;this.onLoading();if(this.options.evalScripts){new Ajax.Request( this.url,Object.extend({parameters:this.options.callback(form,value),onComplete:this.onComplete.bind(this),onFailure:this.onFailure.bind(this),asynchronous:true,evalScripts:true},this.options.ajaxOptions));}else{new Ajax.Updater({success:this.element, failure:null},this.url,Object.extend({parameters:this.options.callback(form,value),onComplete:this.onComplete.bind(this),onFailure:this.onFailure.bind(this)},this.options.ajaxOptions));}if(arguments.length>1){Event.stop(arguments[0]);}return false;},onLoading:function(){this.saving=true;this.removeForm();this.leaveHover();this.showSaving();},showSaving:function(){this.oldInnerHTML=this.element.innerHTML;this.element.innerHTML=this.options.savingText;Element.addClassName(this.element,this.options.savingClassName);this.element.style.backgroundColor=this.originalBackground;Element.show(this.element);},removeForm:function(){if(this.form){if(this.form.parentNode) Element.remove(this.form);this.form=null;}},enterHover:function(){if(this.saving) return;this.element.style.backgroundColor=this.options.highlightcolor;if(this.effect){this.effect.cancel();}Element.addClassName(this.element,this.options.hoverClassName)},leaveHover:function(){if(this.options.backgroundColor){this.element.style.backgroundColor=this.oldBackground;}Element.removeClassName(this.element,this.options.hoverClassName); if(this.saving) return;this.effect=new Effect.Highlight(this.element,{startcolor:this.options.highlightcolor,endcolor:this.options.highlightendcolor,restorecolor:this.originalBackground});},leaveEditMode:function(){Element.removeClassName(this.element,this.options.savingClassName);this.removeForm();this.leaveHover();this.element.style.backgroundColor=this.originalBackground;Element.show(this.element);if(this.options.externalControl){Element.show(this.options.externalControl);}this.editing=false;this.saving=false;this.oldInnerHTML=null;this.onLeaveEditMode();},onComplete:function(transport){this.leaveEditMode();this.options.onComplete.bind(this)(transport,this.element);},onEnterEditMode:function(){},onLeaveEditMode:function(){},dispose:function(){if(this.oldInnerHTML){this.element.innerHTML=this.oldInnerHTML;}this.leaveEditMode();Event.stopObserving(this.element,'click',this.onclickListener);Event.stopObserving(this.element,'mouseover',this.mouseoverListener);Event.stopObserving(this.element,'mouseout',this.mouseoutListener);if(this.options.externalControl){Event.stopObserving(this.options.externalControl,'click',this.onclickListener);Event.stopObserving(this.options.externalControl,'mouseover',this.mouseoverListener);Event.stopObserving(this.options.externalControl,'mouseout',this.mouseoutListener);}}};Ajax.InPlaceCollectionEditor=Class.create();Object.extend(Ajax.InPlaceCollectionEditor.prototype,Ajax.InPlaceEditor.prototype);Object.extend(Ajax.InPlaceCollectionEditor.prototype,{createEditField:function(){if(!this.cached_selectTag){var selectTag=document.createElement("select");var collection=this.options.collection||[];var optionTag;collection.each(function(e,i){optionTag=document.createElement("option");optionTag.value=(e instanceof Array)?e[0]:e;if(this.options.value==optionTag.value) optionTag.selected=true;optionTag.appendChild(document.createTextNode((e instanceof Array)?e[1]:e));selectTag.appendChild(optionTag);}.bind(this));this.cached_selectTag=selectTag;}this.editField=this.cached_selectTag;if(this.options.loadTextURL) this.loadExternalText();this.form.appendChild(this.editField);this.options.callback=function(form,value){return "value="+encodeURIComponent(value);}}});
/*-scriptaculous.js*/
// jx(url,parameters,method,callback,ysb)
function jx(_0,_1,_2,_3,_4){
	if(typeof(_0)=="undefined") return false;
	_1=typeof(_1)=="undefined"?"":_1;
	_2=typeof(_2)=="undefined"?"get":_2.toLowerCase();
	_3=typeof(_3)=="undefined"?null:(typeof(_3)=="string"?$(_3):_3);
	_4=typeof(_4)=="undefined"?1:_4;
	var opt={};
	opt.method=_2;
	if(_2=="get") opt.parameters=_1;
	else opt.postBody=_1;
	if(_4==1) opt.onSuccess=_3;
	if(_4==1){var ajax=new Ajax.Request(_0,opt);}
	else {var ajax=new Ajax.Updater(_3,_0,opt);
	}
}
function WindowCanva(){ 
	this.w=0;
	this.h=0;
	return this.update();
}
WindowCanva.prototype.update=function(){
	var d=document;
	this.w=(window.innerWidth)?window.innerWidth:(d.documentElement&&d.documentElement.clientWidth)?d.documentElement.clientWidth:d.body.clientWidth;
	this.h=(window.innerHeight)?window.innerHeight:(d.documentElement&&d.documentElement.clientHeight)?d.documentElement.clientHeight:d.body.clientHeight;
	return this;
};
function PageCanva(){
	this.win=new WindowCanva();
	this.w=0;
	this.h=0;
	return this.update();
}
PageCanva.prototype.update=function(){
	var d=document;
	this.w=(window.innerWidth&&window.scrollMaxX)?window.innerWidth + window.scrollMaxX:(d.body.scrollWidth>d.body.offsetWidth)?d.body.scrollWidth:d.body.offsetWidth;
	this.h=(window.innerHeight&&window.scrollMaxY)?window.innerHeight + window.scrollMaxY:(d.body.scrollHeight>d.body.offsetHeight)?d.body.scrollHeight:d.body.offsetHeight;
	this.win.update();
	if (this.w<this.win.w) this.w=this.win.w;
	if (this.h<this.win.h) this.h=this.win.h;
	return this;
};
function PagePoz(){
	this.x=0;this.y=0;return this.update();
}
PagePoz.prototype.update=function(){
	var d=document;
	this.x=(window.pageXOffset)?window.pageXOffset:(d.documentElement&&d.documentElement.scrollLeft)?d.documentElement.scrollLeft:(d.body)?d.body.scrollLeft:0;
	this.y=(window.pageYOffset)?window.pageYOffset:(d.documentElement&&d.documentElement.scrollTop)?d.documentElement.scrollTop:(d.body)?d.body.scrollTop:0;
	return this;
};
function Browser(){
	var ua=navigator.userAgent;
	this.isMSIE=(navigator.appName=="Microsoft Internet Explorer");
	this.isMSIE5=this.isMSIE&&(ua.indexOf('MSIE 5') != -1);
	this.isMSIE5_0=this.isMSIE&&(ua.indexOf('MSIE 5.0') != -1);
	this.isGecko=ua.indexOf('Gecko') != -1;
	this.isSafari=ua.indexOf('Safari') != -1;
	this.isOpera=ua.indexOf('Opera') != -1;
	this.isMac=ua.indexOf('Mac') != -1;
	this.isNS7=ua.indexOf('Netscape/7') != -1;
	this.isNS71=ua.indexOf('Netscape/7.1') != -1;
	this.getCursorX=function (e){
		return e.pageX||(e.clientX +(document.documentElement.scrollLeft||document.body.scrollLeft));
	}
	this.getCursorY=function (e){
	 return e.pageY||(e.clientY +(document.documentElement.scrollTop||document.body.scrollTop));
	}
	this.getEventSrc=function (e){
		e=window.event?window.event:e;
		var elm=e.srcElement? e.srcElement:e.target;
	
	}
	this.winNums=0;
	this.curIndex=100;
	this.wins=new Array();
	this.regWin=function (win){
		if(win){
			this.winNums++;
			this.wins[win.getId()]=win;
		}
	}
	this.unRegWin=function (winId){
		try{
			this.winNums--;
			this.wins[winId]=null;
			this.curIndex--;
		}catch(ex){alert(ex)}
	}
	this.hasWin=function (winId){
		try{
		if(typeof(this.wins[winId])=="undefined"){ return false;}
		else if(this.wins[winId]==null){return false;}
		 return true;
		}catch(ex){}
	}
	this.getNextIndex=	function (){return ++this.curIndex;}
	this.cancelEvent=function (e) {
		if (this.isMSIE) {
			e.returnValue=false;
			e.cancelBubble=true;
		} else
			e.preventDefault();
	};
	this.getWindowCenter=function(){
		var _page= new PageCanva();
		var _pos= new PagePoz();
		_y=parseInt(_pos.y + (_page.win.h / 2));
		_x=parseInt(_pos.x+(_page.win.w / 2));
		return{x:_x,y:_y};
	}
	this.getEventSrc=function(e){
		e=window.event?window.event:e;
		var elm=e.srcElement?e.srcElement:e.target;
		return elm;
	
	}	
	this.newwin=function(surl){
		var w=window.open(surl);
		if(!w){alert("您的浏览器屏蔽了弹出窗口,您需要手动打开此URL地址:"+surl);}
	}
	this.setCookie=function (name,value){
		expires=new Date();
		expires.setTime(expires.getTime()+(86400*365));
		document.cookie=name+"="+escape(value)+"; expires="+expires.toGMTString()+"; path=/";
	}
	this.getCookie=function (name){
		var start=document.cookie.indexOf(name);
		var end=document.cookie.indexOf(";",start);
		return start==-1?null:unescape(document.cookie.substring(start+name.length+1,(end>start?end:document.cookie.length)));
	}
	
	this.getPos=function(el) {
	// has to be part of document to have pageXY
    if (el.offsetParent === null || Element.getStyle(el, 'display') == 'none') {
    	return false;
	}
	var parentNode = null;
	var pos = [];
	var box;
	if (el.getBoundingClientRect) { // IE
		box = el.getBoundingClientRect();
		var doc = document;
		// might be in a frame, need to get its scroll
		var scrollTop = Math.max(doc.documentElement.scrollTop, doc.body.scrollTop);
		var scrollLeft = Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft);
		return [box.left + scrollLeft, box.top + scrollTop];
		}
		else { // safari, opera, & gecko
			pos = [el.offsetLeft, el.offsetTop];
			parentNode = el.offsetParent;
			if (parentNode != el) {
				while (parentNode) {
					pos[0] += parentNode.offsetLeft;
					pos[1] += parentNode.offsetTop;
					parentNode = parentNode.offsetParent;
				}
			}
			if (isSafari && Element.getStyle(el, 'position') == 'absolute' ) { // safari doubles in some cases
				pos[0] -= document.body.offsetLeft;
				pos[1] -= document.body.offsetTop;
			}
		}
		if (el.parentNode) { parentNode = el.parentNode; }
        else { parentNode = null; }
        while (parentNode && parentNode.tagName.toUpperCase() != 'BODY' && parentNode.tagName.toUpperCase() != 'HTML'){ 
			if (Element.getStyle(parentNode, 'display') != 'inline') { // work around opera inline scrollLeft/Top bug
				pos[0] -= parentNode.scrollLeft;
				pos[1] -= parentNode.scrollTop;
			}
            if (parentNode.parentNode) { parentNode = parentNode.parentNode; }
            else { parentNode = null; }
		}
		return pos;
}
	this.getPosX=function(el){
		return this.getPos(el)[0];
	}

	this.getPosY=function(el){
		return this.getPos(el)[1];
	}
}

var browser=new Browser();
function showMsg(msg){
	msgDlg.show(msg);
}
function hidMsg(){
	oDiv=$("msger");
	if(oDiv){
		oDiv.style.display="none";
		document.body.removeChild(oDiv.parentNode);
		hidCover();
	}
}
function showCover(){
	oDivCover=$("divCover");
	if(!oDivCover){ 
		oDivCover=document.createElement("div");
		oDivCover.setAttribute("id","divCover");
		document.body.scroll="no";
		document.body.appendChild(oDivCover);
	}
	var _page=new PageCanva();
	with(oDivCover.style){
		position="absolute";
		left=0;
		top=0;
		display="block";
		zIndex=99;
		height=_page.h+"px";
		width=_page.w+"px";
		if ((!browser.isSafari)&&(!browser.isOPera)) background="#181818";	
		else background="#F0F0F0";
		backgroundImage="url(/images/overlay.png)"
		filter="alpha(opacity=60)";
		opacity=40/100;
		MozOpacity=40/100;
	}
	if(browser.isMSIE){
		var arrSelect=document.getElementsByTagName("select");
		for (var i=0; i<arrSelect.length; i++)	arrSelect[i].style.visibility="hidden";
	}
	oDivCover.onselectstart=function(){return false;};
	oDivCover.ondragstart=function(){return false;};
}
function hidCover(){
	if(browser.isMSIE){
		var arrSelect=document.getElementsByTagName("select");
		for (var i=0; i<arrSelect.length; i++)	arrSelect[i].style.visibility="visible";
	}
	document.body.scroll="auto";
	objCover=$("divCover");
	if(typeof(objCover)!="undefined"){
		objCover.style.display="none";
	}
}
function showLoading(msg){
sl(msg);
}
function sl(m){
	oDiv=document.createElement("div");
	document.body.appendChild(oDiv);
	oDiv.setAttribute("id","divLoading");
	with(oDiv.style){
		position="absolute";
		left=parseInt(browser.getWindowCenter().x)-100+"px";
		top=parseInt(browser.getWindowCenter().y)-20+"px";
		zIndex=99;
		width="200";
		height="25";
		border="1px solid #0066CC";
		fontSize="14px";
		fontWeight="bold";
		color= "#0066CC";
		overflow= "visible";
		padding="5px 2px";
		textAlign= "center";
		backgroundColor="#FFFFAE";
		display="block";
	}
	oDiv.innerHTML='<img src="/images/spinner.gif" width="16" height="16" border="0" />发送请求中......';
	if(m!=undefined) oDiv.innerHTML=oDiv.innerHTML.replace("发送请求中......",m);
	
}
function hl(){
		oDiv=$("divLoading");
		oDiv.style.display="none";
		document.body.removeChild(oDiv);
}
function hidLoading(){
hl();
}
function gp(d,u){
	if(u=="undefined") d="divMain";
	showLoading();
    var myAjax=new Ajax.Updater(d, u, {method:'get',onComplete:function(){hidLoading();},onCreate:function(){showLoading()}});
	return false;
}
var Window=function(sName,sTitle,sText,iLeft,iTop,iWidth,iHeight){
	this._title=(sTitle=='undefined')?"window title":sTitle;
	this._text=(sText=='undefined')?"":sText;
	this._miniShow=false;
	this._maxShow=false;
	this._closeShow=true;
	this._moving=false;
	this._dragobj=null;
	this.onClose=null;
	this._zIndex=browser.getNextIndex();
	this._name=(sName=='undefined')?'win'+'_'+this._zIndex.toString():sName;
	this._id=this._name;
	this._top=(iTop=="undefined")?0:iTop;
	this._left=(iLeft=="undefined")?0:iLeft;
	this._width=(iWidth=="undefined")?200:iWidth;
	this._height=(iHeight=="undefined")?300:iHeight;
	this._template='<iframe id="'+this._id+'_msk1" style="width:'+this._width+'px;height:'+this._height+'px;position:absolute;top:0px; left:0px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0"></iframe>'+
  '<div id="'+this._id+'_msk2" style="background-color:#FFFFFF;float:left;width:'+this._width+'px;height:'+this._height+'px;position:absolute;top:0px; left:0px;padding:1px;border:1px solid #000000;" onclick="javascript:browser.wins[\''+this._id+'\'].moveToTop()">'+
        '<div id="'+this._id+'_titleBar" style="background-color:#3D77CB;width:'+this._width+';height:23px;" onselectstart="return false;" unselectable="on" oncontextmenu="return false;">'+
            '<div id="'+this._id+'_caption" style="width:'+(this._width-44).toString()+'px;cursor:default; height:21px;float:left;font-weight:bold;font-size:12px;margin:1px;color:#FFFFFF">'+this._title+'</div>'+
              '<div style="width:40px;height:21px;float:right;text-align:right;"><img id="'+this._id+'_btnclose" style="cursor:pointer'+(this._closeShow?"":"display:none")+'"  src="../../pic/close.gif" onclick="browser.wins[\''+this._id+'\'].hide()" border="0" /></div>'+
          '</div>'+
          '<div id="'+this._id+'_container" style="background-color:#FFFFFF;width:'+(this._width)+'px; height:'+(this._height-21)+'px;font-size:12px;overflow:auto;text-align:center;float:left;">'+this._text+'</div>'+
  '</div>';
}
	Window.prototype.recGetPart=function (root,id){
		if(!root||!id){return;}
		if(!root.hasChildNodes()){return;}
		var oFC=root.firstChild;
		while(oFC){
			if(oFC.id==id){return oFC;}
			var onfc=this.recGetPart(oFC,id);
			if(onfc){return onfc;}
			oFC=oFC.nextSibling;
		}
		return null;
	}
	Window.prototype.getPart=function (root,id){
		var oRoot=document.getElementById(root);
		if(oRoot){return this.recGetPart(oRoot,id);}
	}
	Window.prototype.show=function (){
		showCover();
		obj=$(this._id);
		if(!obj){
			obj=document.createElement("div");
			obj.setAttribute("id",this._id);
			document.body.appendChild(obj);
		}
		
		with(obj.style){
			display="none";
			position="absolute";
			top=this._top+"px";
			left=this._left+"px";
			width=this._width+"px";
			height=this._height+"px";
			zIndex=this._zIndex;
			display="";
			//style.float="left";
		}
		obj.innerHTML=this._template;
		browser.regWin(this);
	}
	
	Window.prototype.hide=function (flag){
		browser.unRegWin(this._id);
		if(browser.winNums<=0){hidCover();}
		this.getElement().style.display="none";
		document.body.removeChild(this.getElement());
		if(typeof(flag)=="undefined"||flag!=1) {return;};
		switch(typeof(this.onClose)) {
			case "string":
				eval(this.onClose);
				break;
			case "function":
				this.onClose.call();
				break;
		}
	}
	Window.prototype.getElementById=function(sId){
		return document.getElementById(this._id+"_"+sId);
	}
	Window.prototype.setContent=function(sValue){
		var o=this.getElementById("container");
		o.innerHTML=sValue;
	}
	Window.prototype.getId=function(){
		return this._id;	
	}
	Window.prototype.moveToTop=function(){
		this._zIndex=browser.getNextIndex();
		this.getElement().style.zIndex=this._zIndex;
	}
	Window.prototype.getElement=function(){
		try{return document.getElementById(this._id)} catch(ex){};	
	}
var msgDlg={
	created:false,
	show:function(msg,closecb){
		if(!browser.hasWin("msgbox_1")&&browser.hasWin("msgbox_1")!="undefined"){
			x=browser.getWindowCenter().x-126;
			y=browser.getWindowCenter().y-126;
			x=x<0?0:x;y=y<0?0:y;
			frmid=browser.getNextIndex();
			//frmname="msgbox_"+frmid;
			frmname="msgbox_1";
			content='<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td height="80px" align="center">'+msg+'</td></tr><tr><td height="20px" align="center"><input type="button" id="'+frmname+'_ok" name="'+frmname+'_ok" value=" 确 认 " style="font-size:12px;height:21;background-color:#ece9d8;border-width:1px;" onclick="browser.wins[\''+frmname+'\'].hide();"/></td></tr></table>';
			var msger=new Window(frmname,"系统提示",content,x,y,200,150);
			//browser.regWin(msger);this.created=true;
			if(typeof(closecb)!='undefined') try{msger.onClose=closecb;}catch(ex){}
			try{msger.show();document.getElementById(frmname+"_ok").focus();}catch(ex){}
		}
		else{
			browser.wins["msgbox_1"].moveToTop();
			this.setContent(msg);
			this.getElementById("ok").focus();
			}
			
		}
	}
var loginDlg={
	onClose:false,
	show:function(x,y,closecb){
		var t='<form style="display:inline"><table width="100%" border="0" cellspacing="1" cellpadding="1" align="center"><tr><td width="55" style="font-size:12px">用户名:</td><td width="138"><input name="ldlg_username" type="text" id="ldlg_username" size="21" maxlength="20"></td></tr><tr><td style="font-size:12px">密&nbsp; 码:</td><td align="left"><input name="ldlg_password" type="password" id="ldlg_password" size="21" maxlength="20"></td></tr><tr><td colspan="2" align="center"><input type="button" name="Submit" value="登录" onclick="return dologin();" style="font-size:12px"><input type="button" name="Submit" value="注册" onclick="window.location.href=\'http://www.mimimama.com/register.php\'" style="font-size:12px"></td></tr></table></form>';
  		
		if(!browser.hasWin("loginfrm1")&&browser.hasWin("loginfrm1")!="undefined"){
			if(!x) x=browser.getWindowCenter().x-126;
			if(!y) y=browser.getWindowCenter().y-126;
			x=x<0?0:x;y=y<0?0:y;
			var loginfrm=new Window("loginfrm1","用户登录",t,x,y,250,150);
			if(typeof(closecb)!='undefined') loginfrm.onClose=closecb;
			loginfrm.show();
		}
		else {browser.wins["loginfrm1"].moveToTop()}
	},
	close:function(flag){
		browser.wins["loginfrm1"].hide();
		hidCover();
		if(typeof(flag)!="undefined"&&flag==1) {
			switch(typeof(this.onClose)) {
				case "string":
					eval(this.onClose);break;
				case "function":
					this.onClose.call();break;
			}
		}
	}
}
var confirmDlg={
	onClose:null,
	show:function(msg,closecb){
		var t='<table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0"><tr><td style="color:#f00">'+msg+'</td></tr><tr><td height="20px"><div align="center"><button name="confirm" onclick="confirmDlg.close(1)" style="font-size:12px"> 确 认 </button><button style="font-size:12px" name="cancel" onclick="confirmDlg.close(0)">取消</button></div></td></tr></table>';
		if(!browser.hasWin("confirmfrm1")){
			x=browser.getWindowCenter().x-126;
			y=browser.getWindowCenter().y-126;
			x=x<0?0:x;y=y<0?0:y;
			showCover();
			var confirmfrm=new Window("confirmfrm1","系统提示",t,x,y,248,120);
			if(typeof(closecb)!='undefined') {confirmfrm.onClose=closecb;this.onClose=closecb};
			confirmfrm.show();
		}
		else {browser.wins["confirmfrm1"].moveToTop()}
	},
	close:function(flag){
		browser.wins["confirmfrm1"].hide();
		hidCover();
		if(typeof(flag)!="undefined"&&flag==1) {
		
		switch(typeof(this.onClose)) {
			case "string":
				eval(this.onClose);
				break;
			case "function":
				this.onClose.call();
				break;
		}}
	}
}
var uploadDlg={
	onClose:null,
	show:function(closecb,pa,arg2){
		var pa=pa;
		if(pa=="undefined") pa=1;
		if(arg2=="undefined") arg2=0;
		//alert(pa);
		var t='<iframe src="/upload.php?pa='+pa+'&id='+arg2+'" allowtransparency="yes" callback="'+closecb+'" scrolling="auto" frameborder="0" width="280" height="220"></iframe>';
		if(!browser.hasWin("uploadfrm1")){
			x=browser.getWindowCenter().x-126;
			y=browser.getWindowCenter().y-126;
			x=x<0?0:x;y=y<0?0:y;
			var uploadfrm=new Window("uploadfrm1","上传文件",t,x,y,310,260);
			if(typeof(closecb)!='undefined') {uploadfrm.onClose=closecb;this.onClose=closecb};
			uploadfrm.show();
		}
		else {browser.wins["uploadfrm1"].moveToTop()}
	},
	close:function(flag){
		browser.wins["uploadfrm1"].hide();
		
		if(typeof(flag)!="undefined"&&flag==1) {
		
		switch(typeof(this.onClose)) {
			case "string":
				eval(this.onClose);
				break;
			case "function":
				this.onClose.call();
				break;
		}}
	}
}
function dologin(){
	u=$("ldlg_username").value;
	p=$("ldlg_password").value;
	
	var par="action=chk&u="+u+"&p="+p;
	var opt={method:'post',
		postBody:par,
		onSuccess:function(t) {
			rt=t.responseText;
			if(rt=="-2") showMsg("对不起,您好像忘了填写用户名或密码了哦!");
			if(rt=="-1") showMsg("对不起,您填写的资料中包含系统不允许的字串.");
			else if(rt=="0") showMsg("用户名或密码错误,请检查.");
			if(rt=="1") location.reload();	
		},
		onComplete:function(){hidLoading();},
		onCreate:function(){showLoading();}
	
	};
	new Ajax.Request("login_do.php",opt);
}
var minfos=[];
var msgMgr={
	onClose:null,
	show:function(msg,fromid,nickname,type){
		frmid=browser.getNextIndex();
		type=typeof(type)=="undefined"?0:parseInt(type);
		frmname="msger"+frmid;
		msg=msg.replace(/\{x30\}/ig,"&");
		var t='<div id="userdetail_'+frmid+'" style="height:110px"></div><table width="226" border="0" cellspacing="0" cellpadding="0"><tr><td colspan="2">'+(type==0?('<textarea name="msgcontent" cols="30" rows="6" style="border:1px dashed #CCCCCC;" readonly="readonly" wrap="virtual" id="msgcontent">'+msg+'</textarea>'):("<div style=\"border:1px dashed #CCCCCC;width:270px;height:145px;text-align:left\"  wrap=\"virtual\">"+msg+"</div>"))+'</td></tr><tr><td>'+(type==0?'<input style="padding:2 4 0 4;font-size:12px;background-color:#ece9d8;border-width:1;" type="button" name="Submit" value=" 回 复 " onclick="msgMgr.close(\''+frmname+'\');msgMgr.send('+fromid+',\''+nickname+'\')"/ accesskey="R" title="ALT+R回复">':"")+'</td><td align="right"><input style="padding:2 4 0 4;font-size:12px;background-color:#ece9d8;border-width:1;" type="button" name="Submit2" value=" 关 闭 " accesskey="C" title="ALT+C关闭"  onclick="msgMgr.close(\''+frmname+'\');"/></td></tr></table>';
			x=browser.getWindowCenter().x-145;
			y=browser.getWindowCenter().y-150;
			x=x<0?0:x;y=y<0?0:y;
			msgtitle=(type==0?"新的消息-来自:"+nickname:"系统消息");
			var msger=new Window(frmname,msgtitle,t,x,y,290,300);
			msger.show();
			o=document.getElementById("msger");
			if(!o){
				var o=document.createElement("div");
				document.body.appendChild(o);
				o.setAttribute("id","msger");
			}
			o.style.display="none";
			o.innerHTML="<embed src=\"/images/msg.wav\" loop='0'></embed>";
			var url='/userdo.php';
			if(!minfos[fromid]){
				var pars='fid=2001&u='+fromid;
				var opt={method:'post',postBody:pars,onSuccess:function(t) {rt=t.responseText;if(rt=="-1"){msgMgr.close(frmname);loginDlg.show();return;}else{minfos[fromid]=rt;$('userdetail_'+frmid).innerHTML=minfos[fromid];}}};
			var myajax=new Ajax.Request(url,opt);
			}
			else{$('userdetail_'+frmid).innerHTML=minfos[fromid]}
	},
	close:function(frmid){
			o=document.getElementById("msger");
			if(o){
				o.parentNode.removeChild(o);
			}
		browser.wins[frmid].hide();
		
	},
	send:function(toid,nickname){
		frmid=browser.getNextIndex();
		frmname="msger_send_"+frmid;
		var t='<div id="userdetail_'+frmid+'" style="height:110px;border-bottom:solid 1px #cccccc;margin-top:2px;margin-bottom:2px;"></div><table width="226" align="center" border="0" cellspacing="0" cellpadding="0"><tr><td colspan="2"><textarea name="msgcontent" cols="35" rows="7" style="border:1px dashed #CCCCCC;font-size:12px;" wrap="virtual" id="msgcontent_'+frmid+'" onkeydown="function quickpost(event){if((event.ctrlKey && event.keyCode == 13)||(event.altKey && event.keyCode == 83)){msgMgr.doSend('+toid+',$(\'msgcontent_'+frmid+'\').value);msgMgr.close(\''+frmname+'\');return false}};quickpost(event)" title="CTRL+Enter或ALT+S快速发送"></textarea></td></tr><tr><td><input style="padding:2 4 0 4;font-size:12px;background-color:#ece9d8;border-width:1px;" type="button" name="Submit2" value=" 关 闭 " accesskey="C" title="ALT+C关闭" onclick="msgMgr.close(\''+frmname+'\')"/></td<td width="109"><input style="padding:2 4 0 4;font-size:12px;background-color:#ece9d8;border-width:1px;" type="button" name="Submit" title="CTRL+Enter或ALT+S快速发送" value=" 发 送 "  onclick="msgMgr.doSend('+toid+',$(\'msgcontent_'+frmid+'\').value);msgMgr.close(\''+frmname+'\')"/></td></tr></table>';
			x=browser.getWindowCenter().x-145;
			y=browser.getWindowCenter().y-150;
			x=x<0?0:x;y=y<0?0:y;
			var msger_send=new Window(frmname,"发送消息-给:"+nickname,t,x,y,290,300);
			msger_send.show();
			var url='/userdo.php';
			//var pars='fid=2001&u='+toid;
	        if(!minfos[toid]){
				var pars='fid=2001&u='+toid;
				var opt={method:'post',postBody:pars,onSuccess:function(t) {rt=t.responseText;if(rt=="-1"){msgMgr.close(frmname);loginDlg.show();return;}else{minfos[toid]=rt;$('userdetail_'+frmid).innerHTML=minfos[toid];}}};
				new Ajax.Request(url,opt);
			}
			else{$('userdetail_'+frmid).innerHTML=minfos[toid]}
	},
	doSend:function(toid,msg){
		msg=typeof(msg)=="undefined"?"":msg.trim();
		if(msg=="") {showMsg("发送失败,消息内容为空");return false;}
		var msg=msg.replace("&","{X36}");
		var par="tid="+toid+"&t="+msg;
		var opt={method:'post',
		postBody:par,
		onSuccess:function(t) {
			rt=t.responseText;
			if(rt=="-1") showMsg("提交的用户ID不存在");
			else if(rt=="0") {loginDlg.show(browser.getWindowCenter().x-100,browser.getWindowCenter().y-100,"msgMgr.doSend("+toid+",'"+msg+"')");}
		},
		onComplete:function(){hidLoading();},
		onCreate:function(){showLoading()}
	
	};new Ajax.Request("/sendmsg.php",opt);
	}
	,
	refInfo:function (){
		var par="fid=2002";
		var opt={method:'post',
			postBody:par,
			onSuccess:function(t) {
				rt=t.responseText;
				if(rt==""||rt=="-1") return;
				var start=rt.indexOf("mymsgs");
				var end=rt.indexOf("&",start);
				msgs=start==-1?"":unescape(rt.substring(start+7,(end>start?end:rt.length)));
				var start=rt.indexOf("mailcnt");
				var end=rt.indexOf("&",start);
				mailcnt=start==-1?"":unescape(rt.substring(start+8,(end>start?end:rt.length)));
				var mailcnt=parseInt(mailcnt);
				var o=document.getElementById("newmail");
				if(mailcnt==0){
					o.innerHTML="您有 0 封新邮件";
				}
				else{o.innerHTML="<a href='mail_list.php' target='_blank' style='color:#f00'>您有 "+mailcnt+" 封新邮件</a>"}
				if (msgs.length<=0) return;			
				var amsgs=msgs.split("@|ffyd|@");
				for(i=0;i<amsgs.length;i++){
					if(amsgs[i].length>0) {
					//queue.Push(amsgs[i]);
						mymsg=amsgs[i].split("|@ffyd@|");
						try{
							var wina=window.top?window.top:window;
							wina.msgMgr.show(mymsg[2],mymsg[0],mymsg[1],mymsg[3]);
						}catch(ex){}
					}
				}
				setTimeout(msgMgr.refInfo,60000);
			},
			onComplete:function(){hidLoading();},
			onCreate:function(){showLoading()}
		};
		new Ajax.Request("/userdo.php",opt);
		
	}
}
//freinds list--IM
var IM=Object();
IM.init=function(){
	if (IM.inited) return ;
	IM._divc=document.createElement("div");
	IM._divc.setAttribute("id","divimcon");
	with(IM._divc.style){margin="2px";styleFloat="left";width="120px";border="1px solid #CCCCCC";height="450px";left="-110px";position="absolute";top="20px";backgroundColor="FFFFFF";}
	IM._divflist=document.createElement("div");
	IM._divflist.setAttribute("id","divimflist");
	IM._divc.appendChild(IM._divflist);
	with(IM._divflist.style){borderRight="1px solid #CCCCCC";styleFloat="left";width="104px";height="450px";overflowY="auto";fontSize="12px";textAlign="center";}
	IM._divctbar=document.createElement("div");
	IM._divctbar.setAttribute("id","divimctb");
	with(IM._divctbar.style){width="14px";styleFloat="left";backgroundColor="eee";fontSize="12px";height="450px";}
	IM._divc.appendChild(IM._divctbar);
	IM._divctbar.onclick=IM.show.bindAsEventListener(IM);
	document.body.appendChild(IM._divc);
	IM._divflist.innerHTML="Loading...";
	IM.inited=true;
}
IM.show=function(){
	if(parseInt(IM._divc.style.left.replace("px",""))<0) {
		IM._divc.style.left="0px";
		var opt = {
    		method: 'post',
    		postBody: '',
    		onSuccess: function(t) {
    			var ir=t.responseText;
				if(ir=="-1"){loginDlg.show();return}
				IM._divflist.innerHTML=ir;
				return;
    		}
		}
		new Ajax.Request('/userdo.php?fid=2003', opt);
	}
	else IM._divc.style.left="-110px";
}