Exemplo n.º 1
0
        public async Task <ActionResult> Create(Category category, string nameVI, string nameEN, string NameTW)
        {
            try
            {
                category.Name = nameVI + " - " + nameEN + " - " + NameTW;;
                db.Categories.Add(category);
                await db.SaveChangesAsync();

                CategoryLang vn = new CategoryLang();
                vn.Name       = nameVI;
                vn.LanguageID = "vi";
                vn.CategoryID = category.CategoryID;
                db.CategoryLangs.Add(vn);

                CategoryLang en = new CategoryLang();
                en.Name       = nameEN;
                en.LanguageID = "en";
                en.CategoryID = category.CategoryID;
                db.CategoryLangs.Add(en);

                CategoryLang tw = new CategoryLang();
                tw.Name       = NameTW;
                tw.LanguageID = "en";
                tw.CategoryID = category.CategoryID;
                db.CategoryLangs.Add(tw);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            catch (Exception)
            {
                return(View(category));
            }
        }
 public ActionResult Update(int[] LangId, string[] Name, int CategoryId)
 {
     for (int i = 0; i < LangId.Count(); i++)
     {
         int          TheLangId   = LangId[i];
         CategoryLang OldCategory = db.CategoryLangs.FirstOrDefault(f => f.CategoryId == CategoryId && f.LangId == TheLangId);
         OldCategory.Name = Name[i];
         db.SaveChanges();
     }
     return(RedirectToAction("Index"));
 }
Exemplo n.º 3
0
        public async Task <IActionResult> EditPost(int id, CreateCategoryVM category)
        {
            if (!User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (!User.IsInRole("Admin"))
            {
                return(RedirectToAction("Login", "Account"));
            }
            if (!ModelState.IsValid)
            {
                ModelState.AddModelError("", "Xaiş olunur düzgün doldurun.");
                return(View(category));
            }
            Category newCategory = await _context.Category.FindAsync(id);

            if (newCategory == null)
            {
                return(View("Error"));
            }

            if (category.Photo != null)
            {
                string computerPhoto = Path.Combine(_env.WebRootPath, "images", newCategory.PhotoUrl);

                if (System.IO.File.Exists(computerPhoto))
                {
                    System.IO.File.Delete(computerPhoto);
                }

                string fileName = await category.Photo.SaveAsync(_env.WebRootPath);

                newCategory.PhotoUrl = fileName;
            }
            CategoryLang azBlogLangFromDb = await _context.CategoryLangs.FirstOrDefaultAsync(x => x.Lang.Code.ToLower() == "az" &&
                                                                                             x.CategoryId == newCategory.Id);

            CategoryLang ruBlogLangFromDb = await _context.CategoryLangs.FirstOrDefaultAsync(x => x.Lang.Code.ToLower() == "ru" &&
                                                                                             x.CategoryId == newCategory.Id);

            CategoryLang enBlogLangFromDb = await _context.CategoryLangs.FirstOrDefaultAsync(x => x.Lang.Code.ToLower() == "en" &&
                                                                                             x.CategoryId == newCategory.Id);

            azBlogLangFromDb.Name = category.NameAZ;
            enBlogLangFromDb.Name = category.NameEN;
            ruBlogLangFromDb.Name = category.NameRU;

            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(Index)));
        }
        public ActionResult New(int[] LangId, string[] Name)
        {
            Category category = new Category();

            category.Status = true;
            db.Categories.Add(category);
            db.SaveChanges();
            for (int i = 0; i < LangId.Length; i++)
            {
                CategoryLang categoryLang = new CategoryLang();
                categoryLang.LangId     = LangId[i];
                categoryLang.CategoryId = category.Id;
                categoryLang.Name       = Name[i];
                categoryLang.Status     = true;

                db.CategoryLangs.Add(categoryLang);
            }
            db.SaveChanges();


            return(RedirectToAction("Index"));
        }
Exemplo n.º 5
0
        public async Task <IActionResult> Details(int?id)
        {
            if (!User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (!User.IsInRole("Admin"))
            {
                return(RedirectToAction("Login", "Account"));
            }
            if (id == null)
            {
                return(View("Error"));
            }

            CategoryLang category = await _context.CategoryLangs.FirstOrDefaultAsync(p => p.Category.Id == id && p.Lang.Code.ToLower() == "az");

            if (category == null)
            {
                return(View("Error"));
            }
            return(View(category));
        }
Exemplo n.º 6
0
        public async Task <IActionResult> Create(CreateCategoryVM category)
        {
            if (!User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (!User.IsInRole("Admin"))
            {
                return(RedirectToAction("Login", "Account"));
            }
            if (!ModelState.IsValid)
            {
                return(View(category));
            }

            if (category.Photo == null)
            {
                return(View(category));
            }

            string fileName = await category.Photo.SaveAsync(_env.WebRootPath);

            Lang azLang = await _context.Langs.FirstOrDefaultAsync(x => x.Code.ToLower() == "az");

            Lang ruLang = await _context.Langs.FirstOrDefaultAsync(x => x.Code.ToLower() == "ru");

            Lang enLang = await _context.Langs.FirstOrDefaultAsync(x => x.Code.ToLower() == "en");

            Category newCategory = new Category()
            {
                PhotoUrl = fileName
            };

            await _context.Category.AddAsync(newCategory);

            await _context.SaveChangesAsync();

            CategoryLang historyAZ = new CategoryLang
            {
                Name       = category.NameAZ,
                LangId     = azLang.Id,
                CategoryId = newCategory.Id
            };
            CategoryLang historyEN = new CategoryLang
            {
                Name       = category.NameEN,
                LangId     = enLang.Id,
                CategoryId = newCategory.Id
            };
            CategoryLang historyRU = new CategoryLang
            {
                Name       = category.NameRU,
                LangId     = ruLang.Id,
                CategoryId = newCategory.Id
            };

            _context.CategoryLangs.AddRange(historyAZ, historyEN, historyRU);
            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(Index)));
        }
Exemplo n.º 7
0
        public async Task <ActionResult> Edit(Category category, string nameVI, string nameEN, string nameTW)
        {
            try
            {
                var id      = category.CategoryID;
                var itemOri = await db.Categories.FindAsync(id);

                var itemVi = await db.CategoryLangs.FirstOrDefaultAsync(x => x.CategoryID == id && x.LanguageID == "vi");

                var itemEn = await db.CategoryLangs.FirstOrDefaultAsync(x => x.CategoryID == id && x.LanguageID == "en");

                var itemTw = await db.CategoryLangs.FirstOrDefaultAsync(x => x.CategoryID == id && x.LanguageID == "tw");

                await db.SaveChangesAsync();

                if (itemVi == null)
                {
                    CategoryLang vn = new CategoryLang();
                    vn.Name       = nameVI;
                    vn.LanguageID = "vi";
                    vn.CategoryID = category.CategoryID;
                    db.CategoryLangs.Add(vn);
                }
                else
                {
                    itemVi.Name = nameVI;
                }
                if (itemTw == null)
                {
                    CategoryLang tw = new CategoryLang();
                    tw.Name       = nameTW;
                    tw.LanguageID = "tw";
                    tw.CategoryID = category.CategoryID;
                    db.CategoryLangs.Add(tw);
                }
                else
                {
                    itemTw.Name = nameTW;
                }
                if (itemEn == null)
                {
                    CategoryLang en = new CategoryLang();
                    en.Name       = nameEN;
                    en.LanguageID = "en";
                    en.CategoryID = category.CategoryID;
                    db.CategoryLangs.Add(en);
                }
                else
                {
                    itemEn.Name = nameEN;
                }
                itemOri.Name = nameVI + " - " + nameEN + " - " + nameTW;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            catch (Exception)
            {
                return(View(category));
            }
        }