Upload video bug fix

This commit is contained in:
Rotimi Best
2023-08-11 09:26:40 +01:00
parent 5e252e21e7
commit 3754ef90bd
2 changed files with 48 additions and 44 deletions
@@ -102,7 +102,7 @@
</span> </span>
<PrimaryButton label="Try again" /> <PrimaryButton label="Try again" />
</div> </div>
{:else if $uploadCourseVideoStore.formRes?.success} {:else if !$uploadCourseVideoStore.formRes?.success}
<div class="h-full w-full flex flex-col items-center justify-center rounded-xl"> <div class="h-full w-full flex flex-col items-center justify-center rounded-xl">
<img src="/video-upload-error.svg" alt="upload error" /> <img src="/video-upload-error.svg" alt="upload error" />
<span class="pt-3 pb-2"> <span class="pt-3 pb-2">
@@ -30,52 +30,56 @@ const S3 = new S3Client({
const supabase = getSupabase(); const supabase = getSupabase();
const uploadToMuse = (s3Data, fileName, lessonId, fileUrl) => { const uploadToMuse = (s3Data, fileName, lessonId, fileUrl) => {
const form = new FormData(); try {
form.append('file', s3Data, fileName); const form = new FormData();
form.append('file', s3Data, fileName);
axios({ axios({
method: 'POST', method: 'POST',
url: 'https://api.muse.ai/api/files/upload', url: 'https://api.muse.ai/api/files/upload',
data: form, data: form,
maxContentLength: Infinity, maxContentLength: Infinity,
maxBodyLength: Infinity, maxBodyLength: Infinity,
headers: { headers: {
Key: MUSE_API_KEY Key: MUSE_API_KEY
}
})
.then(async function (response) {
console.log('Upload to muse complete', response.data);
const { data: lesson } = await supabase
.from('lesson')
.select(`*`)
.eq('id', lessonId)
.single();
if (lesson) {
// Add Muse response to metadata
const videos = lesson.videos.map((v) => {
if (v.link === fileUrl) {
console.log('matches');
v.metadata = JSON.parse(JSON.stringify(response.data));
}
return v;
});
const { error, data } = await supabase
.from('lesson')
.update({ videos })
.eq('id', lessonId)
.select();
if (error) {
console.log('Error updating lesson', error);
}
console.log('update data', data);
} }
}) })
.catch(function (error) { .then(async function (response) {
console.log('Upload to Muse failed', error); console.log('Upload to muse complete', response.data);
});
const { data: lesson } = await supabase
.from('lesson')
.select(`*`)
.eq('id', lessonId)
.single();
if (lesson) {
// Add Muse response to metadata
const videos = lesson.videos.map((v) => {
if (v.link === fileUrl) {
console.log('matches');
v.metadata = JSON.parse(JSON.stringify(response.data));
}
return v;
});
const { error, data } = await supabase
.from('lesson')
.update({ videos })
.eq('id', lessonId)
.select();
if (error) {
console.log('Error updating lesson', error);
}
console.log('update data', data);
}
})
.catch(function (error) {
console.log('Upload to Muse failed', error);
});
} catch (error) {
console.log('Upload to Muse failed', error);
}
}; };
export const load = ({ params = { id: '' } }) => { export const load = ({ params = { id: '' } }) => {