Mercurial > piecrust2
annotate foodtruck/views/preview.py @ 704:89ca8cdab020
admin: Fix crash when previewing a website.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Wed, 20 Apr 2016 23:07:27 -0700 |
parents | d4a01a023998 |
children | 3885421c29a3 |
rev | line source |
---|---|
587
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
1 import os.path |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
2 from flask import g, make_response |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
3 from flask.ext.login import login_required |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
4 from piecrust import CACHE_DIR |
704
89ca8cdab020
admin: Fix crash when previewing a website.
Ludovic Chabant <ludovic@chabant.com>
parents:
587
diff
changeset
|
5 from piecrust.app import PieCrustFactory |
587
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
6 from piecrust.serving.server import Server |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
7 from ..web import app |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
8 |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
9 |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
10 @app.route('/site/<sitename>/') |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
11 @login_required |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
12 def preview_site_root(sitename): |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
13 return preview_site(sitename, '/') |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
14 |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
15 |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
16 @app.route('/site/<sitename>/<path:url>') |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
17 @login_required |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
18 def preview_site(sitename, url): |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
19 root_dir = g.sites.get_root_dir(sitename) |
704
89ca8cdab020
admin: Fix crash when previewing a website.
Ludovic Chabant <ludovic@chabant.com>
parents:
587
diff
changeset
|
20 appfactory = PieCrustFactory( |
89ca8cdab020
admin: Fix crash when previewing a website.
Ludovic Chabant <ludovic@chabant.com>
parents:
587
diff
changeset
|
21 root_dir, |
89ca8cdab020
admin: Fix crash when previewing a website.
Ludovic Chabant <ludovic@chabant.com>
parents:
587
diff
changeset
|
22 cache_key='foodtruck', |
89ca8cdab020
admin: Fix crash when previewing a website.
Ludovic Chabant <ludovic@chabant.com>
parents:
587
diff
changeset
|
23 debug=app.debug) |
89ca8cdab020
admin: Fix crash when previewing a website.
Ludovic Chabant <ludovic@chabant.com>
parents:
587
diff
changeset
|
24 server = Server(appfactory, |
89ca8cdab020
admin: Fix crash when previewing a website.
Ludovic Chabant <ludovic@chabant.com>
parents:
587
diff
changeset
|
25 root_url='/site/%s/' % sitename) |
587
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
26 return make_response(server._run_request) |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
27 |
d4a01a023998
admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff
changeset
|
28 |