void _libraryManager_ItemUpdated(object sender, ItemChangeEventArgs e) { // TODO: Need a more accurate check here to see if xbmc metadata saving is enabled. // This is probably good enough, but no guarantee var userId = _config.GetNfoConfiguration().UserId; if (string.IsNullOrWhiteSpace(userId)) { return; } if (e.UpdateReason == ItemUpdateType.ImageUpdate) { var person = e.Item as Person; if (person != null) { var items = _libraryManager.RootFolder.RecursiveChildren; items = person.GetTaggedItems(items).ToList(); foreach (var item in items) { SaveMetadataForItem(item, ItemUpdateType.MetadataEdit); } } } }
void _libraryManager_ItemUpdated(object sender, ItemChangeEventArgs e) { if (e.UpdateReason == ItemUpdateType.ImageUpdate) { var person = e.Item as Person; if (person != null) { var config = _config.GetNfoConfiguration(); if (!config.SaveImagePathsInNfo) { return; } var items = _libraryManager.RootFolder.RecursiveChildren; items = person.GetTaggedItems(items).ToList(); foreach (var item in items) { SaveMetadataForItem(item, ItemUpdateType.MetadataEdit); } } } }
void _libraryManager_ItemUpdated(object sender, ItemChangeEventArgs e) { if (e.UpdateReason >= ItemUpdateType.ImageUpdate) { var person = e.Item as Person; if (person != null) { var config = _config.GetNfoConfiguration(); if (!config.SaveImagePathsInNfo) { return; } var items = _libraryManager.GetItemList(new InternalItemsQuery { Person = person.Name }).ToList(); foreach (var item in items) { SaveMetadataForItem(item, e.UpdateReason); } } } }
void _libraryManager_ItemUpdated(object sender, ItemChangeEventArgs e) { if (e.UpdateReason == ItemUpdateType.ImageUpdate && e.Item is Person) { var person = e.Item.Name; var items = _libraryManager.RootFolder .GetRecursiveChildren(i => !i.IsFolder && i.People.Any(p => string.Equals(p.Name, person, StringComparison.OrdinalIgnoreCase))); foreach (var item in items) { SaveMetadataForItem(item, ItemUpdateType.MetadataEdit); } } }
void libraryManager_ItemAdded(object sender, ItemChangeEventArgs e) { lock (_newlyAddedItems) { _newlyAddedItems.Add(e.Item); if (NewItemTimer == null) { NewItemTimer = new Timer(NewItemTimerCallback, null, NewItemDelay, Timeout.Infinite); } else { NewItemTimer.Change(NewItemDelay, Timeout.Infinite); } } }
/// <summary> /// Handles the ItemAdded event of the libraryManager control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="ItemChangeEventArgs"/> instance containing the event data.</param> void libraryManager_ItemAdded(object sender, ItemChangeEventArgs e) { //_logger.Debug(String.Format("Emby.Kodi.SyncQueue: Item ID: {0}", e.Item.Id.ToString())); //_logger.Debug(String.Format("Emby.Kodi.SyncQueue: JsonObject: {0}", _jsonSerializer.SerializeToString(e.Item))); //_logger.Debug(String.Format("Emby.Kodi.SyncQueue: Library GetClientTypeName: {0}", e.Item.GetClientTypeName())); var type = -1; if (!FilterItem(e.Item, out type)) { return; } lock (_libraryChangedSyncLock) { if (LibraryUpdateTimer == null) { LibraryUpdateTimer = new Timer(LibraryUpdateTimerCallback, null, LibraryUpdateDuration, Timeout.Infinite); } else { LibraryUpdateTimer.Change(LibraryUpdateDuration, Timeout.Infinite); } //if (e.Item.Parent != null) //{ // var folder = new LibFolder() // { // Id = e.Item.Parent.Id, // SyncApiModified = (long)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc)).TotalSeconds) // }; // _foldersAddedTo.Add(folder); //} var item = new LibItem() { Id = e.Item.Id, SyncApiModified = (long)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc)).TotalSeconds), ItemType = type, }; _logger.Debug(string.Format("Emby.Kodi.SyncQueue: ItemAdded added for DB Saving {0}", e.Item.Id)); _itemsAdded.Add(item); } }
/// <summary> /// Handles the ItemAdded event of the LibraryManager control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="ItemChangeEventArgs"/> instance containing the event data.</param> void LibraryManager_ItemAdded(object sender, ItemChangeEventArgs e) { if (e.Item.GetParent() is AggregateFolder) { StartWatching(e.Item); } }
/// <summary> /// Handles the ItemRemoved event of the LibraryManager control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="ItemChangeEventArgs"/> instance containing the event data.</param> void LibraryManager_ItemRemoved(object sender, ItemChangeEventArgs e) { if (e.Item.GetParent() is AggregateFolder) { StopWatchingPath(e.Item.Path); } }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void LibraryManagerItemAdded(object sender, ItemChangeEventArgs e) { // Don't do anything if it's not a supported media type if (!(e.Item is Movie) && !(e.Item is Episode) && !(e.Item is Series)) return; if (e.Item.LocationType == LocationType.Virtual) return; _libraryManagerEventsHelper.QueueItem(e.Item, EventType.Add); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void LibraryManagerItemRemoved(object sender, ItemChangeEventArgs e) { if (!(e.Item is Movie) && !(e.Item is Episode) && !(e.Item is Series)) return; if (e.Item.LocationType == LocationType.Virtual) return; _libraryManagerEventsHelper.QueueItem(e.Item, EventType.Remove); }
void _libraryManager_ItemAdded(object sender, ItemChangeEventArgs e) { if (e.Item.SourceType != SourceType.Library) { return; } CreateLogEntry(new ActivityLogEntry { Name = string.Format(_localization.GetLocalizedString("ItemAddedWithName"), Notifications.Notifications.GetItemName(e.Item)), Type = "ItemAdded", ItemId = e.Item.Id.ToString("N") }); }
void _libraryManager_ItemAdded(object sender, ItemChangeEventArgs e) { if (e.Item.LocationType == LocationType.FileSystem && !e.Item.IsFolder) { lock (_libraryChangedSyncLock) { if (LibraryUpdateTimer == null) { LibraryUpdateTimer = new Timer(LibraryUpdateTimerCallback, null, 5000, Timeout.Infinite); } else { LibraryUpdateTimer.Change(5000, Timeout.Infinite); } _itemsAdded.Add(e.Item); } } }
void _libraryManager_ItemRemoved(object sender, ItemChangeEventArgs e) { if (e.Item is LiveTvProgram || e.Item is IChannelItem) { return; } CreateLogEntry(new ActivityLogEntry { Name = string.Format(_localization.GetLocalizedString("ItemRemovedWithName"), Notifications.Notifications.GetItemName(e.Item)), Type = "ItemRemoved" }); }
private void LibraryManagerItemAdded(object sender, ItemChangeEventArgs e) { Plugin.Logger.Debug("Notifications - Added"); if (Plugin.Instance.Configuration.Notifications.Libray) { if (e.Item.LocationType == LocationType.Virtual) return; _pusher.Push(e.Item + " has been added to your media server.", 0); } }
void _libraryManager_ItemAdded(object sender, ItemChangeEventArgs e) { if (!FilterItem(e.Item)) { return; } lock (_libraryChangedSyncLock) { if (LibraryUpdateTimer == null) { LibraryUpdateTimer = new Timer(LibraryUpdateTimerCallback, null, 5000, Timeout.Infinite); } else { LibraryUpdateTimer.Change(5000, Timeout.Infinite); } _itemsAdded.Add(e.Item); } }