fix: reformat upload files

This commit is contained in:
swve 2022-12-11 17:09:07 +01:00
parent 88644ad902
commit 805df9b520
6 changed files with 30 additions and 28 deletions

View file

@ -1,14 +1,13 @@
import json import json
import os
from typing import List from typing import List
from uuid import uuid4 from uuid import uuid4
from pydantic import BaseModel from pydantic import BaseModel
from src.services.courses.elements.elements import ElementInDB from src.services.courses.elements.elements import ElementInDB
from src.services.uploads import upload_thumbnail from src.services.courses.thumbnails import upload_thumbnail
from src.services.users import PublicUser, User from src.services.users import PublicUser
from src.services.database import create_config_collection, check_database, create_database, learnhouseDB from src.services.database import check_database, learnhouseDB
from src.services.security import * from src.services.security import *
from fastapi import FastAPI, HTTPException, status, Request, Response, BackgroundTasks, UploadFile, File from fastapi import HTTPException, status, UploadFile
from datetime import datetime from datetime import datetime
#### Classes #################################################### #### Classes ####################################################
@ -79,7 +78,6 @@ async def get_course_meta(course_id: str, current_user: PublicUser):
course = courses.find_one({"course_id": course_id}) course = courses.find_one({"course_id": course_id})
elements = learnhouseDB["elements"] elements = learnhouseDB["elements"]
# verify course rights # verify course rights
await verify_rights(course_id, current_user, "read") await verify_rights(course_id, current_user, "read")
@ -87,7 +85,6 @@ async def get_course_meta(course_id: str, current_user: PublicUser):
raise HTTPException( raise HTTPException(
status_code=status.HTTP_409_CONFLICT, detail="Course does not exist") status_code=status.HTTP_409_CONFLICT, detail="Course does not exist")
coursechapters = coursechapters.find( coursechapters = coursechapters.find(
{"course_id": course_id}).sort("name", 1) {"course_id": course_id}).sort("name", 1)

View file

@ -1,21 +1,7 @@
import os import os
async def upload_thumbnail(thumbnail_file, name_in_disk): async def upload_video(video_file, element_id):
contents = thumbnail_file.file.read()
try:
with open(f"content/uploads/img/{name_in_disk}", 'wb') as f:
f.write(contents)
f.close()
except Exception as e:
print(e)
return {"message": "There was an error uploading the file"}
finally:
thumbnail_file.file.close()
async def upload_video(video_file, name_in_disk, element_id):
contents = video_file.file.read() contents = video_file.file.read()
video_format = video_file.filename.split(".")[-1] video_format = video_file.filename.split(".")[-1]
# create folder # create folder

View file

@ -1,10 +1,10 @@
from pydantic import BaseModel from pydantic import BaseModel
from src.services.database import create_config_collection, check_database, create_database, learnhouseDB from src.services.database import check_database, learnhouseDB
from src.services.security import verify_user_rights_with_roles from src.services.security import verify_user_rights_with_roles
from src.services.uploads import upload_video from src.services.courses.elements.uploads import upload_video
from src.services.users import PublicUser, User from src.services.users import PublicUser
from src.services.courses.elements.elements import ElementInDB, Element from src.services.courses.elements.elements import ElementInDB
from fastapi import FastAPI, HTTPException, status, Request, Response, BackgroundTasks, UploadFile, File from fastapi import HTTPException, status, UploadFile
from uuid import uuid4 from uuid import uuid4
from datetime import datetime from datetime import datetime
@ -48,7 +48,7 @@ async def create_video_element(name: str, coursechapter_id: str, current_user:
print("uploading video") print("uploading video")
# get videofile format # get videofile format
await upload_video(video_file, video_file.filename, element_id) await upload_video(video_file, element_id)
# todo : choose whether to update the chapter or not # todo : choose whether to update the chapter or not
# update chapter # update chapter

View file

@ -0,0 +1,4 @@
from uuid import uuid4

View file

View file

@ -0,0 +1,15 @@
import os
async def upload_thumbnail(thumbnail_file, name_in_disk):
contents = thumbnail_file.file.read()
try:
with open(f"content/uploads/img/{name_in_disk}", 'wb') as f:
f.write(contents)
f.close()
except Exception as e:
print(e)
return {"message": "There was an error uploading the file"}
finally:
thumbnail_file.file.close()