public JsonResult InsertUser(Dictionary <string, object> data) { RespGeneric resp = new RespGeneric("KO"); try { //comprobar formato correcto de email String expresion; expresion = "\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"; if (Regex.IsMatch(Convert.ToString(data["email"]), expresion)) { if (Regex.Replace(Convert.ToString(data["email"]), expresion, String.Empty).Length == 0) { //comprobar si usuario que se va a crear esta en la base de datos if (Webapp.Data.Empleados.getByEmail(data["email"].ToString()) == null) { //funcion que genera un codigo alfanumerico aleatorio e irrepetib int longitud = 7; Guid miGuid = Guid.NewGuid(); string token = Convert.ToBase64String(miGuid.ToByteArray()); token = token.Replace("=", "").Replace("+", ""); Console.WriteLine(token.Substring(0, longitud)); data.Add("invitacion", token); Webapp.Data.Empleados.InsertUser(data); resp.cod = "OK"; //enviar email a la direccion email dentro del data Extensiones.sendEmail(to: (Convert.ToString(data["email"])), subject: (Convert.ToString(data["invitacion"])), body: "Introduce el codigo que te hemos enviado junto con tus datos para finalizar el registro <a href=http://localhost:51934/Account/FormularioRegistro> link de registro </a> ", file: ""); } else { resp.msg = "Ya existe un usuario con ese Email"; } } else { resp.msg = "El Email no es Valido"; } } else { resp.msg = "El Email no es Valido"; } } catch (Exception e) { if (e.Message != "") { resp.msg = e.Message; } } return(Json(resp)); }
public JsonResult forgotPass(Dictionary <string, object> data) { RespGeneric resp = new RespGeneric("KO"); //comprobar formato correcto de email String expresion; expresion = "\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"; if (Regex.IsMatch(Convert.ToString(data["email"]), expresion)) { if (Regex.Replace(Convert.ToString(data["email"]), expresion, String.Empty).Length == 0) { if (Webapp.Data.Empleados.getByEmail(data["email"].ToString()) != null) { //funcion que genera un codigo alfanumerico aleatorio e irrepetible int longitud = 4; Guid miGuid = Guid.NewGuid(); string token = Convert.ToBase64String(miGuid.ToByteArray()); token = token.Replace("=", "").Replace("+", ""); Console.WriteLine(token.Substring(0, longitud)); data.Add("codigo", token); resp.cod = "OK"; //insertar codigo olvidar contraseña en la bd Webapp.Data.Empleados.InsertCodigoPass(data); //enviar correo Extensiones.sendEmail(to: (Convert.ToString(data["email"])), subject: (Convert.ToString(data["codigo"])), body: "Introduce el codigo que te hemos enviado para restablecer tu contraseña <a href=http://localhost:51934/Account/ForgotPass> link de registro </a> ", file: ""); } else { //correo no encontrado resp.msg = "correo electronico no encontrado"; }; } else { //correo electronico no valido resp.msg = "correo electronico no valido"; }; } return(Json(resp)); }