mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2025-03-09 05:14:31 +01:00
* Set store context in cookie
* Fix page id usages in view
* Move Pay Button to nav
* Move integrations to plugins nav
* Store switch links to wallet if present
* Test fixes
* Nav fixes
* Fix altcoin view
* Main nav updates
* Wallet setttings nav update
* Move storeId cookie fallback to cookie auth handler
* View fixes
* Test fixes
* Fix profile check
* Rename integrations nav extension point to store-integrations-nav-list
* Allow strings for Active page/category for plugins
* Make invoice list filter based on store context
* Do not set context if we are running authorizer through tag helper
* Fix test and unfiltered invoices
* Add permission helper for wallet links
* Add sanity checks for payment requests and invoices
* Store context in home controller
* Fix PayjoinViaUI test
* Store context for notifications
* Minor UI improvements
* Store context for userstores and vault controller
* Bring back integrations page
* Rename notifications nav pages file
* Fix user stores controller policies
* Controller policy fixes from code review
* CookieAuthHandler: Simplify CanViewInvoices case
* Revert "Controller policy fixes from code review"
This reverts commit 97e8b8379c
.
* Simplify LayoutSimple
* Fix CanViewInvoices condition
Co-authored-by: Kukks <evilkukka@gmail.com>
72 lines
2.9 KiB
Text
72 lines
2.9 KiB
Text
@model WebhooksViewModel
|
|
@{
|
|
Layout = "../Shared/_NavLayout.cshtml";
|
|
ViewData.SetActivePage(StoreNavPages.Webhooks, "Webhooks", Context.GetStoreData().Id);
|
|
}
|
|
|
|
<div class="d-flex align-items-center justify-content-between mb-3">
|
|
<h4 class="mb-0">@ViewData["Title"]</h4>
|
|
<a id="CreateWebhook" asp-action="NewWebhook" class="btn btn-primary" role="button" asp-route-storeId="@Context.GetRouteValue("storeId")">
|
|
<span class="fa fa-plus"></span>
|
|
Create Webhook
|
|
</a>
|
|
</div>
|
|
<p>Webhooks allow BTCPay Server to send HTTP events related to your store to another server.</p>
|
|
|
|
@if (Model.Webhooks.Any())
|
|
{
|
|
<table class="table table-hover table-responsive-md">
|
|
<thead>
|
|
<tr>
|
|
<th>Status</th>
|
|
<th>Url</th>
|
|
<th class="text-end">Actions</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@foreach (var wh in Model.Webhooks)
|
|
{
|
|
<tr>
|
|
<td class="align-baseline">
|
|
@if (wh.LastDeliverySuccessful)
|
|
{
|
|
<span
|
|
class="fa fa-check text-success"
|
|
id="delivery-status-icon"
|
|
data-bs-toggle="tooltip"
|
|
title="@(wh.LastDeliveryTimeStamp == null ? "No deliveries for this webhook yet" : "Last delivery " + @wh.LastDeliveryTimeStamp?.ToTimeAgo())"></span>
|
|
}
|
|
else
|
|
{
|
|
<span
|
|
class="fa fa-times text-danger"
|
|
id="delivery-status-icon"
|
|
data-bs-toggle="tooltip"
|
|
data-bs-html="true"
|
|
title="Error: @wh.LastDeliveryErrorMessage. <br/> Delivery last attempted <span id='last-delivery-time'>@wh.LastDeliveryTimeStamp?.ToTimeAgo()</span>"></span>
|
|
}
|
|
</td>
|
|
<td class="d-block text-break">@wh.Url</td>
|
|
<td class="text-end text-md-nowrap">
|
|
<a asp-action="TestWebhook" asp-route-storeId="@Context.GetRouteValue("storeId")" asp-route-webhookId="@wh.Id">Test</a> -
|
|
<a asp-action="ModifyWebhook" asp-route-storeId="@Context.GetRouteValue("storeId")" asp-route-webhookId="@wh.Id">Modify</a> -
|
|
<a asp-action="DeleteWebhook" asp-route-storeId="@Context.GetRouteValue("storeId")" asp-route-webhookId="@wh.Id" data-bs-toggle="modal" data-bs-target="#ConfirmModal" data-confirm-input="DELETE">Delete</a>
|
|
</td>
|
|
</tr>
|
|
}
|
|
</tbody>
|
|
</table>
|
|
|
|
<partial name="_Confirm" model="@(new ConfirmModel("Delete webhook", "This webhook will be removed from this store.", "Delete"))" />
|
|
}
|
|
else
|
|
{
|
|
<p class="text-secondary mt-3">
|
|
There are no webhooks yet.
|
|
</p>
|
|
}
|
|
|
|
@section PageFootContent {
|
|
<partial name="_ValidationScriptsPartial" />
|
|
}
|
|
|