view hgwebsite.py @ 405:4dfad479ee98

Properly serve static files in static/$FILE directly
author David Soria Parra <davidsp@fb.com>
date Tue, 11 Mar 2014 15:17:05 -0700
parents 4d4c4b73808e
children 8e93934dc587
line wrap: on
line source

#
# (c) 2014 David Soria Parra <dsp@php.net>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
import os
import flask

app = flask.Flask(__name__)


@app.route('/')
def indexpage():
    return flask.render_template('frontpage.html')


@app.route('/<site>')
def about(site=None):
    if not site:
        flask.abort(404)
    root = os.path.dirname(os.path.abspath(__file__))
    tpath = os.path.join(root, 'templates', site, 'index.html')
    if os.path.exists(tpath):
        t = os.path.join(site, 'index.html')
        return flask.render_template(t)
    spath = os.path.join(root, 'static', site)
    if os.path.exists(spath):
        return app.send_static_file(site)
    flask.abort(404)


if os.getenv("HGWEBSITE_DEBUG", None):
    app.debug = True

if __name__ == '__main__':
    app.run()