public ArtistBaseViewModel ArtistMediaItemAddNew(MediaItemAddViewModel newMediaItem) { var artist = ds.Artists.Find(newMediaItem.ArtistId); if (artist == null) { return(null); } else { var addedMediaItem = new MediaItem(); ds.MediaItems.Add(addedMediaItem); addedMediaItem.Caption = newMediaItem.Caption; addedMediaItem.Artist = artist; byte[] mediaItemBytes = new byte[newMediaItem.MediaItemUpload.ContentLength]; newMediaItem.MediaItemUpload.InputStream.Read(mediaItemBytes, 0, newMediaItem.MediaItemUpload.ContentLength); addedMediaItem.Content = mediaItemBytes; addedMediaItem.ContentType = newMediaItem.MediaItemUpload.ContentType; addedMediaItem.Artist = artist; ds.SaveChanges(); return(addedMediaItem == null ? null : mapper.Map <Artist, ArtistBaseViewModel>(artist)); } }
public ContentResult AddFromClient() { if (!Services.Authorizer.Authorize(Permissions.ManageMedia)) { return(Content(string.Format("<script type=\"text/javascript\">var result = {{ error: \"{0}\" }};</script>", T("ERROR: You don't have permission to upload media files")))); } var viewModel = new MediaItemAddViewModel(); try { UpdateModel(viewModel); if (Request.Files.Count < 1 || Request.Files[0].ContentLength == 0) { return(Content(string.Format("<script type=\"text/javascript\">var result = {{ error: \"{0}\" }};</script>", T("HEY: You didn't give me a file to upload")))); } try { _mediaService.GetMediaFiles(viewModel.MediaPath); } catch //media api needs a little work, like everything else of course ;) <- ;) == my stuff included. to clarify I need a way to know if the path exists or have UploadMediaFile create paths as necessary but there isn't the time to hook that up in the near future { _mediaService.CreateFolder("", viewModel.MediaPath); } var file = Request.Files[0]; var publicUrl = _mediaService.UploadMediaFile(viewModel.MediaPath, file, viewModel.ExtractZip); return(Content(string.Format("<script type=\"text/javascript\">var result = {{ url: \"{0}\" }};</script>", publicUrl))); } catch (Exception exception) { return(Content(string.Format("<script type=\"text/javascript\">var result = {{ error: \"{0}\" }};</script>", T("ERROR: Uploading media file failed: {0}", exception.Message)))); } }
public ArtistBaseViewModel AddMediaItemToArtist(MediaItemAddViewModel newItem) { var a = ds.Artists.Find(newItem.ArtistId); if (a == null) { return(null); } else { var addedItem = new MediaItem(); ds.MediaItems.Add(addedItem); addedItem.Caption = newItem.Caption; addedItem.Artist = a; byte[] mediaByte = new byte[newItem.MediaUpload.ContentLength]; newItem.MediaUpload.InputStream.Read(mediaByte, 0, newItem.MediaUpload.ContentLength); addedItem.Content = mediaByte; addedItem.ContentType = newItem.MediaUpload.ContentType; ds.SaveChanges(); return((addedItem == null) ? null : mapper.Map <Artist, ArtistBaseViewModel>(a)); } }
public ActionResult Add() { if (!Services.Authorizer.Authorize(Permissions.ManageMedia, T("Couldn't upload media file"))) { return(new HttpUnauthorizedResult()); } var viewModel = new MediaItemAddViewModel(); try { UpdateModel(viewModel); if (String.IsNullOrWhiteSpace(Request.Files[0].FileName)) { ModelState.AddModelError("File", T("Select a file to upload").ToString()); } if (!ModelState.IsValid) { return(View(viewModel)); } foreach (string fileName in Request.Files) { _mediaService.UploadMediaFile(viewModel.MediaPath, Request.Files[fileName], viewModel.ExtractZip); } Services.Notifier.Information(T("Media file(s) uploaded")); return(RedirectToAction("Edit", new { name = viewModel.FolderName, mediaPath = viewModel.MediaPath })); } catch (Exception exception) { this.Error(exception, T("Uploading media file failed:"), Logger, Services.Notifier); return(View(viewModel)); } }
//15 - Media Item Add public ArtistWithMediaInfoViewModel MediaItemAdd(MediaItemAddViewModel newItem) { var artist = ds.Artists.Find(newItem.ArtistId); if (artist == null) { return(null); } else { // Attempt to add the new item var addedMedia = ds.MediaItems.Add(mapper.Map <MediaItemAddViewModel, MediaItem>(newItem)); addedMedia.ContentType = newItem.Upload.ContentType; byte[] mediaBytes = new byte[newItem.Upload.ContentLength]; newItem.Upload.InputStream.Read(mediaBytes, 0, newItem.Upload.ContentLength); addedMedia.Content = mediaBytes; artist.MediaItems.Add(addedMedia); ds.SaveChanges(); return((artist == null) ? null : mapper.Map <Artist, ArtistWithMediaInfoViewModel>(artist)); } }
public ActionResult Add(string folderName, string mediaPath) { var model = new MediaItemAddViewModel { FolderName = folderName, MediaPath = mediaPath }; return(View(model)); }
public ActionResult AddMedia(int?id, MediaItemAddViewModel newItem) { if (!ModelState.IsValid) { return(View(newItem)); } var addedItem = m.AddMediaItemToArtist(newItem); if (addedItem == null) { return(View(newItem)); } else { return(RedirectToAction("details", new { id = addedItem.Id })); } }
public ActionResult AddMediaItem(int?id, MediaItemAddViewModel newItem) { if (!ModelState.IsValid && id.GetValueOrDefault() == newItem.ArtistId) { return(View(newItem)); } var addedItem = m.ArtistMediaItemAddNew(newItem); if (addedItem == null) { return(View(newItem)); } else { return(RedirectToAction("DetailsWithMediaItems", new { id = addedItem.Id })); } }
public ActionResult Add(string folderName, string mediaPath) { if (!Services.Authorizer.Authorize(Permissions.ManageMedia, T("Couldn't upload media file"))) { return(new HttpUnauthorizedResult()); } var currentSite = Services.WorkContext.CurrentSite; var model = new MediaItemAddViewModel { FolderName = folderName, MediaPath = mediaPath, AllowedExtensions = currentSite.As <MediaSettingsPart>().UploadAllowedFileTypeWhitelist }; if (currentSite.SuperUser.Equals(Services.WorkContext.CurrentUser.UserName, StringComparison.Ordinal)) { model.AllowedExtensions = String.Empty; } return(View(model)); }
public ActionResult AddMediaItem(MediaItemAddViewModel newItem) { var a = m.ArtistGetById(newItem.ArtistId); // Validate the input if (!ModelState.IsValid) { return(View(newItem)); } // Process the input var addedItem = m.MediaItemAdd(newItem); if (addedItem == null) { var form = new MediaItemAddFormViewModel(); form.ArtistId = a.Id; return(View(form)); } else { return(RedirectToAction("Details", "Artist", new { id = addedItem.Id })); } }