- {selectedLessons.map((lesson, index) => (
+ {selectedLessons.map(async (lesson, index) => {
+ return (
- ))}
+ )
+ })
+ }
{lessons.map((lesson, index) => (
{
-
+
);
diff --git a/src/hooks/nostrQueries/zaps/useZapsSubscription.js b/src/hooks/nostrQueries/zaps/useZapsSubscription.js
index 60d4052..3cf5c06 100644
--- a/src/hooks/nostrQueries/zaps/useZapsSubscription.js
+++ b/src/hooks/nostrQueries/zaps/useZapsSubscription.js
@@ -35,7 +35,6 @@ export function useZapsSubscription({event}) {
});
subscription.on('eose', () => {
- console.log("eose");
// Only set loading to false if no zaps have been received yet
if (isFirstZap) {
setZapsLoading(false);
diff --git a/src/pages/api/courses/drafts/[slug].js b/src/pages/api/courses/drafts/[slug].js
index 2ffbc52..48dc0d8 100644
--- a/src/pages/api/courses/drafts/[slug].js
+++ b/src/pages/api/courses/drafts/[slug].js
@@ -20,7 +20,6 @@ export default async function handler(req, res) {
}
} else if (userId) {
try {
- console.log('INHEEEERE:', userId);
const courseDrafts = await getAllCourseDraftsByUserId(userId);
res.status(200).json(courseDrafts);
} catch (error) {
diff --git a/src/pages/course/[slug]/draft/edit.js b/src/pages/course/[slug]/draft/edit.js
new file mode 100644
index 0000000..9deefed
--- /dev/null
+++ b/src/pages/course/[slug]/draft/edit.js
@@ -0,0 +1,60 @@
+import React, { useState, useEffect } from "react";
+import axios from "axios";
+import { useRouter } from "next/router";
+import { parseEvent } from "@/utils/nostr";
+import ResourceForm from "@/components/forms/ResourceForm";
+import WorkshopForm from "@/components/forms/WorkshopForm";
+import CourseForm from "@/components/forms/CourseForm";
+import { useNDKContext } from "@/context/NDKContext";
+import { useToast } from "@/hooks/useToast";
+
+export default function Edit() {
+ const [event, setEvent] = useState(null);
+ const [draft, setDraft] = useState(null);
+ const { ndk, addSigner } = useNDKContext();
+ const router = useRouter();
+ const { showToast } = useToast();
+
+ useEffect(() => {
+ if (router.isReady) {
+ const { slug } = router.query;
+ const fetchEvent = async () => {
+ // await ndk.connect();
+ // const fetchedEvent = await ndk.fetchEvent(slug);
+ // if (fetchedEvent) {
+ // const parsedEvent = parseEvent(fetchedEvent);
+ // console.log('parsedEvent:', parsedEvent);
+ // setEvent(parsedEvent);
+ // } else {
+ // If no event found, try to fetch draft
+ try {
+ console.log('fetching draft:', slug);
+ const response = await axios.get(`/api/courses/drafts/${slug}`);
+ console.log('response:', response);
+ if (response.status === 200) {
+ setDraft(response.data);
+ } else {
+ showToast('error', 'Error', 'Draft not found.');
+ }
+ } catch (error) {
+ console.error('Error fetching draft:', error);
+ showToast('error', 'Error', 'Failed to fetch draft.');
+ }
+ // }
+ }
+ fetchEvent();
+ }
+ }, [router.isReady, router.query, ndk, showToast]);
+
+ return (
+
+
Edit {event ? 'Published Event' : 'Draft'}
+ {draft &&
+
+ }
+
+ );
+}
\ No newline at end of file
diff --git a/src/pages/course/[slug]/draft.js b/src/pages/course/[slug]/draft/index.js
similarity index 94%
rename from src/pages/course/[slug]/draft.js
rename to src/pages/course/[slug]/draft/index.js
index 5188069..05f460c 100644
--- a/src/pages/course/[slug]/draft.js
+++ b/src/pages/course/[slug]/draft/index.js
@@ -21,6 +21,7 @@ const DraftCourse = () => {
const router = useRouter();
const {ndk, addSigner} = useNDKContext();
+ const { slug } = router.query;
const fetchAuthor = useCallback(async (pubkey) => {
if (!pubkey) return;
@@ -67,6 +68,7 @@ const DraftCourse = () => {
author
};
}
+
return lesson; // Fallback to the original lesson if no event found
}));
@@ -79,7 +81,7 @@ const DraftCourse = () => {
return (
<>
-
+
{lessonsWithAuthors.length > 0 && lessonsWithAuthors.map((lesson, index) => (
))}