PCv5/app/routes/users.py

31 lines
1.1 KiB
Python
Raw Normal View History

2019-12-09 23:24:05 +01:00
from flask import redirect, url_for, send_from_directory
from werkzeug.utils import secure_filename
import os.path
from app import app
2019-02-05 11:30:39 +01:00
from app.models.users import Member
from app.models.trophies import Trophy
from app.utils import unicode_names
2019-02-05 11:30:39 +01:00
from app.utils.render import render
2019-12-09 23:24:05 +01:00
from config import V5Config
2019-02-05 11:30:39 +01:00
2019-12-16 23:57:50 +01:00
@app.route('/membre/<username>')
def user(username):
norm = unicode_names.normalize(username)
member = Member.query.filter_by(norm=norm).first_or_404()
trophies = Trophy.query.all()
return render('account/user.html', member=member, trophies=trophies)
2019-02-05 11:30:39 +01:00
2019-12-16 23:57:50 +01:00
@app.route('/membre/id/<int:user_id>')
def user_by_id(user_id):
member = Member.query.filter_by(id=user_id).first_or_404()
return redirect(url_for('user', username=member.name))
2019-12-09 23:24:05 +01:00
@app.route('/avatar/<filename>')
def avatar(filename):
filename = secure_filename(filename) # No h4ckers allowed
if os.path.isfile(V5Config.AVATARS_FOLDER + filename):
return send_from_directory(V5Config.AVATARS_FOLDER, filename)
2019-12-09 23:24:05 +01:00
return redirect(url_for('static', filename='images/default_avatar.png'))