public JsonResult AddComment(Comment cmt) { JsonResult rez = new JsonResult(); if (ModelState.IsValid && (User.Identity.IsAuthenticated || this.IsCaptchaVerify("Captcha is not valid"))) { try { con.Comments.Add(cmt); con.SaveChanges(); rez.Data = RenderPartialViewToString("CommentRead", cmt); } catch (Exception e) { rez.Data = e.Message; } } else { foreach (var item in ModelState.Keys) { for (int i = 0; i < ModelState[item].Errors.Count; i++) { rez.Data += ModelState[item].Errors[i].ErrorMessage + "\r\n"; } } } return(rez); }
public JsonResult RestorePassword(RestorePass rest) { JsonResult rez = new JsonResult(); ViewBag.Title = "Востановление пароля"; if (ModelState.IsValid) { IQueryable <User> usrs = con.Users.Where(u => u.Login == rest.Name); if (usrs.Count() > 0) { User usr = usrs.First(); Random rnd = new Random(); string newpas = string.Empty; for (int i = 0; i < 7; i++) { newpas += (char)rnd.Next(33, 126); } if (Mail.Send(usr.Email, newpas)) { usr.PassWord = Hash.CreateHash(newpas); con.Entry(usr).State = System.Data.EntityState.Modified; con.SaveChanges(); rez.Data = "Пароль отправлен на почтовый адрес, указанный при регистрации."; } else { rez.Data = "Возникла ошибка при востановлении."; } } else { rez.Data = "Нет пользователя с таким логином."; } } return(rez); }
public JsonResult PostSave(Post post) { JsonResult rez = new JsonResult(); if (!ModelState.IsValid) { foreach (var item in ModelState.Keys) { for (int i = 0; i < ModelState[item].Errors.Count; i++) { rez.Data += ModelState[item].Errors[i].ErrorMessage + "<br />"; } } return(rez); } post.Text = Uploader.Parce(post.Text); post.WebLink = Uploader.ParceLink(post.Title); int id = con.Users.Where(u => u.Login == User.Identity.Name).FirstOrDefault().Id; post.UserId = id; if (post.Id == 0) { con.Posts.Add(post); } else { con.Entry(post).State = System.Data.EntityState.Modified; } con.SaveChanges(); if (post.InCatMenu) { MenuHelper.UpdateCache(); } rez.Data = "Статья успешно сохранена.;" + post.Id; return(rez); }