Improvements for disabled plugins status indicators (#3168)

* Improvements for disabled plugins status indicators

close #3150

* Improve spacing

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
This commit is contained in:
Umar Bolatov
2021-12-07 20:47:35 -08:00
committed by GitHub
parent fd75008499
commit cf772bb9e0

View File

@@ -128,8 +128,8 @@
<div class="card h-100">
<div class="card-body">
<h4 class="card-title d-inline-block" title="@plugin.Identifier" data-bs-toggle="tooltip">@plugin.Name</h4>
<div class="d-flex flex-wrap align-items-center mb-3">
<h5 class="card-subtitle text-muted d-flex align-items-center me-3">
<div class="d-flex flex-wrap align-items-center mb-2">
<h5 class="text-muted d-flex align-items-center mt-1">
@plugin.Version
@if (plugin.SystemPlugin)
{
@@ -160,7 +160,7 @@
<ul class="list-group list-group-flush">
@foreach (var dependency in plugin.Dependencies)
{
<li class="list-group-item px-0">
<li class="list-group-item p-2">
@dependency
@if (!DependencyMet(dependency))
{
@@ -182,7 +182,7 @@
<ul class="list-group list-group-flush">
@foreach (var dependency in matchedAvailable.Dependencies)
{
<li class="list-group-item px-0">
<li class="list-group-item p-2">
@dependency
@if (!DependencyMet(dependency))
{
@@ -242,14 +242,19 @@
@foreach (var plugin in availableAndNotInstalled)
{
var recommended = BTCPayServerOptions.RecommendedPlugins.Contains(plugin.Identifier.ToLowerInvariant());
var disabled = Model.Disabled?.Contains(plugin.Identifier) ?? false;
<div class="col col-12 col-lg-6 mb-4">
<div class="card h-100">
<div class="card-body">
<h4 class="card-title d-inline-block" data-bs-toggle="tooltip" title="@plugin.Identifier">@plugin.Name</h4>
<h5 class="card-subtitle mb-3 text-muted d-flex align-items-center">
<h5 class="text-muted d-flex align-items-center mt-1">
@plugin.Version
@if (recommended)
@if (disabled)
{
<div class="badge bg-light ms-2">Disabled</div>
}
else if (recommended)
{
<div class="badge bg-light ms-2 text-nowrap" data-bs-toggle="tooltip" title="This plugin has been recommended to be installed by your deployment method.">Recommended <span class="fa fa-question-circle-o text-secondary"></span></div>
}
@@ -261,7 +266,7 @@
<ul class="list-group list-group-flush">
@foreach (var dependency in plugin.Dependencies)
{
<li class="list-group-item px-0">
<li class="list-group-item p-2">
@dependency
@if (!DependencyMet(dependency))
{
@@ -274,19 +279,28 @@
</div>
@{
var pending = Model.Commands.Any(tuple => tuple.plugin.Equals(plugin.Identifier, StringComparison.InvariantCultureIgnoreCase));
var pluginCommands = Model.Commands.GroupBy(tuple => tuple.plugin.Equals(plugin.Identifier, StringComparison.InvariantCultureIgnoreCase));
}
<div class="card-footer border-0 pb-3">
@if (pending)
{
<form asp-action="CancelPluginCommands" asp-route-plugin="@plugin.Identifier">
<button type="submit" class="btn btn-outline-secondary">Cancel pending install</button>
</form>
@foreach (var command in pluginCommands)
{
<form asp-action="CancelPluginCommands" asp-route-plugin="@plugin.Identifier">
<button type="submit" class="btn btn-outline-secondary">Cancel pending @command.Last().command</button>
</form>
}
}
else if (DependenciesMet(plugin.Dependencies))
{
<form asp-action="InstallPlugin" asp-route-plugin="@plugin.Identifier">
<button type="submit" class="btn btn-primary">Install</button>
</form>
@* Don't show the "Install" button if plugin has been disabled *@
@if (!disabled)
{
<form asp-action="InstallPlugin" asp-route-plugin="@plugin.Identifier">
<button type="submit" class="btn btn-primary">Install</button>
</form>
}
}
else
{
@@ -338,7 +352,7 @@
<ul class="list-group list-group-flush">
@foreach (var extComm in Model.Commands.GroupBy(tuple => tuple.plugin))
{
<li class="list-group-item px-0">
<li class="list-group-item p-2">
<div class="d-flex flex-wrap align-items-center justify-content-between">
<span class="my-2 me-3">@extComm.Key</span>
<form asp-action="CancelPluginCommands" asp-route-plugin="@extComm.Key">