} catch (error) { console.error('管理员登录失败:', error); let errorMessage = '管理员登录失败,请检查邮箱和密码'; if (error.message.includes('auth/invalid-email')) { errorMessage = '邮箱格式不正确'; } else if (error.message.includes('auth/user-not-found')) { errorMessage = '管理员账号不存在'; } else if (error.message.includes('auth/wrong-password')) { errorMessage = '密码错误'; } else if (error.message.includes('auth/too-many-requests')) { errorMessage = '登录尝试次数过多,请稍后再试'; } else if (error.message.includes('CloudBase SDK')) { errorMessage = error.message; } else if (error.message.includes('管理员权限')) { errorMessage = error.message; } showMessage(errorMessage, 'error'); // 恢复按钮状态 loginButton.innerHTML = originalText; loginButton.disabled = false; } } // 验证管理员角色 async function verifyAdminRole(userId, workspaceId) { try { // 这里应该调用API验证用户在该工作室的管理员权限 // 暂时模拟验证逻辑 // 模拟API调用 const app = cloudbase.init({ env: 'openclaw-0gts4fbua901de48' }); const result = await app.callFunction({ name: 'admin', data: { action: 'verify_admin', userId: userId, workspaceId: workspaceId } }); console.log('管理员验证结果:', result); // 模拟成功返回 return true; } catch (error) { console.error('验证管理员角色失败:', error); return false; } } // 显示消息 function showMessage(message, type, autoHide = 5000) { const messageDiv = document.getElementById('auth-message'); messageDiv.textContent = message; messageDiv.className = `auth-message ${type}`; // 自动隐藏消息 if (autoHide > 0) { setTimeout(() => { clearMessage(); }, autoHide); } } // 清除消息 function clearMessage() { const messageDiv = document.getElementById('auth-message'); messageDiv.textContent = ''; messageDiv.className = 'auth-message'; } // 检查管理员登录状态 function checkAdminLoginStatus() { const adminToken = localStorage.getItem('animforge_admin_token'); const workspaceId = localStorage.getItem('animforge_workspace_id'); if (adminToken && workspaceId) { // 如果已登录,跳转到管理后台 window.location.href = '../admin/index.html'; } } // 验证邮箱格式 function validateEmail(email) { const re = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; return re.test(email); }