feat: add editable ordered trail pages
This commit is contained in:
@@ -40,6 +40,7 @@ import { getManagedCourses, saveCourse, deleteCourse, duplicateCourse, getCommen
|
||||
import { getAttachmentIcon, getAttachmentBadge } from '../components/MaterialCard';
|
||||
import { CourseCoverImage } from '../components/CourseCoverImage';
|
||||
import { BunnyVideo, courseApi, instructorApi, InstructorAnalytics } from '../services/api';
|
||||
import { useSearchParams } from 'react-router-dom';
|
||||
|
||||
const formatVideoDuration = (seconds: number | null | undefined) => {
|
||||
if (!seconds || seconds < 1) return 'Processando';
|
||||
@@ -904,6 +905,7 @@ const CourseModal: React.FC<{
|
||||
};
|
||||
|
||||
export const ManageCourses: React.FC = () => {
|
||||
const [searchParams, setSearchParams] = useSearchParams();
|
||||
const [courses, setCourses] = useState<Course[]>([]);
|
||||
const [isModalOpen, setIsModalOpen] = useState(false);
|
||||
const [editingCourse, setEditingCourse] = useState<Course | undefined>(undefined);
|
||||
@@ -936,6 +938,17 @@ export const ManageCourses: React.FC = () => {
|
||||
loadData();
|
||||
}, []);
|
||||
|
||||
useEffect(() => {
|
||||
const courseId = searchParams.get('editar');
|
||||
if (!courseId || courses.length === 0) return;
|
||||
const course = courses.find((item) => item.id === courseId);
|
||||
if (course) {
|
||||
setEditingCourse(course);
|
||||
setIsModalOpen(true);
|
||||
}
|
||||
setSearchParams({}, { replace: true });
|
||||
}, [courses, searchParams, setSearchParams]);
|
||||
|
||||
const handleCreate = () => {
|
||||
setEditingCourse(undefined);
|
||||
setIsModalOpen(true);
|
||||
|
||||
Reference in New Issue
Block a user