public ActionResult EnviarLinkSenha([FromForm] string email) { string codigo; DateTime agora = Globalization.HoraAtualBR(); email.ToLower(); var vEmail = _db.Int_DP_Usuarios.Where(a => a.Email == email && a.Ativo == 1).FirstOrDefault(); if (vEmail != null) { codigo = vEmail.Id.ToString() + agora.Minute.ToString() + agora.Month.ToString() + agora.Day.ToString() + agora.Year.ToString() + agora.Second.ToString() + agora.Hour.ToString(); ValidacaoSenha valid = new ValidacaoSenha { Id = long.Parse(codigo), Data = agora, DataExpiracao = agora.AddHours(5), Utilizado = 0, Usuario = vEmail.Id }; _db.Int_DP_ValidSenhas.Add(valid); _db.SaveChanges(); Log log = new Log(); try { string nome = Shared.PegarPrimeiroNome(vEmail.Nome); Library.Mail.EnviarLinkSenha.EnviarLinkTrocarSenha(email, codigo, nome, vEmail.Login); log.EsqueciMinhaSenha_Envio(vEmail.Id, codigo); TempData["TrocaSenhaOK"] = "Um link foi enviado ao seu e-mail com instruções para trocar a senha"; return(RedirectToAction("Index")); } catch (Exception exp) { log.EsqueciMinhaSenha_Envio_Erro(vEmail.Id, codigo, exp); TempData["TrocaSenhaNotOK"] = "Ocorreu um erro ao tentar enviar o link, por favor tente novamente"; return(RedirectToAction("Index")); } finally { _db.Int_DP_Logs.Add(log); _db.SaveChanges(); } } else { TempData["TrocaSenhaNotOK"] = "Esta email não está cadastrado no sistema"; return(RedirectToAction("Index")); } }
private void textBoxSenha_KeyDown(object sender, KeyEventArgs e) { ValidacaoSenha validarSenha = new ValidacaoSenha(); ForcaSenha forca = validarSenha.GetForcaDaSenha(textBoxSenha.Text); labelSenha.Text = forca.ToString(); if (labelSenha.Text == "Inaceitavel" || labelSenha.Text == "Fraca") { labelSenha.ForeColor = Color.Red; } else if (labelSenha.Text == "Aceitavel") { labelSenha.ForeColor = Color.Blue; } else { labelSenha.ForeColor = Color.Green; } }
private void buttonEntrar_Click(object sender, EventArgs e) { ValidacaoSenha validacao = new ValidacaoSenha(); var usuario = textBoxUsuario.Text; var senha = textBoxSenha.Text; if (!string.IsNullOrEmpty(usuario) && !string.IsNullOrEmpty(senha)) { if (validacao.ValidaSenhaLogin(usuario, senha)) { DialogResult = DialogResult.OK; this.Close(); } else { MessageBox.Show("Usuário ou Senha incorretos!", "Mensagem de Validação", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Gentileza informar Usuário e Senha!", "Mensagem de Validação", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public ActionResult EnviarLinkSenha(string cpf) { string codigo; DateTime agora = Globalization.HoraAtualBR(); cpf = Shared.RetirarCaracteres(cpf); Usuario user = _db.Int_RH_Usuarios.Where(a => a.CPF.Equals(cpf)).FirstOrDefault(); if (user != null) { if (user.Email != null && user.Email != "") { codigo = "99" + user.Id.ToString() + agora.Minute.ToString() + agora.Month.ToString() + agora.Day.ToString() + agora.Year.ToString().Substring(2, 2) + user.CPF.Substring(3, 3) + agora.Hour.ToString(); ValidacaoSenha valid = new ValidacaoSenha { Id = long.Parse(codigo), Data = agora, DataExpiracao = agora.AddHours(5), Utilizado = 0, Usuario = user.Id }; _db.Int_DP_ValidSenhas.Add(valid); _db.SaveChanges(); Log log = new Log(); try { string nome = Shared.PegarPrimeiroNome(user.Nome); Library.Mail.EnviarLinkSenha.EnviarLinkTrocarSenha(user.Email, codigo, nome); //log.EsqueciMinhaSenha_Envio(vEmail.Id, codigo); log.EsqueciMinhaSenha_Envio(user.Id, codigo); TempData["MensagemSucessoIndex"] = "Um link foi enviado ao seu e-mail com instruções para trocar a senha"; return RedirectToAction("Index"); } catch (Exception exp) { //log.EsqueciMinhaSenha_Envio_Erro(vEmail.Id, codigo, exp); TempData["MensagemErroIndex"] = "Ocorreu um erro ao tentar enviar o link, por favor tente novamente"; log.EsqueciMinhaSenha_Envio_Erro(user.Id, codigo, exp); return RedirectToAction("Index"); } finally { _db.Int_RH_Logs.Add(log); _db.SaveChanges(); } } else { TempData["MensagemErroIndex"] = "Não há e-mail cadastrado para esse CPF, entre em contato com o TI!"; } } else { TempData["MensagemErroIndex"] = "CPF não encontrado!"; } return RedirectToAction("Index"); }