﻿function init(evt)
{     
    setConfigFieldsForms(); 
    
    if(ID("ct_fast-search"))
    {
        setKeyPress([ID("ct_fast-search")],[13],goFastSearch);
    } 
    
    //--- personalizacoes essenciais
    Imoveis.Favorites(0, false, function(){ getTwittadas("souza_gomes", 5, ID("twittadas"), 6) } );
}
Initialize.add(init);
//---------------------------

function sendMail(_this)
{    
    var s = "";
    var name = "name_email".nvl();
    var email = "email_email".nvl();
    var phones = "phones_email".nvl();
    var message = "message_email".nvl();
    var imovel_para = document.form1.imovel_para ? getValueListRadio(document.form1.imovel_para).value : ""; 
    
    if(name.length==0) s += "» Digite seu nome!\n";
    if(phones.length==0) s += "» Digite seu telefone!\n";
    if(email.length==0) s += "» Digite seu e-mail!\n"; else if(!isEmail(email)) s += "» E-mail inválido!\n";            
    if(message.length==0) s += "» Digite sua mensagem!\n";
    
    if(s.length>0) dialog(s);
    else
    {
        if(dialog("Enviar email agora?"))
        {           
            "status_sendmail".setValue("Aguarde, enviando e-mail...");  
            StandByButton(_this);
            var qs = {
            	csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl(),
                to: "to_email".nvl(),
                subject: "subject_email".nvl(),
                name: name,
                email: email,
                phones: phones,
                message: message,
                imovel_para:imovel_para
            };  
            
            var action = function(data)
            {
                StandByButton(_this);
                if(data.result!="ok") alert("ATENÇÃO [" + data.result + "]:\n\n" + data.html);
                "status_sendmail".setValue(data.html); 
            }
            ajax.go("/sendmail/", qs, action, action);                   
        }      
    }
}

//--------------------------------------------------------

function gotoPage(i)
{
    var f = document.forms[0];
    f.page.value = i;
    f.method = "POST";
    f.submit();
    return void(0);    
}

//--------------------------------------------------------

function openMedias(id, index)
{
    var vi = viewImages();
    vi.setListImages(ID("list_medias_" + id).innerHTML, index);
}

//--------------------------------------------------------

function goNewsLetter()
{
	var nome = "nome_newsletter".nvl();
	var email = "email_newsletter".nvl();
	if(nome.length == 0 || !isEmail(email))
		dialog("Para se cadastrar é necessário informar seu nome e um e-mail válido!");
	else
	{
		var bt = ID("bt_newsletter");
        bt.disabled = true;
        bt.innerHTML = "Processando...";
		if(ajax.isComplete)	
			ajax.go("/newsletter/", {nome:nome, email:email, csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl()}, 
			function(data)
			{
				bt.disabled = false;
			    bt.innerHTML = "Enviar";
			    ID("nome_newsletter").value = "";
			    ID("email_newsletter").value = "";
				dialog(data);
			}, 
			null, 'text');
		else
			dialog('Aguarde, ainda esta processando requisição anterior!');
	}
		
	return void(0);    
}


//--------------------------------------------------------

var id_new_old = null;
function getNew(id)
{
    if(id_new_old!=null && id_new_old!=id) ID("item-new-"+id_new_old).style.display="none";
    var e = ID("item-new-"+id);
    toggleContainer(null, e, "block");
    id_new_old = id;
    
    if(e.innerHTML.length==0 || e.innerHTML=="Aguarde, carregando dica...")
    {
        e.innerHTML = "Aguarde, carregando dica...";
        ajax.go(
            '/news/' + id,
            {csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl()},
            function(data)
            {
                e.innerHTML = data;                
            },
            null, 'text', true
        ); 
    }
}

//--------------------------------------------------------

function goFastSearch()
{
	var s = "&ref=" + ID("ref_fast-search").value + 
    "&tipo=" + ID("tipo_fast-search").value + 
    "&dorm=" + ID("dorm_fast-search").value + "&_dorm=" + ID("_dorm_fast-search").value +
    "&localizacao=" + ID("localizacao_fast-search").value + 
    "&valor=" + ID("valor_fast-search").value + "&_valor=" + ID("_valor_fast-search").value;
	goFormPost("/resultados/?" + s.substring(1) + "&csrfmiddlewaretoken=" + document.form1.csrfmiddlewaretoken.value);	
    return void(0);    
}

//--------------------------------------------------------

function getTwittadas(user, count, ct, seg)
{
    ct.innerHTML = "Carregando...";
    ajax.go(
        "/twitter/", 
        {user:user, count:count, csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl()}, 
        function(data)
        { 
            ct.innerHTML = "";
            playTwittadas(data);
        },
        null, 'text', true        
    );    
    
    playTwittadas = function(s)
    {
        var list = s.split("<br />");        
        Div("ct-items-twittadas",list[0],"",ct);        
        if(list.length>1)
        {
            var index = 0;
            setInterval(
                function()
                {
                    index++;
                    if(index==list.length) index = 0;
                    s = list[index];                    
                    $("#ct-items-twittadas").fadeOut("slow", function()
                    {                    
                        $("#ct-items-twittadas").html(s);
                        $("#ct-items-twittadas").fadeIn("slow");
                    });                    
                },
                1000*seg
            ); 
        }   
    }       
}

//--------------- IMOVEIS ---------------------------------------------------------------
//---------------------------------------------------------------------------------------

var reqAjaxImoveis = null;
var Imoveis = {
  Fotos : function(id_imovel, id_condominio)
  {
	  var vi = viewImages();
	  if (ajax.isComplete)
      { 
          ajax.go(
              "/list_medias/", 
              {
            	  csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl(),
            	  id_imovel: id_imovel,
            	  id_condominio: id_condominio                  
              }, 
              function(data)
              { 
            	  vi.setListImages(data);                              
              }, 
              null, 'text', true
          );             
      }         
  },
  Videos : function(list_json)
  {
	  viewVideos.title = "videos";
	  viewVideos.open(list_json);
  },
  Duvidas : function(id, ref)
  {
      var goDuvidas = function()
      {
          var nome = "nome_duvidas".nvl();
          var email = "email_duvidas".nvl(); 
          var tels = "tels_duvidas".nvl();            
          var msg = "msg_duvidas".nvl();

          var s = "";
          if(nome.length==0) s += "» Digite seu nome!\n";
          if(email.length==0) s += "» Digite seu e-mail!\n"; else if(!isEmail(email)) s += "» E-mail inválido!\n";            
          if(msg.length==0) s += "» Digite uma mensagem!\n";

          if(s.length>0) 
        	  dialog(s);
          else if (ajax.isComplete)
          {
              w.setStatus("Aguarde, enviando e-mail(s)...");
              w.setStateButtons([1],false);
              ajax.go(
                  "/sendmail_details/", 
                  {
                	  csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl(),
                	  subject: 'DÚVIDAS / INFORMAÇÕES',
                      id: id,
                      ref: ref,
                      nome : nome,
                      email: email,
                      tels: tels,
                      msg: msg                    
                  }, 
                  function(data)
                  { 
                      w.setStatus(data.html);
                      w.setStateButtons([1],true);                              
                  }, 
                  null, 'json', true
              );             
          }
      }
      
      var html = "<div class='body-windows group-form'>";
          html += "<div><span>Seu Nome:</span><input type='text' id='nome_duvidas' /></div>";
          html += "<div><span>Seu E-mail:</span><input type='text' id='email_duvidas' /></div>";
          html += "<div><span>Seu(s) Telefone(s):</span><input type='text' id='tels_duvidas' /></div>";
          html += "<div><span>Sua Mensagem:</span><textarea id='msg_duvidas'></textarea></div>";
      html += "</div>";
      
      var bts = [ { label:"Enviar", action:goDuvidas } ];
      var w = new Windows("duvidas_imovel", 680, 400, "Dúvidas / Informações - Imóvel Ref.: " + ref, html, bts);    
      w.show();  
        
  },
  Propostas : function(id, ref)
  {
      var goProposta = function()
      {
          var nome = "nome_proposta".nvl();
          var email = "email_proposta".nvl(); 
          var tels = "tels_proposta".nvl();            
          var msg = "msg_proposta".nvl();

          var s = "";
          if(nome.length==0) s += "» Digite seu nome!\n";
          if(email.length==0) s += "» Digite seu e-mail!\n"; else if(!isEmail(email)) s += "» E-mail inválido!\n";            
          if(msg.length==0) s += "» Digite uma mensagem!\n";

          if(s.length>0) 
        	  dialog(s);
          else if (ajax.isComplete)
          {
              w.setStatus("Aguarde, enviando e-mail(s)...");
              w.setStateButtons([1],false);
              ajax.go(
                  "/sendmail_details/", 
                  {
                	  csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl(),
                	  subject: 'INFORMAÇÃO / PROPOSTA',
                      id: id,
                      ref: ref,
                      nome : nome,
                      email: email,
                      tels: tels,
                      msg: msg                    
                  }, 
                  function(data)
                  { 
                      w.setStatus(data.html);
                      w.setStateButtons([1],true);                              
                  }, 
                  null, 'json', true
              );             
          }
      }
      
      var html = "<div class='body-windows group-form'>";
          html += "<div><span>Seu Nome:</span><input type='text' id='nome_proposta' /></div>";
          html += "<div><span>Seu E-mail:</span><input type='text' id='email_proposta' /></div>";
          html += "<div><span>Seu(s) Telefone(s):</span><input type='text' id='tels_proposta' /></div>";
          html += "<div><span>Sua Mensagem:</span><textarea id='msg_proposta'></textarea></div>";
      html += "</div>";
      
      var bts = [ { label:"Enviar", action:goProposta } ];
      var w = new Windows("proposta_imovel", 680, 400, "Proposta de Negócio - Imóvel Ref.: " + ref, html, bts);    
      w.show();  
        
  },
  Indicar : function(id, ref)
  {
      var goIndicacao = function()
      {
           var nome = "nome_indicacao".nvl();
           var emails = "emails_indicacao".nvl();             
           var msg = "msg_indicacao".nvl();
           
           var s = "";
           if(nome.length==0) s += "» Digite seu nome!\n";
           if(emails.length==0) s += "» Digite o(s) e-mail(s) de destino!\n";
           else
           {
              emails = emails.replaceAll(",",";").clearBreakLine(";");
              if(emails.charAt(emails.length-1)==";") emails = emails.substring(0,emails.length-1);
              if(emails.charAt(0)==";") emails = emails.substring(1);
              emails = emails.split(";");
              for(var i=0; i<emails.length; i++)
              {
                  if(!isEmail(emails[i].trim())) s += "» O " + (i+1) + "º endereço eletrônico \"" + emails[i].trim() + "\" não é válido!\n";
              }
           }             
           if(msg.length==0) s += "» Digite uma mensagem!\n";
           
           if(s.length>0) 
        	   dialog(s);
           else if (ajax.isComplete)
           {
        	  
              w.setStatus("Aguarde, enviando e-mail(s)...");
              w.setStateButtons([1],false);
              ajax.go(
                  "/sendmail_details/", 
                  {
                	  csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl(),
                	  subject: 'Indicação de Imóvel',
                      id: id,
                      ref: ref,
                      nome : nome,
                      emails: emails.join(),
                      msg: msg                    
                  }, 
                  function(data)
                  { 
                      w.setStatus(data.html);
                      w.setStateButtons([1],true);                              
                  }, 
                  null, 'json', true
              );             
           }
      }
      var html = "<div class='body-windows group-form'>";
          html += "<div><span>Seu Nome:</span><input type='text' id='nome_indicacao' /></div>";
          html += "<div><span>E-mails Indicados:</span><textarea id='emails_indicacao' style='height:50px'></textarea><code>Separe os e-mails com \";\" ponto e vírgula.</code></div>";
          html += "<div><span>Sua Mensagem:</span><textarea id='msg_indicacao'></textarea></div>";
      html += "</div>";
      
      var bts = [ { label:"Enviar", action:goIndicacao } ];
      var w = new Windows("indicacao_imoveis", 680, 400, "Indicação do Imóvel de Ref.: " + ref, html, bts);  
      w.show();  
      return void(0);
  },
  Favorites : function(id, isRemove, fa)
  {
	  var _st = function()
	  {
		  var bkg = ID('bkg_favorites'), leg = ID('leg_favorites'); 
		  if(!bkg)
		  {
			  bkg = Div('bkg_favorites','','bkg_favorites',document.body);
			  leg = Div('leg_favorites','Aguarde, atualizando <em>favoritos</em>...','leg_favorites',document.body);
		  }
		  bkg.style.height = document.documentElement.scrollHeight + "px";
		  bkg.style.display = leg.style.display = bkg.style.display == 'block' ? 'none' : 'block';		  
	  }
	  
      var fv = ID("ct_imoveis-favoritos").getElementsByTagName("div")[0];  
      fv.innerHTML = "<span>" + (typeof id=="undefined" ? "Verificando" : "Processando") + "...</span>";
      fv.parentNode.style.display = "block";
      _st();
      ajax.go(
          "/favorites/", 
          {   
        	  csrfmiddlewaretoken: "csrfmiddlewaretoken".nvl(),
              id: nvl(id,0), 
              site: "site".nvl(), 
              client: "client".nvl(),
              action: nvlBool(isRemove,false) ? "remove" : ""
          }, 
          function(data)
          { 
              fv.innerHTML = data.trim();
              fv.parentNode.style.display = fv.innerHTML.length==0 ? "none" : "block"; 
              _st();
              if(typeof fa=='function') fa();
          }, 
          null, 'text', true
      );  

      return void(0);
  },
  Descartar : function(_this)
  {
      if(dialog("Descartar ficha?"))
      {
          $(_this.parentNode.parentNode).fadeOut("slow",
              function()
              {
                  var t = parseInt(ID("count_list_imoveis").innerHTML);
                  ID("count_list_imoveis").innerHTML = t-1;
              }
          );
      }
      return void(0);
  },
  GoogleMaps : function(address)
  {
      windowPopup("view_google_maps","http://maps.google.com.br/maps?f=q&source=s_q&hl=pt-BR&geocode=&q=" + escape(address),980,680,true,false);
  },
  ToggleCondominio : function(_this)
  {
      var display = _this.innerHTML.indexOf("Ver Detalhes")>-1 ? "block" : "none";
      _this.innerHTML = display=="block" ? _this.innerHTML.replace("Ver Detalhes","Ocultar Detalhes") : _this.innerHTML.replace("Ocultar Detalhes","Ver Detalhes");
      _this.parentNode.parentNode.getElementsByTagName("blockquote")[0].style.display = display; 
      return void(0);
  } 
}

