//<![CDATA[
var janelaBrowser=window;
if (janelaBrowser.captureEvents){
	janelaBrowser.captureEvents(Event.RESIZE);
	janelaBrowser.onresize=alterarTamanhoAreaEstatisticas;
}else{
	janelaBrowser.onresize = alterarTamanhoAreaEstatisticas;
}

var desabilitadoEventoResize = false;
function alterarTamanhoAreaEstatisticas(){	
	if(!desabilitadoEventoResize)
		setTimeout("ajustarWidthMapa();atualizaEstatisticasAV()",400);
	
}

function addEstatisticasAV(){	
	map.addControl(new EstatisticasAv());
	ajustarWidthMapa();
	setTimeout("atualizaEstatisticasAV()",400);
}


var gadgetEstatisticasAVDiv;

function EstatisticasAv() {
}
EstatisticasAv.prototype = new GControl();

EstatisticasAv.prototype.initialize = function(mapWikiCrimes) {
  var container = document.createElement("div");

  gadgetEstatisticasAVDiv = document.createElement("div");
  gadgetEstatisticasAVDiv.className = "bordas_arredondadas";
  this.setButtonStyle_(gadgetEstatisticasAVDiv);
  container.appendChild(gadgetEstatisticasAVDiv);
  gadgetEstatisticasAVDiv.innerHTML = htmlEstatisticasAV();
 
  map.getContainer().appendChild(container);
  return container;
}


EstatisticasAv.prototype.getDefaultPosition = function() {
  return new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(0,0));
}


EstatisticasAv.prototype.setButtonStyle_ = function(gadget) {				
  gadget.style.backgroundColor = corApp;
  gadget.style.border = "solid 1px #ccc";
  gadget.style.opacity= ".85";
  gadget.style.mozOpacity = "0.85";
  gadget.style.filter= "alpha(opacity=85)";
  //button.style.cursor = "pointer";
  //button.style.backgroundImage = "url('./images/logoWikicrimesEmbedded.PNG')";
}

var widthMapa = null;
function ajustarWidthMapa(){
	var b = map.getBounds();
	
	var north = b.getNorthEast().lat();
	var south = b.getSouthWest().lat();
	var east = b.getNorthEast().lng();
	var west = b.getSouthWest().lng();   
	
	var northPixel = map.getCurrentMapType().getProjection().fromLatLngToPixel(b.getNorthEast(), map.getZoom()).y;
	var southPixel = map.getCurrentMapType().getProjection().fromLatLngToPixel(b.getSouthWest(), map.getZoom()).y;
	var eastPixel = map.getCurrentMapType().getProjection().fromLatLngToPixel(b.getNorthEast(), map.getZoom()).x;
	var westPixel = map.getCurrentMapType().getProjection().fromLatLngToPixel(b.getSouthWest(), map.getZoom()).x;
	
	widthMapa = ((eastPixel - westPixel)-2)-2;
	gadgetEstatisticasAVDiv.innerHTML = htmlEstatisticasAV();
	
}

var controleMaxMinEstAV = 'max';
function maximizarMinimizarEstAV(){
	
	if(controleMaxMinEstAV == 'min'){
		gadgetEstatisticasAVDiv.innerHTML = htmlEstatisticasAV();
		desabilitadoEventoResize = false;
		atualizaEstatisticasAV();
	}else{		
		desabilitadoEventoResize = true;
		gadgetEstatisticasAVDiv.innerHTML=htmlEstatisticasAVMinimizado();
	}	
}

function htmlEstatisticasAVMinimizado(){
	controleMaxMinEstAV = 'min'
	var html = '<span align="right"  onclick="maximizarMinimizarEstAV();" style="cursor:pointer;color:'+color+'">&nbsp;'+mTituloEAV+'&nbsp;▲&nbsp;</span>';
	return html;
}

function htmlEstatisticasAV(){
	if(color=="#fff")
		color+="fff";
	if(color=="#000")
		color+="000";
	controleMaxMinEstAV = 'max'
	var html = '';
	html += '<table margin="0" border="0" cellspacing="0" cellpadding="0" id="tableEstatisticasAV" width ="'+widthMapa+'" height="80px">'; 
	html += '	<tr valign="top" height="14px"> ';
	html += '		<td>';
	html += '			<font size="1" color='+color+'><b>&nbsp;'+mTituloEAV+'</b></font>';
	html += '		</td>';
	html += '		<td rowspan="2">';
	html += '			<span id="graficoVP"> </span>';
	html += '		</td>';
	html += '		<td rowspan="2" align="right">';
	html += '			<span align="right" onclick="maximizarMinimizarEstAV();" style="cursor:pointer;color:'+color+'">▼</span>';
	html += '		</td>';	
	html += '	</tr>';
	html += '	<tr valign="top"> ';
	html += '		<td>';
	html += '			&nbsp;&nbsp;<font size="1" color='+color+'>'+mQtdMarkersEAV1+' <span id="qtdMarcadoresVP"> '+qtdEventsVP+' </span> '+mQtdMarkersEAV2+' <span id="mensPlotagemLimitada"> </span> </font> </br>';
	html += '		</td>';	
	html += '	</tr>';
	html += '</table>';
	return html;	
}

function MarkerEAV(id, nome, qtd){
	this.id = id;
	this.nome = nome;
	this.qtd = qtd;
}

function sizeArray(array){
	var i = 0;
	for(k in array){
		i++;
	}
	return (i+1);
}

function montaGraficoMaior(){
	var tpMkrStr = '&chl=';
	var qtdMkrStr = '&chd=t:';	
	
	
	for (k in tiposMarcadores){
		
		if(qtdEventsVP!=0){
			tpMkrStr+= nomeMarcadores[k]+'('+((tiposMarcadores[k]/qtdEventsVP)*100).toFixed(2)+'%)|';
			qtdMkrStr += ((tiposMarcadores[k]/qtdEventsVP)*100).toFixed(2)+',';
			
					}	
		else{
			tpMkrStr+= nomeMarcadores[k]+'(0%)|';
			qtdMkrStr += 0+',';
			
		}	
	}
		
	tpMkrStr =  tpMkrStr.substring( 0, tpMkrStr.length - 1);
	qtdMkrStr = qtdMkrStr.substring( 0, qtdMkrStr.length - 1);
	
	var html = '<img src="http://chart.apis.google.com/chart?cht=p&chs=600x300&chf=bg,s,65432100'+tpMkrStr+qtdMkrStr+'" />';
	
	fillMsg(html,680,400,'22%',120,false);
}

function atualizaEstatisticasAV(){
	if(document.getElementById("qtdMarcadoresVP") != null)
		document.getElementById("qtdMarcadoresVP").innerHTML = qtdEventsVP;
	if(qtdEventsVP > 300){
		if(document.getElementById("mensPlotagemLimitada") != null)
			document.getElementById("mensPlotagemLimitada").innerHTML = mQtdMarkersEAV3;
	}else{
		if(document.getElementById("mensPlotagemLimitada") != null)
			document.getElementById("mensPlotagemLimitada").innerHTML = "";
	}	
	
	
	var tamArrayMarkers = sizeArray(tiposMarcadores);
	
	var tpMkrStr = '&chl=';
	var qtdMkrStr = '&chd=t:';
	
	
	if(tamArrayMarkers<=6){
		for (k in tiposMarcadores){
			
			if(qtdEventsVP!=0){
				tpMkrStr+= nomeMarcadores[k]+'('+((tiposMarcadores[k]/qtdEventsVP)*100).toFixed(2)+'%)|';
				qtdMkrStr += ((tiposMarcadores[k]/qtdEventsVP)*100).toFixed(2)+',';
			}	
			else{
				tpMkrStr+= nomeMarcadores[k]+'(0%)|';
				qtdMkrStr += 0+',';
			}	
		}
			
		tpMkrStr =  tpMkrStr.substring( 0, tpMkrStr.length - 1);
		qtdMkrStr = qtdMkrStr.substring( 0, qtdMkrStr.length - 1);
	}else{
		var maior = new MarkerEAV(null,'',-1);
		var maior2 = new MarkerEAV(null,'',-1);
		var maior3 = new MarkerEAV(null,'',-1);
		var maior4 = new MarkerEAV(null,'',-1);
		var maior5 = new MarkerEAV(null,'',-1);
		
		
		for (k in tiposMarcadores){
			if(tiposMarcadores[k] >= maior.qtd){
				maior5.qtd = maior4.qtd;
				maior5.id = maior4.id;
				maior5.nome = maior4.nome;
				
				maior4.qtd = maior3.qtd;
				maior4.id = maior3.id;
				maior4.nome = maior3.nome;
				
				maior3.qtd = maior2.qtd;
				maior3.id = maior2.id;
				maior3.nome = maior2.nome;
				
				maior2.qtd = maior.qtd;
				maior2.id = maior.id;
				maior2.nome = maior.nome;
				
				maior.qtd = tiposMarcadores[k];
				maior.id = k;
				maior.nome = nomeMarcadores[k];				
				
			}else{
				if(tiposMarcadores[k] >= maior2.qtd){
					maior5.qtd = maior4.qtd;
					maior5.id = maior4.id;
					maior5.nome = maior4.nome;
					
					maior4.qtd = maior3.qtd;
					maior4.id = maior3.id;
					maior4.nome = maior3.nome;
					
					maior3.qtd = maior2.qtd;
					maior3.id = maior2.id;
					maior3.nome = maior2.nome;
					
					maior2.qtd = tiposMarcadores[k];
					maior2.id = k;
					maior2.nome = nomeMarcadores[k];
				}else{
					if(tiposMarcadores[k] >= maior3.qtd){
						maior5.qtd = maior4.qtd;
						maior5.id = maior4.id;
						maior5.nome = maior4.nome;
						
						maior4.qtd = maior3.qtd;
						maior4.id = maior3.id;
						maior4.nome = maior3.nome;
						
						maior3.qtd = tiposMarcadores[k];
						maior3.id = k;
						maior3.nome = nomeMarcadores[k];
					}else{
						if(tiposMarcadores[k] >= maior4.qtd){
							
							maior5.qtd = maior4.qtd;
							maior5.id = maior4.id;
							maior5.nome = maior4.nome;
							
							maior4.qtd = tiposMarcadores[k];
							maior4.id = k;
							maior4.nome = nomeMarcadores[k];
						}else{
							if(tiposMarcadores[k] >= maior5.qtd){
								maior5.qtd = tiposMarcadores[k];
								maior5.id = k;
								maior5.nome = nomeMarcadores[k];
							}					
						}	
					}	
				}	
			}	
			
		}		
		
		
		tpMkrStr+= maior.nome+'('+((maior.qtd/qtdEventsVP)*100).toFixed(2)+'%)|';
		tpMkrStr+= maior2.nome+'('+((maior2.qtd/qtdEventsVP)*100).toFixed(2)+'%)|';
		tpMkrStr+= maior3.nome+'('+((maior3.qtd/qtdEventsVP)*100).toFixed(2)+'%)|';
		tpMkrStr+= maior4.nome+'('+((maior4.qtd/qtdEventsVP)*100).toFixed(2)+'%)|';
		tpMkrStr+= maior5.nome+'('+((maior5.qtd/qtdEventsVP)*100).toFixed(2)+'%)|';
		tpMkrStr+= 'Outros('+(((qtdEventsVP - (maior.qtd + maior2.qtd + maior3.qtd + maior4.qtd + maior5.qtd))/qtdEventsVP)*100).toFixed(2)+'%)';
		
		qtdMkrStr += ((maior.qtd/qtdEventsVP)*100).toFixed(2)+',';
		qtdMkrStr += ((maior2.qtd/qtdEventsVP)*100).toFixed(2)+',';
		qtdMkrStr += ((maior3.qtd/qtdEventsVP)*100).toFixed(2)+',';
		qtdMkrStr += ((maior4.qtd/qtdEventsVP)*100).toFixed(2)+',';
		qtdMkrStr += ((maior5.qtd/qtdEventsVP)*100).toFixed(2)+',';
		qtdMkrStr += (((qtdEventsVP - (maior.qtd + maior2.qtd + maior3.qtd + maior4.qtd + maior5.qtd))/qtdEventsVP)*100).toFixed(2);
	}	
	if(document.getElementById("graficoVP") != null)
		document.getElementById("graficoVP").innerHTML = '<img style="cursor:pointer" onclick="montaGraficoMaior();" src="http://chart.apis.google.com/chart?cht=p&chs=408x76&chf=bg,s,65432100'+tpMkrStr+qtdMkrStr+'" />';
		
	
}
//]]>