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

@{
    Layout = null;
}

<!DOCTYPE html>

<html lang="zh-Hans">
<head>
    <title>双因素绑定</title>
    <style>
        img{
            width: 207px;
        }
        .layout{
            display: flex;
            flex-direction: column;
            align-items: center;
            margin-top: 30vh;
        }
        .layout > *{
            margin: 5px 0;
        }
        input[type=number]{
            height: 15px;
            font-size: 14px;
            line-height: 1.3;
            border-width: 1px;
            border-style: solid;
            background-color: #fff;
            border-radius: 2px;
            padding: 12px;
            color: #000;
        }
        
        input[type=number]::-webkit-inner-spin-button, 
        input[type=number]::-webkit-outer-spin-button { 
          -webkit-appearance: none;
          margin: 0; 
        }
        input[type=number] {
            -moz-appearance:textfield;
            outline: none;
        }
        
        button {
           display: block;             
           outline: 0; 
           overflow: hidden;  
           position: relative; 
           transition: .3s; 
           cursor: pointer; 
           user-select: none; 
           height: 40px; 
           text-align: center; 
           line-height: 40px;
           width: 100px; 
           font-size: 15px; 
           background: tomato; 
           color: #fff;  
           border-radius: 10px;
        }
        
        button::after {
          content: '';
              position: absolute;
              width: 100%;
              padding-top: 100%;
              background: transparent;
              border-radius: 50%;
              left: 50%;
              top: 50%;
              transform: translate(-50%,-50%)
        }
        button:active::after {
          transform: scale(0);
          opacity: .5;
          transition: 0s;
        }
        
        button:hover:after{
          animation: ripple 1s;
        }
        
        button:active:after{
          animation: ripple 1s;
        }
        
        button:focus:after{
          animation: ripple 1s;
        }
        
        @@keyframes ripple{
            from {
                transform:translate(-50%,-50%) scale(0);
                background: rgba(0,0,0,.25);
            }
            to {
                transform:translate(-50%,-50%) scale(1);
                background: transparent;
            }
        }
        
        @@media (prefers-color-scheme: dark) {
            body {
                background: #0c0c0e;
                color: #b5b1b1;
            }
            
            input[type=number]{
                background-color: #000000;
                border-color: #6a737d;
                color: #b5b1b1;
            }
        }
    </style>
</head>
<body>
<form method="post" asp-action="HandleBindTwoFactor" autocomplete="off">
    <input type="hidden" name="fromUrl" value="@TempData["FromUrl"]"/>
    <div class="layout">
        <img alt="qrcode" src="@Model.QrCodeSetupImageUrl"/>
        <div>手动输入:<span>@Model.ManualEntryKey</span></div>
        <div>PIN码:<input required type="text" name="pinCode" pattern="\d+" maxlength="6" /></div>
        @if (TempData["Msg"] is string message)
        {
            <div style="color:red">@message</div>
        }
        <div>
            <button>验证</button>
        </div>
    </div>
</form>
</body>
</html>
loading