"use client";

import Link from "next/link";
import { useRouter } from "next/navigation";
import { AppShell } from "@/components/app/AppShell";
import { PageHeader } from "@/components/layout/PageHeader";
import { ProviderServerForm } from "@/components/virtual-classes/ProviderServerForm";
import { OnlineClassProvider } from "@/lib/online-class-drivers";
import { isHoldingAdmin } from "@/lib/permissions";

export default function NewVirtualClassProviderPage() {
  const router = useRouter();

  const onSaved = (saved: OnlineClassProvider) => {
    if (isHoldingAdmin()) {
      router.push(`/virtual-classes/providers/${saved.id}/access`);
      return;
    }
    router.push("/virtual-classes/providers");
  };

  return (
    <AppShell title="ثبت سرور">
      <PageHeader
        title="ثبت سرور"
        subtitle="مشخصات اتصال را ذخیره کنید. دسترسی شعب در صفحه بعد تعیین می‌شود."
        actions={
          <Link href="/virtual-classes/providers" className="text-sm text-[var(--primary)]">
            بازگشت به فهرست
          </Link>
        }
      />
      <ProviderServerForm onSaved={onSaved} onCancel={() => router.push("/virtual-classes/providers")} />
    </AppShell>
  );
}
