import React, { useState } from 'react'; import { Head, Link, router } from '@inertiajs/react'; import axios from 'axios'; import { toast } from 'sonner'; import { Loader2, Users, DollarSign, MessageSquare } from 'lucide-react'; const countries = [ 'United Arab Emirates', 'Saudi Arabia', 'Qatar', 'Oman', 'Kuwait', 'Bahrain', 'United Kingdom', 'United States', 'Canada', 'Australia', 'Singapore' ]; export default function Register() { const [data, setData] = useState({ company_name: '', name: '', email: '', phone: '', country: 'United Arab Emirates', }); const [loading, setLoading] = useState(false); const [errors, setErrors] = useState({}); const handleInputChange = (field, value) => { setData(prev => ({ ...prev, [field]: value })); if (errors[field]) { setErrors(prev => ({ ...prev, [field]: null })); } }; const handleSubmit = async (e) => { e.preventDefault(); setLoading(true); setErrors({}); try { await axios.post('/employer/register', data); toast.success('Registration details saved! A 6-digit verification code has been sent to your email.'); router.visit('/employer/verify-email'); } catch (err) { if (err.response) { if (err.response.status === 409) { const errMsg = err.response.data?.errors?.email || 'This email address is already registered.'; setErrors({ email: errMsg }); toast.error(errMsg); } else if (err.response.status === 422) { setErrors(err.response.data.errors || {}); toast.error('Validation failed. Please correct the fields in red.'); } else { toast.error('Something went wrong. Please try again.'); } } else { toast.error('Network error. Please check your internet connection.'); } } finally { setLoading(false); } }; const renderStepIndicator = () => (
{[ { step: 1, label: 'Register' }, { step: 2, label: 'Verify' }, { step: 3, label: 'Password' } ].map((s) => (
{s.step}
{s.label}
))}
); return (
{/* Left Brand Panel (Desktop Only) */}
M
Marketplace Portal
Employer Registration

Find verified domestic workers — no agents, no fees.

Register to review your shortlisted candidates, manage interview schedules, and communicate directly.

{/* Stat Row */}
500+
Verified Workers
0 AED
Agent Fees
Direct
Messaging
© 2026 Domestic Worker Marketplace. All rights reserved.
{/* Right Registration Form */}

Create Account

Register your employer portal to start searching

{renderStepIndicator()}
{/* Company Name */}
handleInputChange('company_name', e.target.value)} placeholder="e.g. Al Mansoor Household" className={`w-full px-3.5 py-2.5 rounded-xl border text-sm focus:outline-none focus:ring-2 ${ errors.company_name ? 'border-red-500 focus:ring-red-500/20 focus:border-red-500' : 'border-slate-300 focus:ring-[#185FA5]/20 focus:border-[#185FA5]' }`} required /> {errors.company_name && (

{errors.company_name[0] || errors.company_name}

)}
{/* Contact Name */}
handleInputChange('name', e.target.value)} placeholder="e.g. Abdullah Bin Ahmed" className={`w-full px-3.5 py-2.5 rounded-xl border text-sm focus:outline-none focus:ring-2 ${ errors.name ? 'border-red-500 focus:ring-red-500/20 focus:border-red-500' : 'border-slate-300 focus:ring-[#185FA5]/20 focus:border-[#185FA5]' }`} required /> {errors.name && (

{errors.name[0] || errors.name}

)}
{/* Work Email */}
handleInputChange('email', e.target.value)} placeholder="employer@domain.com" className={`w-full px-3.5 py-2.5 rounded-xl border text-sm focus:outline-none focus:ring-2 ${ errors.email ? 'border-red-500 focus:ring-red-500/20 focus:border-red-500' : 'border-slate-300 focus:ring-[#185FA5]/20 focus:border-[#185FA5]' }`} required /> {errors.email && (

{errors.email[0] || errors.email}

)}
{/* Mobile Number */}
handleInputChange('phone', e.target.value)} placeholder="e.g. +971501234567" className={`w-full px-3.5 py-2.5 rounded-xl border text-sm focus:outline-none focus:ring-2 ${ errors.phone ? 'border-red-500 focus:ring-red-500/20 focus:border-red-500' : 'border-slate-300 focus:ring-[#185FA5]/20 focus:border-[#185FA5]' }`} required /> {errors.phone && (

{errors.phone[0] || errors.phone}

)}
{/* Country Dropdown */}
{errors.country && (

{errors.country[0] || errors.country}

)}

Already have an account?{' '} Sign in

); }