using System; using System.Collections.Generic; using System.Globalization; using Jellyfin.Plugin.MovieNight.Configuration; using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Plugins; using MediaBrowser.Model.Plugins; using MediaBrowser.Model.Serialization; namespace Jellyfin.Plugin.MovieNight; /// /// MovieNight Jellyfin plugin. /// public class Plugin : BasePlugin, IHasWebPages { /// /// Initializes a new instance of the class. /// /// Application paths. /// XML serializer. public Plugin(IApplicationPaths applicationPaths, IXmlSerializer xmlSerializer) : base(applicationPaths, xmlSerializer) { Instance = this; } /// public override string Name => "MovieNight"; /// public override Guid Id => Guid.Parse("42c72919-d6ff-4f62-bb8c-0fac39efafdb"); /// public override string Description => "Bridges Jellyfin playback and sync signals to the MovieNight backend."; /// /// Gets the current plugin instance. /// public static Plugin? Instance { get; private set; } /// public IEnumerable GetPages() { return [ new PluginPageInfo { Name = Name, EmbeddedResourcePath = string.Format( CultureInfo.InvariantCulture, "{0}.Configuration.configPage.html", GetType().Namespace) }, new PluginPageInfo { Name = Name + ".js", EmbeddedResourcePath = string.Format( CultureInfo.InvariantCulture, "{0}.Configuration.config.js", GetType().Namespace) }, new PluginPageInfo { Name = Name + ".ui.js", EmbeddedResourcePath = string.Format( CultureInfo.InvariantCulture, "{0}.Configuration.ui.js", GetType().Namespace) } ]; } }