Esempio n. 1
0
        public ActionResult Edit(ArtistEditViewModel viewModel)
        {
            var model = viewModel.EditedArtist;

            // Note: name is allowed to be whitespace, but not empty.
            if (model.Names.All(n => string.IsNullOrEmpty(n.Value)))
            {
                ModelState.AddModelError("Names", Model.Resources.ArtistValidationErrors.UnspecifiedNames);
            }

            var coverPicUpload = Request.Files["pictureUpload"];
            var pictureData    = ParsePicture(coverPicUpload, "Picture");

            ParseAdditionalPictures(coverPicUpload, model.Pictures);

            try {
                viewModel.CheckModel();
            } catch (InvalidFormException x) {
                AddFormSubmissionError(x.Message);
            }

            if (!ModelState.IsValid)
            {
                return(View("Edit", new ArtistEditViewModel(Service.GetArtist(model.Id), PermissionContext, model)));
            }

            queries.Update(model, pictureData, LoginManager);

            return(RedirectToAction("Details", new { id = model.Id }));
        }
Esempio n. 2
0
        public IActionResult Edit(int id)
        {
            Artist regisseurFromDb = _context.GetSongArtist(id);

            ArtistEditViewModel vm = new ArtistEditViewModel()
            {
                Name      = regisseurFromDb.Name,
                FirstName = regisseurFromDb.FirstName
            };

            return(View(vm));
        }
Esempio n. 3
0
        public ActionResult Edit(int id = invalidId)
        {
            if (id == invalidId)
            {
                return(NoId());
            }

            CheckConcurrentEdit(EntryType.Artist, id);

            var model = new ArtistEditViewModel(Service.GetArtist(id), PermissionContext);

            return(View(model));
        }
Esempio n. 4
0
        public IActionResult Edit(int id, ArtistEditViewModel model)
        {
            if (!TryValidateModel(model))
            {
                return(View(model));
            }

            Artist regisseurToUpdate = new Artist()
            {
                Id        = id,
                Name      = model.Name,
                FirstName = model.FirstName
            };

            _context.UpdateSongArtist(id, regisseurToUpdate);

            return(RedirectToAction("Index"));
        }
Esempio n. 5
0
        public async Task <ActionResult> Edit(ArtistEditViewModel viewModel)
        {
            // Unable to continue if viewmodel is null because we need the ID at least
            if (viewModel == null || viewModel.EditedArtist == null)
            {
                log.Warn("Viewmodel was null");
                return(HttpStatusCodeResult(HttpStatusCode.BadRequest, "Viewmodel was null - probably JavaScript is disabled"));
            }

            try {
                viewModel.CheckModel();
            } catch (InvalidFormException x) {
                AddFormSubmissionError(x.Message);
            }

            var model = viewModel.EditedArtist;

            // Note: name is allowed to be whitespace, but not empty.
            if (model.Names.All(n => n == null || string.IsNullOrEmpty(n.Value)))
            {
                ModelState.AddModelError("Names", Model.Resources.ArtistValidationErrors.UnspecifiedNames);
            }

            var coverPicUpload = Request.Files["pictureUpload"];
            var pictureData    = ParsePicture(coverPicUpload, "Picture", ImagePurpose.Main);

            ParseAdditionalPictures(coverPicUpload, model.Pictures);

            if (!ModelState.IsValid)
            {
                return(View("Edit", CreateArtistEditViewModel(model.Id, model)));
            }

            try {
                await queries.Update(model, pictureData, PermissionContext);
            } catch (InvalidPictureException) {
                ModelState.AddModelError("ImageError", "The uploaded image could not processed, it might be broken. Please check the file and try again.");
                return(View("Edit", CreateArtistEditViewModel(model.Id, model)));
            }

            return(RedirectToAction("Details", new { id = model.Id }));
        }