diff --git a/src/main/scala/gitbucket/core/controller/SystemSettingsController.scala b/src/main/scala/gitbucket/core/controller/SystemSettingsController.scala index 716cb16ee..dd37a34ab 100644 --- a/src/main/scala/gitbucket/core/controller/SystemSettingsController.scala +++ b/src/main/scala/gitbucket/core/controller/SystemSettingsController.scala @@ -13,6 +13,7 @@ import gitbucket.core.util.ControlUtil._ import gitbucket.core.util.Directory._ import gitbucket.core.util.StringUtil._ import io.github.gitbucket.scalatra.forms._ +import io.github.gitbucket.solidbase.manager.JDBCVersionManager import org.apache.commons.io.{FileUtils, IOUtils} import org.apache.commons.mail.{DefaultAuthenticator, HtmlEmail} import org.scalatra.i18n.Messages @@ -175,7 +176,11 @@ trait SystemSettingsControllerBase extends AccountManagementControllerBase { }) get("/admin/plugins")(adminOnly { - html.plugins(PluginRegistry().getPlugins()) + val manager = new JDBCVersionManager(request2Session(request).conn) + val plugins = PluginRegistry().getPlugins().map { plugin => + (plugin, manager.getCurrentVersion(plugin.pluginId)) + } + html.plugins(plugins) }) diff --git a/src/main/scala/gitbucket/core/plugin/PluginRegistory.scala b/src/main/scala/gitbucket/core/plugin/PluginRegistory.scala index 56e58a0e9..0c438b5a1 100644 --- a/src/main/scala/gitbucket/core/plugin/PluginRegistory.scala +++ b/src/main/scala/gitbucket/core/plugin/PluginRegistory.scala @@ -176,11 +176,11 @@ object PluginRegistry { // Initialize plugin.initialize(instance, context, settings) instance.addPlugin(PluginInfo( - pluginId = plugin.pluginId, - pluginName = plugin.pluginName, - version = plugin.versions.last.getVersion, - description = plugin.description, - pluginClass = plugin + pluginId = plugin.pluginId, + pluginName = plugin.pluginName, + pluginVersion = plugin.versions.last.getVersion, + description = plugin.description, + pluginClass = plugin )) } catch { @@ -212,7 +212,7 @@ case class Link(id: String, label: String, path: String, icon: Option[String] = case class PluginInfo( pluginId: String, pluginName: String, - version: String, + pluginVersion: String, description: String, pluginClass: Plugin ) diff --git a/src/main/twirl/gitbucket/core/admin/plugins.scala.html b/src/main/twirl/gitbucket/core/admin/plugins.scala.html index 1a6542dfe..81ae1f9cf 100644 --- a/src/main/twirl/gitbucket/core/admin/plugins.scala.html +++ b/src/main/twirl/gitbucket/core/admin/plugins.scala.html @@ -1,16 +1,16 @@ -@(plugins: List[gitbucket.core.plugin.PluginInfo])(implicit context: gitbucket.core.controller.Context) +@(plugins: List[(gitbucket.core.plugin.PluginInfo, String)])(implicit context: gitbucket.core.controller.Context) @gitbucket.core.html.main("Plugins"){ @gitbucket.core.admin.html.menu("plugins") {