flask/flask_website/__init__.py

55 lines
1.6 KiB
Python
Raw Normal View History

2010-05-03 11:20:52 +02:00
from flask import Flask, session, g, render_template
2010-05-15 23:19:13 +02:00
from flaskext.openid import OpenID
2010-05-02 16:52:15 +02:00
2010-05-02 19:07:42 +02:00
import websiteconfig as config
2010-05-02 16:52:15 +02:00
app = Flask(__name__)
2010-05-02 19:07:42 +02:00
app.debug = config.DEBUG
2010-05-03 11:20:52 +02:00
app.secret_key = config.SECRET_KEY
2010-05-02 16:52:15 +02:00
2010-05-15 23:19:13 +02:00
from flask_website.openid_auth import DatabaseOpenIDStore
2010-06-21 19:53:31 +02:00
oid = OpenID(app, store_factory=DatabaseOpenIDStore)
2010-05-15 23:19:13 +02:00
2010-06-18 15:42:43 +08:00
2010-05-02 16:52:15 +02:00
@app.errorhandler(404)
def not_found(error):
return render_template('404.html'), 404
2010-06-18 15:42:43 +08:00
2010-05-03 11:20:52 +02:00
@app.before_request
2010-06-18 15:42:43 +08:00
def load_current_user():
2010-05-03 11:20:52 +02:00
g.user = User.query.filter_by(openid=session['openid']).first() \
if 'openid' in session else None
2010-06-18 15:42:43 +08:00
2010-05-03 13:03:44 +02:00
@app.after_request
def remove_db_session(response):
2010-05-03 13:03:44 +02:00
db_session.remove()
return response
2010-05-03 13:03:44 +02:00
2010-05-16 15:02:09 +02:00
app.add_url_rule('/docs/', endpoint='docs.index', build_only=True)
app.add_url_rule('/docs/<path:page>/', endpoint='docs.show',
build_only=True)
app.add_url_rule('/docs/flask-docs.pdf', endpoint='docs.pdf',
build_only=True)
app.add_url_rule('/docs/flask-docs.zip', endpoint='docs.zip',
build_only=True)
2010-07-15 19:25:23 +02:00
from flask_website.views import general
from flask_website.views import community
from flask_website.views import mailinglist
from flask_website.views import snippets
from flask_website.views import extensions
app.register_module(general.mod)
app.register_module(community.mod)
app.register_module(mailinglist.mod)
app.register_module(snippets.mod)
app.register_module(extensions.mod)
2010-05-03 11:20:52 +02:00
2010-05-03 13:03:44 +02:00
from flask_website.database import User, db_session
2010-05-16 01:06:37 +02:00
from flask_website import utils
app.jinja_env.filters['datetimeformat'] = utils.format_datetime
app.jinja_env.filters['timedeltaformat'] = utils.format_timedelta
app.jinja_env.filters['displayopenid'] = utils.display_openid