Files
simpleidp/Views/Accounts/Index.cshtml
2025-08-19 16:58:51 +02:00

69 lines
2.8 KiB
Plaintext

@using SimpleIdp.Resources
@model SimpleIdServer.IdServer.UI.ViewModels.AccountsIndexViewModel
@{
ViewBag.Title = AccountsResource.select_session;
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h1>@AccountsResource.active_sessions</h1>
@if (!string.IsNullOrWhiteSpace(ViewBag.IsUserAccountSwitched))
{
<div class="alert alert-success">@AccountsResource.useraccount_switched</div>
}
@if (!string.IsNullOrWhiteSpace(ViewBag.IsSessionRejected))
{
<div class="alert alert-success">@AccountsResource.useraccount_rejected</div>
}
<div class="row">
@{
int i = 0;
foreach (var account in Model.Accounts)
{
i++;
string rejectFormId = "reject-" + i;
<div class="col-md-4">
@using (Html.BeginForm("Index", "Accounts", FormMethod.Post))
{
@Html.AntiForgeryToken()
<div class="card">
<input type="hidden" name="AccountName" value="@account.Name" />
<input type="hidden" name="ReturnUrl" value="@Model.ReturnUrl" />
<input type="hidden" name="Action" value="Choose" />
<div class="card-header">@account.Name</div>
<div class="card-body">
@if (account.IssuedUtc != null)
{
<p>
@string.Format(AccountsResource.authentication_time, account.IssuedUtc.Value.ToString("s"))
</p>
}
@if (account.ExpiresUct != null)
{
<p>
@string.Format(AccountsResource.expiration_time, account.ExpiresUct.Value.ToString("s"))
</p>
}
</div>
<div class="card-footer d-flex justify-content-between">
<input type="submit" class="btn btn-primary" value="@AccountsResource.choose_session" />
<input type="submit" class="btn btn-danger" form="@rejectFormId" value="@AccountsResource.reject" />
</div>
</div>
}
@using (Html.BeginForm("Index", "Accounts", FormMethod.Post, new { id = rejectFormId }))
{
@Html.AntiForgeryToken()
<input type="hidden" name="AccountName" value="@account.Name" />
<input type="hidden" name="ReturnUrl" value="@Model.ReturnUrl" />
<input type="hidden" name="Action" value="Reject" />
}
</div>
}
}
</div>