forked from I2P_Developers/i2p.www
Moved root file views into i2p2www.views, and committed this file (which was missed earlier)
This commit is contained in:
@@ -88,6 +88,10 @@ url('/<string:f>_<lang:lang>.html', 'legacy.legacy_show')
|
||||
url('/<string:f>/', 'legacy.legacy_show')
|
||||
url('/<string:f>.html', 'legacy.legacy_show')
|
||||
|
||||
url('/hosts.txt', 'views.hosts')
|
||||
url('/robots.txt', 'views.robots')
|
||||
url('/favicon.ico', 'views.favicon')
|
||||
|
||||
|
||||
#################
|
||||
# Babel selectors
|
||||
@@ -337,22 +341,5 @@ def downloads_redirect(protocol, file, mirror):
|
||||
return redirect(mirrors[mirror]['url'] % data)
|
||||
return redirect(mirrors[randint(0, len(mirrors) - 1)]['url'] % data)
|
||||
|
||||
|
||||
############
|
||||
# Root files
|
||||
|
||||
@app.route('/hosts.txt')
|
||||
def hosts():
|
||||
return send_from_directory(STATIC_DIR, 'hosts.txt', mimetype='text/plain')
|
||||
|
||||
@app.route('/robots.txt')
|
||||
def robots():
|
||||
return send_from_directory(STATIC_DIR, 'robots.txt', mimetype='text/plain')
|
||||
|
||||
@app.route('/favicon.ico')
|
||||
def favicon():
|
||||
return send_from_directory(os.path.join(app.root_path, 'static'),
|
||||
'favicon.ico', mimetype='image/vnd.microsoft.icon')
|
||||
|
||||
if __name__ == '__main__':
|
||||
app.run(debug=True)
|
||||
|
50
i2p2www/views.py
Normal file
50
i2p2www/views.py
Normal file
@@ -0,0 +1,50 @@
|
||||
from flask import abort, redirect, render_template, safe_join, send_from_directory, url_for
|
||||
import os.path
|
||||
|
||||
from i2p2www import STATIC_DIR, TEMPLATE_DIR
|
||||
from i2p2www.blog.helpers import get_blog_entries
|
||||
|
||||
|
||||
#######################
|
||||
# General page handlers
|
||||
|
||||
# Index - redirects to en homepage
|
||||
def main_index():
|
||||
return redirect(url_for('site_show', lang='en'))
|
||||
|
||||
# Site pages
|
||||
def site_show(page):
|
||||
if page.endswith('.html'):
|
||||
return redirect(url_for('site_show', page=page[:-5]))
|
||||
name = 'site/%s.html' % page
|
||||
page_file = safe_join(TEMPLATE_DIR, name)
|
||||
|
||||
if not os.path.exists(page_file):
|
||||
# Could be a directory, so try index.html
|
||||
name = 'site/%s/index.html' % page
|
||||
page_file = safe_join(TEMPLATE_DIR, name)
|
||||
if not os.path.exists(page_file):
|
||||
# bah! those damn users all the time!
|
||||
abort(404)
|
||||
|
||||
options = {
|
||||
'page': page,
|
||||
}
|
||||
if (page == 'index'):
|
||||
options['blog_entries'] = get_blog_entries(8)
|
||||
|
||||
# hah!
|
||||
return render_template(name, **options)
|
||||
|
||||
|
||||
############
|
||||
# Root files
|
||||
|
||||
def hosts():
|
||||
return send_from_directory(STATIC_DIR, 'hosts.txt', mimetype='text/plain')
|
||||
|
||||
def robots():
|
||||
return send_from_directory(STATIC_DIR, 'robots.txt', mimetype='text/plain')
|
||||
|
||||
def favicon():
|
||||
return send_from_directory(STATIC_DIR, 'favicon.ico', mimetype='image/vnd.microsoft.icon')
|
Reference in New Issue
Block a user