2022-08-15 20:21:20 +02:00
@using BTCPayServer.Services.Altcoins.Monero.Configuration
@using BTCPayServer.Services.Altcoins.Monero.UI
2022-09-16 11:49:44 +02:00
@using BTCPayServer.Abstractions.Contracts
2023-10-11 14:12:33 +02:00
@inject SignInManager<ApplicationUser> SignInManager;
2022-08-15 20:21:20 +02:00
@inject MoneroLikeConfiguration MoneroLikeConfiguration;
2022-09-16 11:49:44 +02:00
@inject IScopeProvider ScopeProvider
2023-10-11 14:12:33 +02:00
@inject UIMoneroLikeStoreController UIMoneroLikeStore;
2022-08-15 20:21:20 +02:00
@{
2022-09-16 11:49:44 +02:00
var storeId = ScopeProvider.GetCurrentStoreId();
2023-10-11 14:12:33 +02:00
2022-08-15 20:21:20 +02:00
}
2023-10-11 14:12:33 +02:00
@if (SignInManager.IsSignedIn(User) && User.IsInRole(Roles.ServerAdmin) && MoneroLikeConfiguration.MoneroLikeConfigurationItems.Any())
2022-08-15 20:21:20 +02:00
{
2023-10-11 14:12:33 +02:00
var store = Context.GetStoreData();
var result = await UIMoneroLikeStore.GetVM(store);
foreach (var item in result.Items)
{
var isActive = !string.IsNullOrEmpty(storeId) && ViewContext.RouteData.Values.TryGetValue("Controller", out var controller) && controller is not null &&
nameof(UIMoneroLikeStoreController).StartsWith(controller.ToString() ?? string.Empty, StringComparison.InvariantCultureIgnoreCase) &&
ViewContext.RouteData.Values.TryGetValue("cryptoCode", out var cryptoCode) && cryptoCode is not null && cryptoCode.ToString() == item.CryptoCode;
<li class="nav-item">
<a class="nav-link @(isActive? "active" : "")"
asp-route-cryptoCode="@item.CryptoCode"
asp-route-storeId="@storeId"
asp-action="GetStoreMoneroLikePaymentMethod"
asp-controller="UIMoneroLikeStore">
<span class="me-2 btcpay-status btcpay-status--@(item.Enabled ? "enabled" : "pending")"></span>
<span>@item.CryptoCode Wallet</span>
</a>
</li>
}
2022-08-15 20:21:20 +02:00
}