diff --git a/backend/app/routes.py b/backend/app/routes.py index 00968a1..f33a43c 100644 --- a/backend/app/routes.py +++ b/backend/app/routes.py @@ -108,7 +108,7 @@ def get_courses(id): return resp -@bp.route("/user//enroll/", methods=["POST"]) +@bp.route("/user//enroll/", methods=["POST", "DELETE"]) @login_required def enroll_student(uid, cid): u = User.query.get(uid) @@ -119,25 +119,14 @@ def enroll_student(uid, cid): if not c: return error_response(400, f"Course with id {cid} does not exist") - if not u.enroll(c): - return error_response(400, f"User {uid} is already enrolled in course {cid}") + if request.method == "POST": + if not u.enroll(c): + return error_response(400, f"User {uid} is already enrolled in course {cid}") + + elif request.method == "DELETE": + if not u.unenroll(c): + return error_response(400, f"User {uid} is not enrolled in course {cid}") resp = {"user": u.to_dict(), "course": c.to_dict()} return jsonify(resp) - -@bp.route("/user//enroll/", methods=["DELETE"]) -@login_required -def unenroll_student(uid, cid): - u = User.query.get(uid) - if not u: - return error_response(400, f"User with id {uid} does not exist") - - c = Course.query.get(cid) - if not c: - return error_response(400, f"Course with id {cid} does not exist") - - if not u.unenroll(c): - return error_response(400, f"User {uid} is not enrolled in course {cid}") - resp = {"user": u.to_dict(), "course": c.to_dict()} - return jsonify(resp) diff --git a/frontend/public/index.html b/frontend/public/index.html index 104b21e..29efbd7 100644 --- a/frontend/public/index.html +++ b/frontend/public/index.html @@ -22,7 +22,7 @@ work correctly both with client-side routing and a non-root public URL. Learn how to configure a non-root public URL by running `npm run build`. --> - React App + LearningTree