2020-08-22 21:56:24 +02:00
|
|
|
#pragma warning disable CS1591
|
|
|
|
|
2019-01-13 21:01:16 +01:00
|
|
|
using System;
|
2018-12-28 00:27:57 +01:00
|
|
|
using System.Linq;
|
2021-12-20 13:31:07 +01:00
|
|
|
using Jellyfin.Extensions;
|
2018-12-28 00:27:57 +01: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 21:50:43 +01:00
|
|
|
throw new ArgumentNullException(nameof(name));
|
2018-12-28 00:27:57 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
var current = item.Tags;
|
|
|
|
|
2021-12-20 13:31:07 +01:00
|
|
|
if (!current.Contains(name, StringComparison.OrdinalIgnoreCase))
|
2018-12-28 00:27:57 +01:00
|
|
|
{
|
|
|
|
if (current.Length == 0)
|
|
|
|
{
|
|
|
|
item.Tags = new[] { name };
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2019-01-13 20:25:32 +01:00
|
|
|
item.Tags = current.Concat(new[] { name }).ToArray();
|
2018-12-28 00:27:57 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|