﻿var articleFeed={container:null,feed:null,blnFilterPairs:false,currWinnow:'all',blnUsePair:false,arrCurrencyPair:null,blnUpdate:true,init:function(container,feed,interval){articleFeed.container=$(container);articleFeed.feed=feed;articleFeed.interval=interval;if(articleFeed.blnUpdate){var req=new Request.HTML({url:articleFeed.feed,onSuccess:function(tree,elements){if(elements){for(var i=0;i<elements.length;i++)
{var elem=elements[i];if(elem.id!=''&&$(elem.id)==null)
{articleFeed.checkNewArticles(elem);elem.setStyle('opacity','0');articleFeed.container.grab(elem,'top')
var newID=elem.id;$(newID).fade('in');}}}},onFailure:function(){}});var sendRequest=function(){req.send()};sendRequest.periodical(articleFeed.interval);}},checkArticle:function(elem){if(articleFeed.currWinnow=='all'||elem.hasClass(articleFeed.currWinnow)){if(!articleFeed.blnFilterPairs){return true;}
else{var blnMatchFound=false;var cookiePairs=null;if(Cookie.read('quickpairs')){var cookiePairs=Cookie.read('quickpairs');var arrPairs=cookiePairs.split('|');arrPairs.each(function(item,index){arrCurrencies=item.split('_');arrCurrencies.each(function(item,index){if(elem.hasClass(item)){blnMatchFound=true;}});});if(blnMatchFound){return true;}}
else{return false;}}}
else{return false;}},checkAllArticles:function(){var arrCurrArticles=articleFeed.container.getElements('div.article_block');arrCurrArticles.each(function(item,index){if(!articleFeed.checkArticle(item)){item.addClass('hidden');}
else{item.removeClass('hidden');}});},checkNewArticles:function(elem){var blnVisible=articleFeed.checkArticle(elem);if(!blnVisible){elem.addClass('hidden');}
return blnVisible;},togglePairs:function(){articleFeed.blnFilterPairs=!articleFeed.blnFilterPairs;articleFeed.checkAllArticles();},toggleWinnow:function(winnow){articleFeed.currWinnow=winnow;articleFeed.checkAllArticles();}}
var ArticleView=new Class({initialize:function(listContainer,viewContainer,loadingContainer){this.listContainer=$(listContainer);this.viewContainer=$(viewContainer);this.loadingContainer=$(loadingContainer);},show:function(feedURL){this.viewContainer.setStyles({height:this.listContainer.getStyle('height'),width:this.listContainer.getStyle('width')});this.loadingContainer.removeClass('hidden_element');this.retrieveData(feedURL);this.listContainer.addClass('hidden_element');this.viewContainer.removeClass('hidden_element');$$('div.related_content').addClass('hidden_element');$$('ul.content_toggle_links').addClass('hidden_element');$$('p.research_more').addClass('hidden_element');},hide:function(){this.viewContainer.addClass('hidden_element');this.loadingContainer.addClass('hidden_element');this.listContainer.removeClass('hidden_element');this.viewContainer.empty();$$('div.related_content').removeClass('hidden_element');$$('ul.content_toggle_links').removeClass('hidden_element');$$('p.research_more').removeClass('hidden_element');},retrieveData:function(feedURL){var xmlRequest=new Request.HTML({url:feedURL,onSuccess:function(responseTree,responseHTML){$each(responseTree,function(item){this.viewContainer.empty();this.viewContainer.grab(item,'top');this.loadingContainer.addClass('hidden_element');var myScroll=new Fx.Scroll(this.viewContainer,{});myScroll.set(0,0);},this);}.bind(this),onFailure:function(){alert('unable to connect to server');}.bind(this)});xmlRequest.send();}});var LiveData=new Class({initialize:function(elementID,objDataItems,xmlDataSource,parentNodeName,frequency){this.elementID=elementID;this.objDataItems=objDataItems;this.xmlDataSource=xmlDataSource;this.parentNodeName=parentNodeName;this.frequency=(frequency==null)?10000:frequency;this.element=$(this.elementID);this.arrDataItems=this.element.getElements('.data_item');this.currUpdating=false;this.currXMLData=null;this.currXMLNode=null;this.currDataItem=null;this.startTime=null;this.endTime=null;},startUpdating:function(){this.updateTimer=setTimeout(this.update.bind(this),this.frequency);},stopUpdating:function(){clearTimeout(this.updateTimer);},retrieveXML:function(){var xmlRequest=new Request.HTML({url:this.xmlDataSource,onSuccess:function(responseTree){$each(responseTree,function(item){if(item.nodeName.toLowerCase()==this.parentNodeName.toLowerCase()){this.currXMLData=item.getChildren(this.objDataItems.nodeName);this.startItemUpdate();}},this);}.bind(this),onFailure:function(){alert('unable to connect to server');this.currUpdating=false;this.startUpdating();}.bind(this)});xmlRequest.send();},update:function(){if(!this.currUpdating){this.currUpdating=true;this.retrieveXML();}},startItemUpdate:function(){this.arrDataItems.each(this.updateDataItem,this);this.currUpdating=false;this.startUpdating();},updateDataItem:function(item){this.currDataItem=item;this.currXMLData.each(function(item){if(item.getProperty(this.objDataItems.attribute)==this.currDataItem.id){this.currXMLNode=item;this.objDataItems.dataPoints.each(this.updateDataPoints,this);}}.bind(this));},updateDataPoints:function(item){var dataPointClassName=item.pointClassName;var dataPointNodeName=item.pointNodeName;var dataPointElement=this.currDataItem.getElement('.'+dataPointClassName);var dataPointValue=this.currXMLNode.getElement(dataPointNodeName).get('text');this.updateChangeDirection(dataPointElement,dataPointValue);if(dataPointClassName=='buy_price'||dataPointClassName=='sell_price'){this.styleTradePrice(dataPointElement,dataPointValue);}
dataPointElement.set('html',dataPointValue);},getDirectionContainer:function(dataPointElement){var dataPointElementParent=dataPointElement.getParent();if(dataPointElement.hasClass('rising')||dataPointElement.hasClass('falling')){return dataPointElement;}
else if(dataPointElementParent.hasClass('rising')||dataPointElementParent.hasClass('falling')){return dataPointElementParent;}},updateChangeDirection:function(dataPointElement,dataPointValue){var currHTMLValue=dataPointElement.get('html').toFloat();var newHTMLValue=dataPointValue.toFloat();var directionContainer=this.getDirectionContainer(dataPointElement);if(directionContainer){if(newHTMLValue>currHTMLValue){directionContainer.removeClass('falling');directionContainer.addClass('rising');}
else if(newHTMLValue<currHTMLValue){directionContainer.removeClass('rising');directionContainer.addClass('falling');}}},styleTradePrice:function(dataPointElement,dataPointValue){var dataVal=dataPointValue;var dataPips=dataVal.substr(dataVal.length-3,2);var dataTenth=dataVal.substr(dataVal.length-1,1);dataVal=dataVal.substr(0,dataVal.length-3);var spanTenth=new Element('span',{'class':'tenth'}).appendText(dataTenth);var spanPips=new Element('span',{'class':'pips'}).grab(spanTenth).appendText(dataPips,'top');dataPointElement.getParent().getElement('.display_price').set('html','');dataPointElement.getParent().getElement('.display_price').grab(spanPips).appendText(dataVal,'top');}});var oneClickTrading={arrTradeBars:[],init:function(){oneClickTrading.arrTradeBars=$$('.trade_bar .trade');var blnOCT=Cookie.read('OCT');if(blnOCT=='true'){oneClickTrading.on();}},on:function(){oneClickTrading.arrTradeBars.addClass('on');var blnOCT=Cookie.write('OCT','true',{duration:14});},off:function(){oneClickTrading.arrTradeBars.removeClass('on');var blnOCT=Cookie.write('OCT','false',{duration:14});}}