예제 #1
0
    private void ConfigurarTelaSenhaExpirada(SYS_Usuario entityUsuario)
    {
        ScriptManager sm = ScriptManager.GetCurrent(this.Page);

        if (sm != null)
        {
            string script = String.Format(@"var usu_id = '{0}';", entityUsuario.usu_id);

            if (sm.IsInAsyncPostBack)
            {
                ScriptManager.RegisterClientScriptBlock(this, typeof(Page), "Usuario", script, true);
            }
            else
            {
                Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "Usuario", script, true);
            }
        }

        string mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemSenhaAtualIncorreta);

        if (!string.IsNullOrEmpty(mensagem))
        {
            cvSenhaAtual.ErrorMessage = mensagem;
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemConfirmarSenhaNaoIdentico);

        if (!string.IsNullOrEmpty(mensagem))
        {
            _cpvConfirmarSenha.ErrorMessage = mensagem;
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemSenhaAtualSenhaNovaDiferenca);

        if (!string.IsNullOrEmpty(mensagem))
        {
            CompareValidator1.ErrorMessage = mensagem;
        }

        _txtSenhaAtual.Text    = string.Empty;
        _txtNovaSenha.Text     = string.Empty;
        _txtConfNovaSenha.Text = string.Empty;
        _txtSenhaAtual.Focus();

        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Senha expirada.",
                                        entityUsuario.usu_login);
        ScriptManager.RegisterStartupScript(this, GetType(), "AlterarSenha",
                                            "$(document).ready(function(){ $('#divAlterarSenha').dialog('open'); }); ",
                                            true);
    }
예제 #2
0
    protected void Page_Load(object sender, EventArgs e)
    {
        txtLogin.Text = __SessionWEB.__UsuarioWEB.Usuario.usu_login;

        ScriptManager sm = ScriptManager.GetCurrent(this.Page);

        if (sm != null)
        {
            sm.Scripts.Add(new ScriptReference(ArquivoJS.MsgConfirmBtn));
            sm.Scripts.Add(new ScriptReference("~/Includes/jsMeusDados.js"));
        }

        string mensagem = PermiteAlterarEmail ?
                          SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemConfirmarcaoAlteracaoSenhaEmail) :
                          SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemConfirmarcaoAlteracaoSenha);

        if (string.IsNullOrEmpty(mensagem))
        {
            mensagem = "Deseja realmente alterar a senha?<br /><br />Caso confirme você será redirecionado para a página de login.";
        }


        string script = String.Format("SetConfirmDialogButton('{0}','{1}');",
                                      String.Concat("#", btnSalvar.ClientID),
                                      mensagem);

        Page.ClientScript.RegisterStartupScript(GetType(), btnSalvar.ClientID, script, true);

        // Carrega os grupos do usuário
        if (!IsPostBack)
        {
            try
            {
                InicializarTela();

                LoadGrupos();
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                lblMessage.Text = UtilBO.GetErroMessage("Erro ao carregar os dados.", UtilBO.TipoMensagem.Erro);
            }
        }
    }
예제 #3
0
    private void EnviaNovaSenhaEmail(Guid usu_id, byte usu_situacao, string pes_nome, byte usu_integracaoAD)
    {
        try
        {
            if (usu_situacao == (byte)SYS_UsuarioBO.eSituacao.Ativo || usu_situacao == (byte)SYS_UsuarioBO.eSituacao.Senha_Expirada)
            {
                SYS_Usuario usu = new SYS_Usuario {
                    usu_id = usu_id
                };
                SYS_UsuarioBO.GetEntity(usu);

                usu.usu_situacao = (byte)SYS_UsuarioBO.eSituacao.Senha_Expirada;

                SYS_UsuarioBO.Save(usu, pes_nome, __SessionWEB.TituloGeral, ApplicationWEB._EmailHost, ApplicationWEB._EmailSuporte, ApplicationWEB.EmailRemetente);

                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Senha enviada para o e-mail com sucesso.");

                string mensagemSucesso = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.LoginMensagemSenhaEmailEnviadaSucesso);
                _lblMessage.Text = UtilBO.GetErroMessage(string.IsNullOrEmpty(mensagemSucesso) ? "Senha enviada para o e-mail com sucesso." : mensagemSucesso, UtilBO.TipoMensagem.Sucesso);
            }
            else if (usu_situacao == (byte)SYS_UsuarioBO.eSituacao.Padrao_Sistema)
            {
                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Erro no envio de senha. Usuário padrão.");
                _lblMessage.Text = UtilBO.GetErroMessage("Usuário padrão.", UtilBO.TipoMensagem.Alerta);
            }
            else
            {
                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Erro no envio de senha. Usuário bloqueado.");
                _lblMessage.Text = UtilBO.GetErroMessage("Usuário bloqueado.", UtilBO.TipoMensagem.Alerta);
            }
        }
        catch (DuplicateNameException ex)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
            ScriptManager.RegisterClientScriptBlock(this, GetType(), "EsqueciSenhaErro", "$('#divEsqueciSenha').dialog('close');", true);
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar enviar e-mail com a senha para o usuário.", UtilBO.TipoMensagem.Erro);
            ScriptManager.RegisterClientScriptBlock(this, GetType(), "EsqueciSenhaErro", "$('#divEsqueciSenha').dialog('close');", true);
        }
    }
예제 #4
0
    private void ConfigurarEsqueciSenhaEmail()
    {
        divEmail.Visible     = chkPossuiEmail.Checked || !chkPossuiEmail.Visible;
        divDtNascCpf.Visible = divNovaSenhaEsqueci.Visible = !divEmail.Visible;

        _txtEmail.Text = txtDtNasc.Text = txtCPF.Text = string.Empty;

        string msgEmail = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.EsqueciSenhaMensagemInformacaoEmail);

        if (!string.IsNullOrEmpty(msgEmail))
        {
            lblEmailInfo.Text = msgEmail + "<br /><br />";
        }

        if (UCComboEntidade1._Combo.SelectedValue != Guid.Empty.ToString())
        {
            UCComboEntidade2._Combo.SelectedValue = UCComboEntidade1._Combo.SelectedValue;

            if (divEmail.Visible)
            {
                _txtEmail.Focus();
            }
            else
            {
                txtDtNasc.Focus();
            }
            UCComboEntidade2.Visible = false;
        }
        else
        {
            UCComboEntidade2._Combo.SelectedValue = Guid.Empty.ToString();
            UCComboEntidade2.Visible = true;
            UCComboEntidade2._Combo.Focus();
        }

        _btnEnviar.Text = chkPossuiEmail.Checked ? "Enviar" : "Alterar senha";
    }
예제 #5
0
    /// <summary>
    /// Inicializa os componentes da tela.
    /// </summary>
    private void InicializarTela()
    {
        // Mensagem de informação sobre o cadastro de email da tela de meus dados.
        string mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemEmail);

        lblInformacao.Text = string.IsNullOrEmpty(mensagem) ? string.Empty :
                             UtilBO.GetErroMessage(mensagem, UtilBO.TipoMensagem.Informacao);

        txtEmail.Enabled = PermiteAlterarEmail;

        if (PermiteAlterarEmail)
        {
            rfvConfNovaSenha.Enabled = revNovaSenhaFormato.Enabled = revNovaSenhaTamanho.Enabled =
                cpvNovaSenha.Enabled = rfvNovaSenha.Enabled = cpvConfNovaSenha.Enabled = false;
            RemoveAsteriscoObrigatorio(lblNovaSenha);
            RemoveAsteriscoObrigatorio(lblConfNovaSenha);

            // Mensagem de validação quando o email for inválido.
            mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemEmailInvalido);
            revEmail.ErrorMessage = string.IsNullOrEmpty(mensagem) ? "E-mail está fora do padrão ( seuEmail@seuProvedor )." : mensagem;

            rfvEmail.Visible = revEmail.Visible = cvEmailExistente.Visible = EmailObrigatorio;
            if (EmailObrigatorio)
            {
                AdicionaAsteriscoObrigatorio(lblEmail);
            }
            else
            {
                RemoveAsteriscoObrigatorio(lblEmail);
            }
        }
        else
        {
            rfvConfNovaSenha.Enabled = revNovaSenhaFormato.Enabled = revNovaSenhaTamanho.Enabled =
                cpvNovaSenha.Enabled = rfvNovaSenha.Enabled = cpvConfNovaSenha.Enabled = true;

            rfvEmail.Visible = revEmail.Visible = cvEmailExistente.Visible = false;
            RemoveAsteriscoObrigatorio(lblEmail);
            AdicionaAsteriscoObrigatorio(lblNovaSenha);
            AdicionaAsteriscoObrigatorio(lblConfNovaSenha);
        }

        // Mensagem de validação de confirmação da nova senha.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemConfirmarSenhaNaoIdentico);

        if (!string.IsNullOrEmpty(mensagem))
        {
            cpvConfNovaSenha.ErrorMessage = mensagem;
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaFormato);

        if (!string.IsNullOrEmpty(mensagem))
        {
            revNovaSenhaFormato.ErrorMessage = mensagem;
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaTamanho);

        if (!string.IsNullOrEmpty(mensagem))
        {
            revNovaSenhaTamanho.ErrorMessage = mensagem;
        }

        // Configura formato senha
        revNovaSenhaFormato.ValidationExpression = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.FORMATO_SENHA_USUARIO);
        // Configura tamanho senha
        revNovaSenhaTamanho.ValidationExpression = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TAMANHO_SENHA_USUARIO);

        // Mensagem de validação do formato da senha.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaFormato);

        if (!string.IsNullOrEmpty(mensagem))
        {
            revNovaSenhaFormato.ErrorMessage = mensagem;
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaTamanho);

        if (!string.IsNullOrEmpty(mensagem))
        {
            revNovaSenhaTamanho.ErrorMessage = mensagem;
        }
        else
        {
            revNovaSenhaTamanho.ErrorMessage = String.Format(revNovaSenhaTamanho.ErrorMessage, UtilBO.GetMessageTamanhoByRegex(revNovaSenhaTamanho.ValidationExpression));
        }

        // Mensagem de complexidade da nova senha.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemComplexidadeNovaSenha);

        if (!string.IsNullOrEmpty(mensagem))
        {
            lblMsnNovaSenha.Text = mensagem;
        }
        else
        {
            lblMsnNovaSenha.Text = String.Format(lblMsnNovaSenha.Text, UtilBO.GetMessageTamanhoByRegex(revNovaSenhaTamanho.ValidationExpression));
        }

        // Mensagem de validação da senha atual.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemSenhaAtualIncorreta);
        if (!string.IsNullOrEmpty(mensagem))
        {
            cvSenhaAtual.ErrorMessage = mensagem;
        }

        // Mensagem de validação de email existente.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoEmailExistente);
        if (!string.IsNullOrEmpty(mensagem))
        {
            cvEmailExistente.ErrorMessage = mensagem;
        }

        if (SYS_ParametroBO.ParametroValorBooleano(SYS_ParametroBO.eChave.SALVAR_HISTORICO_SENHA_USUARIO))
        {
            // Mensagem de validação de validação de histórico de senhas..
            mensagem =
                String.Format(SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoHistoricoSenha),
                              SYS_ParametroBO.ParametroValorInt32(SYS_ParametroBO.eChave.QUANTIDADE_ULTIMAS_SENHAS_VALIDACAO).ToString());

            if (!string.IsNullOrEmpty(mensagem))
            {
                cvNovaSenhaHistorico.ErrorMessage = mensagem;
            }
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemSenhaAtualSenhaNovaDiferenca);

        if (!string.IsNullOrEmpty(mensagem))
        {
            cpvNovaSenha.ErrorMessage = mensagem;
        }

        txtEmail.Text = __SessionWEB.__UsuarioWEB.Usuario.usu_email;
        if (PermiteAlterarEmail)
        {
            txtEmail.Focus();
        }
        else
        {
            txtSenhaAtual.Focus();
        }
    }
예제 #6
0
    protected void _btnSalvar_Click(object sender, EventArgs e)
    {
        bool validado = true;

        try
        {
            validado = ValidarIntegracaoAD();

            ManageUserLive live = new ManageUserLive();
            if (_ckbUsuarioLive.Checked)
            {
                if (!live.IsContaEmail(_txtEmail.Text))
                {
                    validado         = false;
                    _lblMessage.Text = UtilBO.GetErroMessage("E-mail inválido para integrar usuário live.", UtilBO.TipoMensagem.Alerta);
                }
                else
                {
                    if (!live.VerificarContaEmailExistente(new UserLive {
                        email = _txtEmail.Text
                    }))
                    {
                        validado         = false;
                        _lblMessage.Text = UtilBO.GetErroMessage("E-mail não encontrado no live para realizar integração.", UtilBO.TipoMensagem.Alerta);
                    }
                }
            }
            else
            {
                if (live.IsContaEmail(_txtEmail.Text))
                {
                    validado         = false;
                    _lblMessage.Text = UtilBO.GetErroMessage("Integrar usuário live é obrigatório, o email " + _txtEmail.Text +
                                                             " contém o domínio para integração com live.", UtilBO.TipoMensagem.Alerta);
                }
            }

            if (integracaoAD == SYS_UsuarioBO.eIntegracaoAD.IntegradoADReplicacaoSenha && !string.IsNullOrEmpty(_txtSenha.Text))
            {
                string regTamanhoSenha = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TAMANHO_SENHA_USUARIO);

                Regex regex = new Regex(regTamanhoSenha);
                if (!regex.IsMatch(_txtSenha.Text))
                {
                    string mensagemTamanho = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaTamanho);
                    throw new CoreLibrary.Validation.Exceptions.ValidationException(string.IsNullOrEmpty(mensagemTamanho) ? String.Format("A senha deve conter {0}.", UtilBO.GetMessageTamanhoByRegex(regTamanhoSenha)) : mensagemTamanho);
                }

                regex = new Regex(SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.FORMATO_SENHA_USUARIO));
                if (!regex.IsMatch(_txtSenha.Text))
                {
                    // Mensagem de validação do formato da senha.
                    string mensagemFormato = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaFormato);
                    throw new CoreLibrary.Validation.Exceptions.ValidationException(string.IsNullOrEmpty(mensagemFormato) ? "A senha deve conter pelo menos uma combinação de letras e números ou letras maiúsculas e minúsculas ou algum caracter especial (!, @, #, $, %, &) somados a letras e/ou números." : mensagemFormato);
                }
            }
        }
        catch (CoreLibrary.Validation.Exceptions.ValidationException err)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(err.Message, UtilBO.TipoMensagem.Alerta);
            validado         = false;
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o usuário.", UtilBO.TipoMensagem.Erro);
            validado         = false;
        }
        if (validado)
        {
            if (chkIntegracaoExterna.Checked && ddlIntegracaoExternaTipo.SelectedIndex == 0)
            {
                _lblMessage.Text = UtilBO.GetErroMessage("Realizar Integração por WebService Externo é obrigatório.", UtilBO.TipoMensagem.Alerta);
            }
            else
            {
                if ((integracaoAD == SYS_UsuarioBO.eIntegracaoAD.IntegradoAD) && ((_ddlDominios.SelectedIndex == 0) || (_ddlDominios.SelectedIndex == _VS_OutrosDominios && string.IsNullOrEmpty(_txtDominio.Text))))
                {
                    _lblMessage.Text = UtilBO.GetErroMessage("Domínio é obrigatório.", UtilBO.TipoMensagem.Alerta);
                }
                else
                {
                    try
                    {
                        SYS_Usuario entity = new SYS_Usuario
                        {
                            ent_id = new Guid(UCComboEntidadeUsuario._Combo.SelectedValue)
                            ,
                            usu_id = _VS_usu_id
                            ,
                            usu_login = _txtLogin.Text
                            ,
                            usu_email = _txtEmail.Text
                            ,
                            usu_senha = string.IsNullOrEmpty(_txtSenha.Text) ? string.Empty : _txtSenha.Text
                            ,
                            pes_id = string.IsNullOrEmpty(_txtPes_id.Value) ? Guid.Empty : new Guid(_txtPes_id.Value)
                            ,
                            usu_criptografia = !string.IsNullOrEmpty(_txtSenha.Text) || string.IsNullOrEmpty(_txtCriptografia.Value) ? Convert.ToByte(eCriptografa.SHA512) : Convert.ToByte(_txtCriptografia.Value)
                            ,
                            usu_situacao = 1
                            ,
                            usu_dataAlteracao = DateTime.Now
                            ,
                            usu_dataCriacao = DateTime.Now
                            ,
                            usu_dominio = (_ddlDominios.SelectedIndex == _VS_OutrosDominios) ? _txtDominio.Text : _ddlDominios.SelectedValue
                            ,
                            usu_integracaoAD = (byte)integracaoAD
                            ,
                            IsNew = (_VS_usu_id != Guid.Empty) ? false : true

                            ,
                            usu_integracaoExterna = Convert.ToInt16(ddlIntegracaoExternaTipo.SelectedIndex.ToString())
                        };
                        if (_chkExpiraSenha.Checked)
                        {
                            entity.usu_situacao = 5;
                        }
                        if (_chkBloqueado.Checked)
                        {
                            entity.usu_situacao = 2;
                        }

                        if (SYS_UsuarioBO.Save(entity, _VS_Grupos, _VS_EntidadeUA, _chkSenhaAutomatica.Checked, _txtPessoa.Text, __SessionWEB.TituloGeral, ApplicationWEB._EmailHost, ApplicationWEB._EmailSuporte, null, entity.usu_integracaoAD == (byte)SYS_UsuarioBO.eIntegracaoAD.IntegradoADReplicacaoSenha, ApplicationWEB.EmailRemetente))
                        {
                            if (_VS_usu_id == Guid.Empty)
                            {
                                _VS_usu_id = entity.usu_id;

                                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "usu_id: " + _VS_usu_id);
                                __SessionWEB.PostMessages = UtilBO.GetErroMessage(String.Format("Usuário incluído com sucesso."), UtilBO.TipoMensagem.Sucesso);
                            }
                            else
                            {
                                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "usu_id: " + _VS_usu_id);
                                __SessionWEB.PostMessages = UtilBO.GetErroMessage(String.Format("Usuário alterado com sucesso."), UtilBO.TipoMensagem.Sucesso);
                            }

                            if (__SessionWEB.__UsuarioWEB.Usuario.usu_id == _VS_usu_id)
                            {
                                Response.Redirect(ApplicationWEB._DiretorioVirtual + ApplicationWEB._PaginaLogoff, false);
                            }
                            else
                            {
                                Response.Redirect(String.Concat(__SessionWEB._AreaAtual._Diretorio, "Usuario/Busca.aspx"), false);
                            }
                        }
                        else
                        {
                            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o usuário.", UtilBO.TipoMensagem.Erro);
                        }
                    }
                    catch (CoreLibrary.Validation.Exceptions.ValidationException err)
                    {
                        _lblMessage.Text = UtilBO.GetErroMessage(err.Message, UtilBO.TipoMensagem.Alerta);
                    }
                    catch (ArgumentException err)
                    {
                        _lblMessage.Text = UtilBO.GetErroMessage(err.Message, UtilBO.TipoMensagem.Alerta);
                    }
                    catch (DuplicateNameException err)
                    {
                        _lblMessage.Text = UtilBO.GetErroMessage(err.Message, UtilBO.TipoMensagem.Alerta);
                    }
                    catch (Exception ex)
                    {
                        ApplicationWEB._GravaErro(ex);
                        _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o usuário.", UtilBO.TipoMensagem.Erro);
                    }
                }
            }// valida integracao
        }
    }
예제 #7
0
    protected void Page_Init(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string formatoSenha = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.FORMATO_SENHA_USUARIO);
            string tamanhoSenha = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TAMANHO_SENHA_USUARIO);

            string mensagemFormato = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaFormato);

            if (!string.IsNullOrEmpty(mensagemFormato))
            {
                revNovaSenhaFormato.ErrorMessage = mensagemFormato;
            }

            string mensagemTamanho = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaTamanho);

            if (!string.IsNullOrEmpty(mensagemTamanho))
            {
                revNovaSenhaTamanho.ErrorMessage = mensagemTamanho;
            }
            else
            {
                revNovaSenhaTamanho.ErrorMessage = String.Format(revNovaSenhaTamanho.ErrorMessage, UtilBO.GetMessageTamanhoByRegex(revNovaSenhaTamanho.ValidationExpression));
            }

            string mensagemComplexNovaSenha = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemComplexidadeNovaSenha);

            if (!string.IsNullOrEmpty(mensagemComplexNovaSenha))
            {
                lblMsnNovaSenha.Text = mensagemComplexNovaSenha;
            }
            else
            {
                lblMsnNovaSenha.Text = String.Format(lblMsnNovaSenha.Text, UtilBO.GetMessageTamanhoByRegex(revNovaSenhaTamanho.ValidationExpression));
            }

            revNovaSenhaFormato.ValidationExpression = formatoSenha;
            revNovaSenhaTamanho.ValidationExpression = tamanhoSenha;
            _btnEsqueceuSenha.Visible = String.IsNullOrEmpty(SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.REMOVER_OPCAO_ESQUECISENHA)) || !Boolean.Parse(SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.REMOVER_OPCAO_ESQUECISENHA));

            if (!string.IsNullOrEmpty(mensagemFormato))
            {
                revNovaSenhaFormatoEsqueci.ErrorMessage = mensagemFormato;
            }

            if (!string.IsNullOrEmpty(mensagemTamanho))
            {
                revNovaSenhaTamanhoEsqueci.ErrorMessage = mensagemTamanho;
            }
            else
            {
                revNovaSenhaTamanhoEsqueci.ErrorMessage = String.Format(revNovaSenhaTamanhoEsqueci.ErrorMessage, UtilBO.GetMessageTamanhoByRegex(revNovaSenhaTamanhoEsqueci.ValidationExpression));
            }

            if (!string.IsNullOrEmpty(mensagemComplexNovaSenha))
            {
                lblNovaSenhaEsqueciMsg.Text = mensagemComplexNovaSenha;
            }
            else
            {
                lblNovaSenhaEsqueciMsg.Text = String.Format(lblNovaSenhaEsqueciMsg.Text, UtilBO.GetMessageTamanhoByRegex(revNovaSenhaTamanhoEsqueci.ValidationExpression));
            }
            revNovaSenhaFormatoEsqueci.ValidationExpression = formatoSenha;
            revNovaSenhaTamanhoEsqueci.ValidationExpression = tamanhoSenha;
        }
    }
예제 #8
0
    protected void _btnSalvar_Click(object sender, EventArgs e)
    {
        if (ValidarAlterarSenha())
        {
            try
            {
                SYS_Usuario entityUsuario = new SYS_Usuario
                {
                    ent_id = new Guid(UCComboEntidade1._Combo.SelectedValue)
                    ,
                    usu_login = _txtLogin.Text
                };
                SYS_UsuarioBO.GetSelectBy_ent_id_usu_login(entityUsuario);

                eCriptografa criptografia = (eCriptografa)Enum.Parse(typeof(eCriptografa), Convert.ToString(entityUsuario.usu_criptografia), true);
                if (!Enum.IsDefined(typeof(eCriptografa), criptografia))
                {
                    criptografia = eCriptografa.SHA512;
                }

                if (!UtilBO.EqualsSenha(entityUsuario.usu_senha, UtilBO.CriptografarSenha(_txtSenhaAtual.Text, criptografia), criptografia))
                {
                    string mensagemSenhaAtualInvalida = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemSenhaAtualIncorreta);

                    _lblMessageAlterarSenha.Text = UtilBO.GetErroMessage(string.IsNullOrEmpty(mensagemSenhaAtualInvalida) ? "Senha atual inválida." : mensagemSenhaAtualInvalida, UtilBO.TipoMensagem.Erro);
                    _updAlterarSenha.Update();

                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Erro ao alterar senha. Senha atual inválida.");
                }
                else
                {
                    entityUsuario.usu_situacao      = 1;
                    entityUsuario.usu_senha         = _txtNovaSenha.Text;
                    entityUsuario.usu_dataAlteracao = DateTime.Now;
                    entityUsuario.usu_criptografia  = (byte)eCriptografa.SHA512;
                    SYS_UsuarioBO.AlterarSenhaAtualizarUsuario(entityUsuario, entityUsuario.usu_integracaoAD == (byte)SYS_UsuarioBO.eIntegracaoAD.IntegradoADReplicacaoSenha);

                    LoadSession(entityUsuario);
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Senha alterada com sucesso.");

                    string mensagemSenhaAlterada = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.LoginMensagemSenhaAlteradaSucesso);

                    __SessionWEB.PostMessages = UtilBO.GetErroMessage(string.IsNullOrEmpty(mensagemSenhaAlterada) ? "Senha alterada com sucesso." : mensagemSenhaAlterada, UtilBO.TipoMensagem.Sucesso);

                    SYS_UsuarioFalhaAutenticacaoBO.ZeraFalhaAutenticacaoUsuario(entityUsuario.usu_id);

                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Login efetuado com sucesso.");

                    SignHelper.AutenticarUsuario(entityUsuario);

                    LoadSession(entityUsuario);

                    RedirecionarLogin(entityUsuario.usu_id);
                }
            }
            catch (DuplicateNameException ex)
            {
                _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                ScriptManager.RegisterClientScriptBlock(this, GetType(), "AlterarSenhaErro", "$('#divAlterarSenha').dialog('close');", true);
            }
            catch (ArgumentException ex)
            {
                _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                ScriptManager.RegisterClientScriptBlock(this, GetType(), "AlterarSenhaErro", "$('#divAlterarSenha').dialog('close');", true);
            }
            catch (ValidationException ex)
            {
                _lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                ScriptManager.RegisterClientScriptBlock(this, GetType(), "AlterarSenhaErro", "$('#divAlterarSenha').dialog('close');", true);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);

                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar alterar a senha do usuário.", UtilBO.TipoMensagem.Erro);
                ScriptManager.RegisterClientScriptBlock(this, GetType(), "AlterarSenhaErro", "$('#divAlterarSenha').dialog('close');", true);
            }
        }
        else
        {
            _updAlterarSenha.Update();
        }
    }
예제 #9
0
    protected void _btnEnviar_Click(object sender, EventArgs e)
    {
        if (ValidarEsqueciSenha() && Page.IsValid)
        {
            try
            {
                DataTable dt = chkPossuiEmail.Checked ?
                               SYS_UsuarioBO.GetSelectBy_ent_id_usu_email(new Guid(UCComboEntidade2._Combo.SelectedValue), _txtEmail.Text) :
                               SYS_UsuarioBO.SelecionaPorCPFDataNascimento(new Guid(UCComboEntidade2._Combo.SelectedValue), txtCPF.Text, Convert.ToDateTime(txtDtNasc.Text));

                if (dt.Rows.Count == 0)
                {
                    string log = chkPossuiEmail.Checked ?
                                 "Erro no envio de senha. Usuário não encontrado." :
                                 "Erro na alteração de senha. Usuário não encontrado.";
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, log);

                    string mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.LoginMensagemUsuarioNaoEncontrado);

                    _lblMessage.Text = UtilBO.GetErroMessage(string.IsNullOrEmpty(mensagem) ? "Usuário não encontrado." : mensagem, UtilBO.TipoMensagem.Alerta);
                }
                else
                {
                    byte   usu_integracaoAD = Convert.ToByte(dt.Rows[0]["usu_integracaoAD"]);
                    byte   usu_situacao     = Convert.ToByte(dt.Rows[0]["usu_situacao"]);
                    Guid   usu_id           = new Guid(dt.Rows[0]["usu_id"].ToString());
                    string pes_nome         = dt.Rows[0]["pes_nome"].ToString();

                    switch (usu_integracaoAD)
                    {
                    case (byte)SYS_UsuarioBO.eIntegracaoAD.NaoIntegrado:
                        if (chkPossuiEmail.Checked)
                        {
                            EnviaNovaSenhaEmail(usu_id, usu_situacao, pes_nome, usu_integracaoAD);
                        }
                        else
                        {
                            ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Não é possível alterar a senha de usuários não ligados no Active Directory por data de nascimento e CPF.");
                            _lblMessage.Text = UtilBO.GetErroMessage("Não é possível alterar a senha de usuários não ligados no Active Directory por data de nascimento e CPF.", UtilBO.TipoMensagem.Alerta);
                        }
                        break;

                    case (byte)SYS_UsuarioBO.eIntegracaoAD.IntegradoAD:
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Não é possível recuperar/alterar a senha pois o usuário solicitado está ligado no Active Directory.");
                        _lblMessage.Text = UtilBO.GetErroMessage("Não é possível recuperar/alterar a senha pois o usuário solicitado está ligado no Active Directory, contate o administrador de rede do seu domínio.", UtilBO.TipoMensagem.Alerta);
                        break;

                    case (byte)SYS_UsuarioBO.eIntegracaoAD.IntegradoADReplicacaoSenha:
                        if (chkPossuiEmail.Checked)
                        {
                            EnviaNovaSenhaEmail(usu_id, usu_situacao, pes_nome, usu_integracaoAD);
                        }
                        else
                        {
                            AlterarSenhaEsqueci(usu_id, usu_situacao, usu_integracaoAD);
                        }
                        break;
                    }
                    ;
                }

                ScriptManager.RegisterClientScriptBlock(this, GetType(), "EsqueciSenha", "$('#divEsqueciSenha').dialog('close');", true);
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
                _lblMessageEsqueciSenha.Text = chkPossuiEmail.Checked ?
                                               UtilBO.GetErroMessage("Erro ao tentar enviar e-mail com a senha para o usuário.", UtilBO.TipoMensagem.Erro) :
                                               UtilBO.GetErroMessage("Erro ao tentar alterar a senha para o usuário.", UtilBO.TipoMensagem.Erro);
            }
        }
        else
        {
            _updEsqueciSenha.Update();
        }
    }
    /// <summary>
    /// Inicializa os componentes da tela.
    /// </summary>
    private void InicializarTela()
    {
        // Mensagem de informação sobre o cadastro de email da tela de meus dados.
        string mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemEmail);

        lblInformacao.Text = string.IsNullOrEmpty(mensagem) ? string.Empty :
                             UtilBO.GetErroMessage(mensagem, UtilBO.TipoMensagem.Informacao);

        txtEmail.Enabled = rfvEmail.Visible = revEmail.Visible = cvEmailExistente.Visible = PermiteAlterarEmail;

        bool validarObrigatoriedadeEmail = SYS_ParametroBO.Parametro_ValidarObrigatoriedadeEmailUsuario();

        rfvEmail.Visible = PermiteAlterarEmail && validarObrigatoriedadeEmail;

        cvEmailExistente.Visible = PermiteAlterarEmail && SYS_ParametroBO.Parametro_ValidarUnicidadeEmailUsuario();

        if (PermiteAlterarEmail)
        {
            if (validarObrigatoriedadeEmail && !lblEmail.Text.EndsWith("*"))
            {
                lblEmail.Text = lblEmail.Text + " *";
            }

            lblNovaSenha.Text.Replace("*", "");
            lblConfNovaSenha.Text.Replace("*", "");
        }
        else
        {
            lblEmail.Text.Replace("*", "");

            if (!lblNovaSenha.Text.EndsWith("*"))
            {
                lblNovaSenha.Text = lblNovaSenha.Text + " *";
            }

            if (!lblConfNovaSenha.Text.EndsWith("*"))
            {
                lblConfNovaSenha.Text = lblConfNovaSenha.Text + " *";
            }
        }

        rfvConfNovaSenha.Enabled = revNovaSenhaFormato.Enabled = revNovaSenhaTamanho.Enabled =
            cpvNovaSenha.Enabled = rfvNovaSenha.Enabled = cpvConfNovaSenha.Enabled = !PermiteAlterarEmail;

        if (PermiteAlterarEmail)
        {
            // Mensagem de validação quando o email for inválido.
            mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemEmailInvalido);
            revEmail.ErrorMessage = string.IsNullOrEmpty(mensagem) ?
                                    "E-mail está fora do padrão ( seuEmail@seuProvedor )." :
                                    mensagem;
        }

        // Mensagem de validação de confirmação da nova senha.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemConfirmarSenhaNaoIdentico);

        if (!string.IsNullOrEmpty(mensagem))
        {
            cpvConfNovaSenha.ErrorMessage = mensagem;
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaFormato);

        if (!string.IsNullOrEmpty(mensagem))
        {
            revNovaSenhaFormato.ErrorMessage = mensagem;
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaTamanho);

        if (!string.IsNullOrEmpty(mensagem))
        {
            revNovaSenhaTamanho.ErrorMessage = mensagem;
        }

        // Configura formato senha
        revNovaSenhaFormato.ValidationExpression = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.FORMATO_SENHA_USUARIO);
        // Configura tamanho senha
        revNovaSenhaTamanho.ValidationExpression = SYS_ParametroBO.ParametroValor(SYS_ParametroBO.eChave.TAMANHO_SENHA_USUARIO);

        // Mensagem de validação do formato da senha.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaFormato);

        if (!string.IsNullOrEmpty(mensagem))
        {
            revNovaSenhaFormato.ErrorMessage = mensagem;
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoComplexidadeSenhaTamanho);

        if (!string.IsNullOrEmpty(mensagem))
        {
            revNovaSenhaTamanho.ErrorMessage = mensagem;
        }
        else
        {
            revNovaSenhaTamanho.ErrorMessage = String.Format(revNovaSenhaTamanho.ErrorMessage, UtilBO.GetMessageTamanhoByRegex(revNovaSenhaTamanho.ValidationExpression));
        }

        // Mensagem de complexidade da nova senha.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemComplexidadeNovaSenha);

        if (!string.IsNullOrEmpty(mensagem))
        {
            lblMsnNovaSenha.Text = mensagem;
        }
        else
        {
            lblMsnNovaSenha.Text = String.Format(lblMsnNovaSenha.Text, UtilBO.GetMessageTamanhoByRegex(revNovaSenhaTamanho.ValidationExpression));
        }

        // Mensagem de validação da senha atual.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemSenhaAtualIncorreta);
        if (!string.IsNullOrEmpty(mensagem))
        {
            cvSenhaAtual.ErrorMessage = mensagem;
        }

        // Mensagem de validação de email existente.
        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoEmailExistente);
        if (!string.IsNullOrEmpty(mensagem))
        {
            cvEmailExistente.ErrorMessage = mensagem;
        }

        if (SYS_ParametroBO.ParametroValorBooleano(SYS_ParametroBO.eChave.SALVAR_HISTORICO_SENHA_USUARIO))
        {
            // Mensagem de validação de validação de histórico de senhas..
            mensagem =
                String.Format(SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemValidacaoHistoricoSenha),
                              SYS_ParametroBO.ParametroValorInt32(SYS_ParametroBO.eChave.QUANTIDADE_ULTIMAS_SENHAS_VALIDACAO).ToString());

            if (!string.IsNullOrEmpty(mensagem))
            {
                cvNovaSenhaHistorico.ErrorMessage = mensagem;
            }
        }

        //VERIFICA SE PARÂMETRO DE LOGIN COM PROVIDER EXTERNO ESTÁ HABILITADO(TRUE = MOSTRA O CAMPO / FALSE = NÃO MOSTRA O CAMPO)
        if (SYS_ParametroBO.ParametroValorBooleano(SYS_ParametroBO.eChave.PERMITIR_LOGIN_COM_PROVIDER_EXTERNO))
        {
            divContasExternas.Visible = true;

            //BUSCA O LOGIN PROVIDER DO USUARIO E CASO NÃO FOR NULO EXIBE NO TEXTBOX
            var logins = SYS_UsuarioLoginProviderBO.SelectBy_usu_id(__SessionWEB.__UsuarioWEB.Usuario.usu_id);

            if (logins != null && logins.Count > 0)
            {
                this.rptContasExternas.Visible   = true;
                this.lblInfoContaExterna.Visible = false;

                this.rptContasExternas.DataSource = logins;
                this.rptContasExternas.DataBind();
            }
            else
            {
                this.rptContasExternas.Visible   = false;
                this.lblInfoContaExterna.Visible = true;
                this.lblInfoContaExterna.Text    = UtilBO.GetErroMessage("Usuário não possui contas vinculadas.",
                                                                         UtilBO.TipoMensagem.Informacao);
            }
        }

        mensagem = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemSenhaAtualSenhaNovaDiferenca);

        if (!string.IsNullOrEmpty(mensagem))
        {
            cpvNovaSenha.ErrorMessage = mensagem;
        }

        txtEmail.Text = __SessionWEB.__UsuarioWEB.Usuario.usu_email;
        if (PermiteAlterarEmail)
        {
            txtEmail.Focus();
        }
        else
        {
            txtSenhaAtual.Focus();
        }
    }
예제 #11
0
        protected void _btnSalvar_Click(object sender, EventArgs e)
        {
            if (ValidarAlterarSenha())
            {
                try
                {
                    // Carrega os dados do usuário
                    SYS_Usuario entityUsuario = new SYS_Usuario
                    {
                        ent_id = UCComboEntidade1.Valor
                        ,
                        usu_login = (RadioButtonList1.SelectedIndex == 0
                                        ? ACA_ParametroAcademicoBO.ParametroValorPorEntidade(eChaveAcademico.PREFIXO_LOGIN_ALUNO_AREA_ALUNO, Guid.Empty)
                                        : ACA_ParametroAcademicoBO.ParametroValorPorEntidade(eChaveAcademico.PREFIXO_LOGIN_RESPONSAVEL_AREA_ALUNO, Guid.Empty)) + txtLogin.Text
                    };
                    SYS_UsuarioBO.GetSelectBy_ent_id_usu_login(entityUsuario);

                    // Configura criptografia da senha
                    eCriptografa criptografia = (eCriptografa)Enum.Parse(typeof(eCriptografa), Convert.ToString(entityUsuario.usu_criptografia), true);
                    if (!Enum.IsDefined(typeof(eCriptografa), criptografia))
                    {
                        criptografia = eCriptografa.TripleDES;
                    }

                    // Verifica a senha do usuário comparando com a senha atual
                    if (!UtilBO.EqualsSenha(entityUsuario.usu_senha, UtilBO.CriptografarSenha(_txtSenhaAtual.Text, criptografia), criptografia))
                    {
                        string mensagemSenhaAtualInvalida = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.MeusDadosMensagemSenhaAtualIncorreta);

                        _lblMessageAlterarSenha.Text = UtilBO.GetErroMessage(string.IsNullOrEmpty(mensagemSenhaAtualInvalida) ? "Senha atual inválida." : mensagemSenhaAtualInvalida, UtilBO.TipoMensagem.Erro);
                        _updAlterarSenha.Update();

                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Erro ao alterar senha. Senha atual inválida.");
                    }
                    else
                    {
                        // Atualiza dados do usuário
                        entityUsuario.usu_situacao      = 1;
                        entityUsuario.usu_senha         = _txtNovaSenha.Text;
                        entityUsuario.usu_dataAlteracao = DateTime.Now;
                        SYS_UsuarioBO.AlterarSenhaAtualizarUsuario(entityUsuario, entityUsuario.usu_integracaoAD == (byte)SYS_UsuarioBO.eIntegracaoAD.IntegradoADReplicacaoSenha);

                        // Configura usuário na Session
                        LoadSession(entityUsuario);
                        ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Login, "Senha alterada com sucesso.");

                        string mensagemSenhaAlterada = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.LoginMensagemSenhaAlteradaSucesso);

                        __SessionWEB.PostMessages = UtilBO.GetErroMessage(string.IsNullOrEmpty(mensagemSenhaAlterada) ? "Senha alterada com sucesso." : mensagemSenhaAlterada, UtilBO.TipoMensagem.Sucesso);

                        // Autenticação SAML.
                        SYS_UsuarioBO.AutenticarUsuario(entityUsuario);

                        // Configura usuário na Session
                        LoadSession(entityUsuario);

                        // Se selecionou para logar como responsável, verifica se esse ele é responsável por um aluno só,
                        //  ou caso tenha mais, redireciona para uma tela de selação de alunos
                        if (RadioButtonList1.SelectedIndex == 1)
                        {
                            DataTable dtAlunosDoResponsavel = ACA_AlunoResponsavelBO.SelecionaAlunosPorResponsavel(entityUsuario.pes_id);

                            Session["Pes_Id_Responsavel"] = entityUsuario.pes_id.ToString();

                            Session["Qtde_Filhos_Responsavel"] = dtAlunosDoResponsavel.Rows.Count;

                            if (dtAlunosDoResponsavel.Rows.Count > 1)
                            {
                                //Session["Pes_Id_Responsavel"] = entityUsuario.pes_id.ToString();
                                RedirecionarLogin(true);
                                return;
                            }
                        }

                        RedirecionarLogin(false);
                    }
                }
                catch (DuplicateNameException ex)
                {
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                    ScriptManager.RegisterClientScriptBlock(this, GetType(), "AlterarSenhaErro", "$('#divAlterarSenha').dialog('close');", true);
                }
                catch (ArgumentException ex)
                {
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                    ScriptManager.RegisterClientScriptBlock(this, GetType(), "AlterarSenhaErro", "$('#divAlterarSenha').dialog('close');", true);
                }
                catch (ValidationException ex)
                {
                    lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta);
                    ScriptManager.RegisterClientScriptBlock(this, GetType(), "AlterarSenhaErro", "$('#divAlterarSenha').dialog('close');", true);
                }
                catch (Exception ex)
                {
                    ApplicationWEB._GravaErro(ex);

                    lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar alterar a senha do usuário.", UtilBO.TipoMensagem.Erro);
                    ScriptManager.RegisterClientScriptBlock(this, GetType(), "AlterarSenhaErro", "$('#divAlterarSenha').dialog('close');", true);
                }
            }
            else
            {
                _updAlterarSenha.Update();
            }
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        //Exibe o título no navegador
        Page.Title = __SessionWEB.TituloGeral;

        #region Adiciona links de favicon

        string TemaAtual = __SessionWEB.TemaPadraoLogado.tep_nome;

        HtmlLink link = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/favicon.ico");
        link.Attributes["rel"]   = "shortcut icon";
        link.Attributes["sizes"] = "";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/apple-touch-icon-57x57.png");
        link.Attributes["rel"]   = "apple-touch-icon";
        link.Attributes["sizes"] = "57x57";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/apple-touch-icon-114x114.png");
        link.Attributes["rel"]   = "apple-touch-icon";
        link.Attributes["sizes"] = "114x114";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/apple-touch-icon-72x72.png");
        link.Attributes["rel"]   = "apple-touch-icon";
        link.Attributes["sizes"] = "72x72";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/apple-touch-icon-144x144.png");
        link.Attributes["rel"]   = "apple-touch-icon";
        link.Attributes["sizes"] = "144x144";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/apple-touch-icon-60x60.png");
        link.Attributes["rel"]   = "apple-touch-icon";
        link.Attributes["sizes"] = "60x60";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/apple-touch-icon-120x120.png");
        link.Attributes["rel"]   = "apple-touch-icon";
        link.Attributes["sizes"] = "120x120";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/apple-touch-icon-76x76.png");
        link.Attributes["rel"]   = "apple-touch-icon";
        link.Attributes["sizes"] = "76x76";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/apple-touch-icon-152x152.png");
        link.Attributes["rel"]   = "apple-touch-icon";
        link.Attributes["sizes"] = "152x152";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/favicon-196x196.png");
        link.Attributes["rel"]   = "icon";
        link.Attributes["sizes"] = "196x196";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/favicon-160x160.png");
        link.Attributes["rel"]   = "icon";
        link.Attributes["sizes"] = "160x160";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/favicon-96x96.png");
        link.Attributes["rel"]   = "icon";
        link.Attributes["sizes"] = "96x96";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/favicon-16x16.png");
        link.Attributes["rel"]   = "icon";
        link.Attributes["sizes"] = "16x16";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/favicon-32x32.png");
        link.Attributes["rel"]   = "icon";
        link.Attributes["sizes"] = "32x32";
        Page.Header.Controls.Add(link);

        link      = new HtmlLink();
        link.Href = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/favicon-32x32.png");
        link.Attributes["rel"]   = "icon";
        link.Attributes["sizes"] = "32x32";
        Page.Header.Controls.Add(link);

        HtmlMeta meta = new HtmlMeta();
        meta.Name    = "msapplication-TileImage";
        meta.Content = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/mstile-144x144.png");
        Page.Header.Controls.Add(meta);

        meta         = new HtmlMeta();
        meta.Name    = "msapplication-config";
        meta.Content = ResolveUrl("~/App_Themes/" + TemaAtual + "/images/favicons/browserconfig.xml");
        Page.Header.Controls.Add(meta);

        #endregion

        if (!IsPostBack)
        {
            try
            {
                //Exibe mensagem do sistema
                string MensagemSistema = SYS_MensagemSistemaBO.RetornaValor(SYS_MensagemSistemaChave.Login);

                if (!string.IsNullOrEmpty(MensagemSistema))
                {
                    spnMensagemSistema.InnerHtml = HttpUtility.HtmlDecode(MensagemSistema);
                    spnMensagemSistema.Visible   = true;
                }
                else
                {
                    spnMensagemSistema.Visible = false;
                }

                //Exibe o contato do help desk do cliente
                spnHelpDesk.InnerHtml = __SessionWEB.HelpDeskContato;


                lblCopyright.Text = "<span class='tituloGeral'>Desenvolvido no Brasil</span> | <span class='mensagem'>" + __SessionWEB.MensagemCopyright + "</span> | <span class='versao'>" + _VS_versao + "</span>";

                //Atribui o caminho do logo geral do sistema, caso ele exista no Sistema Administrativo
                if (string.IsNullOrEmpty(__SessionWEB.UrlLogoGeral))
                {
                    ImgLogoGeral.Visible = false;
                }
                else
                {
                    //Carrega logo geral do sistema
                    imgGeral.ImageUrl        = UtilBO.UrlImagem(__SessionWEB.UrlLogoGeral);
                    imgGeral.ToolTip         = __SessionWEB.TituloGeral;
                    imgGeral.AlternateText   = __SessionWEB.TituloGeral;
                    ImgLogoGeral.ToolTip     = __SessionWEB.TituloGeral;
                    ImgLogoGeral.NavigateUrl = __SessionWEB.UrlSistemaAutenticador + "/Sistema.aspx";
                }

                imgImageInstituicao.Visible = false;
                ImgLogoInstitiuicao.Visible = false;

                if (__SessionWEB.TemaPadraoLogado.tep_exibeLogoCliente)
                {
                    if (string.IsNullOrEmpty(__SessionWEB.UrlInstituicao.Trim()))
                    {
                        ImgLogoInstitiuicao.Visible = false;
                    }
                    else
                    {
                        //Carrega logo do cliente
                        ImgLogoInstitiuicao.ImageUrl    = UtilBO.UrlImagem(__SessionWEB.UrlLogoInstituicao);
                        ImgLogoInstitiuicao.ToolTip     = string.Empty;
                        ImgLogoInstitiuicao.NavigateUrl = __SessionWEB.UrlInstituicao;
                    }

                    imgImageInstituicao.Visible  = !ImgLogoInstitiuicao.Visible;
                    imgImageInstituicao.ImageUrl = UtilBO.UrlImagem(__SessionWEB.UrlLogoInstituicao);
                }
            }
            catch (Exception ex)
            {
                ApplicationWEB._GravaErro(ex);
            }
        }
    }