var Menu=Class.create();Menu.prototype={initialize:function(b,a,c){this.name=a;this.type="menu";this.closeDelayTimer=null;this.closingMenuItem=null;this.config();if(typeof c=="function"){this.customConfig=c;this.customConfig()}this.rootContainer=new MenuContainer(b,this)},config:function(){this.collapseBorders=true;this.quickCollapse=true;this.closeDelayTime=500}};var MenuContainer=Class.create();MenuContainer.prototype={initialize:function(b,a){this.type="menuContainer";this.menuItems=[];this.init(b,a)},init:function(d,b){this.element=$(d);this.parent=b;this.parentMenu=(this.type=="menuContainer")?((b)?b.parent:null):b;this.root=b instanceof Menu?b:b.root;this.id=this.element.id;if(this.type=="menuContainer"){if(this.element.hasClassName("level1")){this.menuType="horizontal"}else{if(this.element.hasClassName("level2")){this.menuType="dropdown"}else{this.menuType="flyout"}}if(this.menuType=="flyout"||this.menuType=="dropdown"){this.isOpen=false;Element.setStyle(this.element,{position:"absolute",top:"0px",left:"0px",visibility:"hidden"})}else{this.isOpen=true}}else{this.isOpen=this.parentMenu.isOpen}var e=this.element.childNodes;if(e==null){return}for(var a=0;a<e.length;a++){var c=e[a];if(c.nodeType==1){if(this.type=="menuContainer"){if(c.tagName.toLowerCase()=="li"){this.menuItems.push(new MenuItem(c,this))}}else{if(c.tagName.toLowerCase()=="ul"){this.subMenu=new MenuContainer(c,this)}}}}},getBorders:function(d){var b=["Left","Top","Right","Bottom"];var a={};for(var c=0;c<b.length;++c){if(this.element.currentStyle){var e=parseInt(this.element.currentStyle["border"+b[c]+"Width"])}else{if(window.getComputedStyle){var e=parseInt(window.getComputedStyle(this.element,"").getPropertyValue("border-"+b[c].toLowerCase()+"-width"))}else{var e=parseInt(this.element.style["border"+b[c]])}}a[b[c].toLowerCase()]=isNaN(e)?0:e}return a},open:function(){if(this.root.closeDelayTimer){window.clearTimeout(this.root.closeDelayTimer)}this.parentMenu.closeAll(this);this.isOpen=true;if(this.menuType=="dropdown"){Element.setStyle(this.element,{left:(Position.positionedOffset(this.parent.element)[0])+"px",top:(Position.positionedOffset(this.parent.element)[1]+Element.getHeight(this.parent.element))+"px"})}else{if(this.menuType=="flyout"){var b=this.parentMenu?this.parentMenu.getBorders():new Object();var a=this.getBorders();if((Position.positionedOffset(this.parentMenu.element)[0]+this.parentMenu.element.offsetWidth+this.element.offsetWidth+20)>(window.innerWidth?window.innerWidth:document.body.offsetWidth)){Element.setStyle(this.element,{left:(-this.element.offsetWidth-(this.root.collapseBorders?0:b.left))+"px"})}else{Element.setStyle(this.element,{left:(this.parentMenu.element.offsetWidth-b.left-(this.root.collapseBorders?Math.min(b.right,a.left):0))+"px"})}Element.setStyle(this.element,{top:(this.parent.element.offsetTop-b.top-this.menuItems[0].element.offsetTop)+"px"})}}Element.setStyle(this.element,{visibility:"visible"})},close:function(){Element.setStyle(this.element,{visibility:"hidden"});this.isOpen=false;this.closeAll()},closeAll:function(a){for(var b=0;b<this.menuItems.length;++b){this.menuItems[b].closeItem(a)}}};var MenuItem=Class.create();Object.extend(Object.extend(MenuItem.prototype,MenuContainer.prototype),{initialize:function(idOrElement,parent){var menuItem=this;this.type="menuItem";this.subMenu;this.init(idOrElement,parent);if(this.subMenu){this.element.onmouseover=function(){menuItem.subMenu.open()}}else{if(this.root.quickCollapse){this.element.onmouseover=function(){menuItem.parentMenu.closeAll()}}}var linkTag=this.element.getElementsByTagName("A")[0];if(linkTag){linkTag.onfocus=this.element.onmouseover;this.link=linkTag;this.text=linkTag.text}if(this.subMenu){this.element.onmouseout=function(){if(menuItem.root.openDelayTimer){window.clearTimeout(menuItem.root.openDelayTimer)}if(menuItem.root.closeDelayTimer){window.clearTimeout(menuItem.root.closeDelayTimer)}eval(menuItem.root.name+".closingMenuItem = menuItem");menuItem.root.closeDelayTimer=window.setTimeout(menuItem.root.name+".closingMenuItem.subMenu.close()",menuItem.root.closeDelayTime)}}},openItem:function(){this.isOpen=true;if(this.subMenu){this.subMenu.open()}},closeItem:function(a){this.isOpen=false;if(this.subMenu){if(this.subMenu!=a){this.subMenu.close()}}}});var menu;function configMenu(){this.closeDelayTime=300}function initMenu(){menu=new Menu("root","menu",configMenu)}Event.observe(window,"load",initMenu,false);function Hsup(a){this.is_connected=false;this.attempting_to_reconnect=false;this.ever_been_connected=false;this.hasLogger="console" in window&&"log" in window.console;this.options=a;this.bindToWindow()}Hsup.fn=Hsup.prototype;Hsup.fn.logger=function(a){if(this.options.debug){a="Hsup: "+a+" on "+this.options.host+":"+this.options.port;this.hasLogger?console.log(a):alert(a)}};Hsup.fn.initialized=function(){this.fire_event("initialized");this.connect()};Hsup.fn.broadcast=function(c,d,b,a){var e={command:"broadcast",body:c,type:(d||"to_channels")};if(a){e.channels=a}if(b){e.client_ids=b}this.sendData(Hsup.toJSON(e))};Hsup.fn.sendData=function(a){this.swf().sendData(escape(a))};Hsup.fn.connect=function(){if(!this.is_connected){this.fire_event("connect");this.swf().connect(this.options.host,this.options.port)}};Hsup.fn.disconnect=function(){if(this.is_connected){this.swf().disconnect();this.is_connected=false}};Hsup.fn.handshake=function(){var a={};a.command="subscribe";if(this.options.session_id){a.session_id=this.options.session_id}if(this.options.client_id){a.client_id=this.options.client_id}if(this.options.channels){a.channels=this.options.channels}if(this.currentMsgId){a.last_msg_id=this.currentMsgId;a.signature=this.currentSignature}return a};Hsup.fn.connected=function(c){var b=Hsup.toJSON(this.handshake());this.sendData(b);this.ever_been_connected=true;this.is_connected=true;var a=this;setTimeout(function(){if(a.is_connected){a.attempting_to_reconnect=false}},1*1000);this.logger("Connected");this.fire_event("connected");pusher(1,0,0)};Hsup.fn.receiveData=function(a){var b=Hsup.parseJSON(unescape(a.toString()));this.currentMsgId=b.id;this.currentSignature=b.signature;this.logger("Received data:\n"+b.body+"\n");this.dispatchMessage(b)};Hsup.fn.dispatchMessage=function(msg){eval(msg.body)};var hsup;Hsup.fn.fire_event=function(a){$(document).fire("hsup:"+a)};Hsup.fn.bindToWindow=function(){Event.observe(window,"load",function(){hsup=this;this.appendFlashObject()}.bind(this))};Hsup.toJSON=function(a){return Object.toJSON(a)};Hsup.parseJSON=function(a){return a.evalJSON()};Hsup.fn.swf=function(){return $(this.options.swf_name)};Hsup.fn.appendElement=function(){this.element=new Element("div",{id:"hsup"});$(document.body).insert({bottom:this.element})};Hsup.fn.appendFlashObject=function(){if(this.swf()){throw ("Hsup error. 'swf_name' must be unique per hsup instance.")}Hsup.fn.appendElement();swfobject.embedSWF(this.options.swf_address,"hsup",this.options.width,this.options.height,String(this.options.flash_version),this.options.ei_swf_address,{bridgeName:this.options.bridge_name},{},{id:this.options.swf_name,name:this.options.swf_name})};Hsup.fn.refreshFlashObject=function(){this.swf().remove();this.appendFlashObject()};Hsup.fn.errorConnecting=function(a){console.log("error");this.is_connected=false;pusher(0,0,0);if(!this.attempting_to_reconnect){this.logger("There has been an error connecting");this.fire_event("errorConnecting");this.reconnect()}};Hsup.fn.disconnected=function(a){pusher(0,0,0);this.is_connected=false;if(!this.attempting_to_reconnect){this.logger("Connection has been lost");this.fire_event("disconnected");this.reconnect()}};Hsup.fn.reconnect=function(){if(this.options.reconnect_attempts){this.attempting_to_reconnect=true;this.fire_event("reconnect");this.logger("Will attempt to reconnect "+this.options.reconnect_attempts+" times,the first in "+(this.options.reconnect_intervals||3)+" seconds");this.retry_connect(this.options.reconnect_attempts)}};Hsup.fn.retry_connect=function(b,c){if(c==null){c=b}if(b>0&&!this.is_connected){var a=0;pusher(2,c-b,c);this.logger("Attempting reconnect");if(!this.ever_been_connected){this.refreshFlashObject();a=3}else{this.connect()}b--;setTimeout(function(){this.retry_connect(b,c)}.bind(this),(this.options.reconnect_intervals+a||3)*1000)}};Hsup.fn.reconnect_bad=function(){if(this.options.reconnect_attempts){this.attempting_to_reconnect=true;this.fire_event("reconnect");this.logger("Will attempt to reconnect "+this.options.reconnect_attempts+" times,the first in "+(this.options.reconnect_intervals||3)+" seconds");for(var a=0;a<this.options.reconnect_attempts;a++){setTimeout(function(){if(!this.is_connected){pusher(2,a+1,this.options.reconnect_attempts);this.logger("Attempting reconnect");if(!this.ever_been_connected){this.refreshFlashObject()}else{this.connect()}}}.bind(this),(this.options.reconnect_intervals||3)*1000*(a+1))}}};var DisplayFormat="%%D%% : %%H%% : %%M%% : %%S%% ";var CountActive=true;var CountStepper=-1;var LeadingZero=true;var FinishMessage="Auction is over";var SetTimeOutPeriod=(Math.abs(CountStepper)-1)*1000+1000;var SetClass="bold";var AddTime=[];function digits(b){var c=b.toString();if(LeadingZero&&c.length<2){c="0"+c}return"<span class='"+SetClass+"'>"+c+"</span>"}function counter(a){new Ajax.Request("get_auction_time/"+a,{method:"get",id:a,asynchonous:true,onSuccess:function(b){gsecs=parseInt(b.responseText);if(gsecs>0){$("over"+a).hide();$("bidbox"+a).show()}AddTime[a]=0;Clock(gsecs,a)}})}function Clock(b,e,f){if(b<=0){if(b==0){}$("bidbox"+e).hide();$("over"+e).show();return}var a=new Date();var f=(f==null)?a.getSeconds()-1:f;var c=a.getSeconds();if(c>f||(c==0&&f==59)){f=c;b+=CountStepper;b+=AddTime[e];AddTime[e]=0;CountBack(b,e)}if(CountActive){setTimeout(function(){Clock(b,e,f)},500)}}function CountBack(a,b){$("over"+b).hide();DisplayStr="";d=((Math.floor(a/86400))%100000);h=((Math.floor(a/3600))%24);m=((Math.floor(a/60))%60);s=((Math.floor(a/1))%60);if(d>0){DisplayStr=DisplayFormat.replace(/%%D%%/g,digits(d))}else{DisplayStr=DisplayFormat.replace(/%%D%% :/g,"")}if(h+d>0){DisplayStr=DisplayStr.replace(/%%H%%/g,digits(h))}else{DisplayStr=DisplayStr.replace(/%%H%% :/g,"")}if(m+h+d>0){DisplayStr=DisplayStr.replace(/%%M%%/g,digits(m))}else{DisplayStr=DisplayStr.replace(/%%M%% :/g,"")}if(s+m+h+d>0){DisplayStr=DisplayStr.replace(/%%S%%/g,digits(s))}else{DisplayStr=DisplayStr.replace(/%%S%%/g,FinishMessage)}$("cntdwn"+b).update(DisplayStr)}function pusher(b,c,a){if(b==1){$("pusher_on").show();$("pusher_off").hide();$("pusher_ini").hide();$("attempts").update("")}else{if(b==2){$("pusher_off").hide();$("pusher_on").hide();$("pusher_ini").show();$("attempts").update(c.toString()+"/"+a.toString())}else{$("pusher_off").show();$("pusher_on").hide();$("pusher_ini").hide()}}}var beeper=null;function bip(a){if(a){clearTimeout(beeper);beeper=setTimeout(function(){bip(false)},4000);$("beeper_on").show();$("beeper_off").hide();$("beeper_ini").hide()}else{$("beeper_off").show();$("beeper_on").hide();$("beeper_ini").hide()}};