Создание миссии
Заполните форму для создания новой миссии
'use client'; import { useEffect, useState } from 'react'; import { useRouter } from 'next/navigation'; import { motion } from 'framer-motion'; import { ArrowLeft, Save } from 'lucide-react'; import useStore from '@/lib/store'; import HRSidebar from '@/components/navigation/hr-sidebar'; import CosmicCard from '@/components/ui/cosmic-card'; import { categories, ranks } from '@/lib/mockData'; import { toast } from 'sonner'; const icons = [ 'FileText', 'Users', 'Code', 'Presentation', 'BookOpen', 'Lightbulb', 'Rocket', 'TrendingUp', 'Target', 'Award', ]; export default function CreateMissionPage() { const router = useRouter(); const { user, isHR, addMission } = useStore(); const [formData, setFormData] = useState({ title: '', description: '', category: 'Рекрутинг', experienceReward: 100, manaReward: 50, requiredRank: 'Искатель', icon: 'Target', skills: [], }); useEffect(() => { if (!user) { router.push('/login'); } else if (!isHR) { router.push('/dashboard'); } }, [user, isHR, router]); if (!user || !isHR) return null; const handleSubmit = (e) => { e.preventDefault(); if (!formData.title || !formData.description) { toast.error('Заполните все обязательные поля'); return; } addMission(formData); toast.success('Миссия создана успешно!'); router.push('/hr/missions'); }; const handleChange = (field, value) => { setFormData((prev) => ({ ...prev, [field]: value })); }; return (
Заполните форму для создания новой миссии