public async Task <IActionResult> Index() { var model = new LangVM() { Language = null, Languages = db.Languages.ToList(), Action = "Create", Button = "Əlavə et" }; if (_signInManager.IsSignedIn(User)) { var user = await _userManager.GetUserAsync(User); if (user.Status == "Admin") { return(View(model)); } else { return(RedirectToAction("Index", "AdminLogin")); } } else { return(RedirectToAction("Index", "AdminLogin")); } }
public async Task <IActionResult> Edit(int?id) { if (id != null) { var model = new LangVM() { Language = db.Languages.FirstOrDefault(c => c.id == id), Languages = db.Languages.ToList(), Action = "Edit", Button = "Redaktə et" }; if (_signInManager.IsSignedIn(User)) { var user = await _userManager.GetUserAsync(User); if (user.Status == "Admin") { return(View("Index", model)); } else { return(RedirectToAction("Index", "AdminLogin")); } } else { return(RedirectToAction("Index", "AdminLogin")); } } else { return(RedirectToAction("Index")); } }
public async Task <ActionResult <LangVM> > CreateLang(LangVM langVM) { try { if (langVM == null) { return(BadRequest()); } // Add custom model validation error Lang lang = await langRepository.GetLangByname(langVM.Lang); if (lang != null) { ModelState.AddModelError("Name", $"Lang name: {langVM.Lang.Name} already in use"); return(BadRequest(ModelState)); } await langRepository.CreateLang(langVM); return(CreatedAtAction(nameof(GetLang), new { id = langVM.Lang.Id }, langVM)); } catch (DbUpdateException Ex) { return(StatusCode(StatusCodes.Status500InternalServerError, Ex.InnerException.Message)); } }
public async Task <LangVM> GetLang(int id) { LangVM langVM = new LangVM(); langVM.Lang = await appDbContext.Langs.FirstOrDefaultAsync(e => e.Id == id); return(langVM); }
public VMState( IHTimestamp stamp) : base(new TStateId(19830602), stamp.ID, stamp.Event, StatePatchMethod.Customized) { m_interpreter = new LangVM(); //< we don't really need one interpreter per VMstate //< interpreter instances can be shared by copy-on-write m_interpreter.DeclareAndLink("Cocktail.DeclareAndLink", typeof(LangVM).GetMethod("DeclareAndLink_cocktail")); LoadStdLib(); }
public async Task <LangVM> CreateLang(LangVM langVM) { var result = await appDbContext.Langs.AddAsync(langVM.Lang); await appDbContext.SaveChangesAsync(); langVM.Lang = result.Entity; return(langVM); }
private async Task <LangVM> CheckDeserialize(HttpResponseWrapper <LangVM> httpResponseWrapper) { LangVM langVM = new LangVM(); if (httpResponseWrapper.Success) { langVM = await Deserialize <LangVM>(httpResponseWrapper.HttpResponseMessage, defaultJsonSerializerOptions); } else { langVM.Exception = await httpResponseWrapper.GetBody(); } return(langVM); }
public async Task <LangVM> UpdateLang(LangVM langVM) { Lang result = await appDbContext.Langs .FirstOrDefaultAsync(e => e.Id == langVM.Lang.Id); if (result != null) { appDbContext.Entry(result).State = EntityState.Detached; result = mapper.Map(langVM.Lang, result); appDbContext.Entry(result).State = EntityState.Modified; await appDbContext.SaveChangesAsync(); return(new LangVM { Lang = result }); } return(null); }
public async Task <ActionResult <LangVM> > UpdateLang(int id, LangVM langVM) { try { if (id != langVM.Lang.Id) { return(BadRequest("Lang ID mismatch")); } // Add custom model validation error Lang lang = await langRepository.GetLangByname(langVM.Lang); if (lang != null) { ModelState.AddModelError("Name", $"Lang name: {langVM.Lang.Name} already in use"); return(BadRequest(ModelState)); } var langToUpdate = await langRepository.GetLang(id); if (langToUpdate == null) { return(NotFound($"Lang with Id = {id} not found")); } await langRepository.UpdateLang(langVM); return(CreatedAtAction(nameof(GetLang), new { id = langVM.Lang.Id }, langVM)); } catch (DbUpdateException Ex) { return(StatusCode(StatusCodes.Status500InternalServerError, Ex.InnerException.Message)); } }
public async Task <LangVM> UpdateLang(int id, LangVM langVM) { var response = await httpService.Put($"{url}/{id}", langVM); return(await CheckDeserialize(response)); }
public async Task <LangVM> CreateLang(LangVM langVM) { var response = await httpService.PostAsync(url, langVM); return(await CheckDeserialize(response)); }