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:
parent
1244ffc8f5
commit
2222278dcd
@ -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 %}">
|
||||||
|
@ -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 %}">
|
||||||
|
@ -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)
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user