public async Task EditDescription(NeedModel Model) { var Need = await Context.Need.FirstOrDefaultAsync(x => x.Id == Model.Id); if (Need != null) { AuthUser = await GetAuthenticatedUserFromDatabaseAsync(); if (AuthUser.Id == Need.UserId) { if (ModelState.ErrorCount < 2) { if (Need.Description != Model.Description) { Need.Description = Model.Description; await Context.SaveChangesAsync(); TempData["NeedMessage"] = "Açıklama düzenlendi"; } } else { TempData["NeedMessage"] = "Açıklama boş olamaz.<br />" + "En az: 100, en fazla 10 bin karakter"; } string link = "/" + Need.User.Username + "/ihtiyac/" + Need.FriendlyTitle + "/" + Need.Id; Response.Redirect(link); } } }
public async Task <IActionResult> Create(NeedModel Model) { if (ModelState.IsValid) { AuthUser = await GetAuthenticatedUserFromDatabaseAsync(); if (!await IsThereAnyProblemtoCreateNeed()) { Model.Title = Model.Title.ClearSpaces(); Model.Title = Model.Title.ToLower().UppercaseFirstCharacters(); var Need = new Need { Title = Model.Title, FriendlyTitle = Model.Title.FriendlyUrl(), Description = Model.Description, UserId = AuthUser.Id, }; try { await Context.Need.AddAsync(Need); var result = await Context.SaveChangesAsync(); if (result > 0) { string link = "/" + Need.User.Username + "/ihtiyac/" + Need.FriendlyTitle + "/" + Need.Id; return(Redirect(link)); } } catch (Exception e) { if (e.InnerException.Message.Contains("Unique_Key_Title")) { TempData["CreateNeedError"] = "Bu başlığı seçemezsiniz"; } else { Logger.LogError("Error create need. Ex.message : {ex.message}, Ex.innermessage: {ex.inner}", e.Message, e.InnerException.Message); TempData["CreateNeedError"] = "Başaramadık, ne olduğunu bilmiyoruz"; } } } else if (TempData["CreateNeedError"] != null && TempData["CreateNeedError"].ToString() == "Active education") { TempData["ProfileMessage"] = "İhtiyaç kampanyası oluşturmak için onaylanmış bir eğitim bilgisine ihtiyacınız vardır."; return(Redirect("/" + AuthUser.Username)); } } else { TempData["CreateNeedError"] = "Lütfen istenen bilgileri doldurun"; } return(View()); }
public async Task <IActionResult> Create(NeedModel Model) { if (ModelState.IsValid) { if (!await IsThereAnyProblemtoCreateNeed().ConfigureAwait(false)) { Model.Title = Model.Title.ClearExtraBlanks().CapitalizeFirstCharOfWords().RemoveLessGreaterSigns(); var Need = new Need { Title = Model.Title, FriendlyTitle = Model.Title.FriendlyUrl(), Description = Model.Description.RemoveLessGreaterSigns(), UserId = Guid.Parse(User.Identity.GetUserId()), }; try { await Context.Need.AddAsync(Need); await Context.SaveChangesAsync(); Need = await Context.Need.Include(need => need.User).FirstOrDefaultAsync(x => x.Id == Need.Id); return(Redirect("/" + Need.Link)); } catch (Exception e) { string innerMessage = (e.InnerException != null) ? e.InnerException.Message.ToLower() : ""; if (innerMessage.Contains("Unique_Key_Title") || innerMessage.Contains("Unique_Key_FriendlyTitle")) { TempData["CreateNeedError"] = "Bu başlığı seçemezsiniz"; } else { Logger.LogError("Error create need. Ex.message : {ex.message}, Ex.innermessage: {ex.inner}", e?.Message, e?.InnerException?.Message); TempData["CreateNeedError"] = "Başaramadık, ne olduğunu bilmiyoruz"; } } } else if (TempData["CreateNeedError"] != null && TempData["CreateNeedError"].ToString() == "Active education") { TempData["ProfileMessage"] = "İhtiyaç kampanyası oluşturmak için onaylanmış bir eğitim bilgisine ihtiyacınız vardır."; return(Redirect("/" + User.Identity.GetUsername())); } } else { TempData["CreateNeedError"] = "Lütfen istenen bilgileri doldurun"; } return(View()); }
public async Task EditTitle(NeedModel Model) { var Need = await Context.Need.FirstOrDefaultAsync(x => x.Id == Model.Id); if (Need != null) { AuthUser = await GetAuthenticatedUserFromDatabaseAsync(); if (AuthUser.Id == Need.UserId) { if (ModelState.ErrorCount < 2) { if (Model.Title != Need.Title) { Model.Title = Model.Title.ClearSpaces(); Model.Title = Model.Title.ToLower().UppercaseFirstCharacters(); Need.Title = Model.Title; Need.FriendlyTitle = Need.Title.FriendlyUrl(); try { await Context.SaveChangesAsync(); TempData["NeedMessage"] = "Başlık düzenlendi"; } catch (Exception e) { if (e.InnerException.Message.Contains("Unique_Key_Title")) { TempData["NeedMessage"] = "Bu başlığı seçemezsiniz"; } } } } else { TempData["NeedMessage"] = "Başlık boş olamaz.<br />" + "En fazla 75 karakter "; } string link = "/" + Need.User.Username + "/ihtiyac/" + Need.FriendlyTitle + "/" + Need.Id; Response.Redirect(link); } } }