From ef7818e10e95c027e4d0a0badcc6116e882f72b7 Mon Sep 17 00:00:00 2001 From: Armin Ronacher Date: Sun, 2 May 2010 16:34:12 +0200 Subject: [PATCH] Updated website to support a snippet archive. --- flask_website.py | 7 ++++++- static/mailinglist.js | 3 ++- static/snippets.png | Bin 0 -> 26332 bytes static/style.css | 18 ++++++++++++------ templates/index.html | 6 ++++-- templates/layout.html | 8 ++++++++ templates/mailinglist/archive.html | 2 +- templates/mailinglist/index.html | 2 +- templates/mailinglist/layout.html | 12 +----------- templates/mailinglist/show_thread.html | 4 +++- templates/snippets/index.html | 17 +++++++++++++++++ templates/snippets/layout.html | 11 +++++++++++ 12 files changed, 66 insertions(+), 24 deletions(-) create mode 100644 static/snippets.png create mode 100644 templates/snippets/index.html create mode 100644 templates/snippets/layout.html diff --git a/flask_website.py b/flask_website.py index 795cd15a..a65d3580 100644 --- a/flask_website.py +++ b/flask_website.py @@ -93,7 +93,7 @@ def mailinglist_archive(page): page=page, threads=threads) -@app.route('/mailinglist/archives/////') +@app.route('/mailinglist/archive/////') def mailinglist_show_thread(year, month, day, slug): thread = Thread.get(year, month, day, slug) if thread is None: @@ -101,6 +101,11 @@ def mailinglist_show_thread(year, month, day, slug): return render_template('mailinglist/show_thread.html', thread=thread) +@app.route('/snippets/') +def snippets(): + return render_template('snippets/index.html') + + @app.errorhandler(404) def not_found(error): return render_template('404.html'), 404 diff --git a/static/mailinglist.js b/static/mailinglist.js index abd3b30f..41456b10 100644 --- a/static/mailinglist.js +++ b/static/mailinglist.js @@ -9,7 +9,7 @@ $(function() { $('ul.mailtree div.link').removeClass('selected'); $('#link-' + id).addClass('selected').focus(); $('div.mail').hide(); - $('#' + id).show(); + $('h2:first').text($('h3', $('#' + id).show()).text()); if (!(document.location.hash == '' && id == first_mail)) document.location.href = '#' + id; window.scrollTo(pos.x, pos.y); @@ -19,6 +19,7 @@ $(function() { .addClass('dynamic-mail') .appendTo($('
').insertBefore('div.mail:first')) .hide(); + $('div.mail h3').hide(); $('div.link').each(function() { var id = $('a', $(this).parent()).attr('href').substr(1); diff --git a/static/snippets.png b/static/snippets.png new file mode 100644 index 0000000000000000000000000000000000000000..2fdfed0507d2a99bd4404f4f5c8e1d81a2064a7b GIT binary patch literal 26332 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

Tc_2oYd#iYCCYRMGdBkE+CmNQ>F@2`f+r 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 {% endblock %} -{% block body %} -

Flask

+{% block body_title %} + {{ super() }}

because sometimes a pocket knife is not enough +{% endblock %} +{% block body %}

Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions. And before you ask: It's BSD licensed! diff --git a/templates/layout.html b/templates/layout.html index a48fa502..51e1756a 100644 --- a/templates/layout.html +++ b/templates/layout.html @@ -7,6 +7,14 @@ src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"> {% endblock %}
+ {% block body_title %} +

{{ self.title() }}

+ {% endblock %} +
diff --git a/templates/mailinglist/archive.html b/templates/mailinglist/archive.html index 53c1d73d..541d7287 100644 --- a/templates/mailinglist/archive.html +++ b/templates/mailinglist/archive.html @@ -1,6 +1,6 @@ {% extends "mailinglist/layout.html" %} {% block title %}Mailinglist Archive{% endblock %} -{% block mailbody %} +{% block body %}

Mailinglist Archive

    {% for thread in threads %} diff --git a/templates/mailinglist/index.html b/templates/mailinglist/index.html index 2cb236f4..1a0a2468 100644 --- a/templates/mailinglist/index.html +++ b/templates/mailinglist/index.html @@ -1,6 +1,6 @@ {% extends "mailinglist/layout.html" %} {% block title %}Mailinglist{% endblock %} -{% block mailbody %} +{% block body %}

    There is a mailinglist for Flask hosted on librelist you can use for both user requests diff --git a/templates/mailinglist/layout.html b/templates/mailinglist/layout.html index 0ee5f69f..c351c4dd 100644 --- a/templates/mailinglist/layout.html +++ b/templates/mailinglist/layout.html @@ -6,16 +6,6 @@ h1 span { display: none; } {% endblock %} -{% block body %} +{% block body_title %}

    Flask Mailinglist

    -
    - back to website - {% if request.endpoint != 'mailinglist_index' %}// - list information - {% endif %} - {% if request.endpoint != 'mailinglist_archive' %}// - go to the archive - {% endif %} -
    - {% block mailbody %}{% endblock %} {% endblock %} diff --git a/templates/mailinglist/show_thread.html b/templates/mailinglist/show_thread.html index 7be8adae..f9e1d4bf 100644 --- a/templates/mailinglist/show_thread.html +++ b/templates/mailinglist/show_thread.html @@ -4,7 +4,9 @@ {{ super() }} {% endblock %} -{% block mailbody %} +{% block body %} +

    + « back to archive

    {{ thread.title }}

      diff --git a/templates/snippets/index.html b/templates/snippets/index.html new file mode 100644 index 00000000..102a8f4c --- /dev/null +++ b/templates/snippets/index.html @@ -0,0 +1,17 @@ +{% extends "snippets/layout.html" %} +{% block title %}Snippets Archive{% endblock %} +{% block body %} +

      + Welcome to the Flask snippet archive. This is the place where anyone + can drop helpful pieces of code for others to use. +

      + In order to add snippets to this page or to add comments, all you need + is an OpenID account. +

      +

      + Search snippets: + + +

      +

      Snippets by Category

      +{% endblock %} diff --git a/templates/snippets/layout.html b/templates/snippets/layout.html new file mode 100644 index 00000000..56449879 --- /dev/null +++ b/templates/snippets/layout.html @@ -0,0 +1,11 @@ +{% extends "layout.html" %} +{% block head %} + {{ super() }} + +{% endblock %} +{% block body_title %} +

      Flask Snippets

      +{% endblock %}