'use client' import { redirect, useSearchParams } from 'next/navigation' import { Suspense } from 'react' import { AuthFlow } from '@/components/auth/auth-flow' import { AuthGuard } from '@/components/auth-guard' function RegisterContent() { console.log('🎯 RegisterContent - компонент рендерится') const searchParams = useSearchParams() const partnerCode = searchParams.get('partner') const referralCode = searchParams.get('ref') console.log('🔍 RegisterContent - URL параметры:', { partnerCode, referralCode, searchParams: Object.fromEntries(searchParams.entries()), allParams: searchParams.toString(), currentURL: typeof window !== 'undefined' ? window.location.href : 'server', }) // Валидация: нельзя использовать оба параметра одновременно if (partnerCode && referralCode) { console.error('Попытка использовать и ref и partner одновременно') redirect('/register') // Редирект на чистую регистрацию return null } // Валидация формата кода (поддерживаем партнерские и реферальные коды) const isValidCode = (code: string | null): boolean => { if (!code) return true // null/undefined разрешены // Партнерские коды: FF_INN_TIMESTAMP или SL_PHONE_TIMESTAMP if (code.match(/^[A-Z]{2}_\d+_\d+$/)) return true // Реферальные коды: 10 символов из разрешенного набора if (code.match(/^[ABCDEFGHJKLMNPQRSTUVWXYZ23456789]{10}$/)) return true return false } if (referralCode && !isValidCode(referralCode)) { console.error(`Недействительный реферальный код: ${referralCode}`) redirect('/register') return null } if (partnerCode && !isValidCode(partnerCode)) { console.error(`Недействительный партнерский код: ${partnerCode}`) redirect('/register') return null } console.log('🚀 RegisterContent - Передача в AuthFlow:', { partnerCode, referralCode }) // Если есть реферальный или партнерский код, всегда показываем AuthFlow // даже для авторизованных пользователей (для создания дополнительных организаций) if (partnerCode || referralCode) { console.log('🎯 RegisterContent - Принудительный показ AuthFlow из-за наличия кода') return } return ( }> {/* Если пользователь авторизован, перенаправляем в дашборд */} {redirect('/dashboard')} ) } export default function RegisterPage() { console.log('🚀 RegisterPage - компонент рендерится') return ( Загрузка...}> ) }