
function StockSummarySimple(iqCaller,viewer){this.iqCaller=iqCaller
this.viewer=viewer;}
StockSummarySimple.prototype.doValue=function(value){var output=this.viewer.generate(value,this);value.criteria.body.appendChild(output);if(!value.criteria.isDetail)
return;value.criteria.insideBody=output.myInside;var dataHandler=new AjaxDataHandler(this,value.criteria);dataHandler.handleRequestData=this.handleRequestData;this.iqCaller.getInside(value.criteria.security.symbol,value.criteria.security.secId,APPLICATION_ID_CORP,dataHandler);}
StockSummarySimple.prototype.handleRequestData=function(value)
{if(value==undefined){this.criteria.insideBody.innerHTML='No Inside Market';return;}
this.criteria.insideBody.innerHTML=value.bidPrice+'/'+value.askPrice+' ('+value.bidSize+'/'+value.askSize+' )';}
StockSummarySimple.prototype.run=function(criteria,body){var security=criteria.security;this.iqCaller.getTradeInfo(security.symbol,APPLICATION_ID_CORP,new AjaxDataHandler(this,{'security':security,'body':body,'isDetail':criteria.isDetail}));}
function StockSummaryDOM(){}
StockSummaryDOM.prototype.generate=function(value,callback){var output=document.createElement('div');var div=document.createElement('h3');output.appendChild(div);div.appendChild(document.createTextNode(value.criteria.security.symbol+': '));div.appendChild(document.createTextNode(value.criteria.security.tierName));div=document.createElement('div');var change;if(value.change!=null&&value.change!=undefined)
{var change=value.change;var pchange=value.percentChange;var cssClass='';if(change<0)
{cssClass='negative';change='-'+Formatter.toPrice(change);pchange='-'+Formatter.toPercent(pchange);}
else
{cssClass='positive';change='+'+Formatter.toPrice(change);pchange='+'+Formatter.toPercent(pchange);}
change+=' ('+pchange+'%)';}
else
change='';var span=document.createElement('span');span.className='large '+cssClass;span.innerHTML=(value.lastSale==undefined)?'':value.lastSale;output.appendChild(span);span=document.createElement('span');span.className=cssClass;span.innerHTML=change;output.appendChild(span);span=document.createElement('span');span.className='time';span.innerHTML=((!exists(value.quoteTime))?(''):('at '+Formatter.toQuoteTime(value.quoteTime)));output.appendChild(span);if(!value.criteria.isDetail)
return output;output.appendChild(div=document.createElement('table'));elem=div.insertRow(-1);span=elem.insertCell(0);span.className='caption';span.innerHTML='Quote';span=elem.insertCell(1);span.className='detail';output.myInside=span;elem=div.insertRow(-1);span=elem.insertCell(0);span.className='caption';span.innerHTML='Vol';span=elem.insertCell(1);span.className='detail';span.innerHTML=(value.volumeFormatted==undefined)?'':value.volumeFormatted;return output;}