From d02f19bc02e2073d73b1f2ca935387af2d7d465c Mon Sep 17 00:00:00 2001 From: Krishna Agarwal <krishnaagarw@iisc.ac.in> Date: Wed, 4 Sep 2024 07:10:57 +0000 Subject: [PATCH] Replace app.py --- app.py | 87 +++++++++++++++++++++++++++++++++++----------------------- 1 file changed, 52 insertions(+), 35 deletions(-) diff --git a/app.py b/app.py index fa413c7..fa6d426 100644 --- a/app.py +++ b/app.py @@ -1,35 +1,52 @@ -from os import path -from pathlib import Path - -from flask import Flask, render_template -from flask_frozen import Freezer - - -template_folder = path.abspath('./wiki') - -app = Flask(__name__, template_folder=template_folder) -#app.config['FREEZER_BASE_URL'] = environ.get('CI_PAGES_URL') -app.config['FREEZER_DESTINATION'] = 'public' -app.config['FREEZER_RELATIVE_URLS'] = True -app.config['FREEZER_IGNORE_MIMETYPE_WARNINGS'] = True -freezer = Freezer(app) - -@app.cli.command() -def freeze(): - freezer.freeze() - -@app.cli.command() -def serve(): - freezer.run() - -@app.route('/') -def home(): - return render_template('pages/home.html') - -@app.route('/<page>') -def pages(page): - return render_template(str(Path('pages')) + '/' + page.lower() + '.html') - -# Main Function, Runs at http://0.0.0.0:8080 -if __name__ == "__main__": - app.run(port=8080) +from os import path, walk, getcwd +from pathlib import Path +import markdown2 + +from flask import Flask, render_template +from flask_frozen import Freezer + + +template_folder = path.abspath('./wiki') + +app = Flask(__name__, template_folder=template_folder) +#app.config['FREEZER_BASE_URL'] = environ.get('CI_PAGES_URL') +app.config['FREEZER_DESTINATION'] = 'public' +app.config['FREEZER_RELATIVE_URLS'] = True +app.config['FREEZER_IGNORE_MIMETYPE_WARNINGS'] = True +freezer = Freezer(app) + +@app.cli.command() +def freeze(): + freezer.freeze() + +@app.cli.command() +def serve(): + freezer.run() + +@app.route('/') +def home(): + return render_template('pages/home.html') + +def markdown_html(): + filenames = next(walk('./wiki/markdowns/'), (None, None, []))[2] + print(filenames) + bloglist = {} + for filename in filenames: + with open(f'./wiki/markdowns/{filename}', 'r') as file: + bloglist[filename]= markdown2.markdown(file.read(), extras=["metadata"]) + print(bloglist) + return bloglist + +@app.route('/blog') +def blogs(): + x = markdown_html() + print(x['template.md'].metadata) + return render_template('pages/blog.html', bloglist=markdown_html()) + +@app.route('/<page>') +def pages(page): + return render_template(str(Path('pages')) + '/' + page.lower() + '.html') + +# Main Function, Runs at http://0.0.0.0:8080 +if __name__ == "__main__": + app.run(port=8080) -- GitLab