Beispiel #1
0
 public static void AddPlaylistItemInsertAction(IPlaylistItemService dragDropControl, PlaylistItemControl btn, int index)
 {
     if (UndoService.CandAddAction)
     {
         UndoService.AddAction(new PlaylistItemInsertAction(dragDropControl, btn, index));
     }
 }
        // GET: Playlist/Detail/:id
        public ActionResult Detail(int id)
        {
            IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();
            IMediaSrcService     mediaSrcService     = DependencyUtils.Resolve <IMediaSrcService>();
            var playlistItems   = playlistItemService.GetMediaSrcByPlaylistId(id);
            var playlistItemVMs = new List <Models.PlaylistItemVM>();

            if (playlistItems != null)
            {
                foreach (var item in playlistItems)
                {
                    var p = new Models.PlaylistItemVM
                    {
                        playlistId     = item.PlaylistID,
                        mediaSrcId     = item.MediaSrcID,
                        displayOrder   = item.DisplayOrder,
                        duration       = item.Duration,
                        playlistItemId = item.PlaylistItemID,
                    };
                    var mediaSrc = mediaSrcService.GetById(item.MediaSrcID);
                    if (mediaSrc != null)
                    {
                        p.mediaSrcTitle = mediaSrc.Title;
                        p.URL           = mediaSrc.URL;
                        p.mediaType     = mediaSrc.TypeID;
                    }
                    playlistItemVMs.Add(p);
                }
            }
            ViewBag.playlistItemList = playlistItemVMs;
            return(View("Detail"));
        }
        //ToanTXSE
        //Get playlist List by location ID
        public static List <Models.PlaylistDetailVM> GetPlaylistIdByBrandIdAndStatus()
        {
            IPlaylistService     playlistService     = DependencyUtils.Resolve <IPlaylistService>();
            IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();
            IBrandService        brandService        = DependencyUtils.Resolve <IBrandService>();
            var mapper           = DependencyUtils.Resolve <IMapper>();
            var user             = Helper.GetCurrentUser();
            var playlistList     = playlistService.GetPlaylistIdByBrandId(user.BrandID);
            var playlistDetailVM = new List <Models.PlaylistDetailVM>();

            foreach (var item in playlistList)
            {
                if (item.isPublic == true)
                {
                    var m = new Models.PlaylistDetailVM
                    {
                        Title        = item.Title,
                        Description  = item.Description,
                        Id           = item.PlaylistID,
                        isPublic     = (bool)item.isPublic,
                        Duration     = playlistItemService.GetTotalDuration(item.PlaylistID),
                        VisualTypeID = item.VisualTypeID ?? 1,
                    };
                    playlistDetailVM.Add(m);
                }
            }
            //playlistDetailVM = playlistList.Select(mapper.Map<Playlist, Models.PlaylistDetailVM>).ToList();
            return(playlistDetailVM);
        }
Beispiel #4
0
 public static void AddPlaylistItemRemoveAtAction(IPlaylistItemService dragDropControl, ProWrite.UI.Controls.Playlist.PlaylistItemControl btn, int index)
 {
     if (UndoService.CandAddAction)
     {
         UndoService.AddAction(new PlaylistItemRemoveAtAction(dragDropControl, btn, index));
     }
 }
Beispiel #5
0
 public PlaylistItemRemoveAtAction(IPlaylistItemService dragDropControl, PlaylistItemControl btn, int index)
 {
     this._dragDropControl = dragDropControl;
     this._btn             = btn;
     this._index           = index;
     Name = "Delete message from playlist";
 }
Beispiel #6
0
 public static void AddPlaylistItemMoveAction(IPlaylistItemService dragDropControl, int sourceIndex, int destIndex)
 {
     if (UndoService.CandAddAction)
     {
         UndoService.AddAction(new PlaylistItemMoveAction(dragDropControl, sourceIndex, destIndex));
     }
 }
Beispiel #7
0
 public PlaylistItemMoveAction(IPlaylistItemService pDragDropControl, int sourceIndex, int destIndex)
 {
     this._dragDropControl = pDragDropControl;
     this._sourceIndex     = sourceIndex;
     this._destIndex       = destIndex;
     Name = "Move message in playlist";
 }
Beispiel #8
0
 public PlaylistItemInsertAction(IPlaylistItemService dragDropControl, PlaylistItemControl btn, int index)
 {
     this._dragDropControl = dragDropControl;
     this._btn             = btn;
     this._index           = index;
     Name = "Insert Message to playlist";
 }
        public JsonResult LoadPlaylistItemList(int playlistId)
        {
            IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();
            IPlaylistService     playlistService     = DependencyUtils.Resolve <IPlaylistService>();
            var playlistItems    = playlistItemService.GetPlaylistItemByPlaylistId(playlistId).OrderBy(a => a.DisplayOrder);
            var playlistItemList = new List <DSS.Models.PlaylistItemScenarioVM>();

            if (playlistItems != null)
            {
                foreach (var item in playlistItems)
                {
                    var p = new DSS.Models.PlaylistItemScenarioVM
                    {
                        mediaSrcId   = item.MediaSrcID,
                        mediaType    = item.MediaSrc.TypeID,
                        URL          = item.MediaSrc.URL,
                        duration     = item.Duration,
                        displayOrder = item.DisplayOrder,
                    };
                    playlistItemList.Add(p);
                }
            }
            return(Json(new
            {
                PlaylistItemList = playlistItemList,
            }, JsonRequestBehavior.AllowGet));
        }
        public async System.Threading.Tasks.Task <ActionResult> Add(Models.PlaylistCRUDVM model)
        {
            if (ModelState.IsValid)
            {
                var user     = Helper.GetCurrentUser();
                var playlist = new Data.Models.Entities.Playlist
                {
                    Title          = model.Title,
                    Description    = model.Description,
                    BrandID        = user.BrandID,
                    isPublic       = model.isPublic,
                    VisualTypeID   = model.VisualTypeID,
                    UpdateDateTime = DateTime.Now,
                };
                await this.playlistService.CreateAsync(playlist);

                /* Add item to playlist*/
                IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();
                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["ADD_RESULT"] = true;
                    }
                }
                return(Json(new
                {
                    success = true,
                    url = "/Playlist/Index",
                }, JsonRequestBehavior.AllowGet));
            }
            return(Json(new
            {
                success = false,
            }, JsonRequestBehavior.AllowGet));
        }
        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;
                }
                await this.playlistService.UpdateAsync(playlist);

                /* Add item to playlist*/
                IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();
                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);
                    }
                }
                return(Json(new
                {
                    success = true,
                    url = "/Playlist/Index",
                }, JsonRequestBehavior.AllowGet));
            }
            return(Json(new
            {
                success = false,
            }, JsonRequestBehavior.AllowGet));
        }
 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;
     }
 }
        // GET: Playlist/Delete/:id
        public ActionResult Delete(int id)
        {
            IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();
            var user         = Helper.GetCurrentUser();
            var playlist     = this.playlistService.Get(id);
            var playlistItem = playlistItemService.GetPlaylistItemByPlaylistId(id);

            if (playlistItem != null && playlist != null && playlist.BrandID == user.BrandID)
            {
                foreach (var i in playlistItem)
                {
                    playlistItemService.Delete(i);
                }
                this.playlistService.Delete(playlist);
            }
            return(this.RedirectToAction("Index"));
        }
        //TrinhNNP
        //Get media Src List by playlist ID
        public static List <Models.PlaylistItemVM> GetMediaSrcListByPlaylistId(int playlistId)
        {
            IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();
            IMediaSrcService     mediaSrcService     = DependencyUtils.Resolve <IMediaSrcService>();
            var itemList      = new List <Models.PlaylistItemVM>();
            var playlistItems = playlistItemService.GetMediaSrcByPlaylistId(playlistId);

            foreach (var item in playlistItems)
            {
                var p    = new Models.PlaylistItemVM();
                var pObj = mediaSrcService.GetById(item.MediaSrcID);
                p.mediaSrcTitle = pObj.Title;
                p.mediaSrcId    = pObj.MediaSrcID;
                p.URL           = pObj.URL;
                itemList.Add(p);
            }
            return(itemList);
        }
 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;
     }
 }
        //Update Playlist Item
        public async System.Threading.Tasks.Task <ActionResult> UpdateDetail(int[] playlistItemIds)
        {
            IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();

            if (playlistItemIds.Length > 0)
            {
                var i = 0;
                foreach (var item in playlistItemIds)
                {
                    var playlistItem = playlistItemService.GetPlaylistItemById(item);
                    if (playlistItem != null)
                    {
                        playlistItem.DisplayOrder = i++;
                        await playlistItemService.UpdateAsync(playlistItem);
                    }
                }
                return(this.RedirectToAction("Index"));
            }
            return(View());
        }
Beispiel #17
0
        public JsonResult LoadPlaylistItemVMs(int playlistId)
        {
            IPlaylistItemService playlistItemService = DependencyUtils.Resolve <IPlaylistItemService>();
            IPlaylistService     playlistService     = DependencyUtils.Resolve <IPlaylistService>();
            var playlistItems   = playlistItemService.GetPlaylistItemByPlaylistId(playlistId);
            var playlistItemVMs = new List <DSS.Models.PlaylistItemUpdateVM>();

            if (playlistItems != null)
            {
                foreach (var item in playlistItems)
                {
                    var playlistItem = new Models.PlaylistItemUpdateVM
                    {
                        mediaSrcId = item.MediaSrcID,
                        duration   = TimeSpan.FromSeconds(item.Duration).ToString(),
                    };
                    playlistItemVMs.Add(playlistItem);
                }
            }
            return(Json(new
            {
                PlaylistItemVMs = playlistItemVMs,
            }, JsonRequestBehavior.AllowGet));
        }
 public HomePageService(IPlaylistItemService playlistItemService)
 {
     _playlistItemService = playlistItemService;
 }
Beispiel #19
0
 public PlaylistController(IPlaylistItemService playlistItemService)
 {
     _playlistItemService = playlistItemService;
     _contentService      = Services.ContentService;
 }
Beispiel #20
0
 public PlaylistItemController(IPlaylistItemService playlistItemService)
 {
     _playlistItemService = playlistItemService;
 }