Mercurial > piecrust2
diff piecrust/admin/views/preview.py @ 778:5e91bc0e3b4d
internal: Move admin panel code into the piecrust package.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Sat, 16 Jul 2016 15:02:24 +0200 |
parents | foodtruck/views/preview.py@3885421c29a3 |
children | 82509bce94ca |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/piecrust/admin/views/preview.py Sat Jul 16 15:02:24 2016 +0200 @@ -0,0 +1,27 @@ +import os.path +from flask import current_app, g, make_response +from flask.ext.login import login_required +from piecrust import CACHE_DIR +from piecrust.app import PieCrustFactory +from piecrust.serving.server import Server +from ..blueprint import foodtruck_bp + + +@foodtruck_bp.route('/site/<sitename>/') +@login_required +def preview_site_root(sitename): + return preview_site(sitename, '/') + + +@foodtruck_bp.route('/site/<sitename>/<path:url>') +@login_required +def preview_site(sitename, url): + root_dir = g.sites.get_root_dir(sitename) + appfactory = PieCrustFactory( + root_dir, + cache_key='foodtruck', + debug=current_app.debug) + server = Server(appfactory, + root_url='/site/%s/' % sitename) + return make_response(server._run_request) +