Favorites.HtmlPage={};Favorites.HtmlPage.zip=null;Favorites.HtmlPage.fav_page=null;Favorites.HtmlPage.fav_header=null;Favorites.HtmlPage.login_fav_error_id="fav.error";Favorites.HtmlPage.EXPORT={showLogin:1,refresh:1,showError:1,resetError:1};Favorites.addRenderer(Favorites.HtmlPage);Favorites.HtmlPage.tmpl_cache={};Favorites.HtmlPage.tmpl_massageStr=function(b){var a;a=unescape(b).replace(/\\\$\\\$([a-z]+)/gim,"{%=$1%}");a=a.replace(/&gt;/g,">").replace(/&lt;/g,"<");return a};Favorites.HtmlPage.tmpl=function(g,f){var c,a="{%",e="%}",d=e.charAt(0),b="=";c=!/\W/.test(g)?Favorites.HtmlPage.tmpl_cache[g]=Favorites.HtmlPage.tmpl_cache[g]||Favorites.HtmlPage.tmpl(Com.$(g).innerHTML):new Function("tmpl_obj","var p=[],print=function () {p.push.apply(p,arguments);};with(tmpl_obj) { p.push('"+Favorites.HtmlPage.tmpl_massageStr(g).replace(/[\r\t\n]/g," ").replace(new RegExp("'(?=[^"+d+"]*"+e+")","g"),"\t").split("'").join("\\'").split("\t").join("'").replace(new RegExp(a+b+"(.+?)"+e,"g"),"',$1,'").split(a).join("');").split(e).join("p.push('")+"');} return p.join('');");return f?c(f):c};Favorites.HtmlPage.initialize=function(b,a,c){Favorites.HtmlPage.zip=b;Favorites.HtmlPage.fav_page=Com.$(a);Favorites.HtmlPage.fav_header=Com.$(c)};Favorites.HtmlPage.showLogin=function(){Favorites.HtmlPage.fav_page.innerHTML=Favorites.generateLoginHtml()};Favorites.HtmlPage.clearElem=function(b){var a=Com.$(b);if(a&&a.hasChildNodes()){while(a.childNodes.length>=1){a.removeChild(a.firstChild)}}};Favorites.HtmlPage.refresh=function(){var a;Favorites.HtmlPage.clearElem("fav.canvas");Favorites.HtmlPage.clearElem("ygddfdiv");Favorites.HtmlPage.clearElem("fav.header");if(!Favorites.isLoggedIn()){a=Favorites.getList();if(a.length===0){Favorites.HtmlPage.showLogin();return}}if(Favorites.HtmlPage.fav_header){Favorites.HtmlPage.fav_header.innerHTML=Favorites.HtmlPage._renderHeader()}Favorites.HtmlPage.fav_page.innerHTML=Favorites.HtmlPage._renderList();Favorites.HtmlPage.renderCarNotes()};Favorites.HtmlPage.renderCarNotes=function(){var c,a,d,e,b=Favorites.getList();for(c=0;c<b.length;c+=1){a=b[c];d=Favorites.formatCarNote(a);e=Com.$(Favorites.carIdentifier(a)+"_textarea");if(e){e.value=d}}};Favorites.HtmlPage._renderHeader=function(){var a=Favorites.getList(),b=Favorites.HtmlPage.tmpl("tmpl_fav_header",{zip:Favorites.HtmlPage.zip,fav_list:a,plural_str:(a.length===0||a.length>1?"s":""),logged_in:Favorites.isLoggedIn()});return b};Favorites.HtmlPage._renderList=function(){var c,b="",a=Favorites.getList();if(a.length===0){return'<table width=100%><tr><td align=center><br /><br /><font style="text-decoration: none; color:#black; font-weight:bold; font-size:18pt;             font-family:verdana,arial,helvetica,sans-serif;             letter-spacing:0px;"> Use the </font><a style="font-weight:bold; font-size:18pt;          font-family:verdana,arial,helvetica,sans-serif;          letter-spacing:0px;" href="/carchooser">Car Chooser</a><font style="text-decoration: none; color:#black; font-weight:bold; font-size:18pt;             font-family:verdana,arial,helvetica,sans-serif;             letter-spacing:0px;"> to find Favorites!</font><br /><br /></tr></td></table>'}else{b='<table width=100%><tr><td id="favorites_html_list">';for(c=0;c<a.length;c+=1){b+=""+Favorites.HtmlPage._renderFavorite(a[c])+""}b+="</td></tr></table>";return b}};Favorites.HtmlPage._renderFavorite=function(a){var d="",b,c="";d=a;d.id=Favorites.carIdentifier(a);d.price=Favorites.formatCarPrice(a);d.invoice=Favorites.formatCarInvoice(a);d.note=Favorites.formatCarNote(a);d.style_title=Favorites.formatStyle(a.bodystyle,a.style);d.cc_url=Favorites.carChooserUrl(a);d.legacy_url=Favorites.legacyUrl(a);d.zip=Favorites.getUserZipCode();d.legacy_url=Favorites.legacyUrl(a);d.trans_png="-trans";d.mpgs.city=Favorites.formatCarArray(a.mpgs.city);d.mpgs.hwy=Favorites.formatCarArray(a.mpgs.hwy);c=Favorites.HtmlPage.tmpl("tmpl_favorite",d);c=c.replace(/^\s+|\s+$/g,"");b=new Favorites.DDList(""+d.id+";_div");b.setHandleElId(""+d.id+"_draghandle");return c};Favorites.HtmlPage.formatCarTitle=function(a,c){var b="";c=(c===undefined)?true:c;b='<a title="View more detailed information" href="/'+Favorites.legacyUrl(a)+'">'+a.year+" "+a.make_name+" "+a.model_name+"</a><br />";if(c){b+=a.bodystyle+" "+a.style}return b};Favorites.HtmlPage.showError=function(b){var a=Com.$(Favorites.HtmlPage.login_fav_error_id);a.innerHTML=b.join("<br/>");a.style.display="block";setTimeout(Favorites.resetError,10*1000)};Favorites.HtmlPage.resetError=function(){var a=Com.$(Favorites.HtmlPage.login_fav_error_id);if(a.innerHTML.length){a.innerHTML="";a.style.display="none"}};Favorites.HtmlPage.updateRanks=function(){var c,b,g=0,a,e,d=[],f=Com.$("favorites_html_list");if(f!==null&&f.hasChildNodes()){for(c=0;c<f.childNodes.length;c+=1){a=f.childNodes[c].className;if(a&&a.match("FAV_Detail")){g+=1}}for(c=0;c<f.childNodes.length;c+=1){a=f.childNodes[c].className;if(a&&a.match("FAV_Detail")){b=f.childNodes[c].id;b=b.replace(/_/g," ");b=b.split(";");b=b.slice(0,5);e={car_identity:{year:b[0],make_name:b[1],model_name:b[2],bodystyle:b[3],style:b[4]},rank:g};d.push(e);g-=1}}}Favorites.rerankFavorites(d)};Favorites.HtmlPage.clearYahooDiv=function(){var a=Com.$("ygddfdiv");if(a!==null&&a.hasChildNodes()){while(a.childNodes.length>=1){a.removeChild(a.firstChild)}}};Favorites.HtmlPage.assureVisibility=function(){var b,a,c=Com.$("favorites_html_list");if(c!==null&&c.hasChildNodes()){for(b=0;b<c.childNodes.length;b+=1){a=c.childNodes[b];if("FAV_Detail"===a.className){a.style.visibility="visible"}}}};Favorites.nextSibling=function(a){do{a=a.nextSibling}while(a&&a.nodeType!==1);return a};Favorites.DDList=function(d,a,b){var c;Favorites.DDList.superclass.constructor.call(this,d,a,b);c=this.getDragEl();YAHOO.util.Dom.setStyle(c,"opacity",0.67);this.goingUp=false;this.lastY=0;this.setXConstraint(0,0);this.useShim=false};YAHOO.extend(Favorites.DDList,YAHOO.util.DDProxy,{startDrag:function(b,d){var a=this.getDragEl(),c=this.getEl();YAHOO.util.Dom.setStyle(c,"visibility","hidden");a.innerHTML=c.innerHTML;YAHOO.util.Dom.setStyle(a,"color",YAHOO.util.Dom.getStyle(c,"color"));YAHOO.util.Dom.setStyle(a,"backgroundColor",YAHOO.util.Dom.getStyle(c,"backgroundColor"));YAHOO.util.Dom.setStyle(a,"border","1px none gray")},endDrag:function(d){var b,f,a=this.getEl(),c=this.getDragEl();YAHOO.util.Dom.setStyle(c,"visibility","");b=c.id;f=a.id;YAHOO.util.Dom.setStyle(b,"visibility","hidden");YAHOO.util.Dom.setStyle(f,"visibility","");Favorites.HtmlPage.updateRanks();Favorites.HtmlPage.clearYahooDiv();Favorites.HtmlPage.assureVisibility()},onDrag:function(a){var b=YAHOO.util.Event.getPageY(a);if(b<this.lastY){this.goingUp=true}else{if(b>this.lastY){this.goingUp=false}}this.lastY=b},onDragOver:function(f,g){var d,a,c=this.getEl(),b=YAHOO.util.Dom.get(g);if(b.nodeName.toLowerCase()==="div"){a=c.parentNode;d=b.parentNode;if(this.goingUp){d.insertBefore(c,b)}else{d.insertBefore(c,Favorites.nextSibling(b))}YAHOO.util.DragDropMgr.refreshCache()}}});Favorites.HtmlPage.attemptUpdateNote=function(f,e,a,d,c){var b=Favorites.HtmlPage.getCarNote(f,e,a,d,c);Favorites.HtmlPage.freezeNoteField(f,e,a,d,c);Favorites.HtmlPage.updateNoteStatus(f,e,a,d,c,"Saving ...","auto");Favorites.updateFavoriteNote(f,e,a,d,c,b)};Favorites.HtmlPage.getCarNote=function(f,e,a,d,c){var b=Favorites.createIdentifier_fromParams(f,e,a,d,c)+"_textarea";return Com.$(b).value};Favorites.HtmlPage.freezeNoteField=function(f,e,a,d,c){var g,h,b=Favorites.createIdentifier_fromParams(f,e,a,d,c);Com.$(b+"_textarea").disabled=true;d=(d===null)?"":d;c=(c===null)?"":c;g=Favorites.createIdentifier_fromParams(f,e,a,d,c)+"_textarea";h=Com.$(g);Favorites.replaceClassWith(h.parentNode,"FAV_changed","FAV_unchanged")};Favorites.HtmlPage.unfreezeNoteField=function(e,d,a,c,b){var f,g;c=(c===null)?"":c;b=(b===null)?"":b;f=Favorites.createIdentifier_fromParams(e,d,a,c,b)+"_textarea";g=Com.$(f);Favorites.replaceClassWith(g.parentNode,"FAV_focus",null);g.disabled=false;Favorites.HtmlPage.updateNoteStatus(e,d,a,c,b,"Notes (click to edit)","pointer")};Favorites.HtmlPage.unfreezeNoteFieldFromParams=function(a){Favorites.HtmlPage.unfreezeNoteField(a.year,a.make_name,a.model_name,a.bodystyle,a.style)};Favorites.HtmlPage.updateNoteStatus=function(f,e,d,i,a,b,h){var g,c;i=(i===null)?"":i;a=(a===null)?"":a;g=Favorites.createIdentifier_fromParams(f,e,d,i,a)+"_note_status";c=Com.$(g);c.innerHTML=b;c.style.cursor=h};Favorites.HtmlPage.textareaOnFocus=function(a){if(a.value==="Write a note..."){a.value=""}a.parentNode.className+=" FAV_focus"};Favorites.HtmlPage.textareaChanged=function(a){Favorites.replaceClassWith(a.parentNode,"FAV_unchanged","FAV_changed")};Favorites.HtmlPage.textareaOffFocus=function(b){var a=Com.trim(b.value);if(a===""){b.value="Write a note..."}};Favorites.HtmlPage.noteLabelOnClick=function(f,e,a,d,c){var b=Favorites.createIdentifier_fromParams(f,e,a,d,c)+"_textarea";Com.$(b).focus()};