var map = null;
var varEndereco=null;
var geo=null;			
var b=false;
var marker=null;
var varIDUser='<%=Session("sID")%>';
var varLatitude='<%=varLatitude%>';
var varLongitude='<%=varLongitude%>';
var mgr;
var objEnquadramento;
var markerCol=null;
var gMap;
var icons = [];
var vZoom=null;
var gCid="CURITIBA";			
				
function initialize() {
	setDiv("carregar","Aguarde...");
		
	setDiv("carregar","");
	getCidades();
}

function setCidadeCombo(varCid) {
	var vForm=document.frmPesquisar;
	for (var i=0;i<vForm.txtCidades.options.length;i++) {
		if(vForm.txtCidades.options[i].value.toUpperCase()==varCid.toUpperCase()) {
			vForm.txtCidades.options[i].selected=true;
		}
	}
	gCid="";
	getCoordenada(13);
}
				
function setDiv(obj,msg) {
	if(msg!=null) {		
		var vObj=document.getElementById(obj);
		if(vObj!=null) {
			vObj.innerHTML=msg;				
		}
	}
}

function getParam() {
	var vForm=document.frmPesquisar;
	var vRet="";
	
	vRet=vRet+"uf="+vForm.txtUF.options[vForm.txtUF.selectedIndex].text+" - "+vForm.txtUF.options[vForm.txtUF.selectedIndex].value;

	if(document.frmPesquisar.txtCidades) {
		var varCidade=vForm.txtCidades.options[vForm.txtCidades.selectedIndex].value;
		
		if(varCidade!="") {
			vRet="uf="+vForm.txtUF.options[vForm.txtUF.selectedIndex].value;
			vRet=vRet+"&cid="+varCidade;
		}
	}	
	if(vForm.txtEndereco.value!="") {
		vRet=vRet+"&end="+vForm.txtEndereco.value;
	}
	if(vForm.txtNumero.value!="") {
		vRet=vRet+"&num="+vForm.txtNumero.value;
	}
	if(vForm.txtCep.value!="") {
		vRet=vRet+"&cep="+vForm.txtCep.value;
	}
	return vRet;
}

function getCoordenada(opt) {
   vZoom=opt;
   
   setDiv("carregar","Aguarde...");
   var vObjLoading=document.getElementById('carregar');	
   //setDiv("teste","inc/getCoordXml.asp?"+getParam()+"&dv=carregar");
   getDados("inc/getCoordXml.asp?"+getParam()+"&dv=carregar",setCoordenada,"xml",vObjLoading);	   
}

function getCidades() {
  	var vForm=document.frmPesquisar;
	var varUF=vForm.txtUF.options[vForm.txtUF.selectedIndex].value;
	
   setDiv("carregar","Aguarde...");
   var vObjLoading=document.getElementById('carregar');
   getDados("inc/getXMLCidades.asp?uf="+varUF+"&dv=divCidades",setCidades,"xml",vObjLoading);	  
}

function setCidades(strXml) {
	var vForm=document.frmPesquisar;
	//retorno
	var varRetorno=strXml.getElementsByTagName("erro")[0].firstChild.nodeValue;
	//div
	var varDiv=strXml.getElementsByTagName("div")[0].firstChild.nodeValue;
	//retorno

	if(varRetorno=="True") {
		setDiv(varDiv,"<span class='links_topo'>Não encontrado</span>");
	}
	else {
		setDiv(varDiv,""); 
		  var varCombo="<select name='txtCidades' id='txtCidades' class='formulario' onchange='getCoordenada(13);'>";
		  varCombo=varCombo+"<option value=''>Cidades</option>";
		  
		  var dataArray=strXml.getElementsByTagName("cidade");		  
		  if(dataArray.length > 0) {		   
			 for(var i = 0;i < dataArray.length; i++)
			 {					
				var varValor = dataArray[i].attributes.getNamedItem("nome").value;				
				//addOption(varValor,varValor,vForm.txtCidades);				
				if(varValor.toUpperCase()==gCid.toUpperCase())
				{
					varCombo=varCombo+"<option value='"+varValor+"' selected>"+varValor+"</option>";	 
				}
				else
				{
				    varCombo=varCombo+"<option value='"+varValor+"'>"+varValor+"</option>";	 
				}
			 }
		 }	
		 varCombo=varCombo+"</select>";	
		 setDiv(varDiv,varCombo); 			 
		
		//****************************************			 
	 }
	 setDiv("carregar","");
	 if(gCid!="")
	 {
		
		/* for (var i=0;i<document.frmPesquisar.txtCidades.options.length;i++)	
		{
			if(document.frmPesquisar.txtCidades.options[i].value.toUpperCase()==gCid.toUpperCase())
			{
			   document.frmPesquisar.txtCidades.options[i].selected=true;
			}
		}*/
		//getCoordenada(13);		
		//setCidadeCombo("CURITIBA");
		gCid="";
		window.setTimeout("getCoordenada(13);",1000);
		
	 }
	 else
	 {
		getCoordenada(6);
		// window.setTimeout("getCoordenada(6)",1000);
	 }
 }

function setCoordenada(strXml) {
	//retorno
	var varRetorno=strXml.getElementsByTagName("erro")[0].firstChild.nodeValue;
	//div
	var varDiv=strXml.getElementsByTagName("dv")[0].firstChild.nodeValue;

	var x=strXml.getElementsByTagName("x")[0].firstChild.nodeValue;
	var y=strXml.getElementsByTagName("y")[0].firstChild.nodeValue;

	document.frmPesquisar.txtX.value=x;
	document.frmPesquisar.txtY.value=y;	 
	var ponto;

	//var varMarkerHtml="<div class='labelpreto'><b>Clique sobre o icone, mantenha pressionado o botão do mouse<br> e arraste o icone para a nova posição!</b></div>";	  
	
	// centraliza o mapa e aplica o zomm
	jQuery('#map').jmap('init', {'mapCenter':[x, y], 'mapZoom':15, 'mapEnableType':true, 'mapEnableScaleControl':true, 'mapControl':'large', 'mapShowjMapsIcon':false });
	jQuery('#map').jmap('CreateMarkerManager');	
	
	jQuery('#map').jmap('AddMarker', {'pointLatLng': [x,y], 'pointHTML': '', 'pointIsDraggable':true}, 
		function( mk, options){
			GEvent.addListener(mk, "dragend", function(){
				tmp=mk.getPoint(); // ou getLatLng
				tmp=tmp+"";
				tmp=tmp.replace("(","");
				tmp.replace(')','');
				arrTmp=tmp.split(', ');
				
				$('#txtX').val(arrTmp[0]);
				$('#txtY').val(arrTmp[1]);
				
			});
		}
	);
			
	$('#carregar').html('');
}

function getDados(varParam,callback,varRet,vLoading) {
	  //verifica se o browser tem suporte a ajax
	  try {
         ajax = new ActiveXObject("Microsoft.XMLHTTP");
      } 
      catch(e) {
         try {
            ajax = new ActiveXObject("Msxml2.XMLHTTP");
         }
	     catch(ex) {
            try {
               ajax = new XMLHttpRequest();
            }
	        catch(exc) {
               alert("Esse browser não tem recursos para uso do Ajax");
               ajax = null;
            }
         }
      }
	  //se tiver suporte ajax
	  if(ajax)
	  {
		  
		  ajax.open("GET", varParam+"&rdn="+Math.random(), true);
		  ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		 
		  ajax.onreadystatechange = function() {
          //enquanto estiver processando...emite a msg de carregando
		  if(ajax.readyState == 1)
		  {
			 if(vLoading!=null)
			 {
				 vLoading.innerHTML = "Aguarde...";   
			 }
	      }
			//após ser processado - chama função processXML que vai varrer os dados
            if(ajax.readyState == 4 )
			{
				if(varRet=="xml")
				{
					if(ajax.responseXML)
					{
					   callback(ajax.responseXML);
					}
					else
					{
					   //caso não seja um arquivo XML emite a mensagem abaixo
					   if(vLoading!=null)
					   {
						   vLoading.innerHTML = "Erro.";
					   }
					}
				}
				else if(varRet=="txt")
				{
					if(ajax.responseText)
					{						
					   callback(ajax.responseText);
					}
					else
					{
					   //caso não seja um arquivo XML emite a mensagem abaixo
					   if(vLoading!=null)
					   {
						   vLoading.innerHTML = "Erro.";
					   }
					}
				}
            }
         }
         ajax.send(null);
      }
   }

function addOption(varValue,varTexto,obj)
{		
	var opt = document.createElement('OPTION');
	opt.value = varValue;
	opt.text = varTexto;
	obj.options.add(opt);	
}

function fFinalizaCadastro()
{
	var vForm=document.frmPesquisar;
	var varNome=vForm.txtNome;
	var varTelefone=vForm.txtTelefone;
	var varEmail=vForm.txtEmail;
	var varUF=vForm.txtUF.options[vForm.txtUF.selectedIndex].value;
	var varCidade=vForm.txtCidades.options[vForm.txtCidades.selectedIndex].value;
	var varX=vForm.txtX.value;
	var varY=vForm.txtY.value;
	
	if(varNome.value=='')
	{
		alert("Informe seu nome!");
		varNome.focus();
		return false;
	}
	if(varTelefone.value=='' && varEmail.value=='')
	{
		alert("Informe seu telefone ou email!");
		varTelefone.focus();
		return false;	
	}
	if(varEmail.value=='' && varTelefone.value=='')
	{
		alert("Informe seu e-mail ou telefone!");
		varEmail.focus();
		return false;
	}
	if(varUF.value=='')
	{
		alert("Informe o Estado!");
		varUF.focus();
		return false;
	}
	if(varCidade.value=='')
	{
		alert("Informe o cidade!");
		varCidade.focus();	
		return false;	
	}
	
	if((varX.value==0 || varX.value=='') && (varY.value==0 || varY.value==''))
	{
		alert("Localize seu endereço no mapa!");
		return false;	
	}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
