I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
Commit 3f19792d authored by str4d's avatar str4d
Browse files

Use Werkzeug route level defaults to ensure unique urls

parent 8b608ea7
No related branches found
No related tags found
No related merge requests found
......@@ -165,9 +165,9 @@ def main_index():
return redirect(url_for('site_show', lang='en'))
# Site pages
@app.route('/<string:lang>/site/')
@app.route('/<string:lang>/site/', defaults={'page': 'index'})
@app.route('/<string:lang>/site/<path:page>')
def site_show(page='index'):
def site_show(page):
if page.endswith('.html'):
return redirect(url_for('site_show', page=page[:-5]))
name = 'site/%s.html' % page
......@@ -264,9 +264,9 @@ def render_meeting_rst(id):
# Meeting handlers
# Meeting index
@app.route('/<string:lang>/meetings/')
@app.route('/<string:lang>/meetings/', defaults={'page': 1})
@app.route('/<string:lang>/meetings/page/<int:page>')
def meetings_index(page=0):
def meetings_index(page):
meetings = get_meetings()
return render_template('meetings/index.html', meetings=meetings)
......@@ -384,9 +384,9 @@ def downloads_select(file):
obj.append(a)
return render_template('downloads/select.html', mirrors=obj, file=file)
@app.route('/download/<string:protocol>/any/<path:file>')
@app.route('/download/<string:protocol>/any/<path:file>', defaults={'mirror': None})
@app.route('/download/<string:protocol>/<int:mirror>/<path:file>')
def downloads_redirect(protocol, file, mirror=None):
def downloads_redirect(protocol, file, mirror):
mirrors=read_mirrors()
if not protocol in mirrors:
abort(404)
......@@ -473,9 +473,9 @@ def render_blog_entry(slug):
###############
# Blog handlers
@app.route('/<string:lang>/blog/')
@app.route('/<string:lang>/blog/', defaults={'page': 1})
@app.route('/<string:lang>/blog/page/<int:page>')
def blog_index(page=0):
def blog_index(page):
entries = get_blog_entries()
return render_template('blog/index.html', entries=entries)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment