Skip to content

Commit 6c3cc08

Browse files
Merge pull request #123 from ViderumGlobal/related-fixes
Fix various bugs, separate main from related queries
2 parents 5cb9f07 + 23c8501 commit 6c3cc08

File tree

4 files changed

+27
-9
lines changed

4 files changed

+27
-9
lines changed

ckanext/querytool/controllers/querytool.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -436,7 +436,6 @@ def querytool_public_read(self, name):
436436
)
437437
related_querytool['public_filters'] = related_new_filters
438438
related_querytool['public_filters'].sort(key=itemgetter('order'))
439-
440439
related_querytool['sql_string'] = related_sql_string
441440

442441
return render('querytool/public/read.html',

ckanext/querytool/helpers.py

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -339,15 +339,25 @@ def get_resource_columns(res_id):
339339
return fields
340340

341341

342-
def get_available_related_querytools():
342+
def get_available_related_querytools(name=None):
343343

344344
session = m.Session
345345

346-
query = session.query(CkanextQueryTool, CkanextQueryToolVisualizations) \
347-
.join((CkanextQueryToolVisualizations, CkanextQueryTool.id ==
348-
CkanextQueryToolVisualizations.ckanext_querytool_id)) \
349-
.filter(CkanextQueryTool.type == 'related').\
350-
filter(CkanextQueryToolVisualizations.charts != '')
346+
if name:
347+
query = session.query(CkanextQueryTool,
348+
CkanextQueryToolVisualizations) \
349+
.join((CkanextQueryToolVisualizations, CkanextQueryTool.id ==
350+
CkanextQueryToolVisualizations.ckanext_querytool_id)) \
351+
.filter(CkanextQueryTool.type == 'related').\
352+
filter(CkanextQueryTool.name != name).\
353+
filter(CkanextQueryToolVisualizations.charts != '')
354+
else:
355+
query = session.query(CkanextQueryTool,
356+
CkanextQueryToolVisualizations) \
357+
.join((CkanextQueryToolVisualizations, CkanextQueryTool.id ==
358+
CkanextQueryToolVisualizations.ckanext_querytool_id)) \
359+
.filter(CkanextQueryTool.type == 'related'). \
360+
filter(CkanextQueryToolVisualizations.charts != '')
351361

352362
result = query.all()
353363
querytools_list = []

ckanext/querytool/templates/querytool/admin/base_list.html

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,16 @@
2020

2121

2222
{% block primary_content_inner %}
23+
<legend>{{ _('Main') }}</legend>
2324
{% for querytool in data %}
24-
{% snippet 'querytool/admin/snippets/query_tools.html', querytool=querytool %}
25+
{% if querytool.type == 'main' %}
26+
{% snippet 'querytool/admin/snippets/query_tools.html', querytool=querytool %}
27+
{% endif %}
28+
{% endfor%}
29+
<legend>{{ _('Related') }}</legend>
30+
{% for querytool in data %}
31+
{% if querytool.type == 'related' %}
32+
{% snippet 'querytool/admin/snippets/query_tools.html', querytool=querytool %}
33+
{% endif %}
2534
{% endfor%}
2635
{% endblock %}

ckanext/querytool/templates/querytool/admin/snippets/edit_data_form.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@
7171
<div class="controls">
7272
<select id="field-related-querytool" name="related_querytool" disabled>
7373
<option value="">&mdash; {{ _('Select Querytool') }} &mdash;</option>
74-
{% for querytool in h.querytool_get_available_related_querytools() %}
74+
{% for querytool in h.querytool_get_available_related_querytools(querytool.name) %}
7575
<option value="{{ querytool.name }}" {{ 'selected' if querytool.name == data.related_querytool }}>{{ querytool.title }}</option>
7676
{% endfor %}
7777
</select>

0 commit comments

Comments
 (0)