网站首页 网站源码
website
站点相关全部源代码,隐藏了一些关于服务器的信息
@model Dpz.Core.Auth.Models.AccessDeniedViewModel

@{
    ViewBag.Title = "无权访问";
    Layout = null;
    var appName = Model.Application?.DisplayName ?? "未知应用";
    var clientLogo = Model.Application?.Properties?["Logo"]?.AsString;
    var userName = Model.User?.Name ?? "当前用户";
    var avatar = Model.User?.Avatar;
}

<!DOCTYPE html>

<html lang="zh-Hans">
<head>
    <title>无权访问 - 认证中心</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <link rel="stylesheet" href="@Url.Content("~/css/global.css")" asp-append-version="true"/>
</head>
<body class="consent-page">
    <div class="container">
        <div class="header">
            <h1>访问被拒绝</h1>
            <p>您暂时无法访问 <strong>@appName</strong></p>
        </div>

        <div class="consent-summary">
            <div class="consent-summary-item">
                <div class="consent-summary-label">当前账户</div>
                <div class="consent-summary-value">
                    @if (!string.IsNullOrWhiteSpace(avatar))
                    {
                        <img src="@avatar" alt="@userName" class="consent-summary-avatar" loading="lazy"/>
                    }
                    <span>@userName</span>
                </div>
            </div>

            <div class="consent-summary-item">
                <div class="consent-summary-label">目标应用</div>
                <div class="consent-summary-value">
                    @if (!string.IsNullOrWhiteSpace(clientLogo))
                    {
                        <img src="@clientLogo" alt="@appName" class="consent-summary-logo" loading="lazy"/>
                    }
                    <span>@appName</span>
                </div>
            </div>
        </div>

        @if(Model.HasPendingRequest)
        {
            <div class="info-message">
                您已提交访问申请,请耐心等待管理员审核。
            </div>
            <div class="consent-actions">
                <a class="secondary-button" href="@(Model.ReturnUrl ?? Url.Action("Index", "Home"))" style="width: 100%; text-align: center;">返回</a>
            </div>
        }
        else
        {
            <div class="warning-message" style="margin-bottom: 24px;">
                您的账户目前没有权限访问此应用。
            </div>
            
            <form method="post" asp-action="ApplyAccess" data-submit-loading="true">
                <input type="hidden" name="clientId" value="@Model.Application?.ClientId" />
                <input type="hidden" name="returnUrl" value="@Model.ReturnUrl" />
                
                <div class="input-section">
                    <label for="reason" class="input-label">申请理由<span class="required">*</span></label>
                    <textarea class="textarea" id="reason" name="reason" rows="3" placeholder="请简要说明您需要访问此应用的理由..." required></textarea>
                </div>

                <div class="consent-actions">
                    <a class="secondary-button" href="@(Model.ReturnUrl ?? Url.Action("Index", "Home"))">取消</a>
                    <button type="submit" class="submit-button" data-loading-text="提交中...">申请权限</button>
                </div>
                
                @foreach (var item in Context.Request.Query)
                {
                     if(item.Key != "returnUrl")
                     {
                        <input type="hidden" name="@item.Key" value="@item.Value" />
                     }
                }
            </form>
        }
    </div>

    <script src="@Url.Content("~/js/ui-components.js")" asp-append-version="true"></script>
</body>
</html>

loading