Remove gridify_*

We injected a gridify_list and gridify_cursor function into each jinja2
template that we render. This was used to split the list of media_entries
into batches of 5 for nicer table columns. However, jinja2 has a nice |batch
filter built in that does the job for us just as well with less code (on our side)

Less code=good

so let's merge this one.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
This commit is contained in:
Sebastian Spaeth 2012-12-04 17:28:53 +01:00
parent 1244ffc8f5
commit 2222278dcd
3 changed files with 2 additions and 33 deletions

View File

@ -20,7 +20,7 @@
{% macro media_grid(request, collection_items, col_number=5) %} {% macro media_grid(request, collection_items, col_number=5) %}
<table class="thumb_gallery"> <table class="thumb_gallery">
{% for row in gridify_cursor(collection_items, col_number) %} {% for row in collection_items|batch(col_number) %}
<tr class="thumb_row <tr class="thumb_row
{%- if loop.first %} thumb_row_first {%- if loop.first %} thumb_row_first
{%- elif loop.last %} thumb_row_last{% endif %}"> {%- elif loop.last %} thumb_row_last{% endif %}">

View File

@ -20,7 +20,7 @@
{% macro media_grid(request, media_entries, col_number=5) %} {% macro media_grid(request, media_entries, col_number=5) %}
<table class="thumb_gallery"> <table class="thumb_gallery">
{% for row in gridify_cursor(media_entries, col_number) %} {% for row in media_entries|batch(col_number) %}
<tr class="thumb_row <tr class="thumb_row
{%- if loop.first %} thumb_row_first {%- if loop.first %} thumb_row_first
{%- elif loop.last %} thumb_row_last{% endif %}"> {%- elif loop.last %} thumb_row_last{% endif %}">

View File

@ -59,8 +59,6 @@ def get_jinja_env(template_loader, locale):
# ... construct a grid of thumbnails or other media # ... construct a grid of thumbnails or other media
# ... have access to the global and app config # ... have access to the global and app config
template_env.globals['fetch_messages'] = messages.fetch_messages template_env.globals['fetch_messages'] = messages.fetch_messages
template_env.globals['gridify_list'] = gridify_list
template_env.globals['gridify_cursor'] = gridify_cursor
template_env.globals['app_config'] = mg_globals.app_config template_env.globals['app_config'] = mg_globals.app_config
template_env.globals['global_config'] = mg_globals.global_config template_env.globals['global_config'] = mg_globals.global_config
@ -100,32 +98,3 @@ def render_template(request, template_path, context):
def clear_test_template_context(): def clear_test_template_context():
global TEMPLATE_TEST_CONTEXT global TEMPLATE_TEST_CONTEXT
TEMPLATE_TEST_CONTEXT = {} TEMPLATE_TEST_CONTEXT = {}
def gridify_list(this_list, num_cols=5):
"""
Generates a list of lists where each sub-list's length depends on
the number of columns in the list
"""
grid = []
# Figure out how many rows we should have
num_rows = int(ceil(float(len(this_list)) / num_cols))
for row_num in range(num_rows):
slice_min = row_num * num_cols
slice_max = (row_num + 1) * num_cols
row = this_list[slice_min:slice_max]
grid.append(row)
return grid
def gridify_cursor(this_cursor, num_cols=5):
"""
Generates a list of lists where each sub-list's length depends on
the number of columns in the list
"""
return gridify_list(list(this_cursor), num_cols)