public bool EnviarNotificacionEmailOutlook(EstructuraMail model, IWebHostEnvironment env) { bool result = false; model = ConstruccionNotificacion(model, env); try { SmtpMail oMail = new SmtpMail("TryIt"); oMail.From = DecodeData("ZW1jaW5nZW5pZXJpYWRlc29mdHdhcmVAb3V0bG9vay5jb20="); oMail.To = model.EmailDestinatario; oMail.Subject = model.Asunto; oMail.HtmlBody = model.Cuerpo; //oMail.TextBody = ""; SmtpServer oServer = new SmtpServer("smtp.live.com"); oServer.User = DecodeData("ZW1jaW5nZW5pZXJpYWRlc29mdHdhcmVAb3V0bG9vay5jb20="); oServer.Password = DecodeData("MTIzNGZhYnJpemlv"); oServer.Port = 587; oServer.ConnectType = SmtpConnectType.ConnectSSLAuto; EASendMail.SmtpClient oSmtp = new EASendMail.SmtpClient(); oSmtp.SendMail(oServer, oMail); result = true; } catch (Exception ex) { var appLog = new AppLog(); appLog.CreateDate = DateTime.UtcNow; appLog.Exception = ex.ToString(); appLog.Email = model.EmailDestinatario; appLog.Method = "EnviarMailNotificacionOutlook"; AppLogRepository.AddAppLog(appLog); } return(result); }
public bool EnviarMailNotificacion(EstructuraMail model) { bool result = false; model = ConstruccionNotificacion(model); try { MailMessage mensaje = new MailMessage(); SmtpClient servidor = new SmtpClient(); mensaje.From = new MailAddress("SudokuParaTodos <" + EngineData.UserMail + ">"); mensaje.Subject = model.Asunto; mensaje.SubjectEncoding = System.Text.Encoding.UTF8; mensaje.Body = model.Cuerpo; mensaje.BodyEncoding = System.Text.Encoding.UTF8; mensaje.IsBodyHtml = true; mensaje.To.Add(new MailAddress(model.EmailDestinatario)); //if (pathAdjunto != string.Empty) { mensaje.Attachments.Add(new Attachment(pathAdjunto)); } servidor.Credentials = new System.Net.NetworkCredential(EngineData.UserMail, EngineData.IdMail); servidor.Port = 587; servidor.Host = "smtp.gmail.com"; servidor.EnableSsl = true; servidor.Send(mensaje); mensaje.Dispose(); result = true; } catch (Exception ex) { string e = ex.ToString(); } return(result); }
public JsonResult NotificacionPrueba(string email) { Respuesta R = new Respuesta(); string emailCode64 = Funcion.ConvertirBase64(email); bool resultado = Funcion.EmailEsValido(email); if (!resultado) { R = Funcion.RespuestaProceso(null, null, EngineData.EmailNoValido(), email); return(Json(R)); } resultado = Metodo.InsertarClienteTest(Funcion, email); string enlaze = Funcion.CrearEnlazePrueba(Metodo, email); EstructuraMail model = new EstructuraMail(); model = Funcion.SetEstructuraMailTest(enlaze, email, model); if (!resultado) { R = Funcion.RespuestaProceso(null, email, null, "Error Registrando"); return(Json(R)); } resultado = Notificacion.EnviarMailNotificacion(model); if (resultado) { R = Funcion.RespuestaProceso(null, email, null, "Exito"); } else { R = Funcion.RespuestaProceso(null, email, null, "Error Enviando"); } return(Json(R)); }
private EstructuraMail ConstruccionNotificacion(EstructuraMail model, IWebHostEnvironment env) { try { string body = Path.Combine(env.WebRootPath, "templates", model.PathLecturaArchivo); body = File.ReadAllText(body); body = body.Replace("@Model.Saludo", model.Saludo); body = body.Replace("@Model.Fecha", model.Fecha); body = body.Replace("@Model.EmailDestinatario", model.EmailDestinatario); body = body.Replace("@Model.Observacion", model.Observacion); body = body.Replace("@Model.Descripcion", model.Descripcion); body = body.Replace("@Model.ClickAqui", model.ClickAqui); body = body.Replace("@Model.Link", model.Link); body = body.Replace("@Model.CodigoResetPassword", model.CodigoResetPassword); model.Cuerpo = body; } catch (Exception ex) { var appLog = new AppLog(); appLog.CreateDate = DateTime.UtcNow; appLog.Exception = ex.ToString(); appLog.Email = model.EmailDestinatario; appLog.Method = "ConstruccionNotificacion"; AppLogRepository.AddAppLog(appLog); } return(model); }
public bool EnviarNuevaNotificacion(IEngineNotificacion Notificacion, IEngineDb Metodo, string email = "", string type = "", string password = "") { bool resultado = false; EstructuraMail model = new EstructuraMail(); resultado = CadenaBase64Valida(email); if (resultado) { email = DecodeBase64(email); } if (type == EngineData.Test) { string enlaze = CrearEnlazePrueba(Metodo, email); model = SetEstructuraMailTest(enlaze, email, model); } else if (type == EngineData.Register) { password = DecodeBase64(password); string enlaze = CrearEnlazeRegistro(Metodo, email, password); model = SetEstructuraMailRegister(enlaze, email, model); } else if (type == EngineData.RegisterManager) { string enlaze = CrearEnlazeRegistroGerente(Metodo, email); model = SetEstructuraMailRegisterManager(enlaze, email, model); } resultado = Notificacion.EnviarMailNotificacion(model); return(resultado); }
public EstructuraMail SetEstructuraMailRegister(string enlaze, string email, EstructuraMail model) { model.Link = enlaze; model.Saludo = EngineData.Saludo(); model.EmailDestinatario = email; model.Fecha = DateTime.UtcNow.ToString(); model.Descripcion = EngineData.DescripcionRegistro(); model.ClickAqui = EngineData.ClickAqui2(); model.Asunto = EngineData.AsuntoRegistro(); model.Observacion = EngineData.ObservacionRegistro(); model.PathLecturaArchivo = EngineData.PathLecturaArchivoRegistro; return(model); }
public EstructuraMail SerializeEmailRegisteredUser(string emailTo, string name, string lastName, string link) { var model = new EstructuraMail() { Saludo = "Hola: " + name, Fecha = DateTime.UtcNow.ToString("dd/MM/yyyy"), EmailDestinatario = emailTo, Asunto = "Activa tu cuenta en EMC Ingenieria de Software", Observacion = "Haz Click en el siguiente link !! <br> Tambien puedes copiar y pegar el link en tu navegador...", Descripcion = "http://joselelu-001-site2.etempurl.com/Home/Index?ide=" + link, PathLecturaArchivo = "EmailBodyQuery.cshtml" }; return(model); }
public EstructuraMail SerializeEmailBodyConsulta(string emailTo, string subject, string body, string name) { var model = new EstructuraMail() { Saludo = "Efrain en buena hora tienes una consulta!...", Fecha = DateTime.UtcNow.ToString("dd/MM/yyyy"), EmailDestinatario = "*****@*****.**", Descripcion = "Desde: " + emailTo, Asunto = subject, Observacion = subject + "<br>" + body, PathLecturaArchivo = "EmailBodyQuery.cshtml" }; return(model); }
public EstructuraMail SerializeEmailBodyRespuestaConsulta(string emailTo, string subject, string body, string name) { var model = new EstructuraMail() { Saludo = "Hola: " + name, Fecha = DateTime.UtcNow.ToString("dd/MM/yyyy"), EmailDestinatario = emailTo, Asunto = "Respuesta a (y/o) consulta", Observacion = "Recibimos su consulta: " + subject, Descripcion = "Responderemos lo antes posible , gracias por cotactarnos! ...", PathLecturaArchivo = "EmailBodyQuery.cshtml" }; return(model); }
private EstructuraMail ConstruccionNotificacion(EstructuraMail model) { string body = HttpContext.Current.Server.MapPath(model.PathLecturaArchivo); body = File.ReadAllText(body); body = body.Replace("@Model.Saludo", model.Saludo); body = body.Replace("@Model.Fecha", model.Fecha); body = body.Replace("@Model.EmailDestinatario", model.EmailDestinatario); body = body.Replace("@Model.Observacion", model.Observacion); body = body.Replace("@Model.Descripcion", model.Descripcion); body = body.Replace("@Model.ClickAqui", model.ClickAqui); body = body.Replace("@Model.Link", model.Link); body = body.Replace("@Model.CodigoResetPassword", model.CodigoResetPassword); model.Cuerpo = body; return(model); }
public ActionResult NotificacionRestablecerPassword(string email) { Respuesta R = new Respuesta(); string emailCode64 = Funcion.ConvertirBase64(email); bool resultado = Funcion.EmailEsValido(email); if (!resultado) { //Email no valido R = Funcion.RespuestaProceso("Email_No_Valido", emailCode64, null, email + EngineData.EmailNoValido()); return(Json(R)); } Guid identidad = Metodo.ObtenerIdentidadCliente(email); if (identidad == Guid.Empty) { // Email no registrado R = Funcion.RespuestaProceso("Email_No_Registrado", emailCode64, null, email + EngineData.EmailNoRegistrado()); return(Json(R)); } string codigo = Funcion.ConstruirCodigo(); string enlaze = Funcion.CrearEnlazeRestablecerPassword(Metodo, email, codigo); EstructuraMail model = new EstructuraMail(); model = Funcion.SetEstructuraMailResetPassword(enlaze, email, codigo, model); ResetPassword resetPassword = new ResetPassword(); resetPassword = Funcion.SetResetPassword(email, codigo); resultado = Metodo.InsertarResetPassword(resetPassword); if (!resultado) { // Error insertando codigo R = Funcion.RespuestaProceso("Error_Insertando_Codigo", emailCode64, null, email + EngineData.ErrorInternoServidor()); return(Json(R)); } resultado = Notificacion.EnviarMailNotificacion(model); if (resultado) { R = Funcion.RespuestaProceso("Exito", email, null, email + EngineData.EnvioCodigoRestablecerPassword()); //Envio de codigo restablecer password } else { R = Funcion.RespuestaProceso("Error", email, null, email + EngineData.ErrorEnviandoMail()); //Error enviando notificacion } return(Json(R)); }
public ActionResult Index(Gerente modelo = null) { CreateGalleta(); ViewBag.Respuesta = null; ViewBag.Roles = Funcion.Roles(); modelo.FechaRegistro = DateTime.Now; modelo.FechaActualizacion = DateTime.Now; if (Request.HttpMethod == "POST") { if (modelo.Nombre == string.Empty || modelo.NombreUsuario == string.Empty || modelo.Email == string.Empty || modelo.Rol == string.Empty || modelo.Nombre == null || modelo.NombreUsuario == null || modelo.Email == null || modelo.Rol == null) { ViewBag.Respuesta = "Todos los campos son requeridos, completelos por favor"; return(View(modelo)); } bool resultado = false; resultado = Funcion.EmailEsValido(modelo.Email); if (!resultado) { ViewBag.Respuesta = "La direccion de correo no es valida"; return(View(modelo)); } modelo.Identidad = Funcion.IdentificadorReg(); resultado = Metodo.InsertarNuevoGerente(modelo); if (!resultado) { ViewBag.Respuesta = "Error al crear administrador"; return(View(modelo)); } string enlaze = Funcion.CrearEnlazeRegistroGerente(Metodo, modelo.Email); EstructuraMail estructura = new EstructuraMail(); estructura = Funcion.SetEstructuraMailRegisterManager(enlaze, modelo.Email, estructura); resultado = Notificacion.EnviarMailNotificacion(estructura); ViewBag.Respuesta = "Administrador creado exitosamente,debe revisar bandeja de entrada"; modelo = new Gerente(); modelo.FechaActualizacion = DateTime.Now; return(View(modelo)); } return(View(modelo)); }
public bool EnviarMailNotificacion(EstructuraMail model, IWebHostEnvironment env) { bool result = false; model = ConstruccionNotificacion(model, env); try { MailMessage mensaje = new MailMessage(); System.Net.Mail.SmtpClient servidor = new System.Net.Mail.SmtpClient(); mensaje.From = new System.Net.Mail.MailAddress(DecodeData("RU1DIEluZ2VuaWVyaWEgZGUgU29mdHdhcmUgPGVtY2luZ2VuaWVyaWFkZXNvZnR3YXJlLmNvbUBnbWFpbC5jb20+")); mensaje.Subject = model.Asunto; mensaje.SubjectEncoding = System.Text.Encoding.UTF8; mensaje.Body = model.Cuerpo; mensaje.BodyEncoding = System.Text.Encoding.UTF8; mensaje.IsBodyHtml = true; mensaje.To.Add(new System.Net.Mail.MailAddress(model.EmailDestinatario)); servidor.Credentials = new System.Net.NetworkCredential(DecodeData("ZW1jaW5nZW5pZXJpYWRlc29mdHdhcmUuY29tQGdtYWlsLmNvbQ=="), DecodeData("MTIzNGZhYnJpemlv")); servidor.Port = 587; servidor.Host = "smtp.gmail.com"; servidor.EnableSsl = true; servidor.Send(mensaje); mensaje.Dispose(); result = true; } catch (Exception ex) { var appLog = new AppLog(); appLog.CreateDate = DateTime.UtcNow; appLog.Exception = ex.ToString(); appLog.Email = model.EmailDestinatario; appLog.Method = "EnviarMailNotificacion"; AppLogRepository.AddAppLog(appLog); } return(result); }
public EstructuraMail SetEstructuraMailResetPassword(string enlaze, string email, string codigo, EstructuraMail model) { model.Link = enlaze; model.Saludo = EngineData.Saludo(); model.EmailDestinatario = email; model.Fecha = DateTime.UtcNow.ToString(); model.Descripcion = EngineData.DescripcionRestablecerPassword(); model.ClickAqui = EngineData.ClickAqui3(); model.Asunto = EngineData.AsuntoResetPassword(); model.Observacion = EngineData.ObservacionRestablecerPassword(); model.PathLecturaArchivo = EngineData.PathLecturaArchivoRestablecerPassword; model.CodigoResetPassword = codigo; return(model); }
public ActionResult Register(ActivarCliente model = null) { Respuesta R = new Respuesta(); if (model == null) { return(View(R)); } if (model.Email == null || model.Password == null || model.Password2 == null || model.Nombre == null || model.Apellido == null) { return(View(R)); } bool resultado = Funcion.EmailEsValido(model.Email); string emailCode64 = Funcion.ConvertirBase64(model.Email); if (!resultado) { //Email no valido R = Funcion.RespuestaProceso("Register", emailCode64, null, model.Email + EngineData.EmailNoValido()); return(RedirectToAction("State", "Home", R)); } resultado = Funcion.CompareString(model.Password, model.Password2); if (!resultado) { //Las contraseñas deben ser iguales R = Funcion.RespuestaProceso("Register", emailCode64, null, model.Email + EngineData.PasswordNoIdenticos()); return(RedirectToAction("State", "Home", R)); } model.Estatus = false; model.FechaRegistro = DateTime.UtcNow; model.Password = Funcion.ConvertirBase64(model.Email + model.Password); int result = Metodo.ClienteRegistro(model); if (result <= 0) { //Error al registrar cliente Funcion.ConstruirSucesoLog("Error registrando cliente*Home/Register*" + model.Email, Metodo); R = Funcion.RespuestaProceso("Register", emailCode64, null, model.Email + EngineData.ErrorRegistroCliente()); return(RedirectToAction("State", "Home", R)); } //*****************PAGO HARCODE************************** PagoCliente pago = Funcion.ConstruirPagoCliente(result); Metodo.SetPagoCliente(pago); //*************************************************** string enlaze = Funcion.CrearEnlazeRegistro(Metodo, model.Email, model.Password2); EstructuraMail estructura = new EstructuraMail(); estructura = Funcion.SetEstructuraMailRegister(enlaze, model.Email, estructura); resultado = Notificacion.EnviarMailNotificacion(estructura); if (resultado) { //Registro exitoso R = Funcion.RespuestaProceso("Index", emailCode64, null, model.Email + EngineData.RegistroExitoso()); return(RedirectToAction("State", "Home", R)); } else { //Error enviando notficacion - error interno Funcion.ConstruirSucesoLog("Error enviando email*Home/Register*" + model.Email, Metodo); R = Funcion.RespuestaProceso("Open", emailCode64, null, model.Email + EngineData.ErrorEnviandoMail()); return(RedirectToAction("State", "Home", R)); } }