﻿window.AvisoLancamento = {};

AvisoLancamento.Inicializa = function() 
{
    AvisoLancamento.Inicializado = 1;
    AvisoLancamento.Popup = $('avisoLancamentos')
    //page.dropALancamentoEstados.onchange = AvisoLancamento.Estado_Change;
    //page.dropALancamentoCidades.SetDisabled();
    
}

AvisoLancamento.Estado_Change = function()
{
	if( (this.SelectedValue()||'').length == 2 )
	{
		page.dropALancamentoCidades.Clear();
		page.dropALancamentoCidades.Add( 'Aguarde...', 'Aguarde...' );
		page.dropALancamentoCidades.SetDisabled();
		Ajax.ListaCidadesPorEstado( this.SelectedValue(), AvisoLancamento.PopulaCidades )
	}
}

AvisoLancamento.PopulaCidades = function(cidades)
{
	page.dropALancamentoCidades.Clear();
	page.dropALancamentoCidades.Bind(cidades, 'ID', 'Nome', 'Selecione');
	page.dropALancamentoCidades.SetEnabled();
	if( window.LancamentoCidade && !AvisoLancamento.CidadeCarregada )
	{
	    AvisoLancamento.CidadeCarregada = 1;
        page.dropALancamentoCidades.SetSelectedValue( window.LancamentoCidade.CidadeID );
    }
}

AvisoLancamento.ExibePop = function(emp, estadoID, cidadeID)
{
    if (!AvisoLancamento.Inicializado)
    {
        AjaxContainer.Load('BoxAvisoLancamento');
        AvisoLancamento.CarregaControles();
        AvisoLancamento.Inicializa();
    }

    App.EscondeTela();
    App.CentralizaControle(AvisoLancamento.Popup);
    AvisoLancamento.Popup.style.display = '';
    App.FuturoLancamento = emp;
    App.EstadoID = estadoID;
    App.CidadeID = cidadeID;

    //if( window.LancamentoEstado && !AvisoLancamento.CidadeCarregada )
    //    page.dropALancamentoEstados.SetSelectedValue( window.LancamentoEstado.EstadoID );
}


AvisoLancamento.AbrePopCorretorOnLine = function(url, nomeCidade, idCidade, idCidadeTrack)
{
    App.GeraConversaoCorretorOnline();
    App.TrackAnalytics('Corretor-Online', 'Netcall', nomeCidade, 'Padrão');

    var winWidth = 496;
    var winHeight = 530;
    var winTop = parseInt((screen.availHeight - winHeight) / 2);
    var winLeft = parseInt((screen.availWidth - winWidth) / 2);

    //popupWin = window.open(url, name, "width=" + winWidth + ",height=" + winHeight + ",top=" + winTop + ",left=" + winLeft + ",resizable=no,scrollbars=no,statusbar=no");
    popupWin = window.open(page.ResolveUrl('~/aspx/SEM/RedirectGoogle.aspx?destino=' + escape(url).Replace('%', '___')), 'corretorOnline', "width=" + winWidth + ",height=" + winHeight + ",top=" + winTop + ",left=" + winLeft + ",resizable=no,scrollbars=no,statusbar=no");
    if (popupWin.opener == null)
        popupWin.opener = self;

    if (popupWin.opener == null)
        popupWin.opener = self;

    if (idCidadeTrack || idCidade)
    {
        if (!idCidade)
            idCidade = [0, 9668, 7043, 7994, 2048][idCidadeTrack];

        Ajax.InsereTrackCidade(idCidade, Function.Empty);
    }
}

AvisoLancamento.EscondePop = function()
{
	AvisoLancamento.CidadeCarregada = false;
	App.ExibeTela();
	AvisoLancamento.Popup.style.display = 'none';
	AvisoLancamento.LimpaFormulario();
}

AvisoLancamento.EnviaSolicitacao = function()
{
    var comunicacao = {};
    comunicacao.Nome = page.txtALancamentoNome.value;
    comunicacao.Email = page.txtALancamentoEmail.value;
    comunicacao.FoneDDD = page.txtALancamentoDDD.value;
    comunicacao.Fone = page.txtALancamentoTelefone.value;
    comunicacao.CPFCNPJ = page.txtACPF.value;
    comunicacao.ReceberNovidades = page.chkALancamentoApto.checked;
    comunicacao.CidadeID = AvisoLancamento.CidadeID || App.CidadeID;
    comunicacao.EstadoID = AvisoLancamento.EstadoID || App.EstadoID;
    comunicacao.Empreendimento = App.FuturoLancamento;

    var msg = AvisoLancamento.Valida(comunicacao);
    if (msg)
        alert(msg);
    else
        App.EnviaComunicacaoUnificada(comunicacao, App.ComunicacaoUnificada.Origem.FuturosLancamentos, AvisoLancamento.EnviaSolicitacaoEnd);  
}

AvisoLancamento.Valida = function(comunicacao)
{
    if (String.IsNullOrEmpty(comunicacao.Nome))
		return 'O "Nome" deve ser fornecido.';

    if (String.IsNullOrEmpty(comunicacao.Email))
		return 'O "E-Mail" deve ser fornecido.';

    if (!Validadores.ValidaEmail(comunicacao.Email))
		return 'O "E-Mail" fornecido não é válido.';

    if (String.IsNullOrEmpty(comunicacao.Fone))
	    return 'O "DDD" e o "Telefone" devem ser fornecidos.';

	if (String.IsNullOrEmpty(comunicacao.CPFCNPJ))
	    return 'O "CPF" deve ser fornecido.';

	if (!String.IsNullOrEmpty(comunicacao.CPFCNPJ) && !Validadores.ValidaCPF(comunicacao.CPFCNPJ))
	    return 'O CPF fornecido não é válido.';
	    
	return null;
}

AvisoLancamento.EnviaSolicitacaoEnd = function(rt)
{
	if(!rt)
	{
		alert( 'Ocorreu um erro inesperado' );
		AvisoLancamento.EscondePop();
	}
	else
	{
		AvisoLancamento.Popup.style.display = 'none';
		App.ExibeTela();
		App.ExibeAlerta('Lançamentos Futuros', 'Cadastro realizado com sucesso.')
	}
	AvisoLancamento.LimpaFormulario();
}

AvisoLancamento.LimpaFormulario = function()
{
	page.txtALancamentoNome.value = '';
	page.txtALancamentoEmail.value = '';
	page.txtALancamentoTelefone.value = '';
	page.txtALancamentoDDD.value = '';
	page.dropALancamentoEstados.SetText('Selecione');
	page.dropALancamentoCidades.Clear();
	page.dropALancamentoCidades.SetDisabled();
}
