/* centerStage.js */


CsButtonPanel.PLACEMENTS={};CsButtonPanel.PLACEMENTS['1-selected']=1;CsButtonPanel.PLACEMENTS['1-autoSelected']=1;CsButtonPanel.STATES={'ready':1,'timer':2,'transition':3,'manual':4};CsButtonPanel.prototype.startTimer=function()
{if(this.state==CsButtonPanel.STATES.ready)
{this.state=CsButtonPanel.STATES.timer;this.animate();}};CsButtonPanel.prototype.animate=function()
{var self=this;this.getSelected().buttonAni.css('width','16px');this.getSelected().buttonAni.animate({width:'0px'},CsButtonPanel.DISPLAY_TIME,'linear',function()
{if(self.state!=CsButtonPanel.STATES.manual)
{self.getSelected().setFilled(false);self.setSelected((self.selectedIndex+1)%self.buttons.length,true,0);if(self.selectedIndex==0){self.numCyclesCompleted++;if(self.numCycles==-1||self.numCyclesCompleted<self.numCycles){self.animate();}else{self.state=CsButtonPanel.STATES.manual;}}else{self.animate();}}});};function CsButtonPanel(numButtons,numCycles,frameChangeFn)
{this.state=CsButtonPanel.STATES.ready;this.frameChangeFn=frameChangeFn;this.buttonPanelDiv=jQuery('<div id="buttonContainer"> </div>');this.numCycles=numCycles;this.numCyclesCompleted=0;this.buttons=new Array();for(var i=0;i<numButtons;i++)
{var button=new CsButton(i,this);this.buttons[i]=button;this.buttonPanelDiv.append(button.button);}
this.buttons[numButtons-1].button.addClass('last');this.selectedIndex=0;this.buttons[0].setSelected(true,false);}
CsButtonPanel.prototype.setSelected=function(index,forceUpdate,isClick)
{if(index!=this.selectedIndex||(forceUpdate!==undefined&&forceUpdate))
{var oldIndex=this.selectedIndex;this.buttons[oldIndex].setSelected(false,false);this.selectedIndex=index;this.buttons[this.selectedIndex].setSelected(true,true);if(CsButtonPanel.LOGGINGBEHAVIOR==1||CsButtonPanel.LOGGINGBEHAVIOR==2){var slot=index+1;if(CsButtonPanel.LOGGINGBEHAVIOR==1&&(CsButtonPanel.PLACEMENTS[slot+'-selected']===undefined)){var params={'loggingBehavior':1,'placement':CsButtonPanel.PLACEMENTS[slot+'-placement'],'pageIdent':CsButtonPanel.PLACEMENTS['pageIdent'],'time':new Date().getTime(),'slot':slot,'rid':CsButtonPanel.PLACEMENTS['rid'],'autoSelected':1};if(isClick!==undefined&&isClick==1){params['autoSelected']=0;}
jQuery.get('/gp/center-stage/ajax/log-impressions.html',params,function(data){},"text");}
CsButtonPanel.PLACEMENTS[slot+'-selected']=1;}
if(oldIndex!=this.selectedIndex){this.frameChangeFn(oldIndex,this.selectedIndex);}}};CsButtonPanel.prototype.getSelected=function()
{return this.buttons[this.selectedIndex];};function CsButton(number,buttonPanel)
{this.selected=false;this.panel=buttonPanel;this.button=jQuery('<div class="csBtnContain"><div class="csBtnBase"></div><div class="csBtnAni"></div><div class="csBtnClkHov"></div><div class="csBtnNum">'+(number+1)+'</div></div>');this.buttonBase=this.button.find('.csBtnBase');this.buttonNum=this.button.find('.csBtnNum');this.buttonClkHov=this.button.find('.csBtnClkHov');this.buttonAni=this.button.find('.csBtnAni');var self=this;this.button.hover(function(){if(!(self.panel.state==CsButtonPanel.STATES.manual&&self.selected)){self.buttonClkHov.css('visibility','visible');}},function(){self.buttonClkHov.css({'visibility':'hidden','background-position':'0px -36px'});});this.button.click(function(){var forceUpdate=false;if(self.panel.state!=CsButtonPanel.STATES.manual)
{self.panel.getSelected().buttonAni.stop();self.panel.getSelected().buttonAni.css('width','0px');self.panel.state=CsButtonPanel.STATES.manual;forceUpdate=true;}
self.panel.setSelected(number,forceUpdate,1);});this.button.mousedown(function(){if(!(self.selected&&self.panel.state==CsButtonPanel.STATES.manual)){self.buttonClkHov.css({'background-position':'0px -54px'});}});this.button.mouseup(function(){self.buttonClkHov.css('visibility','hidden');});}
CsButton.prototype.setSelected=function(selected,filled)
{if(selected){this.selected=true;}
else{this.selected=false;}
this.setFilled(filled);};CsButton.prototype.setFilled=function(filled)
{if(filled){this.buttonBase.css('background-position','0px 0px');if(this.panel.state==CsButtonPanel.STATES.manual){this.button.addClass('selected');}}else{this.buttonBase.css('background-position','0px -18px');if(this.panel.state==CsButtonPanel.STATES.manual){this.button.removeClass('selected');}}};window.centerStageInit=function(numberOfSlots,slotDuration,numCycles,loggingBehavior,pageIdent,rid){CsButtonPanel.DISPLAY_TIME=slotDuration*1010;var buttonPanel=new CsButtonPanel(numberOfSlots,numCycles,function(oldIndex,newIndex)
{var delay=buttonPanel.state==CsButtonPanel.STATES.manual?200:500;var oldPanel=jQuery('#cs .csPanel:nth-child('+(oldIndex+1)+')');var newPanel=jQuery('#cs .csPanel:nth-child('+(newIndex+1)+')');oldPanel.animate({'opacity':'0'},delay,function()
{oldPanel.css('visibility','hidden');newPanel.css('opacity','0');newPanel.css('visibility','visible');newPanel.animate({'opacity':'1'},delay);});});CsButtonPanel.LOGGINGBEHAVIOR=loggingBehavior;if(loggingBehavior==1||loggingBehavior==2){CsButtonPanel.PLACEMENTS['numberOfSlots']=numberOfSlots;CsButtonPanel.PLACEMENTS['pageIdent']=pageIdent;CsButtonPanel.PLACEMENTS['rid']=rid;var index=1;var regexForPlacements=/pf_rd_p=([0-9]+)/;jQuery('#csPanels .csPanel').each(function(){var result=regexForPlacements.exec(jQuery(this).html());if(result){CsButtonPanel.PLACEMENTS[index+'-placement']=result[1];}else{CsButtonPanel.PLACEMENTS[index+'-placement']=-1;}
index++;});if(loggingBehavior==2){jQuery(window).unload(function(){CsButtonPanel.PLACEMENTS['time']=new Date().getTime();jQuery.get('/gp/center-stage/ajax/log-impressions.html',CsButtonPanel.PLACEMENTS,function(data){},"text");});}else{var params={'loggingBehavior':1,'placement':CsButtonPanel.PLACEMENTS[1+'-placement'],'pageIdent':CsButtonPanel.PLACEMENTS['pageIdent'],'time':new Date().getTime(),'slot':1,'rid':rid,'autoSelected':1};jQuery.get('/gp/center-stage/ajax/log-impressions.html',params,function(data){},"text");}}
jQuery('#cs .csButtonPanel').hide();jQuery('#cs .csButtonPanel').append(buttonPanel.buttonPanelDiv);var availHeight=290;jQuery('#csPanels .csPanel .tcg, #csPanels .csPanel .bannerImage').each(function()
{var panel=jQuery(this);panel.find('img:last').load(function(){window.valignPanel(panel,availHeight);});window.valignPanel(panel,availHeight);});jQuery('#csPanels .csPanel:first-child').css('visibility','visible');buttonPanel.getSelected().setFilled(true);jQuery('#cs .csButtonPanel').fadeIn('slow');if(numCycles==0){buttonPanel.state=CsButtonPanel.STATES.manual;buttonPanel.getSelected().button.addClass('selected');}else{buttonPanel.startTimer();}};window.valignPanel=function(panel,availHeight){var totalMargin=availHeight-panel.height();var marginTop=Math.round(totalMargin/2);var marginBottom=totalMargin-marginTop;panel.css('margin-top',marginTop+'px');panel.css('margin-bottom',marginBottom+'px');}; //amznJQ.declareAvailable('centerStageJS');


