summaryrefslogtreecommitdiffhomepage
path: root/apioforum/user.py
blob: af0539a01799d222b5024225744007f0e65af307 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# user pages

from flask import (
    Blueprint, render_template, abort, g
)

from .db import get_db
from .mdrender import render

bp = Blueprint("user", __name__, url_prefix="/user")

@bp.route("/<username>")
def view_user(username):
    db = get_db()
    user = db.execute("SELECT * FROM users WHERE username = ?;",(username,)).fetchone()
    if user is None:
        abort(404)
    posts = db.execute(
            "SELECT * FROM posts WHERE author = ? ORDER BY created DESC LIMIT 25;",(username,)).fetchall()
    rendered_posts = [render(post['content']) for post in posts]
    return render_template("view_user.html", 
            user=user, 
            rendered_bio=render(user['bio'] or "hail GEORGE"), 
            posts=posts,
            rendered_posts=rendered_posts)