diff --git a/BTCPayServer/Views/Shared/Bitcoin/ViewBitcoinLikePaymentData.cshtml b/BTCPayServer/Views/Shared/Bitcoin/ViewBitcoinLikePaymentData.cshtml index 06b40dc30..78700c0a4 100644 --- a/BTCPayServer/Views/Shared/Bitcoin/ViewBitcoinLikePaymentData.cshtml +++ b/BTCPayServer/Views/Shared/Bitcoin/ViewBitcoinLikePaymentData.cshtml @@ -49,49 +49,50 @@ @if (onchainPayments.Any()) { var hasNetworkFee = onchainPayments.Sum(a => a.NetworkFee) > 0; -

On-Chain payments

- +
On-Chain Payments
+
- - - - - - @if (hasNetworkFee) - { - - } - - - - - - @foreach (var payment in onchainPayments) - { - - - - - + + + + + @if (hasNetworkFee) { - - } - + + } + + - } + + + @foreach (var payment in onchainPayments) + { + + + + + + @if (hasNetworkFee) + { + + } + + + + }
CryptoIndexDeposit addressAmount - Network Fee - - - - Transaction IdConfirmations
@payment.Crypto@(payment.CryptoPaymentData.KeyPath?.ToString()?? "Unknown")@payment.DepositAddress@payment.CryptoPaymentData.GetValue() @Safe.Raw(payment.AdditionalInformation is string i ? $"
({i})" : string.Empty)
CryptoIndexDeposit addressAmount@payment.NetworkFee - + Network Fee + + - - - @payment.ConfirmationsTransaction IdConfirmations
@payment.Crypto@(payment.CryptoPaymentData.KeyPath?.ToString()?? "Unknown")@payment.DepositAddress@payment.CryptoPaymentData.GetValue() @Safe.Raw(payment.AdditionalInformation is string i ? $"
({i})" : string.Empty)
@payment.NetworkFee + + @payment.Confirmations
+ } diff --git a/BTCPayServer/Views/UIInvoice/ListInvoices.cshtml b/BTCPayServer/Views/UIInvoice/ListInvoices.cshtml index f31176baa..7e96620c3 100644 --- a/BTCPayServer/Views/UIInvoice/ListInvoices.cshtml +++ b/BTCPayServer/Views/UIInvoice/ListInvoices.cshtml @@ -8,47 +8,6 @@ storeIds = string.Empty; } -@section PageHeadContent { - -} - @section PageFootContent { @*Without async, somehow selenium do not manage to click on links in this page*@ @@ -366,14 +325,14 @@ @@ -416,10 +375,8 @@ -
- @* Leaving this as partial because it abstracts complexity of Invoice Payments *@ - -
+ @* Leaving this as partial because it abstracts complexity of Invoice Payments *@ + } diff --git a/BTCPayServer/Views/UIInvoice/ListInvoicesPaymentsPartial.cshtml b/BTCPayServer/Views/UIInvoice/ListInvoicesPaymentsPartial.cshtml index dac3be6dc..b758604f3 100644 --- a/BTCPayServer/Views/UIInvoice/ListInvoicesPaymentsPartial.cshtml +++ b/BTCPayServer/Views/UIInvoice/ListInvoicesPaymentsPartial.cshtml @@ -1,59 +1,59 @@ @using BTCPayServer.Client.Models -@model (InvoiceDetailsModel Invoice, bool ShowAddress) +@model (InvoiceDetailsModel Invoice, bool ShowAddress) @{ var invoice = Model.Invoice; } -
-

Invoice Summary

- +
+
Invoice Summary
+
- - - @if (Model.ShowAddress) - { - - } - - - - @if (invoice.StatusException == InvoiceExceptionStatus.PaidOver) - { - - } - - - - @foreach (var payment in invoice.CryptoPayments) - { - + @if (Model.ShowAddress) { - + } - - - + + + @if (invoice.StatusException == InvoiceExceptionStatus.PaidOver) { - + } - var details = payment.PaymentMethodRaw.GetPaymentMethodDetails(); - var name = details.GetAdditionalDataPartialName(); - if (!string.IsNullOrEmpty(name)) + + + @foreach (var payment in invoice.CryptoPayments) { - + + + @if (Model.ShowAddress) + { + + } + + + + @if (invoice.StatusException == InvoiceExceptionStatus.PaidOver) + { + + } + + var details = payment.PaymentMethodRaw.GetPaymentMethodDetails(); + var name = details.GetAdditionalDataPartialName(); + if (!string.IsNullOrEmpty(name)) + { + + } } - }
Payment methodAddressRatePaidDueOverpaid
@payment.PaymentMethodPayment method@payment.AddressAddress@payment.Rate@payment.Paid@payment.DueRatePaidDue@payment.OverpaidOverpaid
@payment.PaymentMethod + @payment.Address + @payment.Rate@payment.Paid@payment.Due@payment.Overpaid
-
-@{ - var grouped = invoice.Payments.GroupBy(payment => payment.GetPaymentMethodId()?.PaymentType).Where(entities => entities.Key!= null); -} -@foreach (var paymentGroup in grouped) -{ -
+ @{ + var grouped = invoice.Payments.GroupBy(payment => payment.GetPaymentMethodId()?.PaymentType).Where(entities => entities.Key != null); + } + @foreach (var paymentGroup in grouped) + { -
-} + } + diff --git a/BTCPayServer/wwwroot/main/site.css b/BTCPayServer/wwwroot/main/site.css index 5afbccd27..2613ef457 100644 --- a/BTCPayServer/wwwroot/main/site.css +++ b/BTCPayServer/wwwroot/main/site.css @@ -99,6 +99,23 @@ h2 small .fa-question-circle-o { font-size: var(--btcpay-font-size-l); } + +/* Invoices */ +.invoice-payments { + padding: var(--btcpay-space-m) var(--btcpay-space-l); +} +.invoice-details-row { + background: var(--btcpay-bg-tile); +} +.badge .dropdown-toggle { + cursor: pointer; + padding: 0; +} +@media (min-width: 1200px) { + #MassAction { + margin-top: -4rem; + } +} /* Prevent layout from breaking on hyperlinks with very long URLs as the visible text */ .invoice-details a { word-break: break-word;