var port_codes=$.parseJSON($.cookie("port_codes"))||{},quotes_codes=$.parseJSON($.cookie("quotes_codes"))||{IBOV:!0,PETR4:!0,VALE5:!0};function updateCookie(){$.cookie("port_codes",$.toJSON(port_codes),{expires:300,path:"/"});$.cookie("quotes_codes",$.toJSON(quotes_codes),{expires:300,path:"/"})}
function newQuote(a,b,d,c){var e=$("<img/>").attr("src","/images/rmt.png");e.click(function(){quotes_codes[a]=void 0;$("#quotes_code_"+a).remove();delCodeFromTable("quotes_data",a)});var f=parseFloat(c)>0?"positive":"negative",f=parseFloat(c)==0?"equal":f,b=$("<tr></tr>").attr("id","quotes_code_"+a).append('<td class="tick"><a href="/cotacoes/resumo/'+a+'">'+a+"</a></td>").append("<td>"+b+"</td>").append("<td>"+d+"</td>").append('<td class="tick_'+f+'">'+(c>0?"+"+c:c)+"</td>").append($("<td></td>").append(e));
$("#quotes_data").append(b)}
function updateQuote(a,b,d,c){a=$("#quotes_code_"+a+" td");b=$(a[2]);if(parseFloat(b.text())!=d){var e=parseFloat(b.text());b.text(d);d<e?b.glow("red",500):d>e&&b.glow("lightgreen",500)}b=$(a[3]);parseFloat(b.text())!=c&&(c<0?(b.text(c).removeClass("tick_positive tick_equal"),b.addClass("tick_negative").glow("red",500)):c>0?(b.text("+"+c).removeClass("tick_negative tick_equal"),b.addClass("tick_positive").glow("lightgreen",500)):(b.text(c).removeClass("tick_negative tick_positive"),b.addClass("tick_equal").glow("gray",
500)))}function updatePortTotalSum(){var a=0;$("#port_data tr.band1, tr.band2").each(function(b,d){a+=roundNumber($($(d).find("td")[4]).text(),2)});$("#port span.tail").text("R$ "+roundNumber(a,2))}function roundNumber(a,b){return Math.round(a*Math.pow(10,b))/Math.pow(10,b)}
function newPort(a,b,d,c){var e=$("<img/>").attr("src","/images/rmt.png");e.click(function(){port_codes[a]=void 0;$("#port_code_"+a).remove();delCodeFromTable("port_data",a);updatePortTotalSum()});var f=parseFloat(c)>0?"positive":"negative",f=parseFloat(c)==0?"equal":f,b=$("<tr></tr>").attr("id","port_code_"+a).append('<td class="tick"><a href="/cotacoes/resumo/'+a+'">'+a+"</a></td>").append("<td>"+b+"</td>").append("<td>"+d+"</td>").append('<td class="tick_'+f+'">'+(c>0?"+"+c:c)+" %</td>").append("<td>"+
roundNumber(b*d,2)+"</td>").append($("<td></td>").append(e));$("#port_data").append(b);updatePortTotalSum()}
function updatePort(a,b,d,c){a=$("#port_code_"+a+" td");$(a[2]).text()!=d&&($(a[2]).text(d),$(a[2]).glow("gray",500));roundNumber(d*b,2)!=$(a[4]).text()&&$(a[4]).text(roundNumber(d*b,2)).glow("gray",500);parseFloat($(a[3]).text())!=c&&(c<0?($(a[3]).text(c).removeClass("tick_positive tick_equal"),$(a[3]).addClass("tick_negative").glow("red",500)):c>0?($(a[3]).text("+"+c).removeClass("tick_negative tick_equal"),$(a[3]).addClass("tick_positive").glow("lightgreen",500)):($(a[3]).text(c).removeClass("tick_negative tick_positive"),
$(a[3]).addClass("tick_equal").glow("gray",500)));updatePortTotalSum()}function addCodeToTable(a){var b=$("#"+a+" tr").length%2==0;$.each($("#"+a+" tr"),function(a,c){a>0&&($(c).attr("class",b?"band1":"band2"),b=!b)})}function delCodeFromTable(a){var b=$("#"+a+" tr").length%2==0;updateCookie();$.each($("#"+a+" tr"),function(a,c){a>0&&($(c).attr("class",b?"band1":"band2"),b=!b)})}
function loadCodesCookieDataQuotes(){var a="";for(code in quotes_codes)a+=code+",";getCodeData(a,function(a){if(a.status)for(code in quotes_codes)addCodeToTable("quotes_data",newQuote(code,a.data[code][1],parseFloat(a.data[code][9]),parseFloat(a.data[code][16])))})}
function updateCodesCookieDataQuotes(){var a="";for(code in quotes_codes)a+=code+",";getCodeData(a,function(a){if(a.status)for(code in a.data)updateQuote(code,a.data[code][1],parseFloat(a.data[code][9]),parseFloat(a.data[code][16]))})}function updateCodesCookieDataPort(){var a="";for(code in port_codes)a+=code+",";getCodeData(a,function(a){if(a.status){for(code in a.data)updatePort(code,port_codes[code],a.data[code][9],parseFloat(a.data[code][16]));updatePortTotalSum()}})}
function loadCodesCookieDataPort(){var a="";for(code in port_codes)a+=code+",";getCodeData(a,function(a){if(a.status){for(code in port_codes)addCodeToTable("port_data",newPort(code,port_codes[code],a.data[code][9],parseFloat(a.data[code][16])));updatePortTotalSum()}})}jQuery.fn.numbersonly=function(){return this.each(function(){$(this).keydown(function(a){a=a.charCode||a.keyCode||0;return a==8||a==9||a==46||a>=37&&a<=40||a>=48&&a<=57||a>=96&&a<=105})})};
function getCodeData(a,b){var d={};$.ajax({url:"http://"+document.location.host+"/cotacoes/get_datafeed/?codigo="+a,async:!0,success:function(a){if(a!=""&&a!="0"){d.status=!0;a=a.split("\n");d.data=d.data||{};for(i=0;i<a.length;i++)if(a[i].trim()!="0"){var e=a[i].split(",");d.data[e[0]]=e}b(d)}}});return d}
$(document).ready(function(){$("#port_code").keypress(function(a){a.which=="13"&&(a.preventDefault(),$("#port_add_button").trigger("click"))});$("#port_add_button").click(function(){var a=$("#port_code").val().toUpperCase(),b=parseInt($("#port_qtd").val());getCodeData($("#port_code").val().toUpperCase(),function(d){if(a&&!(a==""||b==""||!b||$("#port_code_"+a).attr("id")!=void 0||!d.status))port_codes[a]=b,updateCookie(),addCodeToTable("port_data",newPort(a,b,d.data[a][9],d.data[a][16]));$("#port_qtd").val("");
$("#port_code").val("").focus()})});$("#quotes_code").keypress(function(a){a.which=="13"&&(a.preventDefault(),$("#quotes_add_button").trigger("click"))});$("#quotes_add_button").click(function(){var a=$("#quotes_code").val().toUpperCase();getCodeData(a,function(b){if(a&&!(a==""||$("#quotes_code_"+a).attr("id")!=void 0||!b.status))quotes_codes[a]=!0,updateCookie(),addCodeToTable("quotes_data",newQuote(a,b.data[a][1],parseFloat(b.data[a][9]),parseFloat(b.data[a][16])));$("#quotes_code").val("").focus()})});
$("#port_qtd").numbersonly();loadCodesCookieDataQuotes();loadCodesCookieDataPort();window.setInterval(function(){updateCodesCookieDataPort()},5E3);window.setInterval(function(){updateCodesCookieDataQuotes()},5E3)});

