public ActionResult Login(LoginViewModel model) { //Session'a bilgi saklama DataContext db = new DataContext(); UserCredentials user = db.UserCredentials.FirstOrDefault(x => x.UserName == model.UserName); bool flag = true; if (ModelState.IsValid) { if (user == null) { ModelState.AddModelError("", "Hatalı kullanıcı adı veya şifre."); flag = false; return(View(model)); } if (Crypto.VerifyHashedPassword(model.Password, user.UserPass)) { ModelState.AddModelError("", "Hatalı kullanıcı adı veya şifre."); flag = false; } if (user.IsActive == false) { ModelState.AddModelError("", "Hesap henüz aktif değil."); flag = false; } if (flag == false) { return(View(model)); } } Session["Login"] = user; return(RedirectToAction("Index")); }
public ActionResult Entries(CommentViewModel model) { DataContext db = new DataContext(); UserCredentials user = new UserCredentials(); user = Session["Login"] as UserCredentials; Comments comment = new Comments(); comment.Description = model.Comment.Description; comment.UserId = user.ID; comment.EntryId = model.Entries.ID; comment.UploadDate = DateTime.Now; //var dtoComments = db.Comments.Where(x => x.EntryId == model.Comment.EntryId).Select(p => new CommentsDTO() //{ // UserName = p., // Description = p.Description, // CreatedDate = p.CreatedDate, // CategoryName = p.Category.Category //}) if (string.IsNullOrEmpty(model.Comment.Description)) { ModelState.AddModelError("", "Boş bir yorum ekleyemezsiniz!"); } else { db.Comments.Add(comment); db.SaveChanges(); } return(RedirectToAction("Entries", new { id = model.Entries.ID })); }
public JsonResult DenemeEntry(EntriesViewModel model) { DataContext db = new DataContext(); Entries entry = new Entries(); var desc = model.Entries.Description; //This is for edit text that we take from user for a better view desc = desc.Replace("\\n", ""); int len = desc.Length - 2; desc = desc.Substring(1, len); UserCredentials user = new UserCredentials(); user = Session["Login"] as UserCredentials; if (ModelState.IsValid) { entry.CategoryId = model.Entries.CategoryId; entry.Title = model.Entries.Title; entry.Description = desc; entry.CreatedDate = DateTime.Now; entry.UserId = user.ID; db.Entries.Add(entry); db.SaveChanges(); } return(Json("200")); }
public ActionResult EditProfile(int id) { DataContext db = new DataContext(); UserCredentials user = db.UserCredentials.FirstOrDefault(x => x.ID == id); List <Categories> categories = db.Categories.ToList(); ViewBag.CatergoryList = categories; return(View(user)); }
public ActionResult RemoveProfile(LoginViewModel model) { DataContext db = new DataContext(); UserCredentials user = db.UserCredentials.FirstOrDefault(x => x.UserName == model.UserName); user = Session["Login"] as UserCredentials; user.IsArchived = true; db.SaveChanges(); Session.Clear(); return(RedirectToAction("Index")); }
public ActionResult ShowProfile(LoginViewModel model) { DataContext db = new DataContext(); UserCredentials user = db.UserCredentials.FirstOrDefault(x => x.UserName == model.UserName); user = Session["Login"] as UserCredentials; List <Categories> categories = db.Categories.ToList(); ViewBag.CatergoryList = categories; return(View(user)); }
public ActionResult PostEntry(EntriesViewModel model) { DataContext db = new DataContext(); List <Categories> categories = db.Categories.ToList(); ViewBag.CatergoryList = categories; UserCredentials user = new UserCredentials(); user = Session["Login"] as UserCredentials; Entries entryUserId = new Entries(); return(View()); }
public ActionResult Register(RegisterViewModel model) { //Aktivasyon E-postası gönderimi DataContext db = new DataContext(); UserCredentials regUser = db.UserCredentials.FirstOrDefault(x => x.UserName == model.Username || x.UserMail == model.Email); bool flag = true; if (ModelState.IsValid) { if (regUser == null) { UserCredentials user = new UserCredentials(); user.UserName = model.Username; user.UserMail = model.Email; string cryptedPass = Crypto.HashPassword(model.Password); user.UserPass = cryptedPass; user.IsAdmin = false; user.IsActive = false; user.ProfileImage = @"..\images\profile image.png"; user.ActiveGuid = Guid.NewGuid(); db.UserCredentials.Add(user); db.SaveChanges(); Session["Login"] = user.UserName; SendVerificationMail(user); return(RedirectToAction("RegisterOK")); } if (model.Username == regUser.UserName) { ModelState.AddModelError("", "Bu kullanıcı adı veya e-posta adresi zaten kullanımda."); flag = false; } else if (model.Email == regUser.UserMail) { ModelState.AddModelError("", "Bu kullanıcı adı veya e-posta adresi zaten kullanımda."); flag = false; } if (flag == false) { return(View(model)); } } return(View(model)); }
public ActionResult UserActivation(Guid?id) { DataContext db = new DataContext(); UserCredentials user = db.UserCredentials.FirstOrDefault(x => x.ActiveGuid == id); if (id == user.ActiveGuid) { user.IsActive = true; db.SaveChanges(); } else { return(View()); } return(View()); }
private void SendVerificationMail(UserCredentials model) { DataContext db = new DataContext(); UserCredentials user = db.UserCredentials.FirstOrDefault(x => x.UserName == model.UserName || x.UserMail == model.UserMail); Guid guid = (Guid)user.ActiveGuid; var senderEmail = new MailAddress("*****@*****.**", ""); var receivereEmail = new MailAddress(user.UserMail, "Receiver"); var password = "******"; var body = "Activation link: https://localhost:44329/Home/UserActivation/" + guid.ToString(); var sub = "Welcome to Daily Blog"; var smtp = new SmtpClient { Host = "smtp.gmail.com", Port = 587, EnableSsl = true, DeliveryMethod = SmtpDeliveryMethod.Network, UseDefaultCredentials = false, Credentials = new System.Net.NetworkCredential("*****@*****.**", password), }; smtp.Send(senderEmail.ToString(), receivereEmail.ToString(), sub, body); }
public ActionResult EditProfile(UserCredentials model, HttpPostedFileBase file) { //BİR DAHA BİLMEDİĞİM ŞEYLERİ SORMADAN KULLANMIYACAĞIM DataContext db = new DataContext(); UserCredentials user = db.UserCredentials.FirstOrDefault(x => x.ID == model.ID); List <Categories> categories = db.Categories.ToList(); model = user; ViewBag.CatergoryList = categories; if (ModelState.IsValid) { if (file != null) { var size = file.ContentLength; //Checking image size var type = file.ContentType; if (file.ContentLength > 2097152) { ModelState.AddModelError("", "Dosya boyutu 2mb'dan büyük olamaz."); return(View(model)); } if ((file.ContentType).ToString() != "image/png" && (file.ContentType).ToString() != "image/jpeg") { ModelState.AddModelError("", "Yanlış Format"); return(View(model)); } //Get width and height System.IO.Stream stream = file.InputStream; System.Drawing.Image img = System.Drawing.Image.FromStream(stream); Image profImage = ResizeImage(img); //saving image name string fileName = $"user_{model.ID}.{file.ContentType.Split('/')[1]}"; profImage.Save(Server.MapPath($"~/images/{fileName}"), ImageFormat.Jpeg); model.ProfileImage = fileName; } // Construct the viewmodel user.UserName = model.UserName; string cryptedPass = Crypto.HashPassword(model.UserPass); user.UserPass = cryptedPass; user.UserMail = model.UserMail; user.ProfileImage = model.ProfileImage; try { db.SaveChanges(); } catch (DbEntityValidationException ex) { foreach (var entityValidationErrors in ex.EntityValidationErrors) { foreach (var validationError in entityValidationErrors.ValidationErrors) { ModelState.AddModelError("", "Yanlış Format"); return(View(model)); } } } } return(RedirectToAction("ShowProfile")); }