public ActionResult Edit(MusicViewModelEntry music, HttpPostedFileBase WAVUpload, HttpPostedFileBase MP3Upload) { if (ModelState.IsValid) { var res = new ResponseBase(); try { MusicHelper mh = new MusicHelper(); var FilesFromHttp = mh.SetMusicBeforeUpDate(music, WAVUpload, MP3Upload); res = service.Update(music, music.ID, FilesFromHttp.wavFile, FilesFromHttp.mp3File); } catch (Exception e) { res.Success = false; res.Message = e.ToString(); } if (!res.Success) { ModelState.AddModelError("", res.Message); } else { return(RedirectToAction("Index", new { success = true })); } } return(View(music)); }
public ActionResult NewMusic(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var res = musicSrv.GetByID(id.Value); if (!res.Success) { return(Json(res.Message, JsonRequestBehavior.AllowGet)); } Music music = res.Entity; if (music == null) { return(HttpNotFound()); } MusicViewModelEntry viewModel = new MusicViewModelEntry(music); // Save url to geet back to after action ends ViewBag.ReturnURL = Request.UrlReferrer; return(View(viewModel)); }
//// GET: Musics/Details/5 //public ActionResult Details(int? id) //{ // if (id == null) // { // return new HttpStatusCodeResult(HttpStatusCode.BadRequest); // } // var res = service.GetByID(id.Value); // if (!res.Success) // { // return Json(res.Message, JsonRequestBehavior.AllowGet); // } // Music music = res.Entity; // if (music == null) // { // return HttpNotFound(); // } // return View(music); //} // GET: Musics/Create public ActionResult Create() { MusicViewModelEntry viewModel = new MusicViewModelEntry() { Status = MusicActiveStatus.New, CreateDate = DateTime.Now, }; return(View(viewModel)); }
public ActionResult Create(MusicViewModelEntry music, HttpPostedFileBase WAVUpload, HttpPostedFileBase MP3Upload, string ArtistName) { if (ModelState.IsValid) { MusicHelper mh = new MusicHelper(); var FilesFromHttp = mh.SetMusicBeforeUpDate(music, WAVUpload, MP3Upload); var addMusic = new Music(music); var res = service.Add(addMusic, FilesFromHttp.wavFile, FilesFromHttp.mp3File); if (!res.Success) { ModelState.AddModelError("", res.Message); } else { return(RedirectToAction("Index", new { success = true })); } } return(View(music)); }
public ActionResult NewMusic(MusicViewModelEntry music, HttpPostedFileBase WAVUpload, HttpPostedFileBase MP3Upload, ConfirmTypeAction confirmAction, string DeclineReason) { if (ModelState.IsValid) { MusicHelper mh = new MusicHelper(); var FilesFromHttp = mh.SetMusicBeforeUpDate(music, WAVUpload, MP3Upload); var res = service.ConfirmNewMusic(music, FilesFromHttp.wavFile, FilesFromHttp.mp3File, confirmAction, DeclineReason); if (res.Success) { return(RedirectToAction("Index")); } ModelState.AddModelError("", res.Message); } return(View(music)); }
// GET: Musics/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var res = service.GetByID(id.Value); if (!res.Success) { return(Json(res.Message, JsonRequestBehavior.AllowGet)); } Music music = res.Entity; if (music == null) { return(HttpNotFound()); } MusicViewModelEntry viewModel = new MusicViewModelEntry(music); //ViewBag.ArtistID = new SelectList(db.Artists, "Id", "ContactManName", music.ArtistID); return(View(viewModel)); }
public MusicFilesFromHttpFiles SetMusicBeforeUpDate(MusicViewModelEntry music, HttpPostedFileBase WAVUpload, HttpPostedFileBase MP3Upload) { MusicFilesFromHttpFiles filesToReturn = new MusicFilesFromHttpFiles(); filesToReturn.mp3File = FileHelper. ConvertPostedFileToFile(MP3Upload, music.MP3File?.version + 1 ?? 0, music.ArtistID, music.MP3FileID); filesToReturn.wavFile = FileHelper. ConvertPostedFileToFile(WAVUpload, music.WAVFile?.version + 1 ?? 0, music.ArtistID, music.WAVFileID); music.Tags = music.TagViews? .Where(tg => tg.IsNotDeleted) .Select(tg => { var tag = new Tag(tg); tag.ID = tg.ID; return(tag); }) .ToList(); music.Copyrights = music.Copyrights?.Where(copy => !copy.IsDeleted).ToList(); music.MusicLength = new TimeSpan(0, music.Minutes, music.Seconds); return(filesToReturn); }