X-Git-Url: http://git.purplebirdman.com/web-gallery.git/blobdiff_plain/b894dfe273580816b8c0b931e311351b5a026ea9..refs/heads/master:/navigator/app/app.py diff --git a/navigator/app/app.py b/navigator/app/app.py index 526d9b5..50d8cf7 100644 --- a/navigator/app/app.py +++ b/navigator/app/app.py @@ -4,9 +4,28 @@ import re app = Flask(__name__) gallery_root = "/app/gallery" -gallery_desc_filename = "description.html" get_num_regex = re.compile(r'\d+') +### helper functions ### + +def get_page_number_from_name(name): + try: + return int(get_num_regex.findall(name)[-1]) + except IndexError: + print ("Index error on name " + name, flush=True) + return -1 + +def get_file_text(filename): + file_text = None + try: + with open(filename, 'r') as file: + file_text = file.read() + except: + print("File not found:" + filename) + return file_text + +### routes ### + @app.route('/') def render_gallery(): gallery_names = [] @@ -15,14 +34,10 @@ def render_gallery(): if not gallery.is_file(): gallery_names.append(gallery.name) gallery_names.sort() - return render_template( 'gallery.html', galleries=gallery_names ) - -def get_page_number_from_name(name): - try: - return int(get_num_regex.findall(name)[-1]) - except IndexError: - print ("Index error on name " + name, flush=True) - return -1 + return render_template( 'gallery.html', + title="My Comics", + galleries=gallery_names + ) @app.route('/') def render_pages(gallery=None): @@ -39,19 +54,14 @@ def render_pages(gallery=None): }) template_pages = sorted(template_pages, key=lambda page: page['number']) - # get description for gallery (if available) - desc_filename = gallery_dir + "/" + gallery_desc_filename - description = None - try: - with open(desc_filename, 'r') as file: - description = file.read() - except: - print("Description file not found at " + desc_filename) + # get header for gallery (if available) + header_html = get_file_text(gallery_dir + "/header.html") # render! return render_template( 'pages.html', + title=gallery, gallery=gallery, - description=description, + header=header_html, pages=template_pages ) @@ -76,7 +86,7 @@ def render_page(gallery=None, page_num=None): return render_template( 'page.html', gallery=gallery, page_num=page_num, - title=page_name, src=src, alt=page_name, + title='{} {}'.format(gallery, page_num), src=src, alt=page_name, prev_page_url=prev_page_url, next_page_url=next_page_url ) else: