annotate piecrust/admin/views/dashboard.py @ 928:41db689d36b6

serve: Fix post editing when the post has assets.
author Ludovic Chabant <ludovic@chabant.com>
date Sun, 01 Oct 2017 20:38:43 -0700
parents 175d80cf75d7
children 7ecb946bfafd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
2 import os.path
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
3 import logging
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4 from flask import (
812
82509bce94ca internal: PEP8 fixup for admin panel code.
Ludovic Chabant <ludovic@chabant.com>
parents: 778
diff changeset
5 current_app, g, request,
82509bce94ca internal: PEP8 fixup for admin panel code.
Ludovic Chabant <ludovic@chabant.com>
parents: 778
diff changeset
6 render_template, url_for, redirect)
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
7 from flask.ext.login import login_user, logout_user, login_required
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
8 from piecrust.sources.fs import FSContentSourceBase
886
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
9 from piecrust.sources.interfaces import IInteractiveSource
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
10 from piecrust.uriutil import split_uri
594
8f9cf1bcbe76 admin: Dashboard UI cleaning, re-use utility function for page summaries.
Ludovic Chabant <ludovic@chabant.com>
parents: 587
diff changeset
11 from ..textutil import text_preview
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
12 from ..blueprint import foodtruck_bp, load_user
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
13 from ..views import with_menu_context
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 logger = logging.getLogger(__name__)
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
17
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
18
772
3885421c29a3 admin: Make the whole FoodTruck site into a blueprint.
Ludovic Chabant <ludovic@chabant.com>
parents: 770
diff changeset
19 @foodtruck_bp.route('/')
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
20 @login_required
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
21 def index():
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
22 data = {}
610
efc1dc916e7c admin: Configuration changes.
Ludovic Chabant <ludovic@chabant.com>
parents: 602
diff changeset
23 data['sources'] = []
886
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
24
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
25 fs_endpoints = {}
886
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
26
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
27 site = g.site
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
28 pcapp = site.piecrust_app
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
29 for source in pcapp.sources:
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
30 if source.is_theme_source:
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
31 continue
886
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
32 if not isinstance(source, IInteractiveSource):
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
33 continue
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
34
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
35 src_data = {
812
82509bce94ca internal: PEP8 fixup for admin panel code.
Ludovic Chabant <ludovic@chabant.com>
parents: 778
diff changeset
36 'name': source.name,
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
37 'list_url': url_for('.list_source', source_name=source.name)}
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
38 data['sources'].append(src_data)
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
39
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
40 if isinstance(source, FSContentSourceBase):
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
41 fs_endpoints[source.fs_endpoint] = source
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
42
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
43 data['new_pages'] = []
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
44 data['edited_pages'] = []
770
a7726e4862c4 admin: Fix API changes, don't crash the dashboard on non-binary WIP files.
Ludovic Chabant <ludovic@chabant.com>
parents: 761
diff changeset
45 data['misc_files'] = []
761
4d8e82641597 admin: Don't crash when the site isn't in a source control repository.
Ludovic Chabant <ludovic@chabant.com>
parents: 610
diff changeset
46 if site.scm:
4d8e82641597 admin: Don't crash when the site isn't in a source control repository.
Ludovic Chabant <ludovic@chabant.com>
parents: 610
diff changeset
47 st = site.scm.getStatus()
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
48 auto_formats = site.piecrust_app.config.get('site/auto_formats',
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
49 ['html'])
761
4d8e82641597 admin: Don't crash when the site isn't in a source control repository.
Ludovic Chabant <ludovic@chabant.com>
parents: 610
diff changeset
50 for p in st.new_files:
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
51 pd = _getWipData(p, fs_endpoints, auto_formats, site.piecrust_app)
761
4d8e82641597 admin: Don't crash when the site isn't in a source control repository.
Ludovic Chabant <ludovic@chabant.com>
parents: 610
diff changeset
52 if pd:
4d8e82641597 admin: Don't crash when the site isn't in a source control repository.
Ludovic Chabant <ludovic@chabant.com>
parents: 610
diff changeset
53 data['new_pages'].append(pd)
770
a7726e4862c4 admin: Fix API changes, don't crash the dashboard on non-binary WIP files.
Ludovic Chabant <ludovic@chabant.com>
parents: 761
diff changeset
54 else:
a7726e4862c4 admin: Fix API changes, don't crash the dashboard on non-binary WIP files.
Ludovic Chabant <ludovic@chabant.com>
parents: 761
diff changeset
55 data['misc_files'].append(p)
761
4d8e82641597 admin: Don't crash when the site isn't in a source control repository.
Ludovic Chabant <ludovic@chabant.com>
parents: 610
diff changeset
56 for p in st.edited_files:
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
57 pd = _getWipData(p, fs_endpoints, auto_formats, site.piecrust_app)
761
4d8e82641597 admin: Don't crash when the site isn't in a source control repository.
Ludovic Chabant <ludovic@chabant.com>
parents: 610
diff changeset
58 if pd:
4d8e82641597 admin: Don't crash when the site isn't in a source control repository.
Ludovic Chabant <ludovic@chabant.com>
parents: 610
diff changeset
59 data['edited_pages'].append(pd)
770
a7726e4862c4 admin: Fix API changes, don't crash the dashboard on non-binary WIP files.
Ludovic Chabant <ludovic@chabant.com>
parents: 761
diff changeset
60 else:
a7726e4862c4 admin: Fix API changes, don't crash the dashboard on non-binary WIP files.
Ludovic Chabant <ludovic@chabant.com>
parents: 761
diff changeset
61 data['misc_files'].append(p)
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
62
886
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
63 data['site_title'] = pcapp.config.get('site/title', "Unnamed Website")
772
3885421c29a3 admin: Make the whole FoodTruck site into a blueprint.
Ludovic Chabant <ludovic@chabant.com>
parents: 770
diff changeset
64 data['url_publish'] = url_for('.publish')
886
dcdec4b951a1 admin: Get the admin panel working again.
Ludovic Chabant <ludovic@chabant.com>
parents: 812
diff changeset
65 data['url_preview'] = url_for('.preview_root_page')
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
66
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
67 pub_tgts = pcapp.config.get('publish', {})
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
68 data['publish'] = {'targets': list(pub_tgts.keys())}
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
69
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
70 micropub = pcapp.config.get('micropub', {})
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
71 data['publish'] = micropub.get('publish_target')
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
72
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
73 with_menu_context(data)
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
74 return render_template('dashboard.html', **data)
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
75
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
76
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
77 def _getWipData(path, fs_endpoints, auto_formats, pcapp):
770
a7726e4862c4 admin: Fix API changes, don't crash the dashboard on non-binary WIP files.
Ludovic Chabant <ludovic@chabant.com>
parents: 761
diff changeset
78 pathname, pathext = os.path.splitext(path)
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
79 if pathext.lstrip('.') not in auto_formats:
770
a7726e4862c4 admin: Fix API changes, don't crash the dashboard on non-binary WIP files.
Ludovic Chabant <ludovic@chabant.com>
parents: 761
diff changeset
80 return None
a7726e4862c4 admin: Fix API changes, don't crash the dashboard on non-binary WIP files.
Ludovic Chabant <ludovic@chabant.com>
parents: 761
diff changeset
81
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
82 source = None
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
83 for endpoint, s in fs_endpoints.items():
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
84 if path.startswith(endpoint):
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
85 source = s
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
86 break
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
87 if source is None:
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
88 return None
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
89
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
90 content_item = source.findContentFromPath(path)
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
91 if content_item is None:
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
92 return None
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
93
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
94 page = pcapp.getPage(source, content_item)
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
95 uri = page.getUri()
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
96 _, slug = split_uri(pcapp, uri)
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
97
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
98 seg = page.getSegment()
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
99 if not seg:
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
100 return None
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
101
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
102 extract = text_preview(seg.content)
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
103 return {
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
104 'title': page.config.get('title'),
812
82509bce94ca internal: PEP8 fixup for admin panel code.
Ludovic Chabant <ludovic@chabant.com>
parents: 778
diff changeset
105 'slug': slug,
927
175d80cf75d7 serve: Admin dashboard improvements.
Ludovic Chabant <ludovic@chabant.com>
parents: 886
diff changeset
106 'url': url_for('.edit_page', uri=slug),
812
82509bce94ca internal: PEP8 fixup for admin panel code.
Ludovic Chabant <ludovic@chabant.com>
parents: 778
diff changeset
107 'text': extract
82509bce94ca internal: PEP8 fixup for admin panel code.
Ludovic Chabant <ludovic@chabant.com>
parents: 778
diff changeset
108 }
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
109
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
110
772
3885421c29a3 admin: Make the whole FoodTruck site into a blueprint.
Ludovic Chabant <ludovic@chabant.com>
parents: 770
diff changeset
111 @foodtruck_bp.route('/login', methods=['GET', 'POST'])
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
112 def login():
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
113 data = {}
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
114
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
115 if request.method == 'POST':
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
116 username = request.form.get('username')
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
117 password = request.form.get('password')
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
118 remember = request.form.get('remember')
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
119
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
120 user = load_user(username)
772
3885421c29a3 admin: Make the whole FoodTruck site into a blueprint.
Ludovic Chabant <ludovic@chabant.com>
parents: 770
diff changeset
121 if user is not None and current_app.bcrypt:
3885421c29a3 admin: Make the whole FoodTruck site into a blueprint.
Ludovic Chabant <ludovic@chabant.com>
parents: 770
diff changeset
122 if current_app.bcrypt.check_password_hash(user.password, password):
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
123 login_user(user, remember=bool(remember))
772
3885421c29a3 admin: Make the whole FoodTruck site into a blueprint.
Ludovic Chabant <ludovic@chabant.com>
parents: 770
diff changeset
124 return redirect(url_for('.index'))
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
125 data['message'] = (
812
82509bce94ca internal: PEP8 fixup for admin panel code.
Ludovic Chabant <ludovic@chabant.com>
parents: 778
diff changeset
126 "User '%s' doesn't exist or password is incorrect." %
82509bce94ca internal: PEP8 fixup for admin panel code.
Ludovic Chabant <ludovic@chabant.com>
parents: 778
diff changeset
127 username)
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
128
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
129 return render_template('login.html', **data)
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
130
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
131
772
3885421c29a3 admin: Make the whole FoodTruck site into a blueprint.
Ludovic Chabant <ludovic@chabant.com>
parents: 770
diff changeset
132 @foodtruck_bp.route('/logout')
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
133 @login_required
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
134 def logout():
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
135 logout_user()
772
3885421c29a3 admin: Make the whole FoodTruck site into a blueprint.
Ludovic Chabant <ludovic@chabant.com>
parents: 770
diff changeset
136 return redirect(url_for('.index'))
587
d4a01a023998 admin: Add "FoodTruck" admin panel from the side experiment project.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
137