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"));
            }
        }
コード例 #3
0
        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));
            }
        }
コード例 #4
0
        public async Task <LangVM> GetLang(int id)
        {
            LangVM langVM = new LangVM();

            langVM.Lang = await appDbContext.Langs.FirstOrDefaultAsync(e => e.Id == id);

            return(langVM);
        }
コード例 #5
0
ファイル: VMState.cs プロジェクト: diclogic/cocktailvm
		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();
		}
コード例 #6
0
        public async Task <LangVM> CreateLang(LangVM langVM)
        {
            var result = await appDbContext.Langs.AddAsync(langVM.Lang);

            await appDbContext.SaveChangesAsync();

            langVM.Lang = result.Entity;
            return(langVM);
        }
コード例 #7
0
ファイル: LangService.cs プロジェクト: ahmed154/sol_VocMaster
        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);
        }
コード例 #8
0
        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);
        }
コード例 #9
0
        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));
            }
        }
コード例 #10
0
ファイル: LangService.cs プロジェクト: ahmed154/sol_VocMaster
        public async Task <LangVM> UpdateLang(int id, LangVM langVM)
        {
            var response = await httpService.Put($"{url}/{id}", langVM);

            return(await CheckDeserialize(response));
        }
コード例 #11
0
ファイル: LangService.cs プロジェクト: ahmed154/sol_VocMaster
        public async Task <LangVM> CreateLang(LangVM langVM)
        {
            var response = await httpService.PostAsync(url, langVM);

            return(await CheckDeserialize(response));
        }