Example #1
0
        public async Task <IActionResult> Alter(int id)
        {
            AuktionModel auktionModel = await _service.GetAuktionAsync(id);

            if (auktionModel is null)
            {
                TempData["Message"] = "Misslyckades med att redigera auktionen! Auktionen finns inte i databasen.";
                return(RedirectToAction("Index"));
            }

            NauktionUser currentUser = await _userManager.GetUserAsync(User);

            if (auktionModel.SkapadAv != currentUser.Id)
            {
                TempData["Message"] = "Misslyckades med att redigera auktionen! Du kan inte redigera någon annans auktion.";
                return(RedirectToAction("Index"));
            }

            var model = new AuktionViewModel
            {
                AuktionID   = auktionModel.AuktionID,
                Titel       = auktionModel.Titel,
                Beskrivning = auktionModel.Beskrivning,
                SlutDatum   = auktionModel.SlutDatum,
                Utropspris  = auktionModel.Utropspris ?? 0
            };

            return(View(model));
        }
Example #2
0
        public async Task <IActionResult> Alter(AuktionViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            AuktionModel auktionModel = await _service.GetAuktionAsync(model.AuktionID);

            if (auktionModel is null)
            {
                TempData["Message"] = "Misslyckades med att redigera auktionen! Auktionen finns inte i databasen.";
                return(RedirectToAction("Index"));
            }

            NauktionUser currentUser = await _userManager.GetUserAsync(User);

            if (auktionModel.SkapadAv != currentUser.Id)
            {
                TempData["Message"] = "Misslyckades med att redigera auktionen! Du kan inte redigera någon annans auktion.";
                return(RedirectToAction("Index"));
            }

            await _service.AlterAuktionAsync(model);

            TempData["Message"] = $"Dina ändringar till auktionen \"{model.Titel}\" har sparats!";
            return(View(model));
        }
 public async Task CreateAuktionAsync(AuktionViewModel model, NauktionUser skapare)
 {
     await _repository.CreateAuktionAsync(new AuktionModel
     {
         Titel       = model.Titel,
         Beskrivning = model.Beskrivning,
         StartDatum  = DateTime.Now,
         SlutDatum   = model.SlutDatum,
         Gruppkod    = _repository.Gruppkod,
         Utropspris  = model.Utropspris,
         SkapadAv    = skapare.Id
     });
 }
Example #4
0
        public async Task <IActionResult> Create(AuktionViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            NauktionUser currentUser = await _userManager.GetUserAsync(User);

            await _service.CreateAuktionAsync(model, currentUser);

            TempData["Message"] = $"Din auktion \"{model.Titel}\" har skapats!";
            return(RedirectToAction("Index"));
        }
        public async Task AlterAuktionAsync(AuktionViewModel model)
        {
            AuktionModel previous = await GetAuktionAsync(model.AuktionID);

            if (previous is null)
            {
                throw new NullReferenceException($"Auktion #{model.AuktionID} finns inte i databasen!");
            }

            previous.Titel       = model.Titel;
            previous.Beskrivning = model.Beskrivning;
            previous.SlutDatum   = model.SlutDatum;
            previous.Utropspris  = model.Utropspris;

            await _repository.AlterAuktionAsync(previous);
        }