@using Microsoft.AspNetCore.Routing @using Microsoft.AspNetCore.Mvc.TagHelpers @using BTCPayServer.Models @using BTCPayServer.Services @using BTCPayServer.Abstractions.Extensions @using BTCPayServer.Plugins.Subscriptions @inject DisplayFormatter DisplayFormatter @model BTCPayServer.Plugins.Subscriptions.SubscriptionAppSettings @{ var appId = Context.GetRouteValue("appId"); var subscriptionId = Context.GetRouteValue("id") as string; var subscription = Model.Subscriptions[subscriptionId!]; StoreBrandingViewModel storeBranding = (StoreBrandingViewModel) ViewData["StoreBranding"]; Layout = null; }
@Model.GetSubscriptionHumanReadableLength() subscription for @DisplayFormatter.Currency(Model.Price, Model.Currency)
@subscription.Status @if (subscription.Status == SubscriptionStatus.Inactive) { Reactivate }
@if (!string.IsNullOrEmpty(Model.Description)) {
@Safe.Raw(Model.Description)
}
@if (subscription.Payments?.Any() is not true) {

No payments have been made yet.

} else {
@foreach (var payment in subscription.Payments) { var isThisPeriodActive = payment.PeriodStart <= DateTimeOffset.UtcNow && payment.PeriodEnd >= DateTimeOffset.UtcNow; var isThisPeriodFuture = payment.PeriodStart > DateTimeOffset.UtcNow; }
Payment Request Id Period Settled
@payment.PeriodStart.ToBrowserDate() - @payment.PeriodEnd.ToBrowserDate()
@if (payment.Settled && isThisPeriodActive) { Active } @if (isThisPeriodFuture) { Next period }
@if (payment.Settled) { Settled } else { Not settled }
}