import { getLocale, getTranslations } from 'next-intl/server';
import { getCurrentUser } from '@/lib/auth';
import { LanguageSwitcher } from './LanguageSwitcher';
import { LogoutButton } from './LogoutButton';
import type { Locale } from '@/i18n/config';

export async function SiteHeader() {
  const locale = await getLocale() as Locale;
  const t = await getTranslations();
  const user = await getCurrentUser();

  return (
    <header className="site-header">
      <div className="header-inner">
        <a href="/" className="site-logo">{t('metadata.title')}</a>
        <div className="header-spacer" />
        <nav className="header-nav">
          <LanguageSwitcher currentLocale={locale} />
          {user ? (
            <>
              {user.role === 'admin' && (
                <a href="/admin" className="header-btn">{t('nav.admin')}</a>
              )}
              <LogoutButton label={t('nav.logout')} />
            </>
          ) : (
            <a href="/?login=1" className="header-btn primary">{t('nav.login')}</a>
          )}
        </nav>
      </div>
    </header>
  );
}
