2020-08-22 19:56:24 +00:00
|
|
|
#pragma warning disable CS1591
|
|
|
|
|
2019-01-13 20:01:16 +00:00
|
|
|
using System;
|
2018-12-27 23:27:57 +00:00
|
|
|
using System.Linq;
|
2021-12-20 12:31:07 +00:00
|
|
|
using Jellyfin.Extensions;
|
2018-12-27 23:27:57 +00:00
|
|
|
|
|
|
|
namespace MediaBrowser.Controller.Entities
|
|
|
|
{
|
|
|
|
public static class TagExtensions
|
|
|
|
{
|
|
|
|
public static void AddTag(this BaseItem item, string name)
|
|
|
|
{
|
|
|
|
if (string.IsNullOrWhiteSpace(name))
|
|
|
|
{
|
2019-01-06 20:50:43 +00:00
|
|
|
throw new ArgumentNullException(nameof(name));
|
2018-12-27 23:27:57 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
var current = item.Tags;
|
|
|
|
|
2021-12-20 12:31:07 +00:00
|
|
|
if (!current.Contains(name, StringComparison.OrdinalIgnoreCase))
|
2018-12-27 23:27:57 +00:00
|
|
|
{
|
|
|
|
if (current.Length == 0)
|
|
|
|
{
|
2024-04-30 19:32:59 +00:00
|
|
|
item.Tags = [name];
|
2018-12-27 23:27:57 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2024-04-30 19:32:59 +00:00
|
|
|
item.Tags = [..current, name];
|
2018-12-27 23:27:57 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|