protected void BtnCadastrar_Click(object sender, EventArgs e) { try { // Limpa a mensagem de alerta, caso haja algum texto: lblMsg.Text = String.Empty; if (!chkTermosUso.Checked) { lblMsg.Text = "É necessário aceitar os termos de uso!"; return; } Usuario usuario = new Usuario() { Nome = txtNome.Value.Trim(), Login = txtLogin.Value.Trim(), Email = txtEmail.Value.Trim(), Senha = Codificador.Criptografar(txtSenha.Value) }; UsuarioManager.AddUsuario(usuario); usuario = UsuarioManager.GetUsuarioByLogin(txtLogin.Value.Trim()); Sessao.IniciarSessao(usuario); Response.Redirect("Resumo", true); } catch (Exception ex) { switch (ex.GetType().Name) { case "UsuarioNomeException": txtNome.Focus(); break; case "UsuarioLoginException": txtLogin.Focus(); break; case "UsuarioEmailException": txtEmail.Focus(); break; case "UsuarioSenhaException": txtSenha.Focus(); break; default: throw ex; } lblMsg.Text = ex.Message; } }
protected void BtnLogin_Click(object sender, EventArgs e) { // Limpa a mensagem de alerta, caso haja algum texto: lblMsg.Text = String.Empty; // Valida se os campos de login e senha estão preenchidos: if (String.IsNullOrWhiteSpace(txtLogin.Value) || txtLogin.Value.Trim().Length > 100) { lblMsg.Text = "O login ou e-mail deve ser informado."; txtLogin.Focus(); return; } if (String.IsNullOrWhiteSpace(txtSenha.Value)) { lblMsg.Text = "A senha deve ser informada."; txtSenha.Focus(); return; } try { // Valida se o login e senha fornecidos pelo usuário: // O método de validação retorna o usuário ou null se as credenciais forem inválidas: Usuario usuario = UsuarioManager.ValidarUsuario(txtLogin.Value.Trim(), txtSenha.Value); if (usuario == null) { // Alerta o usuário que as credenciais estão inválidas: lblMsg.Text = "O login ou a senha estão inválidos."; txtSenha.Focus(); return; } Sessao.IniciarSessao(usuario); string strRedirect = Request["ReturnUrl"] ?? "Resumo"; Response.Redirect(strRedirect, true); } catch (Exception ex) { throw ex; } }
protected void BtnEditarCadastro_Click(object sender, EventArgs e) { try { // Limpa a mensagem de alerta, caso haja algum texto: lblMsg.Text = String.Empty; Usuario usuario = new Usuario { IdUsuario = Usuario.IdUsuario, Nome = txtNome.Value.Trim(), Login = txtLogin.Value.Trim(), Email = Usuario.Email, Senha = Codificador.Criptografar(txtSenha.Value) }; if (usuario.Senha != Usuario.Senha) { lblMsg.Text = "A senha digitada não corresponde à senha cadastrada."; txtSenha.Focus(); return; } if (chkAlterarSenha.Checked) { if (!txtVerificarSenha.Value.Equals(txtNovaSenha.Value)) { lblMsg.Text = "A nova senha digitada está diferente do campo de validação."; txtNovaSenha.Focus(); return; } usuario.Senha = Codificador.Criptografar(txtNovaSenha.Value); } UsuarioManager.EditUsuario(usuario); Usuario = UsuarioManager.GetUsuarioById(usuario.IdUsuario); Sessao.IniciarSessao(Usuario); Response.Redirect("Resumo", true); } catch (Exception ex) { switch (ex.GetType().Name) { case "UsuarioNomeException": txtNome.Focus(); break; case "UsuarioLoginException": txtLogin.Focus(); break; case "UsuarioSenhaException": txtSenha.Focus(); break; case "UsuarioEmailException": default: throw ex; } lblMsg.Text = ex.Message; chkAlterarSenha.Checked = false; } }