网站首页 网站源码
website
站点相关全部源代码,隐藏了一些关于服务器的信息
@model string
@{
    Layout = null;
}

<!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>
    <div class="container">
        <div class="header">
            <h1>登录认证中心</h1>
            <p>欢迎回来,请输入您的账户信息</p>
        </div>

        <form method="post" autocomplete="on" data-submit-loading="true">
            <div class="input-section">
                <label class="input-label" for="account">账号</label>
                <div class="input-wrapper">
                    <input 
                        id="account"
                        name="account"
                        type="text"
                        class="text-input"
                        placeholder="请输入账号或邮箱"
                        autocomplete="username"
                        required
                        autofocus
                    />
                </div>
            </div>

            <div class="input-section">
                <label class="input-label" for="password">密码</label>
                <div class="input-wrapper">
                    <input 
                        id="password"
                        name="password"
                        type="password"
                        class="text-input"
                        placeholder="请输入密码"
                        autocomplete="current-password"
                        required
                    />
                    <button type="button" class="toggle-visibility" onclick="togglePassword()" aria-label="显示或隐藏密码">显示</button>
                </div>
            </div>

            <div class="input-section">
                <label class="input-label" for="pinCode">PIN码(如已启用双因素)</label>
                <div class="input-wrapper">
                    <input 
                        id="pinCode"
                        name="pinCode"
                        type="text"
                        class="pin-input"
                        placeholder="6位PIN码(可选)"
                        inputmode="numeric"
                        pattern="[0-9]{6}"
                        maxlength="6"
                        autocomplete="one-time-code"
                    />
                </div>
            </div>

            <div class="checkbox-row">
                <label class="checkbox-left" for="remember">
                    <input type="checkbox" id="remember" name="remember" value="true" />
                    记住我
                </label>
                <a class="link-right" href="#" onclick="return false;">忘记密码?</a>
            </div>

            @if (TempData["Msg"] is string message)
            {
                @if (message.Contains("密码修改成功"))
                {
                    <div class="success-message">
                        @message
                    </div>
                }
                else if (message.Contains("已被禁用"))
                {
                    <div class="error-message account-disabled">
                        @message
                    </div>
                }
                else
                {
                    <div class="error-message">
                        @message
                    </div>
                }
            }
            else if (Context.Request.Query["msg"] == "security-stamp-expired")
            {
                <div class="warning-message">
                    您的密码已在其他设备上修改,为了安全起见,请重新登录
                </div>
            }
            else if (Context.Request.Query["msg"] == "account-disabled")
            {
                <div class="error-message account-disabled">
                    <strong>⚠️ 账户已被禁用</strong>
                    <p>您的账户已被禁用,无法登录。如有疑问,请联系管理员。</p>
                </div>
            }
            else if (Context.Request.Query["msg"] == "user-not-found")
            {
                <div class="error-message">
                    用户不存在或验证失败,请重新登录
                </div>
            }
            else if (Context.Request.Query["msg"] == "auth-error")
            {
                <div class="error-message">
                    认证过程出错,请重新登录
                </div>
            }
            <input type="hidden" name="returnUrl" value="@Model"/>
            <button type="submit" class="submit-button" data-loading-text="登录中...">登录</button>
        </form>

        <div class="footer">
            <p>为保障账户安全,建议开启双因素验证</p>
        </div>
    </div>

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