You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.1 KiB
Python

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

import typing as t
from flask import Blueprint, abort, render_template, request, send_from_directory
main = Blueprint("main", __name__, url_prefix="/")
@main.route("/")
def home():
"""home route"""
return render_template("home.html")
@main.route("/about/")
def about():
"""home route"""
return render_template("about.html")
@main.route("/actes/")
def corpora_all():
"""copora all route"""
# FIXME rendre ce template dynamique, if faut récuperer les maisons depuis la base
# FIXME récupérer les maisons depuis la base
# house_label = ["Bourbon", "Berry", "Anjou"]
return render_template("corpora_all.html")
@main.route("/actes/<house>") # dont put a slash at the end
def actes(house):
"""actes route"""
#house = "Berry"
# FIXME faire des princes correspondant à la maison (house) sélectionnée
# FIXME : supprimer ces ids
# Corpus > Bourbon
princes = [("Charles Ier de Bourbon", 36), ("Agnès de Bourgogne", 38),
("Marie de Berry", 39)]
return render_template("corpus.html", house=house, princes=princes)
# FIXME SLUGGIFY the house
# FIXME supprimer cet id de prince et remplacer par le slug du prince
@main.route("/actes/<house>/<prince>") # don't put a slash at the end
def prince_corpus(house=None, prince=None):
"""copora prince, **timeline view**"""
return "FIXME"
# FIXME : slugigy this route (remove acte_id) (prince and acte)
# FIXME: isn't it /acte/house/prince/slug instead of /acte/prince/slug ?
@main.route("/acte/<prince>/<acte_id>") # don't put a slash at the end
def acte(house=None, prince=None, acte_id=None):
"""specific prince's acte"""
return "FIXME"
@main.route("/contact")
def contact() -> t.Text:
"""Displays the Contact page"""
return render_template("contact.html", title="Contact")
@main.route("/termsofservice")
def terms() -> t.Text:
"""Displaysthe T&C page."""
return render_template("terms.html", title="Mentions légales")
@main.route("/privacy")
def privacy() -> t.Text:
"""Displays the privacy policy page."""
return render_template("privacy.html", title="Politique de confidentialité")