
   if(!dbugScripts("commerce",["commerce.tron.dfll.js"])) {
   /*	commerce.tron.dfll.js - packed	*/
       var Fixation=new Class({Implements:Options,options:{inset:20,widthOffset:0},initialize:function(C,A,B){this.setOptions(B);this.element=$(C);this.container=$(A);this.coords=this.container.getCoordinates();this.container.size=this.container.getSize();this.defaults=this.element.getStyles("left","top");this.element.size=this.element.getSize();this.options.inset=!isNaN(this.options.inset.toInt())?this.options.inset.toInt():0;this.options.widthOffset=!isNaN(this.options.widthOffset.toInt())?this.options.widthOffset.toInt():0;if(window.MooTools&&MooTools.version=="1.2dev"){this.defaults=new Hash(this.defaults);this.defaults.each(function(E,D){this[D]=!isNaN(E.toInt())?E.toInt():0;}.bind(this.defaults));}else{Object.each(this.defaults,function(E,D){this[D]=!isNaN(E.toInt())?E.toInt():0;}.bind(this.defaults));}this.max={top:this.coords.top-this.options.inset+this.defaults.top,bottom:this.coords.bottom-this.options.inset,colBottom:this.container.size.y-this.element.size.y};this.fixed=false;this.pos={position:"absolute",top:this.defaults.top,left:this.defaults.left};if(!Browser.Engine.trident4&&(this.element.size.y+this.options.inset<window.getSize().y)){this.attachScroll();this.attachResize();}},attachScrollEvent:function(){var B=this.container.getSize().y-this.options.inset;if(this.max==null){return false;}else{if(this.max.bottom!=(B+this.max.top)){this.max.bottom=B+this.max.top;this.max.colBottom=this.container.getSize().y-this.element.getSize().y;}}var A=window.getScroll();if(this.fixed&&A.y<this.max.top){this.pos={position:"absolute",top:this.defaults.top,left:(this.defaults.left-this.options.widthOffset)};this.setPosition();this.fixed=false;}else{if(this.fixed&&(A.y+this.element.size.y)>this.max.bottom){this.pos={position:"absolute",top:this.max.colBottom,left:(this.defaults.left-this.options.widthOffset)};this.setPosition();this.fixed=false;}else{if(!this.fixed&&(A.y>this.max.top)&&(A.y+this.element.size.y<this.max.bottom)){this.pos={position:"fixed",top:this.options.inset,left:(this.coords.left+this.options.widthOffset)};this.setPosition();this.fixed=true;}}}},attachScroll:function(){boundAttachScrollEvent=this.attachScrollEvent.bind(this);window.addEvent("scroll",boundAttachScrollEvent);},detatchScroll:function(){window.removeEvent("scroll",boundAttachScrollEvent);},attachResizeEvent:function(){this.coords=this.container.getCoordinates();if(this.fixed){this.pos.left=this.coords.left+this.options.widthOffset;this.setPosition();}},attachResize:function(){boundAttachResizeEvent=this.attachResizeEvent.bind(this);window.addEvent("resize",boundAttachResizeEvent);},detatchResize:function(){window.removeEvent("resize",boundAttachResizeEvent);},setPosition:function(){this.element.setStyles({position:this.pos.position,top:this.pos.top,left:this.pos.left});}});var ShareBar=new Class({Extends:Fixation,Implements:[Options,Events],options:{defaultView:"side",enableToggle:true,barId:"shareBar",views:{side:{id:"contentBody",element:"#contentBody",position:"bottom"},inline:{element:"#contentBody header",position:"bottom"}},data:{commentCount:"#postComments .countNumber"},adSkin:{regex:/^url\((\")?http:\/\/i\.i\.com\.com\/cnwk.1d\/Ads.*$/gi,element$$:".rb_skin, #rb_skin"}},loaded:{side:false,inline:false},thirdPartyLoading:{google:false,linkedIn:false,twitter:false},initialize:function(A){this.setOptions(A);this.shortURL=this.shareURL;this.processingRequest=false;this.gotShortUrl=false;this.commentCount="0";this.initValues();var B=$$(this.options.adSkin.element$$)[0];B=B!=null?B.getStyle("background-image"):B;if(B!=null&&B.match(this.options.adSkin.regex)!=null){this.options.enableToggle=false;this.requestShareBar("inline");}else{if(!$$(".inline-sharebar")[0]&&document.body.offsetWidth<1200){this.requestShareBar("inline");}else{if(!$(this.options.barId)){this.requestShareBar(this.options.defaultView);}else{this.parent("shareBar",this.options.views.side.id);this.initLevtTracking();if(this.options.enableToggle){this.attachWidthResize();}}}}},initLevtTracking:function(){try{if(twttr){twttr.events.bind("tweet",function(B){this.pingLEVT("twitter","socialbutton");}.bind(this));}$$(".shareContent li .linkIcon").each(function(B){B.addEvent("click",function(){if(B.hasClass("facebook")){this.pingLEVT("facebook","sharelink");}else{if(B.hasClass("twitter")){this.pingLEVT("twitter","sharelink");}else{if(B.hasClass("linkedin")){this.pingLEVT("linkedin","sharelink");}else{if(B.hasClass("digg")){this.pingLEVT("digg","sharelink");}else{if(B.hasClass("delicious")){this.pingLEVT("delicious","sharelink");}else{if(B.hasClass("reddit")){this.pingLEVT("reddit","sharelink");}else{if(B.hasClass("stumble")){this.pingLEVT("stumbleupon","sharelink");}else{if(B.hasClass("google")){this.pingLEVT("google","sharelink");}}}}}}}}}.bind(this));}.bind(this));}catch(A){dbug.log("LEVT tracking failed to initialize!");}},loadScript:function(A,B){if(B){new Asset.javascript(A,{onload:B});}else{new Asset.javascript(A);}},attachWidthResizeEvent:function(){if(document.body.offsetWidth<1200){if(this.loaded.inline||$$(".inline-sharebar")[0]){this.toggleShareBars("inline");}else{this.requestShareBar("inline");}}else{if(this.loaded.side||$$(".side-sharebar")[0]){this.toggleShareBars("side");}else{this.requestShareBar("side");}}},requestShareBar:function(A){if(!this.processingRequest){this.processingRequest=true;new Request({method:"get",url:"http://"+document.location.host+"/html/rb/cnet/"+(Browser.qs&&Browser.qs.htmldebug?"dev-":"")+A+"-sharebar.html",onSuccess:function(B){if(!this.gotShortUrl){new Request({method:"get",url:"http://"+document.location.host+"/posidn/rest/v1.0/shareBarUrlShortener?longUrl="+this.shareURL,onSuccess:function(C,E){try{if(E!=null&&E.getElement("CNETResponse")!=null&&E.getElement("CNETResponse").getElement("cnetCoUrl")!=null&&E.getElement("CNETResponse").getElement("cnetCoUrl").getElement("shortUrl")!=null){this.shortURL=E.getElement("CNETResponse").getElement("cnetCoUrl").getElement("shortUrl").get("text");}else{this.shortURL=this.shareURL;}}catch(D){this.shortURL=this.shareURL;}this.injectShareBar(A,B);this.gotShortUrl=true;}.bind(this),onFailure:function(){this.shortURL=this.shareURL;this.injectShareBar(A,B);}.bind(this)}).send();}else{this.injectShareBar(A,B);}this.processingRequest=false;}.bind(this)}).send();}},injectShareBar:function(A,C){var B=new Element("div",{html:this.replacePlaceholders(C)});B.getChildren()[0].inject($$(this.options.views[A].element)[0],this.options.views[A].position);$$("."+A+"-sharebar .linkedInShareBtn").each(function(D){if(D.get("html")==""&&A=="side"){D.adopt(new Element("script",{type:"IN/Share","data-url":this.shareURL,"data-counter":"top","data-onsuccess":"shareSuccess"}));}else{if(D.get("html")==""&&A=="inline"){D.adopt(new Element("script",{type:"IN/Share","data-url":this.shareURL,"data-counter":"right","data-onsuccess":"shareSuccess"}));}}}.bind(this));this.initializeSocialButtons(A);this.loaded[A]=true;if(A=="side"){new Fixation("shareBar",this.options.views.side.id);}this.initLevtTracking();if(this.options.enableToggle){this.attachWidthResize();}this.toggleShareBars(A);},initValues:function(){var B=(document.URL.contains("?"))?document.URL.substring(0,document.URL.indexOf("?")):document.URL;this.shareURL=(this.options.data.shareURL!=null)?this.options.data.shareURL:B;this.tagPrefix=(this.shareURL.contains("&tag=")||this.shareURL.contains("?tag="))?";":"?tag=";this.shareTitle=(this.options.data.shareTitle!=null)?this.options.data.shareTitle:document.title.split("|")[0].trim();this.shareTitle=this.shareTitle.replace(/'/g,"");this.shareDescription=this.options.data.shareDescription;this.shareSource="CNET";this.diggTopic=(PageVars.get("pageType")=="2100")?"tech_news":"gadgets";var A=setInterval(function(){setTimeout(function(){if($$(this.options.data.commentCount)[0]){this.commentCount=parseFloat($$(this.options.data.commentCount)[0].get("text"));$$(".commentTeaser .countNumber").set("text",this.commentCount);clearInterval(A);}}.bind(this),"200");}.bind(this),"200");},replacePlaceholders:function(A){if(this.shortURL===undefined){this.shortURL=this.shareURL;}A=A.replace(/{{shareUrl}}/g,this.shareURL);A=A.replace(/{{shortUrl}}/g,this.shortURL);A=A.replace(/{{shareTitle}}/g,this.shareTitle);A=A.replace(/{{eShareUrl}}/g,encodeURIComponent(this.shareURL));A=A.replace(/{{eShortUrl}}/g,encodeURIComponent(this.shortURL));A=A.replace(/{{eTagPrefix}}/g,encodeURIComponent(this.tagPrefix));A=A.replace(/{{eShareTitle}}/g,encodeURIComponent(this.shareTitle));A=A.replace(/{{eShareDescription}}/g,encodeURIComponent(this.shareDescription));A=A.replace(/{{eShareSource}}/g,encodeURIComponent(this.shareSource));A=A.replace(/{{eDiggTopic}}/g,encodeURIComponent(this.diggTopic));A=A.replace(/{{commentCount}}/g,this.commentCount);return A;},toggleShareBars:function(A){if(A=="inline"){$$(".side-sharebar").setStyle("display","none");$$(".inline-sharebar").setStyle("display","block");}else{if(A=="side"){$$(".side-sharebar").setStyle("display","block");$$(".inline-sharebar").setStyle("display","none");}}},pingLEVT:function(A,B){new JloggerLEVT.Social.Share({applicationTags:{eventt:"socialsite",tasid:PageVars.get("assetId"),tastid:(DW.pageParams.astId)?DW.pageParams.astId:0,ssite:A,wd:B,wdloc:"sharebar"}}).ping();},initializeSocialButtons:function(A){try{$$(".shareBar a.email").each(function(C){C.removeEvents();C.addEvent("click",PageTools.email);});$$(".shareBar a.print").each(function(C){C.removeEvents();C.addEvent("click",PageTools.print);});if(window.FB){FB.XFBML.parse();}if(typeof twttr==="undefined"&&!this.thirdPartyLoading.twitter){this.thirdPartyLoading.twitter=true;this.loadScript("http://platform.twitter.com/widgets.js",function(){twttr.widgets.load();});}else{twttr.widgets.load();}if(typeof gapi==="undefined"&&!this.thirdPartyLoading.google){this.thirdPartyLoading.google=true;this.loadScript("https://apis.google.com/js/plusone.js",function(){gapi.plusone.go();});}else{gapi.plusone.go();}if(typeof IN==="undefined"&&!this.thirdPartyLoading.linkedIn){this.thirdPartyLoading.linkedIn=true;this.loadScript("https://platform.linkedin.com/in.js?async=true",function(){IN.init();});}else{IN.init();}}catch(B){dbug.log("Uh-oh one of the buttons didn't parse correctly");}},attachWidthResize:function(){boundAttachResizeEvent=this.attachWidthResizeEvent.bind(this);window.addEvent("resize",boundAttachResizeEvent);}});window.addEvent("domready",function(){var A="";if(FacetVars.get("filters")){FacetVars.get("filters").each(function(C,B){A+=B+","+C+";";});}$$("#filters a.applyFilter, #filters a.readMore").addEvent("click",function(F){var E=F.target;var C=null;if(E.hasClass("applyFilter")){C="applyfilter";}else{if(E.hasClass("readMore")){C="seeallfilter";}}var B=E.getProperty("fid");var D=E.getProperty("fvid");new JloggerLEVT.FacetedBrowse.DFLL.ChangeFilter({applicationTags:{eventt:C,filterid:B,filtervid:D,filterstate:A,rpp:FacetVars.get("rpp"),sort:encodeURI(FacetVars.get("sort")),pagenum:PageVars.get("pageNumber")!=""?PageVars.get("pageNumber"):1,results:FacetVars.get("results")}}).ping();});$$("#filterRem a.filterButton").addEvent("click",function(E){var D=E.target;var B=D.getProperty("fid")!=null?D.getProperty("fid"):D.getParent("a.filterButton").getProperty("fid");var C=D.getProperty("fvid")!=null?D.getProperty("fvid"):D.getParent("a.filterButton").getProperty("fvid");new JloggerLEVT.FacetedBrowse.DFLL.ChangeFilter({applicationTags:{eventt:"removefilter",filterid:B,filtervid:C,filterstate:A,rpp:FacetVars.get("rpp"),sort:encodeURI(FacetVars.get("sort")),pagenum:PageVars.get("pageNumber")!=""?PageVars.get("pageNumber"):1,results:FacetVars.get("results")}}).ping();});$$("#filterRem a.filterRemButton").addEvent("click",function(B){new JloggerLEVT.FacetedBrowse.DFLL.ChangeFilter({applicationTags:{eventt:"removeallfilter",filterstate:A,rpp:FacetVars.get("rpp"),sort:encodeURI(FacetVars.get("sort")),pagenum:PageVars.get("pageNumber")!=""?PageVars.get("pageNumber"):1,results:FacetVars.get("results")}}).ping();});$$("select[name=rpp], select[name=sort]").addEvent("change",function(C){var B=C.target;new JloggerLEVT.FacetedBrowse.DFLL.ChangeView({applicationTags:{eventt:B.getProperty("name"),filterstate:A,rpp:FacetVars.get("rpp"),sort:encodeURI(FacetVars.get("sort")),pagenum:PageVars.get("pageNumber")!=""?PageVars.get("pageNumber"):1,results:FacetVars.get("results")}}).ping();});$$("ul.pagination li a").addEvent("click",function(B){new JloggerLEVT.FacetedBrowse.DFLL.ChangeView({applicationTags:{eventt:"paginate",filterstate:A,rpp:FacetVars.get("rpp"),sort:encodeURI(FacetVars.get("sort")),pagenum:PageVars.get("pageNumber")!=""?PageVars.get("pageNumber"):1,results:FacetVars.get("results")}}).ping();});new JloggerLEVT.FacetedBrowse.DFLL.Impression({applicationTags:{filterstate:A,rpp:FacetVars.get("rpp"),sort:encodeURI(FacetVars.get("sort")),pagenum:PageVars.get("pageNumber")!=""?PageVars.get("pageNumber"):1,results:FacetVars.get("results")}}).ping();});var StickyWinModal,StickyWinFxModal;(function(){var A=function(C){return{Extends:C,initialize:function(D){D=D||{};this.setModalOptions($merge(D.modalOptions||{},{onModalHide:function(){this.hide(false);}.bind(this)}));this.parent(D);},show:function(D){if($pick(D,true)){this.modalShow();this.win.getElements(this.modalOptions.elementsToHide).setStyle("opacity",1);}this.parent();},hide:function(D){if($pick(D,true)){this.modalHide();}this.parent($pick(D,true));}};};StickyWinModal=new Class(A(StickyWin));StickyWinModal.implement(new Modalizer);StickyWinFxModal=(typeof StickyWinFx!="undefined")?new Class(A(StickyWinFx)):$empty;try{StickyWinFxModal.implement(new Modalizer());}catch(B){}})();var PromoModal=new Class({Implements:[Options,Events],options:{promoPath:"/html/cnet/reviews/idleMsg.html",timeout:300000,activityReset:true,activityActions:["click","scroll","mousemove","keypress"],testSuccess:function(){return true;}},timer:false,initialize:function(A){this.setOptions(A);this.bound={timerReset:this.resetTimer.bind(this)};this.setTimer();return this;},getContent:function(){this.container=this.container||new Element("div",{id:"promoModal",styles:{display:"none",position:"absolute"}}).inject(document.body);new Request({url:this.options.promoPath,onSuccess:this.success.bind(this),onFailure:this.failure.bind(this),onComplete:this.complete.bind(this)}).send();},success:function(){if(this.options.testSuccess.run(arguments,this)){this.loadPromo.run(arguments,this);this.fireEvent("onSuccess",arguments);}else{this.failure.run(arguments);}},failure:function(){this.fireEvent("onFailure",arguments);},complete:function(){this.fireEvent("onComplete",arguments);},loadPromo:function(A){if(A){this.container.set("html",A);this.promo=new StickyWinModal({content:this.container.get("html"),closeClassName:"closeModal",allowMultiple:false,onClose:function(){this.fireEvent("onClose");}.bind(this)});this.fireEvent("onDisplay");}else{dbug.log("Response text failure");}if(this.options.activityReset&&this.options.activityActions.length){this.options.activityActions.each(function(B){window.removeEvent(B,this.bound.timerReset);},this);}},setTimer:function(){this.startTimer();if(this.options.activityReset&&this.options.activityActions.length){this.options.activityActions.each(function(A){window.addEvent(A,this.bound.timerReset);},this);}},startTimer:function(){this.timer=this.getContent.delay(this.options.timeout,this);},resetTimer:function(){if(this.timer){$clear(this.timer);this.startTimer();}}});PromoModal.GlobalModal=new Class({Extends:PromoModal,loadPromo:function(A){if(A){this.container.set("html",A);this.promo=new GlobalModal({content:this.container.get("html")});this.promo.show();}else{dbug.log("Response text failure");}if(this.options.activityReset&&this.options.activityActions.length){this.options.activityActions.each(function(B){window.removeEvent(B,this.bound.timerReset);},this);}}});var CompareProducts=new Class({Implements:Options,options:{alterLinks:null,submitLinks:null,mainForm:null,listPageType:"4566"},initialize:function(A){this.setOptions(A);this.form=$(this.options.mainForm);this.pids=this.getPassedIds(window.location.href)||[];this.setUpForm();},setUpForm:function(){this.initForm();this.initPageLinks();this.initCheckboxes();},initForm:function(){if(this.options.submitLinks){this.options.submitLinks.each(function(A){A.addEvent("click",function(B){this.fauxSubmit(B);}.bind(this));}.bind(this));}},fauxSubmit:function(B){if(B){B.stop();}if(this.pids.length<2){alert("Please select two or more products to compare.");return ;}var C=this.form.action;C+=(C.contains("?"))?"&":"?";C+=this.getPidString();try{var A=new DWTrack(B.target||this.form,{autoAppend:false}).getTag();if(A!=""){C+="&"+A;}}catch(B){}window.location=C;},initPageLinks:function(){this.options.alterLinks.each(function(A){if(A.getProperty("href")&&A.getProperty("href").contains("/"+this.options.listPageType+"-")){A.addEvent("click",function(C){var B=A.getProperty("href");if(B.match(/\?/)){B=B.replace(/\&*id=[0-9]+/g,"");B=B.replace("?&","?");}if(this.pids.length){B+=(B.match(/\?/))?"&":"?";B+=this.getPidString();}A.setProperty("href",B);}.bind(this));}},this);},initCheckboxes:function(){var A=this.form.getElements("input[type=checkbox]");A.each(function(B){B.addEvent("click",function(){if(B.checked){this.togglePids(B.get("value"),"add");}else{this.togglePids(B.get("value"),"remove");}}.bind(this));if(B.checked){this.pids.include(B.get("value"));}if(this.pids.contains(B.get("value"))){B.checked="checked";}}.bind(this));},togglePids:function(A,B){B=B||null;if(!B){B=(this.pids.contains(A))?"remove":"add";}if(B=="add"){this.pids.include(A);}else{this.pids.erase(A);}},getPidString:function(){if(!this.pids.length){return null;}var B="";for(var A=0;A<this.pids.length;A++){B+="id="+this.pids[A];if(A<this.pids.length-1){B+="&";}}return B;},getPassedIds:function(A){var B=A.match(/id=([0-9]+)/g);if(B){B=B.map(function(C){return C.replace("id=","");});return B;}return null;}});var cleanSubmit=function(A){try{A=$(A);var C=new Link(A.get("action"));A.getElements("input, select, textarea").each(function(D){if($chk(D.get("value"))){C.setQuery(D.get("name"),D.get("value").replace(/\s/,"+","g"));}});window.location=C.get("href");}catch(B){dbug.log("Clean submit error: %o",B);}};var DFLLMenu={Menu:new Class({Implements:[Options,Events,StyleWriter],options:{section$$:"div.section",submit$$:"div.flexButton",submitTag:"dfll_search",resultCheckUrl:PageVars.getPath({pageType:4565,pageNumber:false}),waiterSrc:"http://i.i.com.com/cnwk.1d/i/tron/reviews/dfllTipSpinner.gif",searchButtonSrc:"http://i.i.com.com/cnwk.1d/i/tron/reviews/dfllTipSrch.gif"},initialize:function(B,A){B=$(B);if(B.retrieve("dfllmenu")){return ;}this.element=B;this.setOptions(A);B.store("dfllmenu",this);this.createStyle("#contentNav #filters ul li label.warning, #contentNav #filters ul li span.warning, #contentNav #filters ul li label.warning a {color: #C00;font-weight: bold;} .dfllmenutips .tip-title {text-align: center;} .dfllmenutips .tip-title b {font-size: 120%}","dfllmenu");this.form=(B.get("tag")=="form")?B:B.getElement("form");this.form.reset();this.addFormValidator();this.setTips();this.setResultCheck();this.setSubmit();this.setSections();this.setStates();},setTips:function(){this.form.store("tip:title","Select options to filter your results.");if(!Browser.loaded&&Browser.Engine.trident){this.tips={fill:$empty};window.addEvent("domready",function(){this.tips=new Tips(this.form,{className:"dfllmenutips"});}.bind(this));}else{this.tips=new Tips(this.form,{className:"dfllmenutips"});}new Image().src=this.options.waiterSrc;new Image().src=this.options.searchButtonSrc;},setSubmit:function(){this.bound={doNothing:function(){return false;}.bind(this),onSubmit:this.onSubmit.bind(this)};this.submit=this.form.getElement(this.options.submit$$);this.submit.addEvent("click",this.bound.onSubmit);},setResultCheck:function(){this.requestor=new Request.JSON({url:this.options.resultCheckUrl,async:false,method:"get"});},addFormValidator:function(){this.form.getElements("li.priceFields input[type=text]").addClass("validate-numeric");this.validator=new FormValidator(this.form,{evaluateOnSubmit:false,evaluateFieldsOnChange:false,evaluateFieldsOnBlur:false});},validate:function(){var A;this.validator.reset();this.validator.paused=false;this.form.getElements("li.priceFields input[type=text]").each(function(B){B.value=B.value.replace(",","");});A=this.validator.validate();if(!A){this.relocateButton($(this.form.getElement("li.priceFields input")));}return A;},setSections:function(){this.element.getElements(this.options.section$$).each(function(A){new DFLLMenu.Section(A,this);});this.form.getElements("li > ul").each(function(A){A.getParent("li").addClass("section");});this.form.getElements("li.selected > label").each(function(A){A.addClass("selected");});this.form.getElements("li.section > label input[type=checkbox]").each(function(A){new DFLLMenu.ExpandList(A,this);A.getParent("label").adopt(new Element("span",{"class":"arrow"}));});},setStates:function(){this.form.getElements("input[type=checkbox]").addEvent("click",this.changeState.bind(this));this.form.getElements("input[type=text]").addEvent("keypress",function(A){$clear(this.textTimer);this.textTimer=this.changeTextState.delay(500,this,A);}.bind(this));},changeTextState:function(A){if(this.validator.validate()){this.changeState(A);}},changeState:function(C){this.updateTipText("title",'<img src="'+this.options.waiterSrc+'" style="width: 16px; height: 16px; margin: 0 auto;" class="waiterImg"/><br/>&nbsp;');var B=$(C.target),A=B.getParent("li");if(B.getProperty("type")=="checkbox"){if(B.checked){A.addClass("selected");}else{A.removeClass("selected");}}else{if(this.warned&&B.getProperty("type")=="text"){if(!B.get("value")){this.form.getElements(".warning."+B.getProperty("name").replace("Price","")).removeClass("warning");}}}if(!B.checked){A.removeClass("warning");A.getChildren("label").removeClass("warning");}this.requestor.send(this.getLink().setQuery("nomesh",null).get("queryString").replace("?",""));this.checkResults(this.requestor.response.json,C);this.relocateButton(B);},relocateButton:function(C){var D;if($type(C)=="event"){C=$(C.target);}var B=C.getParent(this.options.section$$),A=B.getElement(this.options.submit$$);if(A){A.setStyle("display","block");}else{D=this.submit.clone().cloneEvents(this.submit);D.setStyle("display","none");D.inject(B);D.reveal({onComplete:function(){if(this.warned){D.fade(0.3);}}.bind(this)});}},onSubmit:function(B){var A=(B)?$(B.target):null;if(B){B.stop();}if(!this.validate()){return false;}window.location.href=this.getLink(A).setQuery("tag",this.getSubmitTag(A)).get("href");},getLink:function(){var A=this.form.getElements("input[checked]"),B=new Link(PageVars.getPath({pageNumber:false})).mergeQueryString(window.location.search).mergeQueryString({minPrice:false,maxPrice:false,tag:false});A=A.map(function(C){return C.get("value");});B.setQuery("filter",A.join("_"));this.element.getElements("input[type=text], input[type=hidden]").each(function(C){if(C.get("value")){B.setQuery(C.get("name"),C.get("value"));}});return B;},getSubmitTag:function(D){var A=this.options.submitTag,C,B,E;if(D){C=D.getParent(this.options.section$$)||D;B=C.getElement("h3");if(B){E=B.get("text").toLowerCase().replace(" ","_");A+=";"+E;}B=C.getElement("ul");if(B){E=B.getProperty("section");}if(E){A+=";"+E;}}return A;},checkResults:function(B,C){this.form.getElements(".warning").removeClass("warning");var A;if(B&&B.CNETResponse&&!B.CNETResponse.Error){A=B.CNETResponse.TechProducts["@numFound"].toInt();if(A){if(this.warned){this.removeWarnings();}this.updateTipText("title","<b>"+A+" result"+(A>1?"s ":" ")+'found</b><br/>Click <img src="'+this.options.searchButtonSrc+'" width="46" height="13" alt="search" style="vertical-align:bottom;" /> to view.');}else{this.addWarnings(C);}}else{this.removeWarnings();this.updateTipText("title",'Click <img src="'+this.options.searchButtonSrc+'" width="46" height="13" alt="search" style="vertical-align:bottom;" /> to view results.');}},updateTipText:function(A,B){if(!["title","text"].contains(A)){return false;}this.form.store("tip:"+A,B);this.tips.fill(this.tips[A+"Element"],B);},addWarnings:function(D){var A=this.form.getElements(this.options.submit$$),C=this.form.getElements("li.selected"),B=this.form.getElements("input[name$=Price]");$$(C,C.getChildren("label")).addClass("warning");B.each(function(E){if(E.get("value")){E.getParent("ul").getElement("."+E.getProperty("name").replace("Price","")).addClass("warning");}});this.updateTipText("title","<b>No results found</b><br/>Please change your selections.");new Jlogger({tag:"dfll_noresults",srcUrl:this.getLink().get("href")}).ping();A.fade(0.3);A.removeEvent("click",this.bound.onSubmit);this.form.addEvent("submit",this.bound.doNothing);this.warned=true;},removeWarnings:function(){var A=this.form.getElements(this.options.submit$$);A.fade("in");A.addEvent("click",this.bound.onSubmit);this.form.removeEvent("submit",this.bound.doNothing);this.warned=false;}}),Section:new Class({Implements:[Options,Events],options:{list$$:"ul",showCount:7,seeMore$$:".seeAll",seeMoreLink$$:"a.readMore",idealHeight:200},initialize:function(B,D,A){var C;this.setOptions(A);B=$(B);if(B.retrieve("dfllmenusection")){return false;}C=B.getElement(this.options.seeMore$$);if(!C){return false;}this.seeMore=C;this.element=B;B.store("dfflmenusection",this);this.menu=D;this.list=B.getElement(this.options.list$$);this.topNodes=this.list.getChildren("li");this.setInitialDisplay();this.initSeeMore();},setInitialDisplay:function(){if(this.topNodes.length<=this.options.showCount){this.seeMore.setStyle("display","none");return ;}this.hideOthers();this.height=this.list.getSize().y;},initSeeMore:function(){var A=this.seeMore.getElement(this.options.seeMoreLink$$);if(!A){return ;}A.addEvent("click",this.seeMoreClick.bind(this));},seeMoreClick:function(){var B=this.seeMore.getElement(this.options.seeMoreLink$$),A=this.element.getSize().y;if(!this.list.hasClass("expanded")){this.list.setStyle("height",(A<this.options.idealHeight)?this.options.idealHeight:A);this.topNodes.setStyle("display","block");B.set("text",B.get("text").replace("See all","See fewer"));this.list.addClass("expanded");}else{this.list.setStyle("height","auto");this.list.removeClass("expanded");this.hideOthers();B.set("text",B.get("text").replace("See fewer","See all"));}},findToShow:function(){var B=this.list.getChildren(".selected"),A;if(!B.length){A=this.topNodes.filter(function(D,C){return C<this.options.showCount;},this);}else{A=B;}return A;},hideOthers:function(A){A=A||this.findToShow();this.topNodes.each(function(B){B.setStyle("display",(A.contains(B))?"block":"none");});}}),ExpandList:new Class({Implements:Options,options:{},initialize:function(B,C,A){this.element=$(B);this.menu=C;this.setOptions(A);this.initList();},initList:function(){this.element.addEvent("click",this.onChange.bind(this));},onChange:function(D){var C=$(D.target),B=C.getParent("li"),A=B.getChildren("ul");if(A.length){A=A[0];if(C.checked){A.set({"class":"selected",styles:{display:"none"}});B.addClass("selected");C.getParent("label").addClass("selected");$$(B.getElements("input")).setStyle("display","block");A.reveal();}else{var E=A.getElements("ul");$$($A(E.getElements("input")).flatten()).setStyle("display","none");A.get("reveal").chain(function(){$$(B,B.getElements(".selected")).removeClass("selected");B.getElements("input[checked]").removeProperty("checked");E.setStyles({display:"none"});});A.dissolve();}}}})};var ThumbScroller=new Class({Extends:Fx.Scroll,scrollOptions:{thumbs:".box",axis:"x",thumbContainer:null,nav:{},startIndex:0,tolerance:0},initialize:function(A,B){if(typeof (A)=="string"){if($(A).retrieve("thumbscroller")){return false;}}else{if(A.retrieve("thumbscroller")){return false;}}this.parent(A,$merge(this.scrollOptions,B));this.element.store("thumbscroller",this);this.element.setStyle("overflow","hidden");this.computeDimensions();this.initNav();this.toIndex(this.options.startIndex);this.lastScroll=null;this.fireEvent("onInitialize");return this;},computeDimensions:function(){this.thumbs=this.element.getElements(this.options.thumbs);this.setParentSize();this.positions=this.getLocations();return this;},isAtEnd:function(A){A=A||this.getRange();var B=A[A.length-1];return(B.index==this.thumbs.length-1&&(B.type!="partial"||B.tolerated));},isAtStart:function(A){A=A||this.getRange();var B=A[0];return(B.index==0&&(B.type!="partial"||B.tolerated));},getLocations:function(){return this.thumbs.map(function(B){var C=B.getComputedSize()[this.getDir("total")];var A=B.getPosition(B.getParent())[this.getDir("xy")];return{size:C,start:A,end:C+A};},this);},initNav:function(){try{if(typeof (this.options.nav.next)=="string"){$$(this.options.nav.next).addEvent("click",this.toNextScreen.bind(this));}else{if(this.options.nav.next instanceof Array){this.options.nav.next[0].addEvent("click",this.toNextScreen.bind(this));}else{this.options.nav.next.addEvent("click",this.toNextScreen.bind(this));}}if(typeof (this.options.nav.previous)=="string"){$$(this.options.nav.previous).addEvent("click",this.toPreviousScreen.bind(this));}else{if(this.options.nav.previous instanceof Array){this.options.nav.previous[0].addEvent("click",this.toPreviousScreen.bind(this));}else{this.options.nav.previous.addEvent("click",this.toPreviousScreen.bind(this));}}if(typeof (this.options.nav.start)=="string"){$$(this.options.nav.start).addEvent("click",this.toStart.bind(this));}else{if(this.options.nav.start instanceof Array){this.options.nav.start[0].addEvent("click",this.toStart.bind(this));}else{this.options.nav.start.addEvent("click",this.toStart.bind(this));}}if(typeof (this.options.nav.end)=="string"){$$(this.options.nav.end).addEvent("click",this.toEnd.bind(this));}else{if(this.options.nav.end instanceof Array){this.options.nav.end[0].addEvent("click",this.toEnd.bind(this));}else{this.options.nav.end.addEvent("click",this.toEnd.bind(this));}}}catch(A){}},getDir:function(A){switch(A){case"total":if(this.options.axis=="y"){return"totalHeight";}return"totalWidth";case"dir":if(this.options.axis=="y"){return"height";}return"width";case"xy":default:if(this.options.axis=="y"){return"y";}return"x";}},getStart:function(A){if(this.options.axis=="y"){return[0,A];}return[A,0];},getStartPx:function(A){if(!A){return 0;}return this.positions[A].start-(this.positions[A].start-this.positions[A-1].end);},setParentSize:function(){var A=(this.options.thumbContainer)?this.element.getElement(this.options.thumbContainer):this.element.getElement(this.options.thumbs).getParent();var B=0;$each(this.thumbs,function(C){B+=C.getComputedSize({styles:["padding","border","margin"]})[this.getDir("total")];},this);A.setStyle(this.getDir("dir"),B);},getRange:function(E){if(isNaN(E)){E=this.element.getScroll()[this.getDir("xy")];}var D=this.element.getComputedSize({styles:["padding"]})[this.getDir("total")];var C=[];for(var A=0;A<this.positions.length;A++){var B=this.withinRange(this.positions[A],E,E+D);if(B){C.push($merge(B,{index:A}));if(B.where=="end"){break;}}}return C;},withinRange:function(C,B,A){if(C.end>B&&C.end<=A){if(C.start>=B){return{type:"full"};}else{return{type:"partial",where:"start",tolerated:((B-C.start)<=this.options.tolerance)};}}else{if(C.start>=B&&C.start<A){return{type:"partial",where:"end",tolerated:((C.start-A)<this.options.tolerance)};}else{if(C.start<B&&C.end>A){return{type:"full"};}}}return false;},toNextScreen:function(){var A=this.getRange();if(A.getLast().type=="partial"&&!A.getLast().tolerated&&A.length>1){this.start.run(this.getStart(this.getStartPx(A.getLast().index)),this);}else{if($(this.thumbs[A.getLast().index+1])){this.start.run(this.getStart(this.getStartPx(A.getLast().index+1)),this);}else{this.toEnd();}}this.lastScroll="next";},toPreviousScreen:function(){var A=this.getRange();var C=(A[0].type=="partial"&&!A[0].tolerated&&A.length>1)?A[0].index:A[0].index-1;if(!this.positions[C]){this.toStart();return ;}var B=this.positions[C].end-this.element.getComputedSize({styles:["padding"]})[this.getDir("total")];var E=this.getRange(B);var D=(E[0].type=="partial"&&E.length>1)?E[0].index+1:E[0].index;this.start.run(this.getStart(this.getStartPx(D)),this);this.lastScroll="previous";},toIndex:function(A){this.start.run(this.getStart(this.getStartPx(parseInt(A))),this);},toStart:function(){if(this.options.axis=="y"){this.toTop();}else{this.toLeft();}},toEnd:function(){if(this.options.axis=="y"){this.toBottom();}else{this.toRight();}}});var JsonP=new Class({Implements:[Options,Events],options:{callBackKey:"callback",queryString:"",data:{},timeout:5000,retries:0},initialize:function(B,A){this.setOptions(A);this.url=this.makeUrl(B).url;this.fired=false;this.scripts=[];this.requests=0;this.triesRemaining=[];},request:function(C,E){var B=this.makeUrl(C);if(!$chk(E)){E=this.requests;this.requests++;}if(!$chk(this.triesRemaining[E])){this.triesRemaining[E]=this.options.retries;}var D=this.triesRemaining[E];dbug.log("retrieving by json script method: %s",B.url);var A=(Browser.Engine.trident)?50:0;(function(){var F=new Element("script",{src:B.url,type:"text/javascript",id:"jsonp_"+B.index+"_"+E});this.fired=true;this.addEvent("onComplete",function(){try{F.dispose();}catch(G){}}.bind(this));F.inject(document.head);if(D){(function(){this.triesRemaining[E]=D-1;if(F.getParent()&&D){dbug.log("removing script (%o) and retrying: try: %s, remaining: %s",E,D);F.dispose();this.request(C,E);}}).delay(this.options.timeout,this);}}.bind(this)).delay(A);return this;},makeUrl:function(B){var A;if(JsonP.requestors.contains(this)){A=JsonP.requestors.indexOf(this);}else{A=JsonP.requestors.push(this)-1;JsonP.requestors["request_"+A]=this;}if(B){var D=(B.test("\\?"))?"&":"?";var C=B+D+this.options.callBackKey+"=JsonP.requestors.request_"+A+".handleResults";if(this.options.queryString){C+="&"+this.options.queryString;}C+="&"+Hash.toQueryString(this.options.data);}else{var C=this.url;}return{url:C,index:A};},handleResults:function(A){dbug.log("jsonp received: ",A);this.fireEvent("onComplete",[A,this]);}});JsonP.requestors=[];if(!UserLists){var UserLists={};UserLists.Manager={listForms:new Hash({}),getUserListModal:function(B,A){CURS.Manager.checkLogin({loginHed:"Log in to CNET to add this product to a list",registerHed:"Join CNET to add this product to a list",appId:222,cval:"userlist",nextAction:function(){if(B=="AddToList"||B=="CreateList"){UserLists.Manager.initListAssetData(A);}UserLists.Manager.getUserListFiles(B);}.bind(UserLists)});},getUserListFiles:function(A){var B;if(dbug.enabled||(Browser.qs&&Browser.qs.jsdebug)){if(CBSi.jsdebug){if(CBSi.jsdebug=="true"){B="http://publish.cnet.com:8100/html/rb/js/tron/techtracker/techtracker.tron.userlists.process.js";}else{B="http://publish.cnet.com:8100/html/rb/js/~dev/"+CBSi.jsdebug+"/techtracker/techtracker.tron.userlists.process.js";}}else{B="http://i.i.com.com/cnwk.1d/html/rb/js/tron/techtracker/techtracker.tron.userlists.process.compressed.js";}}else{B="http://i.i.com.com/cnwk.1d/html/rb/js/tron/techtracker/techtracker.tron.userlists.process.compressed.js";}if(!UserLists.Process){new Asset.javascript(B,{id:"userListsProcess",onload:(!A)?function(){}:this.getUserListModalHtml.bind(this,A)});}else{if(A){this.getUserListModalHtml(A);}}},startProcess:function(A){dbug.log("start user list process");if(UserLists.Process&&$("userListShell")){UserLists.Process.showUserListForm(A);}},getUserListModalHtml:function(B){var A=new Hash();UserLists.UserListData.listItemsToAdd.each(function(C){if(C.assetTypeId==2){A.extend({techProductId:true});}else{if(C.assetTypeId==24){A.extend({softwareProductId:true});}}});if(!document.body.getElement(".globalModal.userList")){new Element("div",{id:"userListShell",styles:{display:"none"}}).inject(document.body);new Request({url:"/8690-4_"+PageVars.get("siteId")+"-0.html?nomesh&"+$time(),data:A,method:"get",onSuccess:function(C){$("userListShell").set("html",C);if($("userHasLists")){UserLists.Manager.userHasLists=true;}UserLists.Process.showUserListForm(B);}.bind(UserLists)}).send();}else{UserLists.Process.showUserListForm(B);}},initFormValidator:function(A){UserLists.Manager.listForms[A].validator=new UserListFormValidator($(A).getElement("form"),{evaluateFieldsOnBlur:false,evaluateFieldsOnChange:false,evaluateOnSubmit:false,errorPrefix:""});},initListAssetData:function(A){UserLists.UserListData.listItemsToAdd.empty();UserLists.Manager.cvalTarget=(!$$(A).getParent(".contentTools"))?"button":"link";dbug.log(A);if(!A.length){A=[A];}A.each(function(C){var B={assetId:C.getProperty("productid").toInt(),assetTypeId:C.getProperty("producttype").toInt(),name:C.getProperty("productname"),image:C.getProperty("productimage")};dbug.log(B);if(C.getProperty("productSetId")){B.productSetId=C.getProperty("productsetid").toInt();}UserLists.UserListData.listItemsToAdd.push(B);});},pingDW:function(A,B,C){new Jlogger({asId:(UserLists.UserListData.listItemsToAdd.length>0)?UserLists.UserListData.listItemsToAdd[0].assetId:PageVars.get("assetId"),tag:A,element:false,ctype:B,cval:C}).ping();}};UserLists.ListItem={getItemAssetId:function(A){if(UserLists.ListItem.assetId){return UserLists.ListItem.assetId;}else{if(A){return A;}}},getItemAssetTypeId:function(A){if(UserLists.ListItem.assetTypeId){return UserLists.ListItem.assetTypeId;}else{if(A){return A;}}},getItemName:function(A){if(UserLists.ListItem.assetName){return UserLists.ListItem.assetName;}else{if(A){return A;}}},getDownloadProductSetId:function(A){if(UserLists.ListItem.productSetId){return UserLists.ListItem.productSetId;}else{if(A){return A;}}},getItemImage:function(A){if(UserLists.ListItem.assetImage){return UserLists.ListItem.assetImage;}else{if(A){return A;}}}};UserLists.UserListData={userListDataObj:new Hash(),addToListLaunchTarget:new Hash(),listItemsToAdd:[],listsAddedTo:[],addToDataObj:function(B,A){UserLists.UserListData.userListDataObj.extend({field:decodeURIComponent(A)});},getListId:function(){if(PageVars.get("pageType")==3460){if(PageVars.get("assetId")!=0){return PageVars.get("assetId");}else{return $("editList").getElement("input[name=listId]").get("value");}}}};}window.addEvent("domready",function(){$$("a.linkIcon.addToList").setStyle("visibility","visible");});MooTools.More={version:"1.2.5.1",build:"254884f2b83651bf95260eed5c6cceb838e22d8e"};(function(){var A={language:"en-US",languages:{"en-US":{}},cascades:["en-US"]};var B;MooTools.lang=new Events();$extend(MooTools.lang,{setLanguage:function(C){if(!A.languages[C]){return this;}A.language=C;this.load();this.fireEvent("langChange",C);return this;},load:function(){var C=this.cascade(this.getCurrentLanguage());B={};$each(C,function(E,D){B[D]=this.lambda(E);},this);},getCurrentLanguage:function(){return A.language;},addLanguage:function(C){A.languages[C]=A.languages[C]||{};return this;},cascade:function(E){var C=(A.languages[E]||{}).cascades||[];C.combine(A.cascades);C.erase(E).push(E);var D=C.map(function(F){return A.languages[F];},this);return $merge.apply(this,D);},lambda:function(C){(C||{}).get=function(E,D){return $lambda(C[E]).apply(this,$splat(D));};return C;},get:function(E,D,C){if(B&&B[E]){return(D?B[E].get(D,C):B[E]);}},set:function(D,E,C){this.addLanguage(D);langData=A.languages[D];if(!langData[E]){langData[E]={};}$extend(langData[E],C);if(D==this.getCurrentLanguage()){this.load();this.fireEvent("langChange",D);}return this;},list:function(){return Hash.getKeys(A.languages);}});})();(function(){var I=this.Date;if(!I.now){I.now=$time;}I.Methods={ms:"Milliseconds",year:"FullYear",min:"Minutes",mo:"Month",sec:"Seconds",hr:"Hours"};["Date","Day","FullYear","Hours","Milliseconds","Minutes","Month","Seconds","Time","TimezoneOffset","Week","Timezone","GMTOffset","DayOfYear","LastMonth","LastDayOfMonth","UTCDate","UTCDay","UTCFullYear","AMPM","Ordinal","UTCHours","UTCMilliseconds","UTCMinutes","UTCMonth","UTCSeconds","UTCMilliseconds"].each(function(P){I.Methods[P.toLowerCase()]=P;});var D=function(Q,P){return new Array(P-String(Q).length+1).join("0")+Q;};I.implement({set:function(S,Q){switch($type(S)){case"object":for(var R in S){this.set(R,S[R]);}break;case"string":S=S.toLowerCase();var P=I.Methods;if(P[S]){this["set"+P[S]](Q);}}return this;},get:function(Q){Q=Q.toLowerCase();var P=I.Methods;if(P[Q]){return this["get"+P[Q]]();}return null;},clone:function(){return new I(this.get("time"));},increment:function(P,R){P=P||"day";R=$pick(R,1);switch(P){case"year":return this.increment("month",R*12);case"month":var Q=this.get("date");this.set("date",1).set("mo",this.get("mo")+R);return this.set("date",Q.min(this.get("lastdayofmonth")));case"week":return this.increment("day",R*7);case"day":return this.set("date",this.get("date")+R);}if(!I.units[P]){throw new Error(P+" is not a supported interval");}return this.set("time",this.get("time")+R*I.units[P]());},decrement:function(P,Q){return this.increment(P,-1*$pick(Q,1));},isLeapYear:function(){return I.isLeapYear(this.get("year"));},clearTime:function(){return this.set({hr:0,min:0,sec:0,ms:0});},diff:function(Q,P){if($type(Q)=="string"){Q=I.parse(Q);}return((Q-this)/I.units[P||"day"](3,3)).round();},getLastDayOfMonth:function(){return I.daysInMonth(this.get("mo"),this.get("year"));},getDayOfYear:function(){return(I.UTC(this.get("year"),this.get("mo"),this.get("date")+1)-I.UTC(this.get("year"),0,1))/I.units.day();},getWeek:function(){return(this.get("dayofyear")/7).ceil();},getOrdinal:function(P){return I.getMsg("ordinal",P||this.get("date"));},getTimezone:function(){return this.toString().replace(/^.*? ([A-Z]{3}).[0-9]{4}.*$/,"$1").replace(/^.*?\(([A-Z])[a-z]+ ([A-Z])[a-z]+ ([A-Z])[a-z]+\)$/,"$1$2$3");},getGMTOffset:function(){var P=this.get("timezoneOffset");return((P>0)?"-":"+")+D((P.abs()/60).floor(),2)+D(P%60,2);},setAMPM:function(P){P=P.toUpperCase();var Q=this.get("hr");if(Q>11&&P=="AM"){return this.decrement("hour",12);}else{if(Q<12&&P=="PM"){return this.increment("hour",12);}}return this;},getAMPM:function(){return(this.get("hr")<12)?"AM":"PM";},parse:function(P){this.set("time",I.parse(P));return this;},isValid:function(P){return !isNaN((P||this).valueOf());},format:function(P){if(!this.isValid()){return"invalid date";}if(!P){P="%x %X";}P=K[P.toLowerCase()]||P;var Q=this;return P.replace(/%([a-z%])/gi,function(S,R){switch(R){case"a":return I.getMsg("days")[Q.get("day")].substr(0,3);case"A":return I.getMsg("days")[Q.get("day")];case"b":return I.getMsg("months")[Q.get("month")].substr(0,3);case"B":return I.getMsg("months")[Q.get("month")];case"c":return Q.toString();case"d":return D(Q.get("date"),2);case"D":return Q.get("date");case"e":return Q.get("date");case"H":return D(Q.get("hr"),2);case"I":return((Q.get("hr")%12)||12);case"j":return D(Q.get("dayofyear"),3);case"m":return D((Q.get("mo")+1),2);case"M":return D(Q.get("min"),2);case"o":return Q.get("ordinal");case"p":return I.getMsg(Q.get("ampm"));case"s":return Math.round(Q/1000);case"S":return D(Q.get("seconds"),2);case"U":return D(Q.get("week"),2);case"w":return Q.get("day");case"x":return Q.format(I.getMsg("shortDate"));case"X":return Q.format(I.getMsg("shortTime"));case"y":return Q.get("year").toString().substr(2);case"Y":return Q.get("year");case"T":return Q.get("GMTOffset");case"Z":return Q.get("Timezone");case"z":return D(Q.get("ms"),3);}return R;});},toISOString:function(){return this.format("iso8601");}});I.alias("toISOString","toJSON");I.alias("diff","compare");I.alias("format","strftime");var K={db:"%Y-%m-%d %H:%M:%S",compact:"%Y%m%dT%H%M%S",iso8601:"%Y-%m-%dT%H:%M:%S%T",rfc822:"%a, %d %b %Y %H:%M:%S %Z","short":"%d %b %H:%M","long":"%B %d, %Y %H:%M"};var G=[];var E=I.parse;var N=function(S,U,R){var Q=-1;var T=I.getMsg(S+"s");switch($type(U)){case"object":Q=T[U.get(S)];break;case"number":Q=T[U];if(!Q){throw new Error("Invalid "+S+" index: "+U);}break;case"string":var P=T.filter(function(V){return this.test(V);},new RegExp("^"+U,"i"));if(!P.length){throw new Error("Invalid "+S+" string");}if(P.length>1){throw new Error("Ambiguous "+S);}Q=P[0];}return(R)?T.indexOf(Q):Q;};I.extend({getMsg:function(Q,P){return MooTools.lang.get("Date",Q,P);},units:{ms:$lambda(1),second:$lambda(1000),minute:$lambda(60000),hour:$lambda(3600000),day:$lambda(86400000),week:$lambda(608400000),month:function(Q,P){var R=new I;return I.daysInMonth($pick(Q,R.get("mo")),$pick(P,R.get("year")))*86400000;},year:function(P){P=P||new I().get("year");return I.isLeapYear(P)?31622400000:31536000000;}},daysInMonth:function(Q,P){return[31,I.isLeapYear(P)?29:28,31,30,31,30,31,31,30,31,30,31][Q];},isLeapYear:function(P){return((P%4===0)&&(P%100!==0))||(P%400===0);},parse:function(R){var Q=$type(R);if(Q=="number"){return new I(R);}if(Q!="string"){return R;}R=R.clean();if(!R.length){return null;}var P;G.some(function(T){var S=T.re.exec(R);return(S)?(P=T.handler(S)):false;});return P||new I(E(R));},parseDay:function(P,Q){return N("day",P,Q);},parseMonth:function(Q,P){return N("month",Q,P);},parseUTC:function(Q){var P=new I(Q);var R=I.UTC(P.get("year"),P.get("mo"),P.get("date"),P.get("hr"),P.get("min"),P.get("sec"),P.get("ms"));return new I(R);},orderIndex:function(P){return I.getMsg("dateOrder").indexOf(P)+1;},defineFormat:function(P,Q){K[P]=Q;},defineFormats:function(P){for(var Q in P){I.defineFormat(Q,P[Q]);}},parsePatterns:G,defineParser:function(P){G.push((P.re&&P.handler)?P:L(P));},defineParsers:function(){Array.flatten(arguments).each(I.defineParser);},define2DigitYearStart:function(P){H=P%100;M=P-H;}});var M=1900;var H=70;var J=function(P){return new RegExp("(?:"+I.getMsg(P).map(function(Q){return Q.substr(0,3);}).join("|")+")[a-z]*");};var A=function(P){switch(P){case"x":return((I.orderIndex("month")==1)?"%m[-./]%d":"%d[-./]%m")+"([-./]%y)?";case"X":return"%H([.:]%M)?([.:]%S([.:]%s)?)? ?%p? ?%T?";}return null;};var O={d:/[0-2]?[0-9]|3[01]/,H:/[01]?[0-9]|2[0-3]/,I:/0?[1-9]|1[0-2]/,M:/[0-5]?\d/,s:/\d+/,o:/[a-z]*/,p:/[ap]\.?m\.?/,y:/\d{2}|\d{4}/,Y:/\d{4}/,T:/Z|[+-]\d{2}(?::?\d{2})?/};O.m=O.I;O.S=O.M;var C;var B=function(P){C=P;O.a=O.A=J("days");O.b=O.B=J("months");G.each(function(R,Q){if(R.format){G[Q]=L(R.format);}});};var L=function(R){if(!C){return{format:R};}var P=[];var Q=(R.source||R).replace(/%([a-z])/gi,function(T,S){return A(S)||T;}).replace(/\((?!\?)/g,"(?:").replace(/ (?!\?|\*)/g,",? ").replace(/%([a-z%])/gi,function(T,S){var U=O[S];if(!U){return S;}P.push(S);return"("+U.source+")";}).replace(/\[a-z\]/gi,"[a-z\\u00c0-\\uffff]");return{format:R,re:new RegExp("^"+Q+"$","i"),handler:function(V){V=V.slice(1).associate(P);var S=new I().clearTime(),U=V.y||V.Y;if(U!=null){F.call(S,"y",U);}if("d" in V){F.call(S,"d",1);}if("m" in V||"b" in V||"B" in V){F.call(S,"m",1);}for(var T in V){F.call(S,T,V[T]);}return S;}};};var F=function(P,Q){if(!Q){return this;}switch(P){case"a":case"A":return this.set("day",I.parseDay(Q,true));case"b":case"B":return this.set("mo",I.parseMonth(Q,true));case"d":return this.set("date",Q);case"H":case"I":return this.set("hr",Q);case"m":return this.set("mo",Q-1);case"M":return this.set("min",Q);case"p":return this.set("ampm",Q.replace(/\./g,""));case"S":return this.set("sec",Q);case"s":return this.set("ms",("0."+Q)*1000);case"w":return this.set("day",Q);case"Y":return this.set("year",Q);case"y":Q=+Q;if(Q<100){Q+=M+(Q<H?100:0);}return this.set("year",Q);case"T":if(Q=="Z"){Q="+00";}var R=Q.match(/([+-])(\d{2}):?(\d{2})?/);R=(R[1]+"1")*(R[2]*60+(+R[3]||0))+this.getTimezoneOffset();return this.set("time",this-R*60000);}return this;};I.defineParsers("%Y([-./]%m([-./]%d((T| )%X)?)?)?","%Y%m%d(T%H(%M%S?)?)?","%x( %X)?","%d%o( %b( %Y)?)?( %X)?","%b( %d%o)?( %Y)?( %X)?","%Y %b( %d%o( %X)?)?","%o %b %d %X %T %Y");MooTools.lang.addEvent("langChange",function(P){if(MooTools.lang.get("Date")){B(P);}}).fireEvent("langChange",MooTools.lang.getCurrentLanguage());})();Date.implement({timeDiffInWords:function(A){return Date.distanceOfTimeInWords(this,A||new Date);},timeDiff:function(G,B){if(G==null){G=new Date;}var F=((G-this)/1000).toInt();if(!F){return"0s";}var A={s:60,m:60,h:24,d:365,y:0};var E,D=[];for(var C in A){if(!F){break;}if((E=A[C])){D.unshift((F%E)+C);F=(F/E).toInt();}else{D.unshift(F+C);}}return D.join(B||":");}});Date.alias("timeDiffInWords","timeAgoInWords");Date.extend({distanceOfTimeInWords:function(B,A){return Date.getTimePhrase(((A-B)/1000).toInt());},getTimePhrase:function(F){var D=(F<0)?"Until":"Ago";if(F<0){F*=-1;}var B={minute:60,hour:60,day:24,week:7,month:52/12,year:12,eon:Infinity};var E="lessThanMinute";for(var C in B){var A=B[C];if(F<1.5*A){if(F>0.75*A){E=C;}break;}F/=A;E=C+"s";}return Date.getMsg(E+D,F).substitute({delta:F.round()});}});Date.defineParsers({re:/^(?:tod|tom|yes)/i,handler:function(A){var B=new Date().clearTime();switch(A[0]){case"tom":return B.increment();case"yes":return B.decrement();default:return B;}}},{re:/^(next|last) ([a-z]+)$/i,handler:function(D){var E=new Date().clearTime();var B=E.getDay();var C=Date.parseDay(D[2],true);var A=C-B;if(C<=B){A+=7;}if(D[1]=="last"){A-=7;}return E.set("date",E.getDate()+A);}});MooTools.lang.set("en-US","Date",{months:["January","February","March","April","May","June","July","August","September","October","November","December"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dateOrder:["month","date","year"],shortDate:"%m/%d/%Y",shortTime:"%I:%M%p",AM:"AM",PM:"PM",ordinal:function(A){return(A>3&&A<21)?"th":["th","st","nd","rd","th"][Math.min(A%10,4)];},lessThanMinuteAgo:"less than a minute ago",minuteAgo:"about a minute ago",minutesAgo:"{delta} minutes ago",hourAgo:"about an hour ago",hoursAgo:"about {delta} hours ago",dayAgo:"1 day ago",daysAgo:"{delta} days ago",weekAgo:"1 week ago",weeksAgo:"{delta} weeks ago",monthAgo:"1 month ago",monthsAgo:"{delta} months ago",yearAgo:"1 year ago",yearsAgo:"{delta} years ago",lessThanMinuteUntil:"less than a minute from now",minuteUntil:"about a minute from now",minutesUntil:"{delta} minutes from now",hourUntil:"about an hour from now",hoursUntil:"about {delta} hours from now",dayUntil:"1 day from now",daysUntil:"{delta} days from now",weekUntil:"1 week from now",weeksUntil:"{delta} weeks from now",monthUntil:"1 month from now",monthsUntil:"{delta} months from now",yearUntil:"1 year from now",yearsUntil:"{delta} years from now"});var cloneOf=function(A){switch(typeOf(A)){case"array":return A.clone();case"object":return Object.clone(A);default:return A;}};Array.implement("clone",function(){var A=this.length,B=new Array(A);while(A--){B[A]=cloneOf(this[A]);}return B;});var mergeOne=function(B,A,C){switch(typeOf(C)){case"object":if(typeOf(B[A])=="object"){Object.merge(B[A],C);}else{B[A]=Object.clone(C);}break;case"array":B[A]=C.clone();break;default:B[A]=C;}return B;};Object.extend({merge:function(G,C,B){if(typeOf(C)=="string"){return mergeOne(G,C,B);}for(var F=1,A=arguments.length;F<A;F++){var D=arguments[F];for(var E in D){mergeOne(G,E,D[E]);}}return G;},clone:function(A){var C={};for(var B in A){C[B]=cloneOf(A[B]);}return C;},append:function(E){for(var D=1,B=arguments.length;D<B;D++){var A=arguments[D]||{};for(var C in A){E[C]=A[C];}}return E;}});var typeOf=this.typeOf=function(A){if(A==null){return"null";}if(A.nodeName){if(A.nodeType==1){return"element";}if(A.nodeType==3){return(/\S/).test(A.nodeValue)?"textnode":"whitespace";}}else{if(typeof A.length=="number"){if(A.callee){return"arguments";}}}return typeof A;};var instanceOf=this.instanceOf=function(C,A){if(C==null){return false;}var B=C.$constructor||C.constructor;while(B){if(B===A){return true;}B=B.parent;}return C instanceof A;};Number.implement({format:function(O){var L=this;O=O?Object.clone(O):{};var E=L<0,G=(O.decimal!=null)?O.decimal:".",I=(O.precision!=null)?O.precision:0,M=(O.group!=null)?O.group:",",B=(O.decimals!=null)?O.decimals:0;if(E){var D=O.negative||"-";if(D.prefix==null&&D.suffix==null){D.prefix="-";}["prefix","suffix"].each(function(P){if(D[P]){O[P]=O[P]+D[P];}});L=-L;}var J=O.prefix,N=O.suffix;if(B!==""&&B>=0&&B<=20){L=L.toFixed(B);}if(I>=1&&I<=21){L=(+L).toPrecision(I);}L+="";var K;if(O.scientific===false&&L.indexOf("e")>-1){var H=L.split("e"),A=+H[1];L=H[0].replace(".","");if(A<0){A=-A-1;K=H[0].indexOf(".");if(K>-1){A-=K-1;}while(A--){L="0"+L;}L="0."+L;}else{K=H[0].lastIndexOf(".");if(K>-1){A-=H[0].length-K-1;}while(A--){L+="0";}}}if(G!="."){L=L.replace(".",G);}if(M){K=L.lastIndexOf(G);K=(K>-1)?K:L.length;var C=L.substring(K),F=K;while(F--){if((K-F-1)%3==0&&F!=(K-1)){C=M+C;}C=L.charAt(F)+C;}L=C;}if(J){L=J+L;}if(N){L+=N;}return L;},formatCurrency:function(){var A=Locale.get("Number.currency")||{};if(A.scientific==null){A.scientific=false;}if(A.decimals==null){A.decimals=2;}return this.format(A);},formatPercentage:function(){var A=Locale.get("Number.percentage")||{};if(A.suffix==null){A.suffix="%";}if(A.decimals==null){A.decimals=2;}return this.format(A);}});var LineGraph=new Class({Implements:Options,options:{nextAction:null,context:"2d",axis:{x:{axisPadding:30,axisType:"date",axisFormat:"%b %e%o",stepCount:7,styles:{lineP:{style:"#C2C2C2",width:1},lineS:{style:"#e8e8e8",width:1},hash:{style:"#767676",width:1,height:10},label:{font:"8pt sans-serif",fontColor:"#768696",align:"center",baseline:"top"}},minValue:null,maxValue:null,minMaxMult:0},y:{axisPadding:50,axisType:"number",axisFormat:{decimals:0,prefix:"$",decimal:".",group:",",suffix:""},stepCount:5,styles:{lineP:{style:"#C2C2C2",width:0},lineS:{color:"#e8e8e8",width:0},hash:{style:"#767676",width:1,height:1},label:{font:"8pt sans-serif",fontColor:"#768696",align:"right",baseline:"middle"}},minValue:null,maxValue:null,minMaxMult:0.15}},line:[{style:"#ACAEAD",width:2,join:"round",cap:"round",markers:{point:{type:"circle",size1:0,size2:0,style1:"#ACAEAD"},end:{type:"ring",size1:6,size2:4,style2:"#ffffff",style1:"#ACAEAD"}}},{style:"#891518",width:2,join:"round",cap:"round",markers:{point:{type:"circle",size1:0,size2:0,style1:"#891518"},end:{type:"ring",size1:6,size2:4,style2:"#ffffff",style1:"#891518"}}}]},context:null,element:null,dataSets:[],metadata:{axis:{x:{stepPixels:30,minValue:null,maxValue:null,stepValue:30},y:{stepPixels:30,minValue:null,maxValue:null,stepValue:30}},line:{x:{stepRatio:1},y:{stepRatio:1}}},initialize:function(C,A,B){dbug.log("Initializing canvasLineGraph.");if(Browser.ie6||Browser.ie7||Browser.ie8||navigator.appVersion.contains("MSIE 6.")||navigator.appVersion.contains("MSIE 7.")||navigator.appVersion.contains("MSIE 8.")){this.element=window.G_vmlCanvasManager.initElement(C);}else{this.element=C;}this.setOptions(B);this.context=this.element.getContext(this.options.context);this.element.height=this.element.height;try{this.datasets=this.cloneData(A);this.initConvertDataSet();this.initSortData();this.initMinMax();this.initAxisSpacing();this.initAxisLinesX();this.initAxisLinesY();this.initAxisLabelsX();this.initAxisLabelsY();this.initAxisHashesX();this.initAxisHashesY();this.initCoordinateRatioX();this.initCoordinateRatioY();this.graphData();}catch(D){dbug.log("Exception: "+D);this.graphUnavailable();}dbug.log("canvasLineGraph initialized.");},cloneData:function(A){var B=[[]];A.each(function(C,D){B[D]=[];C.each(function(E,F){B[D][F]={};B[D][F].x=A[D][F].x;B[D][F].y=A[D][F].y;});});return B;},initConvertDataSet:function(){for(var B=0;B<this.datasets.length;B++){for(var A=0;A<this.datasets[B].length;A++){this.datasets[B][A].x=this.getConvertedValue(this.datasets[B][A].x,this.options.axis.x.axisType);this.datasets[B][A].y=this.getConvertedValue(this.datasets[B][A].y,this.options.axis.y.axisType);}}},initMinMax:function(){for(var B=0;B<this.datasets.length;B++){for(var A=0;A<this.datasets[B].length;A++){if(this.metadata.axis.x.minValue==null||this.datasets[B][A].x<this.metadata.axis.x.minValue){this.metadata.axis.x.minValue=this.datasets[B][A].x;}if(this.metadata.axis.y.minValue==null||this.datasets[B][A].y<this.metadata.axis.y.minValue){this.metadata.axis.y.minValue=this.datasets[B][A].y;}if(this.metadata.axis.x.maxValue==null||this.datasets[B][A].x>this.metadata.axis.x.maxValue){this.metadata.axis.x.maxValue=this.datasets[B][A].x;}if(this.metadata.axis.y.maxValue==null||this.datasets[B][A].y>this.metadata.axis.y.maxValue){this.metadata.axis.y.maxValue=this.datasets[B][A].y;}}}this.metadata.axis.x=this.padMinMax(this.options.axis.x,this.metadata.axis.x);this.metadata.axis.y=this.padMinMax(this.options.axis.y,this.metadata.axis.y);this.overrideMinMax();},padMinMax:function(C,B){var A=Math.abs(B.maxValue-B.minValue);if(A<=0){if(B.minValue<0||(B.minValue-Math.ceil((Math.abs(B.minValue)*C.minMaxMult)))>=0){B.minValue=(B.minValue-(Math.ceil(Math.abs(B.minValue)*C.minMaxMult)));}else{B.minValue=0;}B.maxValue=B.maxValue+(Math.ceil(Math.abs(B.maxValue)*C.minMaxMult));}else{if(B.minValue<0||(B.minValue-Math.ceil(A*C.minMaxMult))>=0){B.minValue=(B.minValue-Math.ceil(A*C.minMaxMult));}else{B.minValue=0;}B.maxValue=B.maxValue+Math.ceil(A*C.minMaxMult);}return B;},overrideMinMax:function(){this.metadata.axis.x.maxValue=this.options.axis.x.maxValue!=null?this.getConvertedValue(this.options.axis.x.maxValue,this.options.axis.x.axisType):this.metadata.axis.x.maxValue;this.metadata.axis.y.maxValue=this.options.axis.y.maxValue!=null?this.getConvertedValue(this.options.axis.y.maxValue,this.options.axis.y.axisType):this.metadata.axis.y.maxValue;this.metadata.axis.x.minValue=this.options.axis.x.minValue!=null?this.getConvertedValue(this.options.axis.x.minValue,this.options.axis.x.axisType):this.metadata.axis.x.minValue;this.metadata.axis.y.minValue=this.options.axis.y.minValue!=null?this.getConvertedValue(this.options.axis.y.minValue,this.options.axis.y.axisType):this.metadata.axis.y.minValue;},getConvertedValue:function(B,A){if(A=="date"){return parseInt(Date.parse(B).format("%s"));}else{if(A=="number"){return B;}else{return 0;}}},initAxisSpacing:function(){this.metadata.axis.x.stepValue=(Math.abs(this.metadata.axis.x.maxValue-this.metadata.axis.x.minValue))/((this.options.axis.x.stepCount>1)?(this.options.axis.x.stepCount-1):1);this.metadata.axis.x.stepPixels=(this.element.width-2*this.options.axis.y.axisPadding)/((this.metadata.axis.x.maxValue-this.metadata.axis.x.minValue)/this.metadata.axis.x.stepValue);this.metadata.axis.y.stepValue=(Math.abs(this.metadata.axis.y.maxValue-this.metadata.axis.y.minValue))/((this.options.axis.y.stepCount>1)?(this.options.axis.y.stepCount-1):1);this.metadata.axis.y.stepPixels=(this.element.height-2*this.options.axis.x.axisPadding)/((this.metadata.axis.y.maxValue-this.metadata.axis.y.minValue)/this.metadata.axis.y.stepValue);},initCoordinateRatioX:function(){this.metadata.line.x.stepRatio=(this.element.width-2*this.options.axis.y.axisPadding)/(this.metadata.axis.x.maxValue-this.metadata.axis.x.minValue);},initCoordinateRatioY:function(){this.metadata.line.y.stepRatio=(this.element.height-2*this.options.axis.x.axisPadding)/(this.metadata.axis.y.maxValue-this.metadata.axis.y.minValue);},graphData:function(){for(var A=0;A<this.datasets.length;A++){if(A<this.options.line.length){this.startNewLine(this.options.line[A]);}else{this.startNewLine(this.options.line[0]);}this.drawLine(this.datasets[A]);this.drawMarkers(this.datasets[A],this.options.line[A].markers);}},initSortData:function(){this.datasets.each(function(A){A.sort(function(C,B){return C.x-B.x;});});},getCoordinateX:function(A){return(A.x-this.metadata.axis.x.minValue)*this.metadata.line.x.stepRatio+this.options.axis.y.axisPadding;},getCoordinateY:function(A){return(this.metadata.axis.y.maxValue-A.y)*this.metadata.line.y.stepRatio+this.options.axis.x.axisPadding;},drawLine:function(B){this.context.moveTo(this.getCoordinateX(B[0]),this.getCoordinateY(B[0]));for(var A=1;A<B.length;A++){this.context.lineTo(this.getCoordinateX(B[A]),this.getCoordinateY(B[A]));}this.context.stroke();},drawMarkers:function(C,A){if(A.end.size1>0){this.drawMarker(C[0],A.end);this.drawMarker(C[C.length-1],A.end);}for(var B=1;B<C.length-1;B++){if(A.point.size1>0){this.drawMarker(C[B],A.point);}}},drawMarker:function(B,A){if(A.type=="circle"||A.type=="ring"){this.context.beginPath();this.context.fillStyle=A.style1;this.context.arc(this.getCoordinateX(B),this.getCoordinateY(B),A.size1,0,Math.PI*2,true);this.context.fill();}if(A.type=="ring"){this.context.beginPath();this.context.fillStyle=A.style2;this.context.arc(this.getCoordinateX(B),this.getCoordinateY(B),A.size2,0,Math.PI*2,true);this.context.fill();}},generateLabel:function(C,B,A){if(C.axisType=="number"){return(B.minValue+B.stepValue*A).format(C.axisFormat);}else{if(C.axisType=="date"){return new Date(0).set("UTCSeconds",B.stepValue*A+B.minValue).format(C.axisFormat);}}},initAxisLinesY:function(){var B=this.options.axis.y;if(B.styles.lineP.width>0){this.startNewLine(B.styles.lineP);this.context.moveTo(B.axisPadding+0.5,this.options.axis.x.axisPadding);this.context.lineTo(B.axisPadding,this.element.height-this.options.axis.x.axisPadding);this.context.stroke();}if(B.styles.lineS.width>0){for(var A=1;A<this.options.axis.x.stepCount;A++){this.drawAxisBackgroundsY(A);this.startNewLine(B.styles.lineS);this.context.moveTo(B.axisPadding+(A*this.metadata.axis.x.stepPixels)+0.5,this.options.axis.x.axisPadding);this.context.lineTo(B.axisPadding+(A*this.metadata.axis.x.stepPixels)+0.5,this.element.height-this.options.axis.x.axisPadding);this.context.stroke();}}},initAxisLinesX:function(){var B=this.options.axis.x;if(B.styles.lineP.width>0){this.startNewLine(B.styles.lineP);this.context.moveTo(this.options.axis.y.axisPadding,this.element.height-B.axisPadding+0.5);this.context.lineTo(this.element.width-this.options.axis.y.axisPadding,this.element.height-B.axisPadding+0.5);this.context.stroke();}if(B.styles.lineS.width>0){for(var A=1;A<this.options.axis.y.stepCount;A++){this.drawAxisBackgroundsX(A);this.startNewLine(B.styles.lineS);this.context.moveTo(this.options.axis.y.axisPadding,this.element.height-(A*this.metadata.axis.y.stepPixels)-B.axisPadding+0.5);this.context.lineTo(this.element.width-this.options.axis.y.axisPadding,this.element.height-(A*this.metadata.axis.y.stepPixels)-B.axisPadding+0.5);this.context.stroke();}}},initAxisLabelsX:function(){var D=this.options.axis.x;var C=this.metadata.axis.x;this.startNewText(D.styles.label);var B=10;if(D.styles.label.baseline=="bottom"){B=0;}else{if(D.styles.label.baseline=="middle"){B=D.axisPadding/2;}}for(var A=0;A<D.stepCount;A++){this.context.fillText(this.generateLabel(D,C,A),this.options.axis.y.axisPadding+(A*C.stepPixels),this.element.height-D.axisPadding+B);}},initAxisLabelsY:function(){var D=this.options.axis.y;var C=this.metadata.axis.y;this.startNewText(D.styles.label);var B=D.axisPadding-10;if(D.styles.label.align=="left"){B=0;}else{if(D.styles.label.align=="center"){B=D.axisPadding/2;}}for(var A=0;A<D.stepCount;A++){this.context.fillText(this.generateLabel(D,C,A),B,this.element.height-(A*C.stepPixels)-this.options.axis.x.axisPadding);}},initAxisHashesX:function(){var A;var C=this.options.axis.x;var B=this.metadata.axis.x;if(C.styles.hash.width>0&&C.styles.hash.height>0){this.options.axis.y.styles.lineP.width>0?A=1:A=0;for(;A<C.stepCount;A++){this.startNewLine(C.styles.hash);this.context.moveTo(this.options.axis.y.axisPadding+(A*B.stepPixels)+0.5,this.element.height-C.axisPadding+(C.styles.lineP.width/2));this.context.lineTo(this.options.axis.y.axisPadding+(A*B.stepPixels)+0.5,this.element.height-C.axisPadding-C.styles.hash.height);this.context.stroke();}}},initAxisHashesY:function(){var A;var C=this.options.axis.y;var B=this.metadata.axis.y;if(C.styles.hash.width>0&&C.styles.hash.height>0){this.options.axis.y.styles.lineP.width>0?A=1:A=0;for(;A<C.stepCount;A++){this.startNewLine(C.styles.hash);this.context.moveTo(this.options.axis.y.axisPadding-(C.styles.lineP.width/2),this.element.height-this.options.axis.x.axisPadding-(A*B.stepPixels)-(C.styles.hash.height/2)+0.5);this.context.lineTo(this.options.axis.y.axisPadding+C.styles.width,this.element.height-this.options.axis.x.axisPadding-(A*B.stepPixels)-(C.styles.hash.height/2)+0.5);this.context.stroke();}}},drawAxisBackgroundsX:function(A){var C=this.options.axis.x;var B=this.metadata.axis.x;if(A%2==0){this.context.beginPath();this.context.fillStyle="#F3F3F3";this.context.fillRect(this.options.axis.y.axisPadding,this.element.height-(A*this.metadata.axis.y.stepPixels)-C.axisPadding+0.5-(C.styles.lineS.width/2-2),this.element.width-(2*this.options.axis.y.axisPadding),this.metadata.axis.y.stepPixels-(C.styles.lineS.width/2+1));}},drawAxisBackgroundsY:function(A){},startNewLine:function(A){this.context.beginPath();this.context.strokeStyle=A.style;this.context.lineWidth=A.width;this.context.lineJoin=A.join;this.context.lineCap=A.cap;},startNewText:function(A){this.context.textAlign=A.align;this.context.textBaseline=A.baseline;this.context.font=A.font;this.context.fillStyle=A.fontColor;},graphUnavailable:function(){this.element.height=this.element.height;this.context.textAlign="center";this.context.textBaseline="middle";this.context.font="16pt sans-serif";this.context.fillStyle="#ACAEAD";this.context.fillText("No Data",this.element.width/2,this.element.height/2);this.context.beginPath();this.context.strokeStyle="#ACAEAD";this.context.lineWidth="1px";this.context.lineJoin="miter";this.context.lineCap="butt";this.context.moveTo(20,20);this.context.lineTo(20,this.element.height-20);this.context.lineTo(this.element.width-20,this.element.height-20);this.context.lineTo(this.element.width-20,20);this.context.lineTo(20,20);this.context.stroke();}});var PriceHistory=new Class({Implements:Options,options:{nextAction:null,pid:null,selectors:{prices:"#pdpTables .priceHistory .prices",sellers:"#pdpTables .priceHistory .sellers",popularity:"#pdpTables .priceHistory .popularity"}},initialize:function(A){dbug.log("Initializing PriceHistoryModal.");this.setOptions(A);this.enableTogglers();this.drawGraphs();dbug.log("PriceHistoryModal initialized.");},sortData:function(A){A.each(function(B){B.sort(function(D,C){return parseInt(Date.parse(D.x).format("%s"))-parseInt(Date.parse(C.x).format("%s"));});});return A;},changeViewRange:function(C,B){C.target.getParent(".subHed").getElements("span").removeClass("selected");C.target.addClass("selected");var D=parseInt(C.target.get("days"));var A=this.getCutoffDate(D);if(B=="prices"){this.drawPriceGraph(this.getDataSubset(PriceHistoryData.prices,D),D,this.getMinMaxObject(A,new Date().format("%Y-%m-%d")));}else{if(B=="sellers"){this.drawSellersGraph(this.getDataSubset(PriceHistoryData.sellers,D),D,this.getMinMaxObject(A,new Date().format("%Y-%m-%d")));}else{if(B=="popularity"){this.drawPopularityGraph(this.getDataSubset(PriceHistoryData.popularity,D),D,this.getMinMaxObject(A,new Date().format("%Y-%m-%d")));}}}new JloggerLEVT.RIA({applicationTags:{event:"log",mapp:"marketplace",comp:"price_history",comptyp:D+"_days",riaevent:"click",objtyp:"",objnm:""}}).ping();},getMinMaxObject:function(B,A){return{axis:{x:{minValue:B,maxValue:A}}};},getCutoffDate:function(A){return new Date(0).set("UTCSeconds",parseInt(new Date().format("%s"))-(60*60*24*(A-1))).format("%Y-%m-%d");},getDataSubset:function(B,D){var C=[];var A=this.getCutoffDate(D);B.each(function(E,F){var H=0;for(var G=0;G<D&&G<E.length;G++){if(typeof C[F]=="undefined"){C[F]=[];}if(B[F][E.length-1-G].x>=A){C[F][H]=B[F][E.length-1-G];H++;}}});return C;},getOptions:function(B){var A={axis:{x:{},y:{}}};if(B<=7){A.axis.x.axisFormat="%a";A.axis.x.stepCount=7;}else{if(B<=30){A.axis.x.axisFormat="%b %e%o";A.axis.x.stepCount=4;}else{if(B<=180){A.axis.x.axisFormat="%b %e%o";A.axis.x.stepCount=Math.ceil(B/30+1);}else{A.axis.x.axisFormat="%b '%y";A.axis.x.stepCount=Math.ceil(B/60+1);}}}A.axis.y.stepCount=5;return A;},markActiveToggler:function(A){$$(A+" .subHed span").each(function(B){if(parseInt(B.get("days"))==this.options.defaultDays){B.addClass("selected");}}.bind(this));},drawPriceGraph:function(A,D,C){try{new LineGraph($$(this.options.selectors.prices+" canvas")[0],A,$merge(this.getOptions(D),C));this.markActiveToggler(this.options.selectors.prices);}catch(B){this.displayErrorMsg($$(this.options.selectors.prices));}},drawPopularityGraph:function(A,D,C){try{new LineGraph($$(this.options.selectors.popularity+" canvas")[0],A,$merge($merge(this.getOptions(D),C),{axis:{y:{axisFormat:{suffix:"",decimals:0,prefix:""},minValue:0,maxValue:5,stepCount:6}}}));this.markActiveToggler(this.options.selectors.popularity);}catch(B){this.displayErrorMsg($$(this.options.selectors.popularity));}},drawSellersGraph:function(B,E,D){try{var A=this.getOptions();new LineGraph($$(this.options.selectors.sellers+" canvas")[0],B,$merge($merge(this.getOptions(E),D),{axis:{y:{axisFormat:""}}}));this.markActiveToggler(this.options.selectors.sellers);}catch(C){this.displayErrorMsg($$(this.options.selectors.sellers));}},displayErrorMsg:function(A){},enableTogglers:function(){$$(this.options.selectors.prices+" .subHed span").each(function(A){A.addEvent("click",function(B){this.changeViewRange(B,"prices");}.bind(this));}.bind(this));$$(this.options.selectors.sellers+" .subHed span").each(function(A){A.addEvent("click",function(B){this.changeViewRange(B,"sellers");}.bind(this));}.bind(this));$$(this.options.selectors.popularity+" .subHed span").each(function(A){A.addEvent("click",function(B){this.changeViewRange(B,"popularity");}.bind(this));}.bind(this));},drawGraphs:function(){var C=this.getDefaultDays(this.options.selectors.prices);var A=this.getCutoffDate(C);try{PriceHistoryData.prices=this.sortData(PriceHistoryData.prices);this.drawPriceGraph(this.getDataSubset(PriceHistoryData.prices,C),C,this.getMinMaxObject(A,new Date().format("%Y-%m-%d")));}catch(B){this.displayErrorMsg($$(this.options.selectors.prices));}try{PriceHistoryData.sellers=this.sortData(PriceHistoryData.sellers);this.drawSellersGraph(this.getDataSubset(PriceHistoryData.sellers,C),C,this.getMinMaxObject(A,new Date().format("%Y-%m-%d")));}catch(B){this.displayErrorMsg($$(this.options.selectors.sellers));}try{PriceHistoryData.popularity=this.sortData(PriceHistoryData.popularity);this.drawPopularityGraph(this.getDataSubset(PriceHistoryData.popularity,C),C,this.getMinMaxObject(A,new Date().format("%Y-%m-%d")));}catch(B){this.displayErrorMsg($$(this.options.selectors.popularity));}},getDefaultDays:function(A){var B=90;if($$(A+" .subHed .selected").length>0){B=parseInt($$(A+" .subHed .selected")[0].get("days"));}return B;}});var PriceHistoryModal=new Class({Extends:PriceHistory,options:{selectors:{prices:".priceHistory.globalModal .prices"}},initialize:function(A){dbug.log("Initializing PriceHistoryModal.");this.setOptions(A);this.requestContent();this.pingLEVT();dbug.log("PriceHistoryModal initialized.");},pingLEVT:function(){new JloggerLEVT.RIA({applicationTags:{event:"log",mapp:"marketplace",comp:"price_history",comptyp:"price_history_link",riaevent:"click",objtyp:"",objnm:"",s7:this.options.pid}}).ping();},requestContent:function(){new Request.HTML({url:"http://"+document.location.host+"/1733-"+PageVars.get("nodeId")+"_"+PageVars.get("siteId")+"-"+this.options.pid+".html?nomesh",method:"get",onSuccess:function(D,A,E,B){try{dbug.log("Received price history response.");this.displayModal(E);}catch(C){dbug.log("Price history response processing failed!");}}.bind(this),onFailure:function(){dbug.log("Price history request failed.");}}).send();},displayModal:function(A){new GlobalModal({content:A,showNow:true,onInit:function(){this.enableTogglers();this.drawGraphs();this.enablePriceAlerts();}.bind(this),onClose:function(){this.closeModal();}.bind(this)});},drawGraphs:function(){var C=this.getDefaultDays(this.options.selectors.prices);var A=this.getCutoffDate(C);try{PriceHistoryData.prices=this.sortData(PriceHistoryData.prices);this.drawPriceGraph(PriceHistoryData.prices,C,this.getMinMaxObject(A,new Date().format("%Y-%m-%d")));}catch(B){this.displayErrorMsg($$(this.options.selectors.prices));}},enablePriceAlerts:function(){try{$$(this.options.selectors.prices+" .priceAlert").addEvent("click",function(B){this.closeModal();new PriceAlertModal({pid:this.options.pid,elemClicked:"price_alert_pstphl"});}.bind(this));}catch(A){dbug.log("PriceAlertModal failed.");}},closeModal:function(){delete PriceHistoryData;$$(".priceHistory.globalModal").each(function(A){A.getParent(".StickyWinInstance").dispose();});}});DealTicker=new Class({Implements:[Options,Events],options:{thumbContainer:"dealWrapper",thumbScroller:"dealScroller",itemsPerSlide:3,startIndex:0,leftArrow:"scrollLeft",rightArrow:"scrollRight",tickerInterval:"7000",scaleImageWidth:60,scaleImageHeight:43,slideContainer:"dealSlideContainer",slideContainerClass:"dealSlideContainer",slideClass:"dealSlide",transitionDuration:"long",pauseOnHover:true,pauseOnBlur:true,autoplay:true},initialize:function(A){this.setOptions(A);this.container=$(this.options.thumbContainer);this.scroller=$(this.options.thumbScroller);this.items=$$(".dealItem");this.images=$$(".dealImage");this.resizedImages=this.setImages();this.slides=this.setSlides();$(this.options.rightArrow).addEvent("click",this.activeSelect.bind(this,"next"));$(this.options.leftArrow).addEvent("click",this.activeSelect.bind(this,"prev"));this.setTracking();this.showSlide(this.options.startIndex);if(this.options.pauseOnHover&&this.options.autoplay){this.setHoverPausing();}if(this.options.pauseOnBlur&&this.options.autoplay){this.setWindowPausing();}if(this.options.autoplay){this.autoplay();}},setTracking:function(){$(this.options.leftArrow).addEvent("click",function(){new JloggerLEVT.RIA({applicationTags:{event:"log",mapp:"marketplace",comp:"modal_deal_ticker",comptyp:"left_arrow",riaevent:"click",objtyp:"",objnm:""}}).ping();});$(this.options.rightArrow).addEvent("click",function(){new JloggerLEVT.RIA({applicationTags:{event:"log",mapp:"marketplace",comp:"modal_deal_ticker",comptyp:"right_arrow",riaevent:"click",objtyp:"",objnm:""}}).ping();});},setImages:function(){images=this.images;images.each(function(E,A){var B=E.width;var D=E.height;if(B==0&&D==0){dbug.log("preloading image  src:  "+E.src);var C=new Asset.image(E.src);if(C.width==0&&C.height==0){E.width=this.options.scaleImageWidth;E.height=this.options.scaleImageHeight;dbug.log("image not preloaded, set to default scale dimensions");}}this.setScaledImage(E);}.bind(this));return images;},setScaledImage:function(F){var C=F.width;var E=F.height;var A=this.options.scaleImageWidth;var B=this.options.scaleImageHeight;var D=this.scaleImage(A,B,C,E);F.set("width",D[0]);F.set("height",D[1]);F.setStyles({"margin-top":(B-D[1])/2,"margin-bottom":(B-D[1])/2,display:"block"});},scaleImage:function(F,A,B,E){dbug.log("orig image  width:  "+B+" height: "+E);var C=E/B;if(B>=F&&C<=1){B=F;E=B*C;if(E>=A){E=A;B=E/C;}}else{if(E>=A){E=A;B=E/C;}}dbug.log("scaleImage width: "+B+" height: "+E);var D=[];D[0]=B;D[1]=E;return D;},setSlides:function(){slideNum=this.options.itemsPerSlide;items=this.items;var D=this.options;var B=new Element("ul",{id:D.slideContainer,"class":D.slideContainerClass});var A=new Element("li",{"class":D.slideClass});var E=[];var F=1;items.each(function(H,G){dbug.log("i % item: "+((G+1)%slideNum));if((G+1)%slideNum==1){H.addClass("first");}if((G+1)%slideNum==0){H.addClass("last");}H.inject(A);if((G+1)%slideNum==0||(G+1)==items.length){A.inject(B);A=new Element("li",{id:D.slideClass+F,"class":D.slideClass});F=F+1;}H.addClass("show");});B.inject(this.scroller);var C=$$("."+D.slideClass);C.each(function(G,H){G.set("morph",{duration:this.options.transitionDuration,onStart:function(){G.setStyles({display:"inline-block",zoom:"1","*display":"inline"});},onComplete:function(){if(G.getStyle("left")!="0px"){G.setStyles({display:"none"});}}});G.setStyles({display:"none",position:"absolute",top:"0px",left:(H==this.options.startIndex)?"0px":"1000px"});}.bind(this));return C;},getToIndex:function(A){if(A=="next"){return(this.currentIndex==this.slides.length-1)?0:this.currentIndex+1;}return((this.currentIndex==0)?this.slides.length:this.currentIndex)-1;},showSlide:function(C){var A=this.currentIndex;var B=this.slides.length-1;if(C==A){return this;}$each(this.slides,function(D,E){if(E==C){if($type(A)=="number"){var F=this.slides[A];if((C-A)==1||(A==B&&C==0)){F.morph({left:-1000});D.setStyle("left","1000px");}else{F.morph({left:1000});D.setStyle("left","-1000px");}}D.morph({left:0});}}.bind(this));this.currentIndex=C;return this;},setHoverPausing:function(){this.setBindings();this.container.addEvents({mouseenter:this.bound.stop,mouseleave:this.bound.autoplay});this.addEvent("onActiveSelect",this.bound.clearPausing);},setWindowPausing:function(){if(!this.bound){this.setBindings();}window.addEvents({blur:this.bound.stop,focus:this.bound.autoplay});},clearPausing:function(){this.container.removeEvent("mouseenter",this.bound.stop);this.container.removeEvent("mouseleave",this.bound.autoplay);window.removeEvent("blur",this.bound.stop);window.removeEvent("focus",this.bound.autoplay);this.removeEvent("onActiveSelect",this.bound.clearPausing);},setBindings:function(){this.bound={autoplay:this.autoplay.bind(this),stop:this.stop.bind(this),clearPausing:this.clearPausing.bind(this)};},activeSelect:function(A){if($type(A)!="number"){A=this.getToIndex(A);}if(this.tickerInt){this.stop();}dbug.log("displaying index: "+A);this.showSlide(A);this.fireEvent("onActiveSelect");},autoplay:function(){if(this.tickerInt){return this;}this.tickerInt=this.rotate.periodical(this.options.tickerInterval,this);return this;},stop:function(){this.tickerInt=$clear(this.tickerInt);return this;},rotate:function(){var B=this.currentIndex;var A=(B+1>=this.slides.length)?0:B+1;this.showSlide(A);return this;}});var PriceAlertModal=new Class({Implements:Options,options:{nextAction:null,pid:null,elemClicked:null,modal$$:"#priceAlert.globalModal",defaultPrice:0,subscribeToDeals:true},data:{lowPrice:null},initialize:function(A){dbug.log("Initialize price alert modal");this.setOptions(A);this.pingLEVT();this.requestContent();dbug.log("Price alert modal initialization complete");},verifyPrice:function(A){if(A.length==0){return"Please enter a price.";}if(!/^[0-9]+$/.test(A)){return"Please use numbers (0-9) only.";}else{if(parseInt(A)>=this.data.lowPrice){return"Please enter a price lower than the current price.";}else{return true;}}},forceLogin:function(A){dbug.log("the user variable loggedIn: ",UserVars.get("loggedIn"));if(UserVars.get("loggedIn")===""){$$(this.options.modal$$).hide();}CURS.Manager.checkLogin({registerHed:"Please complete your registration to set your price alert",loginHed:"Log in to CNET",appId:305,path:PageVars.getRefreshPath()+"&alertprice="+$("priceAlert").getElement(".alertPrice").get("value")+"&wantIt=true&dealavail="+$("priceAlert").getElement(".dealAvail input").get("checked"),nextAction:function(){this.finishSubmission(A);}.bind(this)});CURS.Manager.appendWantToUrl=true;CURS.Manager.addEvent("onRegister",function(){dbug.log("the uservars is set: ",UserVars.get("ursRegId"));this.finishSubmission(A);}.bind(this));},finishSubmission:function(B){dbug.log("this is the gigya user info: ",CURS.Social.gigya.gigyaUserInfo);if(B){var A=$$(this.options.modal$$)[0].getElements(".alertPrice")[0].get("value").replace(/^0+/,"");dbug.log(A);this.submitPriceAlert("targetPrice="+A+"&eventType=12",A);}else{this.submitPriceAlert("eventType=11");}},submitAlerts:function(){var A=$$(this.options.modal$$).getElements(".alertPrice")[0];if(A[0]){this.data.lowPrice=A[0].get("data-lowprice").replace("$","").replace(",","");if(this.data.lowPrice.contains(".00")){this.data.lowPrice=this.data.lowPrice.toInt();}else{this.data.lowPrice=this.data.lowPrice.toInt()+1;}var B=this.verifyPrice(A[0].get("value"));if(B!=true){$$(this.options.modal$$).getElements(".priceError")[0].set("text",B);return false;}if((this.data.lowPrice/2)>A[0].get("value").toInt()){$$(this.options.modal$$).setStyle("width","500px");$$(this.options.modal$$).getElements(".newAlert")[0].hide();$$(this.options.modal$$).getElements(".doubleCheck")[0].show("block");$$(".go").addEvent("click",function(){this.forceLogin(true);}.bind(this));$$(".back").addEvent("click",function(){$$(this.options.modal$$).setStyle("width","780px");$$(this.options.modal$$).getElements(".newAlert")[0].show("block");$$(this.options.modal$$).getElements(".doubleCheck")[0].hide();}.bind(this));return false;}this.forceLogin(true);}else{this.forceLogin(false);}},submitPriceAlert:function(A,B){var D="";if($$(this.options.modal$$).getElements(".dealAvail")[0].getElement("input")[0].checked){D="&alertItemType2=2&alertItemId2="+this.options.pid+"&eventType2=10&actionType2=1";}else{D="&alertItemType2=2&alertItemId2="+this.options.pid+"&eventType2=10&actionType2=2";}if(UserVars.get("ursRegId")){var C="nomesh&ursRegId="+UserVars.get("ursRegId")+"&alertItemType=2&alertItemId="+this.options.pid+"&"+A+"&actionType=1"+D;}else{var C="nomesh&alertItemType=2&alertItemId="+this.options.pid+"&"+A+"&actionType=1"+D;}new Request({url:"http://"+document.location.host+"/8630-"+PageVars.get("nodeId")+"_"+PageVars.get("siteId")+"-0.html",data:C,onSuccess:function(F,H){if($("regShell").getElements(".confirmsent").length>0){$("modalOverlay").show();$$(this.options.modal$$).setStyle("width","780px");$$(this.options.modal$$).getElements(".newAlert")[0].hide();$$(this.options.modal$$).getElements(".doubleCheck")[0].hide();if(B){$$(this.options.modal$$).getElements(".setConfirm .setPrice")[0].set("text"," $"+B+".00");}$$(this.options.modal$$).show();$$(this.options.modal$$).getElements(".setConfirm")[0].show("block");}try{var E=H.getElement("response");if(E.getElement("status").get("text")=="success"){new Request({url:"/8683-4_"+PageVars.get("siteId")+"-0.html",data:"assetId="+$$(this.options.modal$$).getElements(".productId")[0].get("value")+"&assetTypeId=2&value=2",onSuccess:function(){dbug.log("Successfully wanted the product.");},onFailure:function(){dbug.log("Failed to want the product.");}}).send();}else{dbug.log(G);}}catch(G){dbug.log(G);}this.pingLEVT(B);}.bind(this),onFailure:function(E){dbug.log("Price alert submission failed - "+e.toString());}.bind(this)}).send();},pingLEVT:function(A){dbug.log("the element clicked: ",this.options.elemClicked);new JloggerLEVT.RIA({applicationTags:{event:"log",mapp:"marketplace",comp:"price_alert",comptyp:this.options.elemClicked,riaevent:(A)?"submit_alert":"click",objtyp:"",objnm:"",s6:(A)?A:"",s7:this.options.pid}}).ping();},requestContent:function(){new Request.HTML({url:"http://"+document.location.host+"/1732-"+PageVars.get("nodeId")+"_"+PageVars.get("siteId")+"-"+this.options.pid+".html?nomesh",method:"get",onSuccess:function(C,A,D){try{dbug.log("Received price alert response.");this.displayModal(D);}catch(B){dbug.log("Price alert response processing failed!");this.displayErrorModal("Request Failed","An unexpected error has occurred. Please try again later.");}}.bind(this),onFailure:function(){dbug.log("Price alert request failed.");this.displayErrorModal("Request Failed","A connection error has occurred. Please try again later.");}.bind(this)}).send();},displayModal:function(A){new GlobalModal({content:A,showNow:true,onInit:function(){try{this.storeValues();if(this.options.defaultPrice>0){$$("#priceAlert .alertPrice").set("value",this.options.defaultPrice);}if(!this.options.subscribeToDeals){$$("#priceAlert .dealAvail input").set("checked","");}$("alertSetForm").addEvent("submit",function(C){C.stop();if(this.submitAlerts()){$$(this.options.modal$$).each(function(D){D.getParent(".StickyWinInstance").dispose();});}}.bind(this));try{new DealTicker();}catch(B){}}catch(B){}}.bind(this),onClose:function(){$$("#priceAlert.globalModal").each(function(B){B.getParent(".StickyWinInstance").dispose();});}});},storeValues:function(){var A=$$(this.options.modal$$)[0].getElements(".alertPrice");if(A.length>0&&A[0].get("value")!=""){this.data.lowPrice=A[0].get("value").toInt();}},displayErrorModal:function(B,A){new GlobalModal({content:'<div class="globalModal"><div class="formHead"><h2>'+B+'</h2><a class="closeModal">close</a></div><div class="formBody">'+A+"</div></div>"});},displayErrorMsg:function(A){$$(this.options.modal$$)[0].getElements(".priceError")[0].set("text",A);}});window.addEvent("domready",function(){$$("div.product").each(function(B){var C=B.getProperty("productid"),E=B.getElement(".productPrices"),F=B.getElement(".productPrices.offers"),D;if(E){D=E.getElement(".msrp");}if(C&&E&&F&&!D){new Request({url:PageVars.getPath({pageType:1714,assetId:C,pageNumber:false})+"?nomesh&noluke&hasOffers&pageType="+PageVars.get("pageType"),onSuccess:function(G){var H=new Element("span");H.set("html",G);E.grab(H);},method:"get"}).send();}else{if(C&&E&&D){new Request({url:PageVars.getPath({pageType:1714,assetId:C,pageNumber:false})+"?nomesh&noluke&pageType="+PageVars.get("pageType"),onSuccess:function(I){if(B.getElement("a.ajaxMfrUrl")){var G=I.split("[mfrURL=");var H=G[1].substring(0,G[1].indexOf("]"));B.getElement("a.ajaxMfrUrl").setAttribute("href",H);B.getElement("a.ajaxMfrUrl").setAttribute("target","_blank");B.getElement("a.ajaxMfrUrl").setStyle("display","inline");}},method:"get"}).send();}}});$$(".edRate a.toolTipElement").each(function(B){var C=B.getParent("li").getElement("ul.data");if(C){B.store("tip:text",C.getParent().get("html"));}else{B.store("tip:text","Product summary not available");}});$$(".productRating a.toolTipElement").each(function(B){var C=B.getParent("li").getElement("ul.data");if(C){B.store("tip:text",C.getParent().get("html"));}else{B.store("tip:text","Product summary not available");}});$$(".contentTools a.share").each(function(B){B.addEvent("mouseenter",PageTools.openShare.bind(PageTools));});$$(".contentTools a.email").each(function(B){B.addEvent("click",PageTools.email);});$$(".contentTools a.print").each(function(B){B.addEvent("click",PageTools.print);});var A=$("filters");if(A&&A.hasClass("interactive")){new DFLLMenu.Menu("filters");}$$(".addToList").each(function(B){B.addEvent("click",function(){UserLists.Manager.getUserListModal("AddToList",B);});});$$("a.ph").each(function(B){B.addEvent("click",function(){new PriceHistoryModal({pid:B.getProperty("productId").toInt()});});});$$("a.pa").each(function(B){B.addEvent("click",function(){new PriceAlertModal({pid:B.getProperty("productId").toInt(),elemClicked:"price_alert_link"});});});});
   }
       
