55 lines
1.8 KiB
C#
55 lines
1.8 KiB
C#
using Disco.Data.Repository;
|
|
using Disco.Services.Plugins;
|
|
using Disco.Services.Tasks;
|
|
|
|
namespace Disco.Plugins.ADCompare
|
|
{
|
|
[Plugin(
|
|
Id = "Disco.Plugins.ADCompare",
|
|
Name = "AD Compare",
|
|
Author = "Jess Rogerson",
|
|
Url = "https://gitea.hideawaygaming.com.au/jessikitty/disco-ad-compare-plugin"
|
|
)]
|
|
public class ADComparePlugin : Plugin
|
|
{
|
|
public override void Initialize(DiscoDataContext Database)
|
|
{
|
|
// Manifest on Plugin is already PluginManifest, use .Features directly
|
|
if (Manifest.Features != null)
|
|
{
|
|
foreach (var feature in Manifest.Features)
|
|
{
|
|
using (var instance = feature.CreateInstance())
|
|
{
|
|
var deviceExt = instance as Features.DeviceUIExtension;
|
|
if (deviceExt != null)
|
|
{
|
|
deviceExt.Register();
|
|
continue;
|
|
}
|
|
|
|
var userExt = instance as Features.UserUIExtension;
|
|
if (userExt != null)
|
|
{
|
|
userExt.Register();
|
|
continue;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public override void Install(DiscoDataContext Database, ScheduledTaskStatus Status)
|
|
{
|
|
Status.UpdateStatus(0, "Installing AD Compare Plugin...");
|
|
Status.UpdateStatus(100, "Installation Complete");
|
|
}
|
|
|
|
public override void Uninstall(DiscoDataContext Database, bool UninstallData, ScheduledTaskStatus Status)
|
|
{
|
|
Status.UpdateStatus(0, "Uninstalling AD Compare Plugin...");
|
|
Status.UpdateStatus(100, "Uninstallation Complete");
|
|
}
|
|
}
|
|
}
|