btcpayserver/BTCPayServer/Views/Server/Services.cshtml
dstrukt 784a40e2ed
Server Settings Bootstrap/UI Tweaks (#2558)
* server > services columns cleanup

* server > services column patch

* server > files adds text-end to table action column

* server > maintenance updates column

* removes title, switches search input with title

* adds CSS change

* Update BTCPayServer/Views/Server/ListUsers.cshtml

Breakpoint improvement

Co-authored-by: d11n <mail@dennisreimann.de>

* Update BTCPayServer/wwwroot/main/site.css

Co-authored-by: d11n <mail@dennisreimann.de>

Co-authored-by: d11n <mail@dennisreimann.de>
2021-06-06 20:41:14 +09:00

156 lines
4.9 KiB
Text

@model BTCPayServer.Models.ServerViewModels.ServicesViewModel
@{
ViewData.SetActivePageAndTitle(ServerNavPages.Services, "Services");
}
<h2 class="mb-4">@ViewData["PageTitle"]</h2>
<div class="mb-5">
<h4 class="mb-3">Crypto services exposed by your server</h4>
<table class="table table-sm mt-2">
<thead>
<tr>
<th>Crypto</th>
<th>Access Type</th>
<th style="text-align: right">Actions</th>
</tr>
</thead>
<tbody>
@foreach (var s in Model.ExternalServices.Where(service => !string.IsNullOrEmpty(service.CryptoCode)))
{
<tr>
<td>@s.CryptoCode</td>
<td>
<span>@s.DisplayName</span>
@if (s.ConnectionString.IsOnion() == true ||
(s.ConnectionString.IsOnion() == false && this.Context.Request.IsOnion()))
{
<span><img style="display:inline; margin-top:-8px;" src="~/img/icons/Onion_Color.svg" height="20" asp-append-version="true" /></span>
}
</td>
<td style="text-align: right">
<a asp-action="Service" asp-route-serviceName="@s.ServiceName" asp-route-cryptoCode="@s.CryptoCode">See information</a>
</td>
</tr>
}
</tbody>
</table>
</div>
@if (Model.OtherExternalServices.Count != 0 || Model.ExternalServices.Any(service => string.IsNullOrEmpty(service.CryptoCode)))
{
<div class="mb-5">
<h4 class="mb-3">Other external services</h4>
<table class="table table-sm mt-2">
<thead>
<tr>
<th>Name</th>
<th style="text-align: right">Actions</th>
</tr>
</thead>
<tbody>
@foreach (var s in Model.ExternalServices.Where(service => string.IsNullOrEmpty(service.CryptoCode)))
{
<tr>
<td>@s.DisplayName</td>
<td style="text-align: right">
<a asp-action="Service" asp-route-serviceName="@s.ServiceName">See information</a>
</td>
</tr>
}
@foreach (var s in Model.OtherExternalServices)
{
<tr>
<td>@s.Name</td>
<td style="text-align: right">
<a href="@s.Link" target="_blank">See information</a>
</td>
</tr>
}
</tbody>
</table>
</div>
}
@if (Model.TorHttpServices.Count != 0)
{
<div class="mb-5">
<h4 class="mb-3">HTTP-based TOR hidden services</h4>
<table class="table table-sm mt-2">
<thead>
<tr>
<th>Name</th>
<th style="text-align: right">Actions</th>
</tr>
</thead>
<tbody>
@foreach (var s in Model.TorHttpServices)
{
<tr>
<td>@s.Name</td>
<td style="text-align: right">
<a href="@s.Link" target="_blank">See information</a>
</td>
</tr>
}
</tbody>
</table>
</div>
}
@if (Model.TorOtherServices.Count != 0)
{
<div class="mb-5">
<h4 class="mb-3">Other TOR hidden services</h4>
<table class="table table-sm mt-2">
<thead>
<tr>
<th>Name</th>
<th>URL</th>
</tr>
</thead>
<tbody>
@foreach (var s in Model.TorOtherServices)
{
<tr>
<td>@s.Name</td>
<td style="word-wrap: anywhere;">
<code>@s.Link</code>
</td>
</tr>
}
</tbody>
</table>
</div>
}
<div class="mb-5">
<h4 class="mb-3">External storage services</h4>
<p class="text-secondary mb-0">Integrated storage providers to store file uploads from BTCPay Server.</p>
<table class="table table-sm mt-2">
<thead>
<tr>
<th>Name</th>
<th style="text-align: right">Actions</th>
</tr>
</thead>
<tbody>
@foreach (var s in Model.ExternalStorageServices)
{
<tr>
<td>@s.Name</td>
<td style="text-align: right">
<a href="@s.Link">Edit</a>
</td>
</tr>
}
</tbody>
</table>
</div>
@section PageFootContent {
<partial name="_ValidationScriptsPartial" />
}