mirror of
https://github.com/SECTL/SecScore.git
synced 2026-07-21 11:49:02 +08:00
fix: 修复登录持久化问题
删除了json-rules-engine
This commit is contained in:
@@ -206,6 +206,12 @@ export const Settings: React.FC<{
|
||||
permission: number
|
||||
} | null>(null)
|
||||
|
||||
const getOAuthPermissionLabel = (oauthPermission: number) => {
|
||||
if (oauthPermission >= 18) return t("permissions.admin")
|
||||
if (oauthPermission >= 1) return t("permissions.points")
|
||||
return t("permissions.view")
|
||||
}
|
||||
|
||||
const permissionTag = useMemo(() => {
|
||||
return (
|
||||
<Tag
|
||||
@@ -312,10 +318,40 @@ export const Settings: React.FC<{
|
||||
}
|
||||
const authRes = await api.authGetStatus()
|
||||
if (authRes.success && authRes.data) setSecurityStatus(authRes.data)
|
||||
|
||||
const oauthStateRes = await api.oauthLoadLoginState()
|
||||
if (oauthStateRes?.success && oauthStateRes.data) {
|
||||
setOAuthUserInfo({
|
||||
user_id: oauthStateRes.data.user_id,
|
||||
email: oauthStateRes.data.email,
|
||||
name: oauthStateRes.data.name,
|
||||
github_username: oauthStateRes.data.github_username,
|
||||
permission: oauthStateRes.data.permission,
|
||||
})
|
||||
} else {
|
||||
setOAuthUserInfo(null)
|
||||
}
|
||||
|
||||
await loadMcpStatus()
|
||||
await loadSystemFonts(savedFontFamily)
|
||||
}
|
||||
|
||||
const handleOAuthLogout = async () => {
|
||||
const api = (window as any).api
|
||||
if (!api) {
|
||||
setOAuthUserInfo(null)
|
||||
return
|
||||
}
|
||||
|
||||
try {
|
||||
await api.oauthClearLoginState()
|
||||
setOAuthUserInfo(null)
|
||||
messageApi.success(t("auth.logout"))
|
||||
} catch (error: any) {
|
||||
messageApi.error(error?.message || t("common.error"))
|
||||
}
|
||||
}
|
||||
|
||||
const loadAboutContent = async () => {
|
||||
try {
|
||||
const res = await fetch("/about-content.json")
|
||||
@@ -1098,17 +1134,13 @@ export const Settings: React.FC<{
|
||||
<div>
|
||||
<Text type="secondary">{t("settings.account.permission")}:</Text>
|
||||
<Tag color="blue" style={{ marginLeft: "8px" }}>
|
||||
{oauthUserInfo.permission === 1
|
||||
? t("permissions.admin")
|
||||
: oauthUserInfo.permission === 2
|
||||
? t("permissions.points")
|
||||
: t("permissions.view")}
|
||||
{getOAuthPermissionLabel(oauthUserInfo.permission)}
|
||||
</Tag>
|
||||
</div>
|
||||
|
||||
<Divider />
|
||||
|
||||
<Button danger onClick={() => setOAuthUserInfo(null)}>
|
||||
<Button danger onClick={handleOAuthLogout}>
|
||||
{t("settings.account.logout")}
|
||||
</Button>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user