You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
amphora-wiki/src/app.py

48 lines
1.2 KiB

import os
5 years ago
from flask import Flask, flash, make_response, render_template, request, redirect, abort
import content as con_gen
import config
import search as src
from forms import SearchForm, csrf
5 years ago
app = Flask(__name__)
SECRET_KEY = os.urandom(32)
app.secret_key = SECRET_KEY
csrf.init_app(app)
TITLE = config.TITLE
STYLE = config.STYLE
5 years ago
@app.errorhandler(404)
def page_not_found(e):
return render_template('error.html', title=TITLE, errorcode='404', style=STYLE), 404
5 years ago
@app.route('/')
@app.route('/index.html')
def index():
return 'placeholder for index', 200
@app.route('/search', methods=['GET', 'POST'])
def search():
form = SearchForm()
if request.method == 'POST':
query_str = request.form['query_str']
content = con_gen.gen_query_res_string(query_str)
return render_template('search.html', title=TITLE, style=STYLE, form=form, content=content), 200
return render_template('search.html', title=TITLE, style=STYLE, form=form, content=''), 200
@app.route('/entry/<path:fullurl>')
def entry(fullurl):
content = con_gen.gen_stand_string(fullurl)
return render_template('entry.html', title=TITLE, style=STYLE, content=content), 200
5 years ago
if __name__ == '__main__':
app.run(host='0.0.0.0')