import FormLayout, { ButtonBlack, Flex, FormField, FormLabel, Input, Textarea } from '@components/UI/Form/Form' import * as Form from '@radix-ui/react-form' import { getAPIUrl, getUriWithOrg } from '@services/config/config'; import { FormMessage } from "@radix-ui/react-form"; import { createNewCourse } from '@services/courses/courses'; import { getOrganizationContextInfo } from '@services/organizations/orgs'; import React, { useState } from 'react' import { BarLoader } from 'react-spinners' import { mutate } from 'swr'; function CreateCourseModal({ closeModal, orgslug }: any) { const [isSubmitting, setIsSubmitting] = useState(false); const [name, setName] = React.useState(""); const [description, setDescription] = React.useState(""); const [isLoading, setIsLoading] = React.useState(false); const [thumbnail, setThumbnail] = React.useState(null) as any; const [orgId, setOrgId] = React.useState(null) as any; const getOrgMetadata = async () => { const org = await getOrganizationContextInfo(orgslug); setOrgId(org.org_id); } const handleNameChange = (event: React.ChangeEvent) => { setName(event.target.value); }; const handleDescriptionChange = (event: React.ChangeEvent) => { setDescription(event.target.value); }; const handleThumbnailChange = (event: React.ChangeEvent) => { setThumbnail(event.target.files[0]); }; const handleSubmit = async (e: any) => { e.preventDefault(); setIsSubmitting(true); let status = await createNewCourse(orgId, { name, description }, thumbnail); mutate(`${getAPIUrl()}courses/org_slug/${orgslug}/page/1/limit/10`); setIsSubmitting(false); if (status.org_id == orgId) { closeModal(); } else { alert("Error creating course, please see console logs"); console.log(status); } }; React.useEffect(() => { if (orgslug) { getOrgMetadata(); } }, [isLoading, orgslug]); return ( Course name Please provide a course name Course description Please provide a course description