using System;
using System.Linq;
using MediaBrowser.Model.Plugins;
namespace Jellyfin.Plugin.AnilistSync.Configuration
{
public enum TitlePreferenceType
{
///
/// Use titles in the local metadata language.
///
Localized,
///
/// Use titles in Japanese.
///
Japanese,
///
/// Use titles in Japanese romaji.
///
JapaneseRomaji
}
///
/// Class needed to create a Plugin and configure it.
///
public class PluginConfiguration : BasePluginConfiguration
{
///
/// Initializes a new instance of the class.
///
public PluginConfiguration()
{
UserConfigs = Array.Empty();
}
///
/// Gets or sets the list of user configs.
///
public UserConfig[] UserConfigs { get; set; }
///
/// Get config by id.
///
/// The user id.
/// Stored user config.
public UserConfig? GetByGuid(Guid id)
{
return UserConfigs.FirstOrDefault(c => c.Id == id);
}
///
/// Delete user token.
///
/// User token.
public void DeleteUserToken(string userToken)
{
foreach (var config in UserConfigs)
{
if (config.UserToken == userToken)
{
config.UserToken = string.Empty;
}
}
Plugin.Instance?.SaveConfiguration();
}
}
}