def delete(): course_to_delete = request.form.get('courseID') course_Title = request.form.get('courseTitle') if course_to_delete: Enrollment.objects(courseID=course_to_delete).delete() flash(f"You have deleted the course {course_Title}!", "danger") return redirect(url_for('enrollment')) else: flash(f"Oops, you are not enrolled in that class", "danger") return redirect(url_for('enrollment'))
def enrollment(): if not session.get('username'): return redirect(url_for('login')) courseID = request.form.get('courseID') courseTitle = request.form.get('title') user_id = session.get('user_id') if courseID: if Enrollment.objects(user_id=user_id, courseID=courseID): flash( f"Oops! You are already registered in this course {courseTitle}!", "danger") return redirect(url_for("courses")) else: Enrollment(user_id=user_id, courseID=courseID).save() flash(f"You are enrolled in {courseTitle}!", "success") classes = list( User.objects.aggregate(*[{ '$lookup': { 'from': 'enrollment', 'localField': 'user_id', 'foreignField': 'user_id', 'as': 'r1' } }, { '$unwind': { 'path': '$r1', 'includeArrayIndex': 'r1_id', 'preserveNullAndEmptyArrays': False } }, { '$lookup': { 'from': 'course', 'localField': 'r1.courseID', 'foreignField': 'courseID', 'as': 'r2' } }, { '$unwind': { 'path': '$r2', 'preserveNullAndEmptyArrays': False } }, { '$match': { 'user_id': user_id } }, { '$sort': { 'courseID': 1 } }])) return render_template("enrollment.html", enrollment=True, title="Enrollment", classes=classes)