Exemple #1
0
        public async Task <IActionResult> CadeaubonToevoegen(ManueelNieuweBonViewModel model)
        {
            if (ModelState.IsValid)
            {
                Bon nieuweBon = new Bon(model.Naam, model.MinimumPrijs, model.Maximumprijs, model.Beschrijving, 0, @"temp", _categorieRepository.GetByNaam(model.Categorie), model.Straatnaam, model.Huisnummer, model.Postcode, model.Gemeente, _handelaarRepository.GetByHandelaarId(model.HandelaarID), model.Aanbieding, true);
                _bonRepository.Add(nieuweBon);
                _bonRepository.SaveChanges();

                nieuweBon.Afbeelding = @"images\bon\" + nieuweBon.BonId + @"\";
                _bonRepository.SaveChanges();

                var filePath = @"wwwroot/images/bon/" + nieuweBon.BonId + "/thumb.jpg";
                Directory.CreateDirectory(Path.GetDirectoryName(filePath));
                var fileStream = new FileStream(filePath, FileMode.Create);
                await model.Thumbnail.CopyToAsync(fileStream);

                fileStream.Close();

                for (int i = 0; i < model.Afbeeldingen.Count; i++)
                {
                    filePath = @"wwwroot/images/bon/" + nieuweBon.BonId + "/Afbeeldingen/" + (i + 1) + ".jpg";
                    Directory.CreateDirectory(Path.GetDirectoryName(filePath));
                    fileStream = new FileStream(filePath, FileMode.Create);
                    await model.Afbeeldingen[i].CopyToAsync(fileStream);
                    fileStream.Close();
                }


                return(RedirectToAction("CadeaubonOverzicht"));
            }
            ViewData["categorieen"]  = new SelectList(_categorieRepository.GetAll().Select(c => c.Naam));
            ViewData["aanbiedingen"] = Aanbiedingen();
            return(View(nameof(CadeaubonToevoegen), model));
        }
        public async Task <IActionResult> CadeaubonVerzoekToevoegen(CadeaubonVerzoekToevoegenViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = await _userManager.GetUserAsync(User);

                if (user == null)
                {
                    throw new ApplicationException($"Unable to load user with ID '{_userManager.GetUserId(User)}'.");
                }
                var handelaar = _handelaarRepository.GetByEmail(user.Email);
                Bon nieuweBon = new Bon(model.Naam, model.MinimumPrijs, model.Maximumprijs, model.Beschrijving, 0, @"temp", _categorieRepository.GetByNaam(model.Categorie), model.Straatnaam, model.Huisnummer, model.Postcode, model.Gemeente, _handelaarRepository.GetByHandelaarId(handelaar.HandelaarId), Aanbieding.Geen, false);
                _bonRepository.Add(nieuweBon);
                _bonRepository.SaveChanges();

                nieuweBon.Afbeelding = @"images\bon\" + nieuweBon.BonId + @"\";
                _bonRepository.SaveChanges();

                var filePath = @"wwwroot/images/bon/" + nieuweBon.BonId + "/thumb.jpg";
                Directory.CreateDirectory(Path.GetDirectoryName(filePath));
                var fileStream = new FileStream(filePath, FileMode.Create);
                await model.Thumbnail.CopyToAsync(fileStream);

                fileStream.Close();

                for (int i = 0; i < model.Afbeeldingen.Count; i++)
                {
                    filePath = @"wwwroot/images/bon/" + nieuweBon.BonId + "/Afbeeldingen/" + (i + 1) + ".jpg";
                    Directory.CreateDirectory(Path.GetDirectoryName(filePath));
                    fileStream = new FileStream(filePath, FileMode.Create);
                    await model.Afbeeldingen[i].CopyToAsync(fileStream);
                    fileStream.Close();
                }
                ViewData["AlleCategorien"] = _categorieRepository.GetAll().ToList();
                ViewData["categorieen"]    = new SelectList(_categorieRepository.GetAll().Select(c => c.Naam));
                return(RedirectToAction(nameof(HomeController.Index), "Home"));
            }
            ViewData["AlleCategorien"] = _categorieRepository.GetAll().ToList();
            ViewData["categorieen"]    = new SelectList(_categorieRepository.GetAll().Select(c => c.Naam));
            return(View(nameof(CadeaubonVerzoekToevoegen), model));
        }