<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=3.0, user-scalable=yes" /> <meta name="format-detection" content="telephone=no" /> <link href="../static/css/bootstrap.css" rel="stylesheet"> <script src="../static/js/jquery.js"></script> </head> <body class="container" style="width: 800px; margin: auto; margin-top:24px;"> <nav class="navbar navbar-expand-lg bg-light"> <div class="container-fluid"> <a class="navbar-brand" href="#">管理员 {{ username }} 您好!</a> <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarNav"> <ul class="navbar-nav"> <li class="nav-item"> <a class="nav-link" href="/{{ username }}">返回主页</a> </li> <li class="nav-item"> <a class="nav-link" href="/logout">退出登录</a> </li> </ul> </div> </div> </nav> <div class="card" style="margin-top:24px;"> <h5 style="margin-top: 10px;padding-left: 10px;">重置选中用户的信息</h5> <form id="user_form" action="" method="post" class="container mb-3"> <div> <label class="form-label" style="padding-top: 10px;">用户</label> <select onchange="loadUserExpiryDate()" id="username" name="username" class="form-select" aria-label="Default select example"> <option selected>选择用户</option> {% for user in user_list %} <option value="{{ user.name }}">{{ user.name }}</option> {% endfor %} </select> <label class="form-label" style="padding-top: 10px;">修改密码</label> <div> <button type="button" id="reset_pwd_btn" class="btn btn-outline-success">获取12位随机密码</button> <input style="margin-left: 20px;border: 0; font-size: 20px;" name="new_password" id="new_password"></input> </div> <label class="form-label" style="padding-top: 10px;">过期时间</label> <div> <input type="date" id="expiry_date" name="expiry_time" placeholder="YYYY-MM-DD" pattern="yyyyMMdd"> </div> </div> <button style="margin-top: 50px;" type="submit" class="btn btn-primary">更新用户信息</button> </form> </div> </body> <script> // 密码生成器 function generatePassword(length) { var charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+~`|}{[]\:;?><,./-="; var password = ""; for (var i = 0; i < length; i++) { password += charset.charAt(Math.floor(Math.random() * charset.length)); } return password; } document.getElementById("reset_pwd_btn").addEventListener("click", () => { // 生成12位随机密码 let pwd = generatePassword(12) document.getElementById("new_password").value = pwd }) // 选择用户后更新其过期时间 function loadUserExpiryDate() { let cur_user = $('#username').val(); {% for user in user_list %} if (cur_user == "{{ user.name }}") { const dateString = "{{ user.expiry_date }}" const year = dateString.substr(0,4); const month = dateString.substr(4,2); const day = dateString.substr(6,2); document.getElementById("expiry_date").value = year + '-' + month + '-' + day } {% endfor %} } </script> </html>