/// <summary> /// Envia uma nova senha para o usuário que esqueceu sua senha. /// </summary> /// <param name="sender">Objeto que disparou esse evento</param> /// <param name="e">Contém os argumentos fornecidos nesse evento</param> protected void BtnEnviarSenha_Click(object sender, EventArgs e) { Usuario usuario = GerenciamentoUsuario.CarregaUsuarioPorEmail(this.TxtEmail.Text); string novaSenha = Autenticacao.GeraSenhaRandomica(); this.DivMensagem.Visible = true; this.DivMensagem.Attributes["class"] = ConstantesGlobais.CLASSE_MENSAGEM_ERRO; if (usuario == null) { this.LblMensagem.Text = string.Format(MENSAGEM_ERRO_USUARIO_INEXISTENTE, this.TxtEmail.Text); return; } try { usuario.Senha = Autenticacao.ObtemSHA1Hash(novaSenha); GerenciamentoUsuario.AtualizaUsuario(usuario); GerenciamentoEmail.EnviaEmailRecuperacaoSenha(usuario.Email, usuario.Nome, usuario.Email, novaSenha); } catch (Exception ex) { Log.Info(ex.InnerException == null ? ex.Message : ex.InnerException.ToString()); this.LblMensagem.Text = string.Format(MENSAGEM_ERRO_ENVIO_EMAIL, usuario.Email); return; } this.DivMensagem.Attributes["class"] = ConstantesGlobais.CLASSE_MENSAGEM_SUCESSO; this.LblMensagem.Text = string.Format(MENSAGEM_SUCESSO_RECUPERACAO_SENHA, usuario.Email); }
/// <summary> /// Evento que salva o novo usuário ou as modificações do usuário existente /// </summary> /// <param name="sender">Objeto que disparou esse evento</param> /// <param name="e">Contém os argumentos fornecidos nesse evento</param> protected void BtnSalvar_Click(object sender, EventArgs e) { Usuario usuario; string argumento = ((LinkButton)sender).CommandArgument; int idUsuario; string novaSenha; if (string.IsNullOrEmpty(argumento)) { try { novaSenha = Autenticacao.GeraSenhaRandomica(); usuario = this.CriaUsuario(novaSenha); if (usuario != null) { GerenciamentoEmail.EnviaEmailNovoUsuario(usuario.Email, usuario.Nome, usuario.Email, novaSenha); } } catch (Exception ex) { Log.Info(ex.InnerException == null ? ex.Message : ex.InnerException.ToString()); this.DivMensagem.Visible = true; this.DivMensagem.Attributes["class"] = ConstantesGlobais.CLASSE_MENSAGEM_ERRO; this.LblMensagem.Text = MENSAGEM_ERRO_ENVIO_EMAIL; } } else { idUsuario = Convert.ToInt32(argumento); this.AtualizaUsuario(idUsuario); } }