function dbugScripts(baseurl,libs){var value=document.cookie.match('(?:^|;)\\s*jsdebug=([^;]*)');var debugCookie=value?unescape(value[1]):false;if(window.location.href.indexOf("basePath=this")>0){var path=baseurl.substring(baseurl.substring(7,baseurl.length).indexOf("/")+8,baseurl.length);var href=window.location.href;baseurl=href.substring(href.substring(7,href.length).indexOf("/")+8,href.length)}if(window.location.href.indexOf("jsdebug=true")>0||window.location.href.indexOf("jsdebugCookie=true")>0||debugCookie=='true'){if(libs){for(var i=0;i<libs.length;i++){document.write("<scri"+"pt src=\""+baseurl+libs[i]+"\" type=\"text/javascript\"></scr"+"ipt>")}}else{document.write("<scri"+"pt src=\""+baseurl+"\" type=\"text/javascript\"></scr"+"ipt>")}return true}return false};if(!dbugScripts("http://www.clientcide.com/cnet.gf/svn/",["/Source/Core/Clientcide.js","/Compatibility/Core/Clientcide.js","/Source/Core/dbug.js","/Compatibility/Core/dbug.js","/Source/Class/Class.ToElement.js","/Compatibility/Class/Class.ToElement.js","/Source/Browser/FixPNG.js","/Compatibility/Browser/FixPNG.js","/Source/Browser/Popup.js","/Compatibility/Browser/Popup.js","/Source/Utilities/DollarG.js","/Compatibility/Utilities/DollarG.js","/Source/UI/Modalizer.js","/Compatibility/UI/Modalizer.js","/Source/UI/StyleWriter.js","/Compatibility/UI/StyleWriter.js","/Source/UI/StickyWin.js","/Compatibility/UI/StickyWin.js","/Source/UI/StickyWin.Fx.js","/Compatibility/UI/StickyWin.Fx.js","/Source/UI/StickyWin.Modal.js","/Compatibility/UI/StickyWin.Modal.js","/Source/UI/StickyWin.UI.js","/Compatibility/UI/StickyWin.UI.js","/Source/UI/Waiter.js","/Compatibility/UI/Waiter.js","/Source/Layout/Collapsable.js","/Compatibility/Layout/Collapsable.js","/Source/Layout/HoverGroup.js","/Compatibility/Layout/HoverGroup.js","/Source/Layout/MenuSlider.js","/Compatibility/Layout/MenuSlider.js","/Source/Layout/MooScroller.js","/Compatibility/Layout/MooScroller.js","/Source/Forms/Confirmer.js","/Compatibility/Forms/Confirmer.js","/Source/Forms/DatePicker.js","/Compatibility/Forms/DatePicker.js","/Source/Forms/DatePicker.Extras.js","/Compatibility/Forms/DatePicker.Extras.js","/Source/Compatability/Browser.Extras.Compat.js","/Compatibility/Compatability/Browser.Extras.Compat.js","/Source/Compatability/Class.Refactor.Compat.js","/Compatibility/Compatability/Class.Refactor.Compat.js","/Source/Compatability/Element.MouseOvers.Compat.js","/Compatibility/Compatability/Element.MouseOvers.Compat.js"])){

/*MooTools, My Object Oriented Javascript Tools. Copyright (c) 2006-2007 Valerio Proietti, <http://mad4milk.net>, MIT Style License.||Clientcide Copyright (c) 2006-2008, http://www.clientcide.com/wiki/cnet-libraries#license*/

var Clientcide={version:'2.1.0',setAssetLocation:function(baseHref){var clean=function(str){return str.replace(/\/\//g,'/')};if(window.StickyWin&&StickyWin.UI){StickyWin.UI.implement({options:{baseHref:clean(baseHref+'/stickyWinHTML/')}});if(StickyWin.Alert){StickyWin.Alert.implement({options:{baseHref:baseHref+"/simple.error.popup"}})}if(StickyWin.UI.Pointy){StickyWin.UI.Pointy.implement({options:{baseHref:clean(baseHref+'/PointyTip/')}})}}if(window.TagMaker){TagMaker.implement({options:{baseHref:clean(baseHref+'/tips/')}})}if(window.ProductPicker){ProductPicker.implement({options:{baseHref:clean(baseHref+'/Picker')}})}if(window.Autocompleter){Autocompleter.Base.implement({options:{baseHref:clean(baseHref+'/autocompleter/')}})}if(window.Lightbox){Lightbox.implement({options:{assetBaseUrl:clean(baseHref+'/slimbox/')}})}if(window.Waiter){Waiter.implement({options:{baseHref:clean(baseHref+'/waiter/')}})}},preLoadCss:function(){if(window.StickyWin&&StickyWin.ui)StickyWin.ui();if(window.StickyWin&&StickyWin.pointy)StickyWin.pointy();Clientcide.preloaded=true;return true},preloaded:false};(function(){if(!window.addEvent)return;var preload=function(){if(window.dbug)dbug.log('preloading clientcide css');if(!Clientcide.preloaded)Clientcide.preLoadCss()};window.addEvent('domready',preload);window.addEvent('load',preload)})();setCNETAssetBaseHref=Clientcide.setAssetLocation;var dbug={logged:[],timers:{},firebug:false,enabled:false,log:function(){dbug.logged.push(arguments)},nolog:function(msg){dbug.logged.push(arguments)},time:function(name){dbug.timers[name]=new Date().getTime()},timeEnd:function(name){if(dbug.timers[name]){var end=new Date().getTime()-dbug.timers[name];dbug.timers[name]=false;dbug.log('%s: %s',name,end)}else dbug.log('no such timer: %s',name)},enable:function(silent){var con=window.firebug?firebug.d.console.cmd:window.console;if((!!window.console&&!!window.console.warn)||window.firebug){try{dbug.enabled=true;dbug.log=function(){(con.debug||con.log).apply(con,arguments)};dbug.time=function(){con.time.apply(con,arguments)};dbug.timeEnd=function(){con.timeEnd.apply(con,arguments)};if(!silent)dbug.log('enabling dbug');for(var i=0;i<dbug.logged.length;i++){dbug.log.apply(con,dbug.logged[i])}dbug.logged=[]}catch(e){dbug.enable.delay(400)}}},disable:function(){if(dbug.firebug)dbug.enabled=false;dbug.log=dbug.nolog;dbug.time=function(){};dbug.timeEnd=function(){}},cookie:function(set){var value=document.cookie.match('(?:^|;)\\s*jsdebug=([^;]*)');var debugCookie=value?unescape(value[1]):false;if((!$defined(set)&&debugCookie!='true')||($defined(set)&&set)){dbug.enable();dbug.log('setting debugging cookie');var date=new Date();date.setTime(date.getTime()+(24*60*60*1000));document.cookie='jsdebug=true;expires='+date.toGMTString()+';path=/;'}else dbug.disableCookie()},disableCookie:function(){dbug.log('disabling debugging cookie');document.cookie='jsdebug=false;path=/;'}};(function(){var fb=!!window.console||!!window.firebug;var con=window.firebug?window.firebug.d.console.cmd:window.console;var debugMethods=['debug','info','warn','error','assert','dir','dirxml'];var otherMethods=['trace','group','groupEnd','profile','profileEnd','count'];function set(methodList,defaultFunction){for(var i=0;i<methodList.length;i++){dbug[methodList[i]]=(fb&&con[methodList[i]])?con[methodList[i]]:defaultFunction}};set(debugMethods,dbug.log);set(otherMethods,function(){})})();if((!!window.console&&!!window.console.warn)||window.firebug){dbug.firebug=true;var value=document.cookie.match('(?:^|;)\\s*jsdebug=([^;]*)');var debugCookie=value?unescape(value[1]):false;if(window.location.href.indexOf("jsdebug=true")>0||debugCookie=='true')dbug.enable();if(debugCookie=='true')dbug.log('debugging cookie enabled');if(window.location.href.indexOf("jsdebugCookie=true")>0){dbug.cookie();if(!dbug.enabled)dbug.enable()}if(window.location.href.indexOf("jsdebugCookie=false")>0)dbug.disableCookie()}Class.ToElement=new Class({toElement:function(){return this.element}});var ToElement=Class.ToElement;$extend(Browser,{fixPNG:function(el){try{if(Browser.Engine.trident4){el=document.id(el);if(!el)return el;if(el.get('tag')=="img"&&el.get('src').test(".png")){var vis=el.isDisplayed();try{dim=el.getSize()}catch(e){}if(!vis){var before={};['visibility','display','position'].each(function(style){before[style]=this.style[style]||''},this);this.setStyles({visibility:'hidden',display:'block',position:'absolute'});dim=el.getSize();this.setStyles(before);el.hide()}var replacement=new Element('span',{id:(el.id)?el.id:'','class':(el.className)?el.className:'',title:(el.title)?el.title:(el.alt)?el.alt:'',styles:{display:vis?'inline-block':'none',width:dim.x,height:dim.y,filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader (src='"+el.src+"', sizingMethod='scale');"},src:el.src});if(el.style.cssText){try{var styles={};var s=el.style.cssText.split(';');s.each(function(style){var n=style.split(':');styles[n[0]]=n[1]});replacement.setStyle(styles)}catch(e){dbug.log('fixPNG1: ',e)}}if(replacement.cloneEvents)replacement.cloneEvents(el);replacement.replaces(el)}else if(el.get('tag')!="img"){var imgURL=el.getStyle('background-image');if(imgURL.test(/\((.+)\)/)){el.setStyles({background:'',filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='crop', src="+imgURL.match(/\((.+)\)/)[1]+")"})}}}}catch(e){dbug.log('fixPNG2: ',e)}},pngTest:/\.png$/,scanForPngs:function(el,className){className=className||'fixPNG';if(document.getElements){el=document.id(el||document.body);el.getElements('img[src$=.png]').addClass(className)}else{var els=$$('img').each(function(img){if(Browser.pngTest(img.src)){img.addClass(className)}})}}});if(Browser.Engine.trident4)window.addEvent('domready',function(){$$('img.fixPNG').each(Browser.fixPNG)});var fixPNG=Browser.fixPNG;Browser.Popup=new Class({Implements:[Options,Events],options:{width:500,height:300,x:50,y:50,toolbar:0,location:0,directories:0,status:0,scrollbars:'yes',resizable:1,name:'popup'},initialize:function(url,options){this.url=url||false;this.setOptions(options);if(this.options.x=='center')this.options.x=Math.floor((screen.availWidth-this.options.width)/2);if(this.options.y=='center')this.options.y=Math.floor((screen.availHeight-this.options.height)/2);if(this.url)this.openWin()},openWin:function(url){url=url||this.url;var options='toolbar='+this.options.toolbar+',location='+this.options.location+',directories='+this.options.directories+',status='+this.options.status+',scrollbars='+this.options.scrollbars+',resizable='+this.options.resizable+',width='+this.options.width+',height='+this.options.height+',top='+this.options.y+',left='+this.options.x;this.window=window.open(url,this.options.name,options);if(!this.window){this.window=window.open('',this.options.name,options);this.window.location.href=url}this.focus.delay(100,this);return this},focus:function(){if(this.window)this.window.focus();else if(this.focusTries<10)this.focus.delay(100,this);else{this.blocked=true;this.fireEvent('onBlock')}return this},focusTries:0,blocked:null,close:function(){this.window.close();return this}});Browser=new Hash(Browser);var popup=Browser.Popup;$G=function(elements){return $splat(document.id(elements)||$$(elements))};var Modalizer=new Class({defaultModalStyle:{display:'block',position:'fixed',top:0,left:0,'z-index':5000,'background-color':'#333',opacity:0.8},setModalOptions:function(options){this.modalOptions=$merge({width:(window.getScrollSize().x),height:(window.getScrollSize().y),elementsToHide:'select, embed'+(Browser.Engine.trident?'':', object'),hideOnClick:true,modalStyle:{},updateOnResize:true,layerId:'modalOverlay',onModalHide:$empty,onModalShow:$empty},this.modalOptions,options);return this},layer:function(){if(!this.modalOptions.layerId)this.setModalOptions();return document.id(this.modalOptions.layerId)||new Element('div',{id:this.modalOptions.layerId}).inject(document.body)},resize:function(){if(this.layer()){this.layer().setStyles({width:(window.getScrollSize().x),height:(window.getScrollSize().y)})}},setModalStyle:function(styleObject){this.modalOptions.modalStyle=styleObject;this.modalStyle=$merge(this.defaultModalStyle,{width:this.modalOptions.width,height:this.modalOptions.height},styleObject);if(this.layer())this.layer().setStyles(this.modalStyle);return(this.modalStyle)},modalShow:function(options){this.setModalOptions(options);this.layer().setStyles(this.setModalStyle(this.modalOptions.modalStyle));if(Browser.Engine.trident4)this.layer().setStyle('position','absolute');this.layer().removeEvents('click').addEvent('click',function(){this.modalHide(this.modalOptions.hideOnClick)}.bind(this));this.bound=this.bound||{};if(!this.bound.resize&&this.modalOptions.updateOnResize){this.bound.resize=this.resize.bind(this);window.addEvent('resize',this.bound.resize)}if($type(this.modalOptions.onModalShow)=="function")this.modalOptions.onModalShow();this.togglePopThroughElements(0);this.layer().setStyle('display','block');return this},modalHide:function(override,force){if(override===false)return false;this.togglePopThroughElements(1);if($type(this.modalOptions.onModalHide)=="function")this.modalOptions.onModalHide();this.layer().setStyle('display','none');if(this.modalOptions.updateOnResize){this.bound=this.bound||{};if(!this.bound.resize)this.bound.resize=this.resize.bind(this);window.removeEvent('resize',this.bound.resize)}return this},togglePopThroughElements:function(opacity){if(Browser.Engine.trident4||(Browser.Engine.gecko&&Browser.Platform.mac)){$$(this.modalOptions.elementsToHide).each(function(sel){sel.setStyle('opacity',opacity)})}}});var StyleWriter=new Class({createStyle:function(css,id){window.addEvent('domready',function(){try{if(document.id(id)&&id)return;var style=new Element('style',{id:id||''}).inject($$('head')[0]);if(Browser.Engine.trident)style.styleSheet.cssText=css;else style.set('text',css)}catch(e){dbug.log('error: %s',e)}}.bind(this))}});var StickyWin=new Class({Binds:['destroy','hide','togglepin','esc'],Implements:[Options,Events,StyleWriter,Class.ToElement],options:{closeClassName:'closeSticky',pinClassName:'pinSticky',content:'',zIndex:10000,className:'',width:false,height:false,timeout:-1,allowMultipleByClass:false,allowMultiple:true,showNow:true,useIframeShim:true,iframeShimSelector:'',destroyOnClose:false,closeOnClickOut:false,closeOnEsc:false},css:'.SWclearfix:after {content: "."; display: block; height: 0; clear: both; visibility: hidden;}'+'.SWclearfix {display: inline-table;} * html .SWclearfix {height: 1%;} .SWclearfix {display: block;}',initialize:function(options){this.options.inject=this.options.inject||{target:document.body,where:'bottom'};this.setOptions(options);this.id=this.options.id||'StickyWin_'+new Date().getTime();this.makeWindow();if(this.options.content)this.setContent(this.options.content);if(this.options.timeout>0){this.addEvent('onDisplay',function(){this.hide.delay(this.options.timeout,this)}.bind(this))}this.createStyle(this.css,'StickyWinClearFix');if(this.options.closeOnClickOut||this.options.closeOnEsc)this.attach();if(this.options.destroyOnClose)this.addEvent('close',this.destroy);if(this.options.showNow)this.show()},attach:function(attach){var method=$pick(attach,true)?'addEvents':'removeEvents';var events={};if(this.options.closeOnClickOut)events.click=this.esc;if(this.options.closeOnEsc)events.keyup=this.esc;document[method](events)},esc:function(e){if(e.key=="esc")this.hide();if(e.type=="click"&&this.element!=e.target&&!this.element.hasChild(e.target))this.hide()},makeWindow:function(){this.destroyOthers();if(!document.id(this.id)){this.win=new Element('div',{id:this.id}).addClass(this.options.className).addClass('StickyWinInstance').addClass('SWclearfix').setStyles({display:'none',position:'absolute',zIndex:this.options.zIndex}).inject(this.options.inject.target,this.options.inject.where).store('StickyWin',this)}else this.win=document.id(this.id);this.element=this.win;if(this.options.width&&$type(this.options.width.toInt())=="number")this.win.setStyle('width',this.options.width.toInt());if(this.options.height&&$type(this.options.height.toInt())=="number")this.win.setStyle('height',this.options.height.toInt());return this},show:function(suppressEvent){this.showWin();if(!suppressEvent)this.fireEvent('display');if(this.options.useIframeShim)this.showIframeShim();this.visible=true;return this},showWin:function(){if(!this.positioned)this.position();this.win.show()},hide:function(suppressEvent){if($type(suppressEvent)=="event"||!suppressEvent)this.fireEvent('close');this.hideWin();if(this.options.useIframeShim)this.hideIframeShim();this.visible=false;return this},hideWin:function(){this.win.setStyle('display','none')},destroyOthers:function(){if(!this.options.allowMultipleByClass||!this.options.allowMultiple){$$('div.StickyWinInstance').each(function(sw){if(!this.options.allowMultiple||(!this.options.allowMultipleByClass&&sw.hasClass(this.options.className)))sw.retrieve('StickyWin').destroy()},this)}},setContent:function(html){if(this.win.getChildren().length>0)this.win.empty();if($type(html)=="string")this.win.set('html',html);else if(document.id(html))this.win.adopt(html);this.win.getElements('.'+this.options.closeClassName).each(function(el){el.addEvent('click',this.hide)},this);this.win.getElements('.'+this.options.pinClassName).each(function(el){el.addEvent('click',this.togglepin)},this);return this},position:function(options){this.positioned=true;this.setOptions(options);this.win.position({allowNegative:$pick(this.options.allowNegative,this.options.relativeTo!=document.body),relativeTo:this.options.relativeTo,position:this.options.position,offset:this.options.offset,edge:this.options.edge});if(this.shim)this.shim.position();return this},pin:function(pin){if(!this.win.pin){dbug.log('you must include element.pin.js!');return this}this.pinned=$pick(pin,true);this.win.pin(pin);return this},unpin:function(){return this.pin(false)},togglepin:function(){return this.pin(!this.pinned)},makeIframeShim:function(){if(!this.shim){var el=(this.options.iframeShimSelector)?this.win.getElement(this.options.iframeShimSelector):this.win;this.shim=new IframeShim(el,{display:false,name:'StickyWinShim'})}},showIframeShim:function(){if(this.options.useIframeShim){this.makeIframeShim();this.shim.show()}},hideIframeShim:function(){if(this.shim)this.shim.hide()},destroy:function(){if(this.win)this.win.destroy();if(this.options.useIframeShim&&this.shim)this.shim.destroy();if(document.id('modalOverlay'))document.id('modalOverlay').destroy();this.fireEvent('destroy')}});StickyWin=Class.refactor(StickyWin,{options:{fade:true,fadeDuration:150},hideWin:function(){if(this.options.fade)this.fade(0);else this.previous()},showWin:function(){if(this.options.fade)this.fade(1);else this.previous()},hide:function(){this.previous(this.options.fade)},show:function(){this.previous(this.options.fade)},fade:function(to){if(!this.fadeFx){this.win.setStyles({opacity:0,display:'block'});var opts={property:'opacity',duration:this.options.fadeDuration};if(this.options.fadeTransition)opts.transition=this.options.fadeTransition;this.fadeFx=new Fx.Tween(this.win,opts)}if(to>0){this.win.setStyle('display','block');this.position()}this.fadeFx.clearChain();this.fadeFx.start(to).chain(function(){if(to==0){this.win.setStyle('display','none');this.fireEvent('onClose')}else{this.fireEvent('onDisplay')}}.bind(this));return this}});StickyWin.Fx=StickyWin;StickyWin.Modal=new Class({Extends:StickyWin,Implements:Modalizer,options:{modalize:true},initialize:function(options){options=options||{};this.setModalOptions($merge(options.modalOptions||{},{onModalHide:function(){this.hide(false)}.bind(this)}));this.parent(options)},show:function(showModal){if($pick(showModal,this.options.modalize)){this.modalShow();if(this.modalOptions.elementsToHide)this.win.getElements(this.modalOptions.elementsToHide).setStyle('opacity',1)}this.parent()},hide:function(hideModal){if($pick(hideModal,true))this.modalHide();else this.parent()}});if(StickyWin.Fx)StickyWin.Fx.Modal=StickyWin.Modal;StickyWin.UI=new Class({Implements:[Options,Class.ToElement,StyleWriter],options:{width:300,css:"div.DefaultStickyWin {font-family:verdana; font-size:11px; line-height: 13px;}"+"div.DefaultStickyWin div.top_ul{background:url({%baseHref%}full.png) top left no-repeat; height:30px; width:15px; float:left}"+"div.DefaultStickyWin div.top_ur{position:relative; left:0px !important; left:-4px; background:url({%baseHref%}full.png) top right !important; height:30px; margin:0px 0px 0px 15px !important; margin-right:-4px; padding:0px}"+"div.DefaultStickyWin h1.caption{clear: none !important; margin:0px !important; overflow: hidden; padding:0 !important; font-weight:bold; color:#555; font-size:14px !important; position:relative; top:8px !important; left:5px !important; float: left; height: 22px !important;}"+"div.DefaultStickyWin div.middle, div.DefaultStickyWin div.closeBody {background:url({%baseHref%}body.png) top left repeat-y; margin:0px 20px 0px 0px !important;	margin-bottom: -3px; position: relative;	top: 0px !important; top: -3px;}"+"div.DefaultStickyWin div.body{background:url({%baseHref%}body.png) top right repeat-y; padding:8px 30px 8px 0px !important; margin-left:5px !important; position:relative; right:-20px !important; z-index: 1;}"+"div.DefaultStickyWin div.bottom{clear:both;}"+"div.DefaultStickyWin div.bottom_ll{background:url({%baseHref%}full.png) bottom left no-repeat; width:15px; height:15px; float:left}"+"div.DefaultStickyWin div.bottom_lr{background:url({%baseHref%}full.png) bottom right; position:relative; left:0px !important; left:-4px; margin:0px 0px 0px 15px !important; margin-right:-4px; height:15px}"+"div.DefaultStickyWin div.closeButtons{text-align: center; background:url({%baseHref%}body.png) top right repeat-y; padding: 4px 30px 8px 0px; margin-left:5px; position:relative; right:-20px}"+"div.DefaultStickyWin a.button:hover{background:url({%baseHref%}big_button_over.gif) repeat-x}"+"div.DefaultStickyWin a.button {background:url({%baseHref%}big_button.gif) repeat-x; margin: 2px 8px 2px 8px; padding: 2px 12px; cursor:pointer; border: 1px solid #999 !important; text-decoration:none; color: #000 !important;}"+"div.DefaultStickyWin div.closeButton{width:13px; height:13px; background:url({%baseHref%}closebtn.gif) no-repeat; position: absolute; right: 0px; margin:10px 15px 0px 0px !important; cursor:pointer;top:0px}"+"div.DefaultStickyWin div.dragHandle {	width: 11px;	height: 25px;	position: relative;	top: 5px;	left: -3px;	cursor: move;	background: url({%baseHref%}drag_corner.gif); float: left;}",cornerHandle:false,cssClass:'',baseHref:'http://www.cnet.com/html/rb/assets/global/stickyWinHTML/',buttons:[],cssId:'defaultStickyWinStyle',cssClassName:'DefaultStickyWin',closeButton:true},initialize:function(){var args=this.getArgs(arguments);this.setOptions(args.options);this.legacy();var css=this.options.css.substitute({baseHref:this.options.baseHref},/\\?\{%([^}]+)%\}/g);if(Browser.Engine.trident4)css=css.replace(/png/g,'gif');this.createStyle(css,this.options.cssId);this.build();if(args.caption||args.body)this.setContent(args.caption,args.body)},getArgs:function(){return StickyWin.UI.getArgs.apply(this,arguments)},legacy:function(){var opt=this.options;if(opt.confirmTxt)opt.buttons.push({text:opt.confirmTxt,onClick:opt.onConfirm||$empty});if(opt.closeTxt)opt.buttons.push({text:opt.closeTxt,onClick:opt.onClose||$empty})},build:function(){var opt=this.options;var container=new Element('div',{'class':opt.cssClassName});if(opt.width)container.setStyle('width',opt.width);this.element=container;this.element.store('StickyWinUI',this);if(opt.cssClass)container.addClass(opt.cssClass);var bodyDiv=new Element('div').addClass('body');this.body=bodyDiv;var top_ur=new Element('div').addClass('top_ur');this.top_ur=top_ur;this.top=new Element('div').addClass('top').adopt(new Element('div').addClass('top_ul')).adopt(top_ur);container.adopt(this.top);if(opt.cornerHandle)new Element('div').addClass('dragHandle').inject(top_ur,'top');container.adopt(new Element('div').addClass('middle').adopt(bodyDiv));if(opt.buttons.length>0){var closeButtons=new Element('div').addClass('closeButtons');opt.buttons.each(function(button){if(button.properties&&button.properties.className){button.properties['class']=button.properties.className;delete button.properties.className}var properties=$merge({'class':'closeSticky'},button.properties);new Element('a').addEvent('click',button.onClick||$empty).appendText(button.text).inject(closeButtons).set(properties).addClass('button')});container.adopt(new Element('div').addClass('closeBody').adopt(closeButtons))}container.adopt(new Element('div').addClass('bottom').adopt(new Element('div').addClass('bottom_ll')).adopt(new Element('div').addClass('bottom_lr')));if(this.options.closeButton)container.adopt(new Element('div').addClass('closeButton').addClass('closeSticky'));return this},makeCaption:function(caption){if(!caption)return this.destroyCaption();this.caption=caption;var opt=this.options;var h1Caption=new Element('h1').addClass('caption');if(opt.width)h1Caption.setStyle('width',(opt.width-(opt.cornerHandle?55:40)-(opt.closeButton?10:0)));if(document.id(this.caption))h1Caption.adopt(this.caption);else h1Caption.set('html',this.caption);this.top_ur.adopt(h1Caption);this.h1=h1Caption;if(!this.options.cornerHandle)this.h1.addClass('dragHandle');return this},destroyCaption:function(){if(this.h1){this.h1.destroy();this.h1=null}return this},setContent:function(){var args=this.getArgs.apply(this,arguments);var caption=args.caption;var body=args.body;if(this.h1)this.destroyCaption();this.makeCaption(caption);if(document.id(body))this.body.empty().adopt(body);else this.body.set('html',body);return this}});StickyWin.UI.getArgs=function(){var input=$type(arguments[0])=="arguments"?arguments[0]:arguments;var cap=input[0],bod=input[1];var args=Array.link(input,{options:Object.type});if(input.length==3||(!args.options&&input.length==2)){args.caption=cap;args.body=bod}else if(($type(bod)=='object'||!bod)&&cap&&$type(cap)!='object'){args.body=cap}return args};StickyWin.ui=function(caption,body,options){return document.id(new StickyWin.UI(caption,body,options))};var stickyWinHTML=StickyWin.ui;var Waiter=new Class({Implements:[Options,Events,Chain,Class.Occlude],options:{baseHref:'http://www.cnet.com/html/rb/assets/global/waiter/',containerProps:{styles:{position:'absolute','text-align':'center'},'class':'waiterContainer'},containerPosition:{},msg:false,msgProps:{styles:{'text-align':'center',fontWeight:'bold'},'class':'waiterMsg'},img:{src:'waiter.gif',styles:{width:24,height:24},'class':'waiterImg'},layer:{styles:{width:0,height:0,position:'absolute',zIndex:999,display:'none',opacity:0.9,background:'#fff'},'class':'waitingDiv'},useIframeShim:true,fxOptions:{},injectWhere:null},property:'Waiter',initialize:function(target,options){this.element=document.id(target)||document.id(document.body);if(this.occlude())return this.occluded;this.setOptions(options);this.build();this.place(target)},build:function(){this.waiterContainer=new Element('div',this.options.containerProps);if(this.options.msg){this.msgContainer=new Element('div',this.options.msgProps);this.waiterContainer.adopt(this.msgContainer);if(!document.id(this.options.msg))this.msg=new Element('p').appendText(this.options.msg);else this.msg=document.id(this.options.msg);this.msgContainer.adopt(this.msg)}if(this.options.img)this.waiterImg=document.id(this.options.img.id)||new Element('img',$merge(this.options.img,{src:this.options.baseHref+this.options.img.src})).inject(this.waiterContainer);this.waiterOverlay=document.id(this.options.layer.id)||new Element('div').adopt(this.waiterContainer);this.waiterOverlay.set(this.options.layer);try{if(this.options.useIframeShim)this.shim=new IframeShim(this.waiterOverlay,this.options.iframeShimOptions)}catch(e){dbug.log("Waiter attempting to use IframeShim but failed; did you include IframeShim? Error: ",e);this.options.useIframeShim=false}this.waiterFx=this.waiterFx||new Fx.Elements($$(this.waiterContainer,this.waiterOverlay),this.options.fxOptions)},place:function(target,where){var where=where||this.options.injectWhere||target==document.body?'inside':'after';this.waiterOverlay.inject(target,where)},toggle:function(element,show){element=document.id(element)||document.id(this.active)||document.id(this.element);this.place(element);if(!document.id(element))return this;if(this.active&&element!=this.active)return this.stop(this.start.bind(this,element));if((!this.active||show)&&show!==false)this.start(element);else if(this.active&&!show)this.stop();return this},reset:function(){this.waiterFx.cancel().set({0:{opacity:[0]},1:{opacity:[0]}})},start:function(element){this.reset();element=document.id(element)||document.id(this.element);this.place(element);var start=function(){var dim=element.getComputedSize();this.active=element;this.waiterOverlay.setStyles({width:this.options.layer.width||dim.totalWidth,height:this.options.layer.height||dim.totalHeight,display:'block'}).position({relativeTo:element,position:'upperLeft'});this.waiterContainer.position($merge({relativeTo:this.waiterOverlay},this.options.containerPosition));if(this.options.useIframeShim)this.shim.show();this.waiterFx.start({0:{opacity:[1]},1:{opacity:[this.options.layer.styles.opacity]}}).chain(function(){if(this.active==element)this.fireEvent('onShow',element);this.callChain()}.bind(this))}.bind(this);if(this.active&&this.active!=element)this.stop(start);else start();return this},stop:function(callback){if(!this.active){if($type(callback)=="function")callback.attempt();return this}this.waiterFx.cancel();this.waiterFx.clearChain();this.waiterFx.start({0:{opacity:[0]},1:{opacity:[0]}}).chain(function(){this.active=null;this.waiterOverlay.hide();if(this.options.useIframeShim)this.shim.hide();this.fireEvent('onHide',this.active);this.callChain();this.clearChain();if($type(callback)=="function")callback.attempt()}.bind(this));return this}});if(window.Request){Request=Class.refactor(Request,{options:{useWaiter:false,waiterOptions:{},waiterTarget:false},initialize:function(options){this._send=this.send;this.send=function(options){if(this.waiter)this.waiter.start().chain(this._send.bind(this,options));else this._send(options);return this};this.previous(options);if(this.options.useWaiter&&(document.id(this.options.update)||document.id(this.options.waiterTarget))){this.waiter=new Waiter(this.options.waiterTarget||this.options.update,this.options.waiterOptions);['onComplete','onException','onCancel'].each(function(event){this.addEvent(event,this.waiter.stop.bind(this.waiter))},this)}}})}Element.Properties.waiter={set:function(options){var waiter=this.retrieve('waiter');return this.eliminate('waiter').store('waiter:options',options)},get:function(options){if(options||!this.retrieve('waiter')){if(options||!this.retrieve('waiter:options'))this.set('waiter',options);this.store('waiter',new Waiter(this,this.retrieve('waiter:options')))}return this.retrieve('waiter')}};Element.implement({wait:function(options){this.get('waiter',options).start();return this},release:function(){var opt=Array.link(arguments,{options:Object.type,callback:Function.type});this.get('waiter',opt.options).stop(opt.callback);return this}});var Collapsable=new Class({Extends:Fx.Reveal,initialize:function(clicker,section,options){this.clicker=document.id(clicker);this.section=document.id(section);this.parent(this.section,options);this.addEvents()},addEvents:function(){this.clicker.addEvent('click',this.toggle.bind(this))}});var HoverGroup=new Class({Implements:[Options,Events],Binds:['enter','leave','remain'],options:{elements:[],delay:300,start:['mouseenter'],remain:[],end:['mouseleave']},initialize:function(options){this.setOptions(options);this.attachTo(this.options.elements);this.addEvents({leave:function(){this.active=false},enter:function(){this.active=true}})},elements:[],attachTo:function(elements,detach){var starters={},remainers={},enders={};elements=$G(elements);this.options.start.each(function(start){starters[start]=this.enter},this);this.options.end.each(function(end){enders[end]=this.leave},this);this.options.remain.each(function(remain){remainers[remain]=this.remain},this);if(detach){elements.each(function(el){el.removeEvents(starters).removeEvents(enders).removeEvents(remainers);this.elements.erase(el)})}else{elements.each(function(el){el.addEvents(starters).addEvents(enders).addEvents(remainers)});this.elements.combine(elements)}return this},detachFrom:function(elements){this.attachTo(elements,true)},enter:function(e){this.isMoused=true;this.assert(e)},leave:function(e){this.isMoused=false;this.assert(e)},remain:function(e){if(this.active)this.enter(e)},assert:function(e){$clear(this.assertion);this.assertion=(function(){if(!this.isMoused&&this.active)this.fireEvent('leave',e);else if(this.isMoused&&!this.active)this.fireEvent('enter',e)}).delay(this.options.delay,this)}});var MenuSlider=new Class({Implements:[Options,Events],Binds:['slideIn','slideOut'],options:{fxOptions:{duration:400,transition:'expo:out',link:'cancel'},useIframeShim:true},initialize:function(menu,subMenu,options){this.menu=document.id(menu);this.subMenu=document.id(subMenu);this.setOptions(options);this.makeSlider();this.hoverGroup=new HoverGroup($merge(this.options.hoverGroupOptions,{elements:[this.menu,this.subMenu],onEnter:this.slideIn,onLeave:this.slideOut}))},makeSlider:function(){this.slider=new Fx.Slide(this.subMenu,this.options.fxOptions).hide();if(this.options.useIframeShim&&window.IframeShim)this.shim=new IframeShim(this.subMenu)},slideIn:function(){this.fireEvent('inStart');this.slider.slideIn().chain(function(){if(this.shim)this.shim.show();this.fireEvent('in')}.bind(this));this.visible=true;return this},slideOut:function(){this.hide();this.fireEvent('out');if(this.shim)this.shim.hide();this.visible=false;return this},hide:function(){$clear(this.hoverGroup.assertion);this.hoverGroup.active=false;this.slider.cancel();this.slider.hide();if(this.shim)this.shim.hide();this.visible=true;return this},isVisible:function(){return this.visible}});var MooScroller=new Class({Implements:[Options,Events],options:{maxThumbSize:10,mode:'vertical',width:0,scrollSteps:10,wheel:true,scrollLinks:{forward:'scrollForward',back:'scrollBack'},hideWhenNoOverflow:true},initialize:function(content,knob,options){this.setOptions(options);this.horz=(this.options.mode=="horizontal");this.content=document.id(content).setStyle('overflow','hidden');this.knob=document.id(knob);this.track=this.knob.getParent();this.setPositions();if(this.horz&&this.options.width){this.wrapper=new Element('div');this.content.getChildren().each(function(child){this.wrapper.adopt(child)},this);this.wrapper.inject(this.content).setStyle('width',this.options.width)}this.bound={'start':this.start.bind(this),'end':this.end.bind(this),'drag':this.drag.bind(this),'wheel':this.wheel.bind(this),'page':this.page.bind(this)};this.position={};this.mouse={};this.update();this.attach();var clearScroll=function(){$clear(this.scrolling)}.bind(this);['forward','back'].each(function(direction){var lnk=document.id(this.options.scrollLinks[direction]);if(lnk){lnk.addEvents({mousedown:function(){this.scrolling=this[direction].periodical(50,this)}.bind(this),mouseup:clearScroll.bind(this),click:clearScroll.bind(this)})}},this);this.knob.addEvent('click',clearScroll.bind(this));window.addEvent('domready',function(){try{document.id(document.body).addEvent('mouseup',clearScroll.bind(this))}catch(e){}}.bind(this))},setPositions:function(){[this.track,this.knob].each(function(el){if(el.getStyle('position')=='static')el.setStyle('position','relative')})},toElement:function(){return this.content},update:function(){var plain=this.horz?'Width':'Height';this.contentSize=this.content['offset'+plain];this.contentScrollSize=this.content['scroll'+plain];this.trackSize=this.track['offset'+plain];this.contentRatio=this.contentSize/this.contentScrollSize;this.knobSize=(this.trackSize*this.contentRatio).limit(this.options.maxThumbSize,this.trackSize);if(this.options.hideWhenNoOverflow){this.hidden=this.knobSize==this.trackSize;this.track.setStyle('opacity',this.hidden?0:1)}this.scrollRatio=this.contentScrollSize/this.trackSize;this.knob.setStyle(plain.toLowerCase(),this.knobSize);this.updateThumbFromContentScroll();this.updateContentFromThumbPosition()},updateContentFromThumbPosition:function(){this.content[this.horz?'scrollLeft':'scrollTop']=this.position.now*this.scrollRatio},updateThumbFromContentScroll:function(){this.position.now=(this.content[this.horz?'scrollLeft':'scrollTop']/this.scrollRatio).limit(0,(this.trackSize-this.knobSize));this.knob.setStyle(this.horz?'left':'top',this.position.now)},attach:function(){this.knob.addEvent('mousedown',this.bound.start);if(this.options.scrollSteps)this.content.addEvent('mousewheel',this.bound.wheel);this.track.addEvent('mouseup',this.bound.page)},wheel:function(event){if(this.hidden)return;this.scroll(-(event.wheel*this.options.scrollSteps));this.updateThumbFromContentScroll();event.stop()},scroll:function(steps){steps=steps||this.options.scrollSteps;this.content[this.horz?'scrollLeft':'scrollTop']+=steps;this.updateThumbFromContentScroll();this.fireEvent('onScroll',steps)},forward:function(steps){this.scroll(steps)},back:function(steps){steps=steps||this.options.scrollSteps;this.scroll(-steps)},page:function(event){var axis=this.horz?'x':'y';var forward=(event.page[axis]>this.knob.getPosition()[axis]);this.scroll((forward?1:-1)*this.content['offset'+(this.horz?'Width':'Height')]);this.updateThumbFromContentScroll();this.fireEvent('onPage',forward);event.stop()},start:function(event){var axis=this.horz?'x':'y';this.mouse.start=event.page[axis];this.position.start=this.knob.getStyle(this.horz?'left':'top').toInt();document.addEvent('mousemove',this.bound.drag);document.addEvent('mouseup',this.bound.end);this.knob.addEvent('mouseup',this.bound.end);event.stop()},end:function(event){document.removeEvent('mousemove',this.bound.drag);document.removeEvent('mouseup',this.bound.end);this.knob.removeEvent('mouseup',this.bound.end);event.stop()},drag:function(event){var axis=this.horz?'x':'y';this.mouse.now=event.page[axis];this.position.now=(this.position.start+(this.mouse.now-this.mouse.start)).limit(0,(this.trackSize-this.knobSize));this.updateContentFromThumbPosition();this.updateThumbFromContentScroll();event.stop()}});var Confirmer=new Class({Implements:[Options,Events],options:{reposition:true,positionOptions:{relativeTo:false,position:'upperRight',offset:{x:-225,y:0},zIndex:9999},msg:'your changes have been saved',msgContainerSelector:'.body',delay:250,pause:1000,effectOptions:{duration:500},prompterStyle:{padding:'2px 6px',border:'1px solid #9f0000',backgroundColor:'#f9d0d0',fontWeight:'bold',color:'#000',width:210}},initialize:function(options){this.setOptions(options);this.options.positionOptions.relativeTo=document.id(this.options.positionOptions.relativeTo)||document.body;this.prompter=(document.id(this.options.msg))?document.id(this.options.msg):this.makePrompter(this.options.msg);if(this.options.reposition){this.prompter.setStyles({position:'absolute',display:'none',zIndex:this.options.positionOptions.zIndex});if(!Browser.Engine.trident4)this.prompter.setStyle('opacity',0)}else if(!Browser.Engine.trident4)this.prompter.setStyle('opacity',0);else this.prompter.setStyle('visibility','hidden');if(!this.prompter.getParent()){window.addEvent('domready',function(){this.prompter.inject(document.body)}.bind(this))}try{this.msgHolder=this.prompter.getElement(this.options.msgContainerSelector);if(!this.msgHolder)this.msgHolder=this.prompter}catch(e){dbug.log(e)}},makePrompter:function(msg){return new Element('div').setStyles(this.options.prompterStyle).appendText(msg)},prompt:function(options){if(!this.paused)this.stop();var msg=(options)?options.msg:false;options=$merge(this.options,{saveAsDefault:false},options||{});if(document.id(options.msg)&&msg)this.msgHolder.empty().adopt(options.msg);else if(!document.id(options.msg)&&options.msg)this.msgHolder.empty().appendText(options.msg);if(!this.paused){if(options.reposition)this.position(options.positionOptions);(function(){this.timer=this.fade(options.pause)}).delay(options.delay,this)}if(options.saveAsDefault)this.setOptions(options);return this},fade:function(pause){this.paused=true;pause=$pick(pause,this.options.pause);if(!this.fx&&!Browser.Engine.trident4)this.fx=new Fx.Tween(this.prompter,$merge({property:'opacity'},this.options.effectOptions));if(this.options.reposition)this.prompter.setStyle('display','block');if(!Browser.Engine.trident4){this.prompter.setStyle('visibility','visible');this.fx.start(0,1).chain(function(){this.timer=(function(){this.fx.start(0).chain(function(){if(this.options.reposition)this.prompter.hide();this.paused=false}.bind(this))}).delay(pause,this)}.bind(this))}else{this.prompter.setStyle('visibility','visible');this.timer=(function(){this.prompter.setStyle('visibility','hidden');this.fireEvent('onComplete');this.paused=false}).delay(pause+this.options.effectOptions.duration,this)}return this},stop:function(){this.paused=false;$clear(this.timer);if(this.fx)this.fx.set(0);if(this.options.reposition)this.prompter.hide();return this},position:function(positionOptions){this.prompter.position($merge(this.options.positionOptions,positionOptions));return this}});var DatePicker;(function(){var DPglobal=function(){if(DatePicker.pickers)return;DatePicker.pickers=[];DatePicker.hideAll=function(){DatePicker.pickers.each(function(picker){picker.hide()})}};DatePicker=new Class({Implements:[Options,Events,StyleWriter],options:{format:"%x",defaultCss:'div.calendarHolder {height:177px;position: absolute;top: -21px !important;top: -27px;left: -3px;width: 100%;}'+'div.calendarHolder table.cal {margin-right: 15px !important;margin-right: 8px;width: 205px;}'+'div.calendarHolder td {text-align:center;}'+'div.calendarHolder tr.dayRow td {padding: 2px;width: 22px;cursor: pointer;}'+'div.calendarHolder table.datePicker * {font-size:11px;line-height:16px;}'+'div.calendarHolder table.datePicker {margin: 0;padding:0 5px;float: left;}'+'div.calendarHolder table.datePicker table.cal td {cursor:pointer;}'+'div.calendarHolder tr.dateNav {font-weight: bold;height:22px;margin-top:8px;}'+'div.calendarHolder tr.dayNames {height: 23px;}'+'div.calendarHolder tr.dayNames td {color:#666;font-weight:700;border-bottom:1px solid #ddd;}'+'div.calendarHolder table.datePicker tr.dayRow td:hover {background:#ccc;}'+'div.calendarHolder table.datePicker tr.dayRow td {margin: 1px;}'+'div.calendarHolder td.today {color:#bb0904;}'+'div.calendarHolder td.otherMonthDate {border:1px solid #fff;color:#ccc;background:#f3f3f3 !important;margin: 0px !important;}'+'div.calendarHolder td.selectedDate {border: 1px solid #20397b;background:#dcddef;margin: 0px !important;}'+'div.calendarHolder a.leftScroll, div.calendarHolder a.rightScroll {cursor: pointer; color: #000}'+'div.datePickerSW div.body {height: 160px !important;height: 149px;}'+'div.datePickerSW .clearfix:after {content: ".";display: block;height: 0;clear: both;visibility: hidden;}'+'div.datePickerSW .clearfix {display: inline-table;}'+'* html div.datePickerSW .clearfix {height: 1%;}'+'div.datePickerSW .clearfix {display: block;}',calendarId:false,stickyWinOptions:{draggable:true,dragOptions:{},position:"bottomLeft",offset:{x:10,y:10},fadeDuration:400},stickyWinUiOptions:{},updateOnBlur:true,additionalShowLinks:[],showOnInputFocus:true,useDefaultCss:true,hideCalendarOnPick:true,weekStartOffset:0,showMoreThanOne:true,stickyWinToUse:StickyWin},initialize:function(input,options){DPglobal();if(document.id(input))this.inputs=$H({start:document.id(input)});this.today=new Date();this.setOptions(options);if(this.options.useDefaultCss)this.createStyle(this.options.defaultCss,'datePickerStyle');if(!this.inputs)return;this.whens=this.whens||['start'];if(!this.calendarId)this.calendarId="popupCalendar"+new Date().getTime();this.setUpObservers();this.getCalendar();this.formValidatorInterface();DatePicker.pickers.push(this)},formValidatorInterface:function(){this.inputs.each(function(input){var props;if(input.get('validatorProps'))props=input.get('validatorProps');if(props&&props.dateFormat){dbug.log('using date format specified in validatorProps property of element to play nice with FormValidator');this.setOptions({format:props.dateFormat})}else{if(!props)props={};props.dateFormat=this.options.format;input.set('validatorProps',props)}},this)},calWidth:280,inputDates:{},selectedDates:{},setUpObservers:function(){this.inputs.each(function(input){if(this.options.showOnInputFocus)input.addEvent('focus',this.show.bind(this));input.addEvent('blur',function(e){if(e){this.selectedDates=this.getDates(null,true);this.fillCalendar(this.selectedDates.start);if(this.options.updateOnBlur)this.updateInput()}}.bind(this))},this);this.options.additionalShowLinks.each(function(lnk){document.id(lnk).addEvent('click',this.show.bind(this))},this)},getDates:function(dates,getFromInputs){var d={};if(!getFromInputs)dates=dates||this.selectedDates;var getFromInput=function(when){var input=this.inputs.get(when);if(input)d[when]=this.validDate(input.get('value'))}.bind(this);this.whens.each(function(when){switch($type(dates)){case"object":if(dates)d[when]=dates[when]?dates[when]:dates;if(!d[when]&&!d[when].format)getFromInput(when);break;default:getFromInput(when);break}if(!d[when])d[when]=this.selectedDates[when]||new Date()},this);return d},updateInput:function(){var d={};$each(this.getDates(),function(value,key){var input=this.inputs.get(key);if(!input)return;input.set('value',(value)?this.formatDate(value)||"":"")},this);return this},validDate:function(val){if(!$chk(val))return null;var date=Date.parse(val.trim());return isNaN(date)?null:date},formatDate:function(date){return date.format(this.options.format)},getCalendar:function(){if(!this.calendar){var cal=new Element("table",{'id':this.options.calendarId||'','border':'0','cellpadding':'0','cellspacing':'0','class':'datePicker'});var tbody=new Element('tbody').inject(cal);var rows=[];(8).times(function(i){var row=new Element('tr').inject(tbody);(7).times(function(i){var td=new Element('td').inject(row).set('html','&nbsp;')})});var rows=tbody.getElements('tr');rows[0].addClass('dateNav');rows[1].addClass('dayNames');(6).times(function(i){rows[i+2].addClass('dayRow')});this.rows=rows;var dayCells=rows[1].getElements('td');dayCells.each(function(cell,i){cell.firstChild.data=Date.getMsg('days')[(i+this.options.weekStartOffset)%7].substring(0,3)},this);[6,5,4,3].each(function(i){rows[0].getElements('td')[i].dispose()});this.prevLnk=rows[0].getElement('td').setStyle('text-align','right');this.prevLnk.adopt(new Element('a').set('html',"&lt;").addClass('rightScroll'));this.month=rows[0].getElements('td')[1];this.month.set('colspan',5);this.nextLnk=rows[0].getElements('td')[2].setStyle('text-align','left');this.nextLnk.adopt(new Element('a').set('html','&gt;').addClass('leftScroll'));cal.addEvent('click',this.clickCalendar.bind(this));this.calendar=cal;this.container=new Element('div').adopt(cal).addClass('calendarHolder');this.content=StickyWin.ui('',this.container,$merge(this.options.stickyWinUiOptions,{cornerHandle:this.options.stickyWinOptions.draggable,width:this.calWidth}));var opts=$merge(this.options.stickyWinOptions,{content:this.content,className:'datePickerSW',allowMultipleByClass:true,showNow:false,relativeTo:this.inputs.get('start')});this.stickyWin=new this.options.stickyWinToUse(opts);this.stickyWin.addEvent('onDisplay',this.positionClose.bind(this));this.container.setStyle('z-index',this.stickyWin.win.getStyle('z-index').toInt()+1)}return this.calendar},positionClose:function(){if(this.closePositioned)return;var closer=this.content.getElement('div.closeButton');if(closer){closer.inject(this.container,'after').setStyle('z-index',this.stickyWin.win.getStyle('z-index').toInt()+2);(function(){this.content.setStyle('width',this.calendar.getSize().x+(this.options.time?240:40));closer.position({relativeTo:this.stickyWin.win.getElement('.top'),position:'upperRight',edge:'upperRight'})}).delay(3,this)}this.closePositioned=true},hide:function(){this.stickyWin.hide();this.fireEvent('onHide');return this},hideOthers:function(){DatePicker.pickers.each(function(picker){if(picker!=this)picker.hide()});return this},show:function(){this.selectedDates={};var dates=this.getDates(null,true);this.whens.each(function(when){this.inputDates[when]=dates[when]?dates[when].clone():dates.start?dates.start.clone():this.today;this.selectedDates[when]=!this.inputDates[when]||isNaN(this.inputDates[when])?this.today:this.inputDates[when].clone();this.getCalendar(when)},this);this.fillCalendar(this.selectedDates.start);if(!this.options.showMoreThanOne)this.hideOthers();this.stickyWin.show();this.fireEvent('onShow');return this},handleScroll:function(e){if(e.target.hasClass('rightScroll')||e.target.hasClass('leftScroll')){var newRef=e.target.hasClass('rightScroll')?this.rows[2].getElement('td').refDate-Date.units.day():this.rows[7].getElements('td')[6].refDate+Date.units.day();this.fillCalendar(new Date(newRef));return true}return false},setSelectedDates:function(e,newDate){this.selectedDates.start=newDate},onPick:function(){this.updateSelectors();this.inputs.each(function(input){input.fireEvent("change");input.fireEvent("blur")});this.fireEvent('onPick');if(this.options.hideCalendarOnPick)this.hide()},clickCalendar:function(e){if(this.handleScroll(e))return;if(!e.target.firstChild||!e.target.firstChild.data)return;var val=e.target.firstChild.data;if(e.target.refDate){var newDate=new Date(e.target.refDate);this.setSelectedDates(e,newDate);this.updateInput();this.onPick()}},fillCalendar:function(date){if($type(date)=="string")date=new Date(date);var startDate=(date)?new Date(date.getTime()):new Date();var hours=startDate.get('hours');startDate.setDate(1);startDate.setTime((startDate.getTime()-(Date.units.day()*(startDate.getDay())))+(Date.units.day()*this.options.weekStartOffset));var monthyr=new Element('span',{html:Date.getMsg('months')[date.getMonth()]+" "+date.getFullYear()});document.id(this.rows[0].getElements('td')[1]).empty().adopt(monthyr);var atDate=startDate.clone();this.rows.each(function(row,i){if(i<2)return;row.getElements('td').each(function(td){atDate.set('hours',hours);td.firstChild.data=atDate.getDate();td.refDate=atDate.getTime();atDate.setTime(atDate.getTime()+Date.units.day())},this)},this);this.updateSelectors()},updateSelectors:function(){var atDate;var month=new Date(this.rows[5].getElement('td').refDate).getMonth();this.rows.each(function(row,i){if(i<2)return;row.getElements('td').each(function(td){td.className='';atDate=new Date(td.refDate);if(atDate.format("%x")==this.today.format("%x"))td.addClass('today');this.whens.each(function(when){var date=this.selectedDates[when];if(date&&atDate.format("%x")==date.format("%x")){td.addClass('selectedDate');this.fireEvent('selectedDateMatch',[td,when])}},this);this.fireEvent('rowDateEvaluated',[atDate,td]);if(atDate.getMonth()!=month)td.addClass('otherMonthDate');atDate.setTime(atDate.getTime()+Date.units.day())},this)},this)}})})();DatePicker=Class.refactor(DatePicker,{options:{extraCSS:'a.finish {position: relative;height: 13px !important;top: -31px !important;left: 85px !important;top: -34px;left: 77px;height: 16px;display:block;float: left;padding: 1px 12px 3px !important;}'+'div.calendarHolder div.time {border: #999 1px solid;width: 55px;position: relative;left: 3px;height: 17px;}'+'div.calendarHolder td.timeTD {width: 140px;} div.calendarHolder td.label{width:35px; text-align:right}'+'div.calendarHolder div.time select {font-size: 10px !important; font-size: 15px;padding: 0px;left:60px;position:absolute;top:-1px !important; width: auto !important;}'+'div.calendarHolder div.time input {width: 16px !important;width: 12px;padding: 2px;height: 13px;border: none !important;border: 1px solid #fff;}'+'div.calendarHolder div.timeSub {clear:both;position: relative;width: 65px;}'+'div.calendarHolder div.timeSub span {text-align: center;color: #999;margin: 5px;}'+'div.calendarHolder span.seperator {position:relative;top:-3px;}'+'div.calendarHolder table.stamp {position:relative;top: 35px !important;top: 50px;left: 0px;}'+'div.calendarHolder table.stamp a {left:123px;position:relative;top:9px;}'+'div.calendarHolder table.stamp td {border: none !important;}'+'div.calendarHolder td.selected_end {border-width: 1px 1px 1px 0px !important;margin: 0px 0px 0px 1px !important;}'+'div.calendarHolder td.selected_start {border-width: 1px 0px 1px 1px !important;margin: 0px 1px 0px 0px !important;}'+'div.calendarHolder table.datePicker td.range {background: #dcddef;border: solid #20397b;border-width: 1px 0px;margin: 0px 1px !important;}',range:false,time:false},initialize:function(inputs,options){if(options&&(options.range||options.time)){options=$merge({hideCalendarOnPick:false},options)}if(options&&options.time&&!options.format){options.format="%x %X"}this.setOptions(options);this.whens=(this.options.range)?['start','end']:['start'];if($type(inputs)=='object'){this.inputs=$H(inputs)}else if($type(document.id(inputs))=="element"){this.inputs=$H({'start':document.id(inputs)})}else if($type(inputs)=="array"){inputs=$$(inputs);this.inputs=$H({});this.whens.each(function(when,i){this.inputs.set(when,inputs[i])},this)}if(this.options.time)this.calWidth=460;this.previous(inputs,this.options);this.createStyle(this.options.extraCSS,'datePickerPlusStyle');this.addEvent('rowDateEvaluated',function(atDate,td){if(this.options.range&&this.selectedDates.start.diff(atDate,'minute')>0&&this.selectedDates.end.diff(atDate,'minute')<0)td.addClass('range')}.bind(this));this.addEvent('selectedDateMatch',function(td,when){if(this.options.range)td.addClass('selected_'+when)}.bind(this))},updateInput:function(){this.previous();if(this.options.time)this.updateView()},updateView:function(){this.whens.each(function(when){var stamp=this.stamps[when];var date=this.getDates()[when];stamp.date.set('html',date?date.format("%b. %d, %Y"):"");if(stamp.hr){stamp.hr.set('value',date?date.format("%I"):"");stamp.min.set('value',date?date.format("%M"):"")}},this)},stamps:{},setupWideView:function(){var timeStampMap={hr:'%I','min':'%M'};timeSetMap={hr:'setHours','min':'setMinutes'};var dates=this.getDates();if(!this.options.range&&!this.options.time)return;this.stamps.table=new Element('table',{'class':'stamp'}).inject(this.container);this.stamps.tbody=new Element('tbody').inject(this.stamps.table);this.whens.each(function(when){this.stamps[when]={};var s=this.stamps[when];s.container=new Element('tr').addClass(when+'_stamp').inject(this.stamps.tbody);s.label=new Element('td').inject(s.container).addClass('label');if(this.whens.length==1){s.label.set('html','date:')}else{s.label.set('html',when=="start"?"from:":"to:")}s.date=new Element('td').inject(s.container);if(this.options.time){currentWhen=dates[when]||new Date();s.time=new Element('tr').inject(this.stamps.tbody);new Element('td').inject(s.time);s.timeTD=new Element('td').inject(s.time);s.timeInputs=new Element('div').addClass('time clearfix').inject(s.timeTD);s.timeSub=new Element('div',{'class':'timeSub'}).inject(s.timeTD);['hr','min'].each(function(t,i){s[t]=new Element('input',{type:'text','class':t,name:t,events:{focus:function(){this.select()},change:function(){this.selectedDates[when][timeSetMap[t]](s[t].get('value'));this.selectedDates[when].setAMPM(s.ampm.get('value'));this.updateInput()}.bind(this)}}).inject(s.timeInputs);s[t].set('value',currentWhen.format(timeStampMap[t]));if(i<1)s.timeInputs.adopt(new Element('span',{'class':'seperator'}).set('html',":"));new Element('span',{'class':t}).set('html',t).inject(s.timeSub)},this);s.ampm=new Element('select').inject(s.timeInputs);['AM','PM'].each(function(ampm){var opt=new Element('option',{value:ampm,text:ampm.toLowerCase()}).set('html',ampm).inject(s.ampm);if(ampm==currentWhen.format("%p"))opt.selected=true});s.ampm.addEvent('change',function(){var date=this.getDates()[when];var ampm=s.ampm.get('value');if(ampm!=date.format("%p")){date.setAMPM(ampm);this.updateInput()}}.bind(this))}},this);new Element('tr').inject(this.stamps.tbody).adopt(new Element('td',{colspan:2}).adopt(new Element('a',{'class':'closeSticky button',events:{click:function(){this.hide()}.bind(this)}}).set('html','Ok')))},show:function(){this.previous();if(this.options.time){if(!this.stamps.table)this.setupWideView();this.updateView()}},startSet:false,onPick:function(){if((this.options.range&&this.selectedDates.start&&this.selectedDates.end)||!this.options.range){this.previous()}},setSelectedDates:function(e,newDate){if(this.options.range){if(this.selectedDates.start&&this.startSet){if(this.selectedDates.start.getTime()>newDate.getTime()){this.selectedDates.end=new Date(this.selectedDates.start);this.selectedDates.start=newDate}else{this.selectedDates.end=newDate}this.startSet=false}else{this.selectedDates.start=newDate;if(this.selectedDates.end&&this.selectedDates.start.getTime()>this.selectedDates.end.getTime())this.selectedDates.end=new Date(newDate);this.startSet=true}}else{this.previous(e,newDate)}if(this.options.time){this.whens.each(function(when){var hr=this.stamps[when].hr.get('value').toInt();if(this.stamps[when].ampm.get('value')=="PM"&&hr<12)hr+=12;this.selectedDates[when].setHours(hr);this.selectedDates[when].setMinutes(this.stamps[when]['min'].get('value')||"0");this.selectedDates[when].setAMPM(this.stamps[when].ampm.get('value')||"AM")},this)}}});$extend(Browser,{getHost:function(url){return new URI(url).get('host')},getQueryStringValue:function(key,url){return new URI(url).getData(key)},getQueryStringValues:function(url){return new URI(url).getData()},getPort:function(url){return new URI(url).get('port')},redraw:function(element){var n=document.createTextNode(' ');this.adopt(n);(function(){n.dispose()}).delay(1);return this}});window.addEvent('domready',function(){var count=0;function setQs(){function retry(){count++;if(count<20)setQs.delay(50)};try{if(!Browser.getQueryStringValues())retry();else Browser.qs=Browser.getQueryStringValues()}catch(e){retry()}}setQs()});$extend(Class.prototype,{refactor:function(props){this.prototype=Class.refactor(this,props).prototype;return this}});Element.implement({autoMouseOvers:function(options){options=$extend({outString:'_out',overString:'_over',cssOver:'hover',cssOut:'hoverOut',subSelector:'',applyToBoth:false},options);el=this;if(options.subSelector){el=this.getElements(options.subSelector);if(el.every(function(kid){return kid.retrieve('autoMouseOverSetup')}))return this}el.store('autoMouseOverSetup',true);return el.addEvents({mouseenter:function(){this.swapClass(options.cssOut,options.cssOver);if(this.src&&this.src.contains(options.outString))this.src=this.src.replace(options.outString,options.overString);if(options.applyToBoth&&options.subSelector){this.getElements(options.subSelector).each(function(el){el.swapClass(options.cssOut,options.cssOver)})}}.bind(this),mouseleave:function(){this.swapClass(options.cssOver,options.cssOut);if(this.src&&this.src.contains(options.overString))this.src=this.src.replace(options.overString,options.outString);if(options.applyToBoth&&options.subSelector){this.getElements(options.subSelector).each(function(el){el.swapClass(options.cssOver,options.cssOut)})}}.bind(this)}).swapClass(options.cssOver,options.cssOut);el=null}});window.addEvent('domready',function(){$$('img.autoMouseOver').each(function(img){img.autoMouseOvers()})});

}