Example #1
0
        private void btnLogin_Click(object sender, EventArgs e)
        {
            try
            {
                #region VALIDAÇÕES
                if (string.IsNullOrEmpty(txtLogin.Text))
                {
                    tsslblMsg.Text = "Login não informado";
                    txtLogin.Focus();
                    return;
                }

                if (string.IsNullOrEmpty(txtSenha.Text))
                {
                    tsslblMsg.Text = "Senha não informada";
                    txtSenha.Focus();
                    return;
                }
                #endregion

                cUsuario usuario = new cUsuario();
                usuario.usuario = txtLogin.Text.ToUpper();
                usuario.senha   = Criptografia.Criptografia.executa_cript(txtSenha.Text);

                #region VERIFICA SE LOGIN DO USUÁRIO ESTÁ ATIVO
                if (usuario.verifica_login_ativo(usuario))
                {
                    MessageBox.Show("Não foi possível fazer login no sistema.\n\rO acesso do usuário está inativo.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }
                #endregion

                #region VERIFICAR SE SENHA PRECISA SER ALTERADA
                if (usuario.verifica_reset_senha(usuario))
                {
                    using (frmLoginNovaSenha frm = new frmLoginNovaSenha())
                    {
                        cGlobal.userlogado   = txtLogin.Text.ToUpper();
                        cGlobal.iduserlogado = usuario.retorna_id_usuario(usuario);
                        Dispose();
                        Close();
                        frm.ShowDialog();
                    }
                    return;
                }
                #endregion

                if (usuario.valida_login(usuario))
                {
                    Dispose();
                    Close();
                    #region LOG
                    cLog lg = new cLog();
                    lg.log         = "Efetuado Login no Sistema";
                    lg.form        = this.Text;
                    lg.metodo      = sender.ToString();
                    lg.dt          = DateTime.Now;
                    lg.usersistema = cGlobal.userlogado;
                    lg.userRede    = Environment.UserName;
                    lg.terminal    = Environment.MachineName;
                    lg.tp_flag     = true;
                    lg.grava_log(lg);
                    #endregion
                    using (frmInicio frm = new frmInicio())
                    {
                        frm.ShowDialog();
                    }
                }
                else
                {
                    tsslblMsg.Text = "Usuário e/ou senha inválido";
                    txtLogin.Text  = Environment.UserName.ToUpper();
                    txtSenha.Text  = string.Empty;
                    txtLogin.Focus();
                    return;
                }
            }
            catch (Exception ex)
            {
                if (ex.Message.Equals("Provedor OLE DB não foi especificado em ConnectionString. Por exemplo, 'Provider=SQLOLEDB;'."))
                {
                    MessageBox.Show("Não foi possível localizar o Banco de Dados.\r\nEntre em contato com o Administrador.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    Dispose();
                    Close();
                    Application.Exit();
                }
                else
                {
                    #region LOG ERRO
                    cLog lg = new cLog();
                    lg.log         = ex.Message.Replace("'", "");
                    lg.form        = this.Text;
                    lg.metodo      = sender.ToString();
                    lg.dt          = DateTime.Now;
                    lg.usersistema = "";
                    lg.userRede    = Environment.UserName;
                    lg.terminal    = Environment.MachineName;
                    lg.tp_flag     = false;
                    lg.grava_log(lg);
                    #endregion
                }
            }
        }