public ActionResult Update(Parent parent) { var _parent = new Parent(); List <DbValidationError> errors = service.Validate(parent); if (errors.Count != 0) { return(Json(new { errors = errors, parent = _parent })); } _parent = service.Update(parent); //If the parent status is active must send an email advising about it if (_parent.Status.Id == STATUS_ACTIVE) { var subject = "Acesso liberado ao Portal Vovó Chiquita. Uhuuul."; string message = System.IO.File.ReadAllText(Server.MapPath("~/ViewsEmails/AccessGranted.html")).Replace("##PARENT-NAME##", parent.Name); List <User> admins = new MealEntities().User.Where(s => s.Type.Id == USER_TYPE_ADMIN).ToList(); var email = new Email { Mailto = _parent.Email, Subject = subject, Body = message }; try { new Mailer(email).Send(); } catch (Exception ex) { var msg = ex.InnerException != null ? ex.InnerException.Message : ex.Message; errors.Add(new DbValidationError( "Erro no envio do email", "O status do usuário foi alterado com sucesso. Porém o erro abaixo ocorreu ao enviar o e-mail ao usuário.")); errors.Add(new DbValidationError( "Mensagem do erro", msg)); } } return(Json(new { errors = errors, parent = _parent })); }
public Parent Insert(Parent parent) { var entity = new MealEntities(); parent.Status = entity.Status.FirstOrDefault(s => s.Id == STATUS_WAITING_EVALUATION); //Set user period by period id parent.Students.ForEach(s => { s.Period = entity.Period.First(p => p.Id == s.Period.Id); }); var model = entity.Parent.Add(parent); entity.SaveChanges(); return(model); }
public ActionResult Validate(User user) { //var x = BCrypt.Net.BCrypt.HashPassword(""); //var Password = BCrypt.Net.BCrypt.HashPassword(user.Password); var entites = new MealEntities(); var model = entites.User.FirstOrDefault(u => u.UserName == user.UserName); if (model == null) { return(new HttpStatusCodeResult((HttpStatusCode)404, "Usuário/Senha inválida.")); } if (!BCrypt.Net.BCrypt.Verify(user.Password, model.Password)) { return(new HttpStatusCodeResult((HttpStatusCode)404, "Usuário/Senha inválida.")); } if (model.Status.Id == 2) { return(new HttpStatusCodeResult((HttpStatusCode)412, "Usuário está inativo.")); } else if (model.Status.Id == 3) { return(new HttpStatusCodeResult((HttpStatusCode)412, "Usuário aguardando analise.")); } else if (model.Status.Id == 4) { return(new HttpStatusCodeResult((HttpStatusCode)403, "Usuário bloqueado.")); } var cookie = new HttpCookie("meal_user") { Value = new JavaScriptSerializer().Serialize(model), Expires = DateTime.Now.AddDays(1)// In the next day it will be created again }; Response.Cookies.Add(cookie); return(new HttpStatusCodeResult(HttpStatusCode.OK)); }
public Parent Update(Parent parent) { var entity = new MealEntities(); Parent _parent = entity.Parent.SingleOrDefault(s => s.Id == parent.Id); entity.Phone.RemoveRange(_parent.Phone); entity.Students.RemoveRange(_parent.Students); entity.Parent.Remove(_parent); parent.Students.ForEach(student => { student.Period = Entity.Period.Find(student.Period.Id); }); parent.Status = entity.Status.Find(parent.Status.Id); parent.Status = entity.Status.FirstOrDefault(x => x.Id == parent.Status.Id); parent.ModifiedAt = DateTime.Now; entity.Parent.Add(parent); return(entity.SaveChanges() > 0 ? parent : null); }
public BaseController() { entity = new MealEntities(); }
public void Initialize() { entity = new MealEntities(); }