public JsonResult CheckMediaIdIsUsed(int id) { try { //Get device by screen Id IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>(); IPlaylistService playlistService = DependencyUtils.Resolve <IPlaylistService>(); var playlistItem = playlistItemService.Get().ToList(); var playlist = playlistService.Get().ToList(); var playlistItemVMs = new List <Models.PlaylistItemVM>(); var playlistVMs = new List <Models.PlaylistDetailVM>(); //check mediaSrcId have in playlistItem foreach (var item in playlistItem) { if (item.MediaSrcID == id) { var b = new Models.PlaylistItemVM { playlistId = item.PlaylistID, }; playlistItemVMs.Add(b); } } // if playlistItemVMs != null, get Playlist Title by playlistID if (playlistItemVMs.Count != 0) { foreach (var item in playlistItemVMs) { foreach (var itemPlaylist in playlist) { if (item.playlistId == itemPlaylist.PlaylistID) { var b = new Models.PlaylistDetailVM { Title = itemPlaylist.Title, }; playlistVMs.Add(b); } } } } return(Json(new { isUsing = playlistItemVMs.Count != 0, playlistVMlist = playlistVMs, }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { throw ex; } }
public JsonResult GetUrlAllMediaSrc() { try { IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>(); var playlistItem = playlistItemService.Get().ToList(); IMediaSrcService mediaSrcService = DependencyUtils.Resolve <IMediaSrcService>(); var mediaType = mediaSrcService.Get(playlistItem).TypeID; var mediaURL = mediaSrcService.Get(playlistItem).URL; return(Json(new { mediaURL = mediaURL, mediaType = mediaType, }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { throw ex; } }
public async System.Threading.Tasks.Task <ActionResult> Update(Models.PlaylistCRUDVM model) { if (ModelState.IsValid) { var playlist = this.playlistService.Get(model.Id); if (playlist != null) { playlist.Title = model.Title; playlist.Description = model.Description; playlist.isPublic = model.isPublic; playlist.UpdateDateTime = DateTime.Now; } await this.playlistService.UpdateAsync(playlist); IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>(); /* Remove old items of playlist*/ List <DSS.Data.Models.Entities.PlaylistItem> items = playlistItemService.Get(a => a.PlaylistID == model.Id).ToList(); foreach (var item in items) { await playlistItemService.DeleteAsync(item); } /* Add item to playlist*/ IMediaSrcService mediaSrcService = DependencyUtils.Resolve <IMediaSrcService>(); if (model.AddedElements.Length > 0) { var i = 0; foreach (var item in model.AddedElements) { var playlistItem = new Data.Models.Entities.PlaylistItem { PlaylistID = playlist.PlaylistID, MediaSrcID = item.ItemId, DisplayOrder = i++, }; var mediaSrcType = mediaSrcService.GetById(item.ItemId).MediaType.TypeID; if (mediaSrcType != 1) { //playlistItem.Duration = GetVideoDuration(mediaSrcService.GetById(item.ItemId).URL); playlistItem.Duration = 0; } else { var duration = TimeSpan.Parse(item.ItemDuration); playlistItem.Duration = Convert.ToInt32(duration.TotalSeconds); } await playlistItemService.CreateAsync(playlistItem); Session.Clear(); Session["UPDATE_RESULT"] = true; } } return(Json(new { success = true, url = "/AdvancedPlaylist/Index", }, JsonRequestBehavior.AllowGet)); } return(Json(new { success = false, }, JsonRequestBehavior.AllowGet)); }