2018-07-22 11:38:14 +02:00
|
|
|
@model BTCPayServer.Models.ServerViewModels.ServicesViewModel
|
|
|
|
@{
|
|
|
|
ViewData.SetActivePageAndTitle(ServerNavPages.Services);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2019-10-31 07:19:38 +01:00
|
|
|
<partial name="_StatusMessage" />
|
2018-07-22 11:38:14 +02:00
|
|
|
<div class="row">
|
2020-07-09 17:22:28 +02:00
|
|
|
<div class="col-lg-9 col-xl-8">
|
2018-07-22 11:38:14 +02:00
|
|
|
<div asp-validation-summary="All" class="text-danger"></div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2020-07-09 17:22:28 +02:00
|
|
|
<div class="row mb-5">
|
|
|
|
<div class="col-lg-9 col-xl-8">
|
|
|
|
<h4>Crypto services exposed by your server</h4>
|
2018-08-13 08:10:59 +02:00
|
|
|
|
2020-07-09 17:22:28 +02:00
|
|
|
<table class="table table-sm mt-2">
|
|
|
|
<thead>
|
2019-04-22 09:41:20 +02:00
|
|
|
<tr>
|
|
|
|
<th>Crypto</th>
|
|
|
|
<th>Access Type</th>
|
|
|
|
<th style="text-align: right">Actions</th>
|
|
|
|
</tr>
|
2020-07-09 17:22:28 +02:00
|
|
|
</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>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
@if (Model.OtherExternalServices.Count != 0 || Model.ExternalServices.Any(service => string.IsNullOrEmpty(service.CryptoCode)))
|
|
|
|
{
|
|
|
|
<div class="row mb-5">
|
|
|
|
<div class="col-lg-9 col-xl-8">
|
|
|
|
<h4>Other external services</h4>
|
|
|
|
|
|
|
|
<table class="table table-sm mt-2">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th>Name</th>
|
|
|
|
<th style="text-align: right">Actions</th>
|
|
|
|
</tr>
|
2018-08-13 08:10:59 +02:00
|
|
|
</thead>
|
|
|
|
<tbody>
|
2020-07-09 17:22:28 +02:00
|
|
|
@foreach (var s in Model.ExternalServices.Where(service => string.IsNullOrEmpty(service.CryptoCode)))
|
2019-04-22 09:41:20 +02:00
|
|
|
{
|
|
|
|
<tr>
|
2020-07-09 17:22:28 +02:00
|
|
|
<td>@s.DisplayName</td>
|
|
|
|
<td style="text-align: right">
|
|
|
|
<a asp-action="Service" asp-route-serviceName="@s.ServiceName">See information</a>
|
2019-11-07 06:33:10 +01:00
|
|
|
</td>
|
2020-07-09 17:22:28 +02:00
|
|
|
</tr>
|
|
|
|
}
|
|
|
|
@foreach (var s in Model.OtherExternalServices)
|
|
|
|
{
|
|
|
|
<tr>
|
|
|
|
<td>@s.Name</td>
|
2019-04-22 09:41:20 +02:00
|
|
|
<td style="text-align: right">
|
2020-07-09 17:22:28 +02:00
|
|
|
<a href="@s.Link" target="_blank">See information</a>
|
2019-04-22 09:41:20 +02:00
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
}
|
2018-12-07 10:42:39 +01:00
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</div>
|
|
|
|
</div>
|
2019-03-17 04:57:18 +01:00
|
|
|
}
|
|
|
|
|
2019-03-18 08:45:46 +01:00
|
|
|
@if (Model.TorHttpServices.Count != 0)
|
2019-03-17 04:57:18 +01:00
|
|
|
{
|
2020-07-09 17:22:28 +02:00
|
|
|
<div class="row mb-5">
|
|
|
|
<div class="col-lg-9 col-xl-8">
|
|
|
|
<h4>HTTP-based TOR hidden services</h4>
|
|
|
|
|
|
|
|
<table class="table table-sm mt-2">
|
|
|
|
<thead>
|
2019-04-22 09:41:20 +02:00
|
|
|
<tr>
|
|
|
|
<th>Name</th>
|
|
|
|
<th style="text-align: right">Actions</th>
|
|
|
|
</tr>
|
2020-07-09 17:22:28 +02:00
|
|
|
</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>
|
2018-07-22 11:38:14 +02:00
|
|
|
</div>
|
2018-08-13 08:10:59 +02:00
|
|
|
</div>
|
2018-12-07 10:42:39 +01:00
|
|
|
}
|
2018-07-22 11:38:14 +02:00
|
|
|
|
2019-03-18 08:45:46 +01:00
|
|
|
@if (Model.TorOtherServices.Count != 0)
|
|
|
|
{
|
2020-07-09 17:22:28 +02:00
|
|
|
<div class="row mb-5">
|
|
|
|
<div class="col-lg-9 col-xl-8">
|
2019-03-18 08:45:46 +01:00
|
|
|
<h4>Other TOR hidden services</h4>
|
2020-07-09 17:22:28 +02:00
|
|
|
|
|
|
|
<table class="table table-sm mt-2">
|
|
|
|
<thead>
|
2019-04-22 09:41:20 +02:00
|
|
|
<tr>
|
|
|
|
<th>Name</th>
|
2020-07-09 17:22:28 +02:00
|
|
|
<th>URL</th>
|
2019-04-22 09:41:20 +02:00
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
2020-07-09 17:22:28 +02:00
|
|
|
@foreach (var s in Model.TorOtherServices)
|
2019-04-22 09:41:20 +02:00
|
|
|
{
|
|
|
|
<tr>
|
|
|
|
<td>@s.Name</td>
|
2020-07-09 17:22:28 +02:00
|
|
|
<td style="word-wrap: anywhere;">
|
|
|
|
<code>@s.Link</code>
|
2019-04-22 09:41:20 +02:00
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
}
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</div>
|
|
|
|
</div>
|
2020-07-09 17:22:28 +02:00
|
|
|
}
|
|
|
|
<div class="row mb-5">
|
|
|
|
<div class="col-lg-9 col-xl-8">
|
|
|
|
<h4>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>
|
2019-04-22 09:41:20 +02:00
|
|
|
</div>
|
2019-03-18 08:45:46 +01:00
|
|
|
|
2018-07-22 11:38:14 +02:00
|
|
|
@section Scripts {
|
|
|
|
@await Html.PartialAsync("_ValidationScriptsPartial")
|
|
|
|
}
|