Files
waf-platform/EdgeUser/web/views/@default/index/index.html
2026-02-15 14:27:28 +08:00

104 lines
4.0 KiB
HTML

<!DOCTYPE html>
<html lang="zh">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
{$if eq .faviconFileId 0}
<link rel="shortcut icon" href="/images/favicon.png" />
{$else}
<link rel="shortcut icon" href="/ui/image/{$ .faviconFileId}" />
{$end}
<title>&#30331;&#24405;{$ htmlEncode .systemName}</title>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0">
{$TEA.VUE}
{$TEA.SEMANTIC}
<script type="text/javascript" src="/js/md5.min.js"></script>
<script type="text/javascript" src="/js/utils.min.js"></script>
<script type="text/javascript" src="/js/sweetalert2/dist/sweetalert2.all.min.js"></script>
<script type="text/javascript" src="/js/components.js?v=1.0.0"></script>
{$if not (eq .themeBackgroundColor "")}
<style>
.button.primary {
background: #{$.themeBackgroundColor} !important;
}
</style>
{$end}
</head>
<body class="login-page">
<div>
<div class="bg-layer">
<div class="tech-bg"></div>
<div class="glow-circle"></div>
</div>
<div class="login-shell">
{$template "/menu"}
<div class="form-box">
<div class="login-card">
<div class="card-header">
<div class="brand-logo">
<span class="logo-icon"><i class="shield alternate icon"></i></span>
<span class="logo-text">{$ htmlEncode .systemName}</span>
</div>
<p class="header-title">&#26032;&#19968;&#20195; Web&#19982;APP &#24212;&#29992;&#38450;&#25252;&#24179;&#21488;</p>
</div>
<form method="post" class="ui form login-form" data-tea-action="$" data-tea-before="submitBefore" data-tea-done="submitDone" data-tea-success="submitSuccess" autocomplete="off">
<csrf-token></csrf-token>
<input type="hidden" name="password" v-model="passwordMd5"/>
<input type="hidden" name="token" v-model="token"/>
<div class="ui field input-group">
<label class="input-label">&#36134;&#21495;</label>
<div class="input-field-wrapper">
<div class="ui left icon input">
<i class="ui user icon small input-icon"></i>
<input type="text" name="username" v-model="username" :placeholder="usernamePlaceholder" maxlength="200" ref="usernameRef" @input="changeUsername"/>
</div>
</div>
</div>
<div class="ui field input-group">
<label class="input-label">&#23494;&#30721;</label>
<div class="input-field-wrapper">
<div class="ui left icon input">
<i class="ui lock icon small input-icon"></i>
<input type="password" v-model="password" placeholder="&#35831;&#36755;&#20837;&#23494;&#30721;" maxlength="200" @input="changePassword()" ref="passwordRef"/>
</div>
</div>
</div>
<div class="ui field input-group" v-show="showOTP">
<label class="input-label">&#23433;&#20840;&#39564;&#35777;</label>
<div class="input-field-wrapper">
<div class="ui left icon input">
<i class="ui barcode icon input-icon"></i>
<input type="text" name="otpCode" placeholder="&#35831;&#36755;&#20837; OTP &#21160;&#24577;&#30721;" maxlength="6"/>
</div>
</div>
</div>
<div class="ui field remember-wrap" v-if="false">
<div class="ui checkbox">
<input type="checkbox" name="remember" value="1" checked="checked"/>
<label>&#22312;&#36825;&#21488;&#30005;&#33041;&#19978;&#35760;&#20303;&#30331;&#24405;&#65288;14&#22825;&#65289;</label>
</div>
</div>
<button class="ui button primary fluid submit-btn" type="submit" v-if="!isSubmitting">&#30331;&#24405;</button>
<button class="ui button primary fluid disabled submit-btn" type="submit" disabled="disabled" v-if="isSubmitting">&#30331;&#24405;&#20013;...</button>
<div v-if="canRegister" class="register-box">
<a href="/register">&#27880;&#20876;&#26032;&#29992;&#25143;<span v-if="!canResetPassword">&nbsp; &raquo;</span></a><span v-if="canResetPassword"> &nbsp; <span class="disabled">|</span> &nbsp; <a href="/account/reset">&#25214;&#22238;&#23494;&#30721;</a></span>
</div>
</form>
</div>
</div>
</div>
</div>
</body>
</html>