/*
 * Upstate Tax.com
 * Copyright(c) 2005-2008, Scott Patterson.
 * 
 * 
 */


Ext.onReady(function(){if(Ext.fly('headlines')){var x=new UpstateTax.NewsStories();x.storyLimit=document.headlineLimit;if(x.isDisplayReady())x.displayStories();}
if(Ext.fly('favorites')){var y=new UpstateTax.NewsStories();y.displayDiv='favorites';y.favoritesOnly=true;y.storyLimit=document.favoriteLimit;if(y.isDisplayReady())y.displayStories();}});UpstateTax.NewsStories=function(){}
UpstateTax.NewsStories.prototype={favoritesOnly:false,displayDiv:'headlines',storyLimit:15,storyStart:0,loadingDiv:null,btnNext:null,btnPrev:null,isDisplayReady:function(){return Ext.query('#'+this.displayDiv).length>0;},parseStories:function(r,query){var rAjax=Ext.util.JSON.decode(r.responseText)
this.hideLoading();Ext.each(rAjax.data,function(story){this.addStory(story);},this);this.storyLimit=query.params.limit;this.storyStart=query.params.start;this.configureButtons(rAjax.total);},displayStories:function(){this.showLoading();Ext.Ajax.request({url:'/ajax/index.php',success:this.parseStories,failure:this.ajaxfailure,scope:this,params:{area:'news',action:'getstories',favsOnly:this.favoritesOnly?'y':'n',start:this.storyStart,limit:this.storyLimit}})},createElement:function(name,cls){var e=document.createElement(name);e.className=cls;return e;},createWrapTop:function(){var wrap=this.createElement('div','story-entry whiteBox');var top=wrap.appendChild(this.createElement('b','xtop'));top.appendChild(this.createElement('b','xb1'));top.appendChild(this.createElement('b','xb2'));top.appendChild(this.createElement('b','xb3'));top.appendChild(this.createElement('b','xb4'));return wrap;},createWrapBottom:function(){var bottom=this.createElement('b','xbottom');bottom.appendChild(this.createElement('b','xb4'));bottom.appendChild(this.createElement('b','xb3'));bottom.appendChild(this.createElement('b','xb2'));bottom.appendChild(this.createElement('b','xb1'));return bottom;},configureButtons:function(total){var wrap=new Ext.Element(document.createElement('div'));wrap.dom.className='buttons';if(this.storyStart!=0){if(!this.btnPrev){this.btnPrev=new Ext.Element(document.createElement('img'));this.btnPrev.dom.src='/images/btn-back.gif';this.btnPrev.dom.className='prevButton';this.btnPrev.on('click',function(){this.storyStart=this.storyStart-this.storyLimit
this.displayStories();},this);}
wrap.appendChild(this.btnPrev);}
if(total>this.storyStart+this.storyLimit){if(!this.btnNext){this.btnNext=new Ext.Element(document.createElement('img'));this.btnNext.dom.src='/images/btn-next.gif';this.btnNext.dom.className='nextButton';this.btnNext.on('click',function(){this.storyStart=this.storyStart+this.storyLimit
this.displayStories();},this);}
wrap.appendChild(this.btnNext);}
Ext.fly(this.displayDiv).appendChild(wrap);},addStory:function(data){var wrap=this.createWrapTop();var c=document.createElement('div');c.className='content';var l=c.appendChild(document.createElement('a'));l.href=data['link'];l.innerHTML=data['name'];c.appendChild(document.createElement('br'));c.appendChild(document.createElement('font'));c.lastChild.innerHTML='<i>'+data['site']+' - '+formatDate(data['newsday'])+'</i>';c.lastChild.setAttribute('size','-1');c.appendChild(document.createElement('br'));c.appendChild(document.createElement('font'));c.lastChild.innerHTML=data['teaser']+'&nbsp;';c.lastChild.setAttribute('size','-1');l=c.appendChild(document.createElement('a'));l.href=data['link'];l.appendChild(document.createElement('img')).setAttribute('src','http://sandbox.upstatetax.com/images/external.png');wrap.appendChild(c);wrap.appendChild(this.createWrapBottom());if(data['favorite']=='y'){var fw=this.createElement('div','favwrap');fw.appendChild(wrap);fw.appendChild(this.createElement('div','favimg')).innerHTML='&nbsp;';wrap=fw;}
Ext.fly(this.displayDiv).dom.appendChild(wrap);},showLoading:function(){if(!this.loadingDiv){var wrap=this.createWrapTop();wrap.id='loading'
var d=document.createElement('div');d.className='content';d.style.padding='10px 0 10px 150px';var sp=document.createElement('span');sp.className='loading';sp.innerHTML='Loading...';d.appendChild(sp);wrap.appendChild(d);wrap.appendChild(this.createWrapBottom());this.loadingDiv=Ext.fly(this.displayDiv).dom.appendChild(wrap);}else{var myDom=Ext.fly(this.displayDiv).dom;var i=0;while(myDom.childNodes[i]){while(myDom.childNodes[i].id=='loading')i++;myDom.removeChild(myDom.childNodes[i]);}}
this.loadingDiv.style.display='block';},hideLoading:function(){if(this.loadingDiv)this.loadingDiv.style.display='none';},ajaxFailure:function(){}}
function formatDate(input){var d=new Date()
d=Date.parseDate(input,"Y-m-d");return d.format('M j, Y');}
