Files
blackbird/fsys/public/mgmt/mgmt.html
T
2026-08-08 19:09:36 +08:00

119 lines
4.1 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>management page</title>
<link rel="icon" href="data:;base64,=">
<link rel="stylesheet" href="mgmt.css">
<script>
async function loadUserInfo() {
try {
const res = await fetch('/whoami', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: '{}'
});
const data = await res.json();
if (data.login && data.user) {
document.getElementById("current-user").innerText = "当前用户: " + data.user;
document.getElementById("current-role").innerText = data.is_admin ? "当前角色: 管理员" : "当前角色: 普通用户";
if (!data.is_admin) {
alert("需要管理员权限才能访问此页面");
}
} else {
document.getElementById("current-user").innerText = "当前用户: 未登录";
document.getElementById("current-role").innerText = "当前角色: 未知";
setTimeout(() => {
window.location = "index.html";
}, 1000);
}
} catch (err) {
console.error('获取用户信息失败:', err);
document.getElementById("current-user").innerText = "当前用户: 未知";
document.getElementById("current-role").innerText = "当前角色: 未知";
}
}
window.onload = () => {
loadUserInfo();
const featureList = [
{
name: "进程",
url: "features/process.html"
},
{
name: "模块",
url: "features/module.html"
},
// {
// name: "日志",
// url: "features/log.html"
// },
{
name: "用户",
url: "features/user.html"
}
]
const featureListEle = document.getElementById("feature-list")
for (let i = 0; i < featureList.length; i++) {
// get name and url
const name = featureList[i].name
const url = featureList[i].url
// Create a item
let listItemEle = document.createElement("div")
listItemEle.setAttribute("class", "item")
listItemEle.innerText = name
listItemEle.setAttribute("onclick", `switchPage('${url}')`)
// append element into feature list
featureListEle.append(listItemEle)
}
// set default page in iframe
const DEFAULT_PAGE = "<!DOCTYPE html><h1>请在左侧选择功能</h1>"
document.getElementById("page").contentDocument.write(DEFAULT_PAGE)
}
</script>
</head>
<body>
<div class="top-con">
<div id="current-user">当前用户: 未登录</div>
<div id="current-role">当前角色: 未知</div>
<div class="button-con">
<button onclick="logout()">退出登陆</button>
</div>
</div>
<div class="main">
<div class="feature-list" id="feature-list"></div>
<div class="pages">
<iframe id="page" src="" frameborder="1" width="100%" height="100%"></iframe>
</div>
</div>
<script>
// change the iframe's url
function switchPage(url) {
const page = document.getElementById("page")
page.setAttribute("src", url)
}
function logout() {
if (!confirm("确认退出?")) {
return
}
document.cookie = "token=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
window.location = "index.html"
}
</script>
</body>
</html>