public bool AddVideos(Video video) { video.User = this; MyVideos.Add(video); return(true); }
public async Task <IActionResult> AddToMyVideos([FromBody] AddToMyVideosVM vm) { if (vm.VideoPostId <= 0) { return(NotFound()); } var user = await _userManager.FindByIdAsync(User.Identity.Name); if (user == null) { return(NotFound()); } var duplicate = _mvRepository .GetSingle(mv => mv.VideoPostId == vm.VideoPostId && mv.ApplicationUserId.Equals(user.Id)); if (duplicate != null) { return(BadRequest("duplicate")); } MyVideos myVideos = new MyVideos { ApplicationUserId = user.Id, VideoPostId = vm.VideoPostId }; await _mvRepository.AddAsync(myVideos); await _mvRepository.CommitAsync(); return(CreatedAtRoute("GetMyVideoById", new { controller = "CardDetail", id = myVideos.MyVideosId }, myVideos)); }
private void StartSync() { SetSyncControlProperties(true); var syncThread = new Thread(() => { if (TraktSettings.AccountStatus != ConnectionState.Connected) { // stop sync SetSyncControlProperties(false); TraktSettings.AccountStatus = ConnectionState.Pending; return; } TraktLogger.Info("Library and Playback Sync started for all enabled plugins"); // get data from online and store in cache so its readily available for plugin sync // data will also be used in user activity feed on the dashboard if (!TraktCache.RefreshData()) { return; } foreach (var item in clbPlugins.CheckedItems) { try { switch (item.ToString()) { case "Moving Pictures": var movingPictures = new MovingPictures(TraktSettings.MovingPictures); movingPictures.SyncLibrary(); movingPictures.SyncProgress(); break; case "MP-TVSeries": var tvSeries = new TVSeries(TraktSettings.TVSeries); tvSeries.SyncLibrary(); tvSeries.SyncProgress(); break; case "My Videos": var myVideos = new MyVideos(TraktSettings.MyVideos); myVideos.SyncLibrary(); myVideos.SyncProgress(); break; case "My Films": var myFilms = new MyFilmsHandler(TraktSettings.MyFilms); myFilms.SyncLibrary(); myFilms.SyncProgress(); break; } } catch (Exception ex) { TraktLogger.Error("Error synchronising library, Plugin = '{0}', Error = '{1}'", item.ToString(), ex.Message); continue; } } // save user activity cache TraktCache.Save(); TraktLogger.Info("Library and Playback Sync completed for all enabled plugins"); SetSyncControlProperties(false); if (SilentMode || AutoCloseAfterSync) { CloseConfig(); } }) { Name = "Sync", IsBackground = true }; syncThread.Start(); }