"""Flask server.""" from csv import DictReader from os import listdir from os.path import basename, dirname, splitext from pathlib import Path from flask import Flask, render_template from ruamel.yaml import YAML app = Flask(__name__) cwd = dirname(Path(__file__).absolute()) yaml = YAML() @app.route("/") def about(): return render_template("about.html") @app.route("/programmes") def programmes(): programmes = [] path = cwd / Path("static/programmes/") for file in listdir(path): with open(path / file, "r") as handle: contents = handle.read() loaded = yaml.load(contents) programmes.append(loaded) return render_template("programmes.html", programmes=programmes) @app.route("/collection") def collection(): collection = [] path = cwd / Path("static/csv/collection.csv") with open(path, "r") as handle: reader = DictReader(handle) for row in reader: collection.append(row) return render_template("collection.html", collection=collection) @app.route("/participate") def participate(): return render_template("participate.html")