From 2c42e8a759de46321bb331c20fd2e8b86a60bf11 Mon Sep 17 00:00:00 2001 From: kosh Date: Sun, 1 Sep 2024 18:06:26 +0530 Subject: [PATCH] Add upload project files --- backend/data/project-files/.gitkeep | 0 backend/src/rest_api.py | 19 +++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 backend/data/project-files/.gitkeep diff --git a/backend/data/project-files/.gitkeep b/backend/data/project-files/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/backend/src/rest_api.py b/backend/src/rest_api.py index de229e3..af739d4 100644 --- a/backend/src/rest_api.py +++ b/backend/src/rest_api.py @@ -1,3 +1,4 @@ +import os from re import T import secrets import sqlite3 @@ -172,3 +173,21 @@ def update_ideas() -> flask.Response: except KeyError: return flask.Response("Something is missing", 422) return flask.Response() + + +@app.post("/upload-project-file") +def upload_project_files() -> flask.Response: + try: + user_id = flask.session["user_id"] + except KeyError: + return flask.Response("Not logged in", 428) + team_id = utils.UserHandler.get_user_by_id(user_id).team_id + try: + file = flask.request.files["file"] + except KeyError: + return flask.Response("file missing", 422) + file_name = file.filename if file.filename else secrets.token_urlsafe(20) + if not os.path.isdir(f"./data/project-files/{team_id}"): + os.mkdir(f"./data/project-files/{team_id}") + file.save(f"./data/project-files/{team_id}/{file_name}") + return flask.Response()