using System; using System.IO; using MediaBrowser.Common.Plugins; using MediaBrowser.Model.Drawing; using MediaBrowser.Common.Configuration; using MediaBrowser.Model.Plugins; using MediaBrowser.Model.Serialization; namespace NFOGuard.Emby.Plugin { public class Plugin : BasePlugin, IHasThumbImage { private Guid _id = new Guid("A1B2C3D4-5678-9ABC-DEF0-123456789ABC"); public override string Name => "NFOGuard"; public override string Description => "Synchronizes TV episode PremiereDate to DateCreated to preserve import dates in Emby"; public override Guid Id => _id; public override string ConfigurationFileName => "nfoguard.xml"; public ImageFormat ThumbImageFormat => ImageFormat.Png; public static Plugin Instance { get; private set; } public Stream GetThumbImage() { var type = GetType(); return type.Assembly.GetManifestResourceStream(type.Namespace + ".thumb.png"); } public Plugin(IApplicationPaths applicationPaths, IXmlSerializer xmlSerializer) : base(applicationPaths, xmlSerializer) { Instance = this; } } public class PluginConfiguration : BasePluginConfiguration { public bool EnableRealTimeSync { get; set; } = true; public bool EnableScheduledTask { get; set; } = true; public bool LogVerbose { get; set; } = false; public bool LicenseValid { get; set; } = false; public string LicenseKey { get; set; } = string.Empty; public DateTime InstallDate { get; set; } = DateTime.MinValue; } }