python-gallery/gallery/views/profile.py
Michał 7c553e99b8 Switch to Flask-SQLAlchemy
Add FLask-Migrate for next step in the Migration 😉
2023-04-09 19:12:35 +00:00

37 lines
1 KiB
Python

"""
Onlylegs Gallery - Profile view
"""
from flask import Blueprint, render_template, request
from werkzeug.exceptions import abort
from flask_login import current_user
from gallery.models import Posts, Users
blueprint = Blueprint("profile", __name__, url_prefix="/profile")
@blueprint.route("/profile")
def profile():
"""
Profile overview, shows all profiles on the onlylegs gallery
"""
user_id = request.args.get("id", default=None, type=int)
# If there is no userID set, check if the user is logged in and display their profile
if not user_id:
if current_user.is_authenticated:
user_id = current_user.id
else:
abort(404, "You must be logged in to view your own profile!")
# Get the user's data
user = Users.query.filter(Users.id == user_id).first()
if not user:
abort(404, "User not found :c")
images = Posts.query.filter(Posts.author_id == user_id).all()
return render_template("profile.html", user=user, images=images)