@page "{id:int}" @using AfRApay.Web.Backend.Database @using Microsoft.AspNetCore.Mvc.TagHelpers @using Microsoft.EntityFrameworkCore @model EditUserModel @{ ViewData["Title"] = "Edit User"; if (Request.Method == "POST" && Request.Form["action"] == "delete") { return; } var db = new DatabaseContext(); var user = db.Users.First(p => p.Id == int.Parse(RouteData.Values["id"]!.ToString()!)); var cards = db.Cards.Include(p => p.User).Where(p => p.User == user); var linkFlag = db.Config.FirstOrDefault(p => p.Name == "link"); var lTimeFlag = db.Config.FirstOrDefault(p => p.Name == "lTime"); var linkActive = !string.IsNullOrWhiteSpace(linkFlag?.Value) && linkFlag.Value == user.Id.ToString() && !string.IsNullOrWhiteSpace(lTimeFlag?.Value) && DateTime.UtcNow - DateTime.Parse(lTimeFlag.Value) < TimeSpan.FromMinutes(5); } @if (linkActive) { @section Header { }}

Edit User

Account


Cards

@{ async Task RenderCard(string cardHolder, string cardNumber = "Awooo!", string expDate = "01/2038", EditUserModel.CardType type = EditUserModel.CardType.Normal) { var cardTypeClasses = type switch { EditUserModel.CardType.Normal => "fake-card", EditUserModel.CardType.LinkPlaceholder => "fake-card ghost-card", EditUserModel.CardType.DeletionConfirmation => "fake-card", _ => throw new ArgumentOutOfRangeException(nameof(type), type, null)}; var blurClasses = type == EditUserModel.CardType.Normal ? " blur-true m-2" : "m-2";
@if (type == EditUserModel.CardType.Normal) {
} else if (type == EditUserModel.CardType.LinkPlaceholder) { if (linkActive) { } else {
} }

@cardNumber

@cardHolder

VALID
THRU
@expDate
} } @{ async Task RenderCardModal(string cardHolder, string cardNumber) { } }
@{ foreach (var card in cards) { await RenderCard(user.Nickname, card.Id); await RenderCardModal(user.Nickname, card.Id); } await RenderCard(user.Nickname, type: EditUserModel.CardType.LinkPlaceholder); }