// 管理员登录页
const { useState } = React;

function AdminLoginPage() {
  const [username, setUsername] = useState('');
  const [password, setPassword] = useState('');
  const [loading, setLoading] = useState(false);
  const [error, setError] = useState('');

  const handleLogin = async function() {
    if (!username.trim()) { setError('请输入用户名'); return; }
    if (!password) { setError('请输入密码'); return; }
    setLoading(true); setError('');
    try {
      const res = await NK.Api.Admin.login({ username: username.trim(), password: password });
      if (res.code === 0) {
        NK.Api.Admin.setToken(res.data.token);
        NK.Store.setAll({ adminPage: 'audit' });
      } else {
        var httpStatus = (res && res._httpStatus) || 0;
        if (httpStatus === 401) setError('用户名或密码错误');
        else if (httpStatus >= 500) setError(res.message || '服务器异常');
        else setError(res.message || '登录失败');
      }
    } catch (e) { setError('无法连接后端服务，请确认服务已启动'); }
    finally { setLoading(false); }
  };

  return React.createElement('div', { className: 'detail-page' },
    React.createElement('div', { className: 'back-header' },
      React.createElement('div', { className: 'bbtn', onClick: function(){ NK.Store.back('home'); } }, '←'),
      React.createElement('div', { className: 'btitle' }, '管理员登录')
    ),
    React.createElement('div', { style: { padding: '40px 24px' } },
      React.createElement('div', { style: { textAlign: 'center', marginBottom: 32 } },
        React.createElement('div', { style: { fontSize: 48, marginBottom: 8 } }, '☢'),
        React.createElement('div', { style: { fontSize: 18, fontWeight: 700, color: '#333' } }, '后台管理系统'),
        React.createElement('div', { style: { fontSize: 13, color: '#999', marginTop: 4 } }, '请使用管理员账号登录')
      ),
      React.createElement('div', { style: { marginBottom: 16 } },
        React.createElement('input', {
          className: 'pub3-input', type: 'text', placeholder: '用户名',
          value: username, onChange: function(e) { setUsername(e.target.value); },
          onKeyDown: function(e) { if (e.key === 'Enter') handleLogin(); }
        })
      ),
      React.createElement('div', { style: { marginBottom: 20 } },
        React.createElement('input', {
          className: 'pub3-input', type: 'password', placeholder: '密码',
          value: password, onChange: function(e) { setPassword(e.target.value); },
          onKeyDown: function(e) { if (e.key === 'Enter') handleLogin(); }
        })
      ),
      error && React.createElement('div', { style: { color: '#ff4d4f', fontSize: 13, marginBottom: 16, textAlign: 'center' } }, error),
      React.createElement('button', {
        className: 'pub3-btn primary', onClick: handleLogin, disabled: loading
      }, loading ? '登录中...' : '登录')
    )
  );
}

window.NK = window.NK || {};
NK.AdminLoginPage = AdminLoginPage;
