Redesigned the DiscordBotCore by splitting it into multiple projects. Created a WebUI and preparing to remove the DiscordBot application

This commit is contained in:
2025-04-04 22:07:30 +03:00
parent 62ba5ec63d
commit a4afb28f36
2290 changed files with 76694 additions and 17052 deletions

View File

@@ -0,0 +1,38 @@
using DiscordBotCore.PluginManagement;
using Microsoft.AspNetCore.Mvc;
using WebUI.Models;
using ILogger = DiscordBotCore.Logging.ILogger;
namespace WebUI.Controllers;
public class PluginsController : Controller
{
private readonly ILogger _logger;
private readonly IPluginManager _pluginManager;
public PluginsController(ILogger logger, IPluginManager pluginManager)
{
_logger = logger;
_pluginManager = pluginManager;
}
[HttpGet]
public async Task<IActionResult> OnlinePlugins()
{
_logger.Log("Getting plugins page", this);
var plugins = await _pluginManager.GetPluginsList();
_logger.Log($"{plugins.Count} Plugins loaded", this);
List<OnlinePluginViewModel> pluginViewModels = new List<OnlinePluginViewModel>();
foreach (var plugin in plugins)
{
OnlinePluginViewModel pluginViewModel = new OnlinePluginViewModel();
pluginViewModel.Name = plugin.PluginName;
pluginViewModel.Description = plugin.PluginDescription;
pluginViewModel.Author = plugin.PluginAuthor;
pluginViewModel.Version = plugin.LatestVersion;
pluginViewModel.DownloadUrl = plugin.PluginLink;
}
return View(pluginViewModels);
}
}