summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@proxience.com>2015-02-22 17:49:14 +0100
committerÉtienne Loks <etienne.loks@proxience.com>2015-02-22 17:49:14 +0100
commita4d3fd61c22a54b910f22d060cb8d9360381dbae (patch)
tree23c0fa0ccbfb06f156ccbb17007fcafcde0efef1
parent80c656db799b87bad37d3fb16e880657ccef810d (diff)
downloadChimère-a4d3fd61c22a54b910f22d060cb8d9360381dbae.tar.bz2
Chimère-a4d3fd61c22a54b910f22d060cb8d9360381dbae.zip
Search templates refactoring
-rw-r--r--chimere/static/chimere/css/styles.css4
-rw-r--r--chimere/static/chimere/js/jquery.chimere.js2
-rw-r--r--chimere/templates/search/search.html28
-rw-r--r--chimere/templates/search/search_js.html21
4 files changed, 35 insertions, 20 deletions
diff --git a/chimere/static/chimere/css/styles.css b/chimere/static/chimere/css/styles.css
index 5d7f177..a8efa7f 100644
--- a/chimere/static/chimere/css/styles.css
+++ b/chimere/static/chimere/css/styles.css
@@ -756,6 +756,10 @@ table.inline-table td input[type=file]{
margin-right: auto;
}
+#haystack-search .action-label{
+ display:none;
+}
+
#search-box{
position:absolute;
z-index:200;
diff --git a/chimere/static/chimere/js/jquery.chimere.js b/chimere/static/chimere/js/jquery.chimere.js
index 844ec1c..195b43b 100644
--- a/chimere/static/chimere/js/jquery.chimere.js
+++ b/chimere/static/chimere/js/jquery.chimere.js
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2014 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
+/* Copyright (C) 2008-2015 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
diff --git a/chimere/templates/search/search.html b/chimere/templates/search/search.html
index b0c7045..95d3937 100644
--- a/chimere/templates/search/search.html
+++ b/chimere/templates/search/search.html
@@ -4,22 +4,7 @@ var do_you_mean = "{% trans 'Do you mean: ' %}";
var end_do_you_mean = "{% trans '?' %}";
</script>
{% if query %}
-<script type='text/javascript'>
-$(function(){
- var geo_objects = [{% for result in page.object_list %}{{result.object.getGeoJSON|safe}}{% if not forloop.last %}, {% endif %}{% endfor %}];
- var geo_features = {};
- for (idx=0 ; idx < geo_objects.length ; idx++){
- var c_idx = geo_objects[idx].properties.pk;
- if (search_result.indexOf(c_idx) == -1){
- search_result.push(c_idx);
- geo_features[c_idx] = $('#main-map').chimere('addMarker',
- geo_objects[idx]);
- }
- }
- {% if page.object_list.count %}$("#main-map").chimere("zoomToMarkerExtent");{% endif %}
-
-});
-</script>
+{% include "search/search_js.html" %}
<div id='search-listing'>
<ul>
{% for result in page.object_list %}
@@ -33,19 +18,24 @@ $(function(){
</div>
{% if page.has_previous or page.has_next %}
<div id='search-nav'>
- {% if page.has_previous %}<a href="#" onclick="haystack_search(this, {{ page.previous_page_number }});">{% trans "Previous" %}</a>{% endif %}
- {% if page.has_next %}<a href="#" onclick="haystack_search(this, {{ page.next_page_number }});">{% trans "More results..." %}</a>{% endif %}
+ <nav>
+ <ul class="pager">
+ {% if page.has_previous %}<li class="previous"><a href="#" onclick="haystack_search(this, {{ page.previous_page_number }});">&larr; {% trans "Previous" %}</a></li>{% endif %}
+ {% if page.has_next %}<li class="next"><a href="#" onclick="haystack_search(this, {{ page.next_page_number }});">{% trans "More results..." %} &rarr;</a></li>{% endif %}
+ </ul>
+ </nav>
</div>
{% endif %}
{% else %}
<form id='search-form' class='autocomplete-me'>
<input type="text" id="id_q" name="q" autocomplete="off"/>
- <button name='haystack-search' id='haystack-search' type='button' disabled='disabled' class="btn btn-default">{% trans "Search" %}</button>
+ <button name='haystack-search' id='haystack-search' type='button' disabled='disabled' class="btn btn-default"><span class='action-label'>{% trans "Search" %} </span><span class="glyphicon glyphicon-search"></span></button>
</form>
<div id='spelling'></div>
<div id='search-result'></div>
<script type='text/javascript'>
+no_result_message = "{% trans 'No exact match.' %}";
$(function(){
$('#haystack-search').click(
function(evt){
diff --git a/chimere/templates/search/search_js.html b/chimere/templates/search/search_js.html
new file mode 100644
index 0000000..25edca6
--- /dev/null
+++ b/chimere/templates/search/search_js.html
@@ -0,0 +1,21 @@
+<script type='text/javascript'>
+$(function(){
+ // clean checked categories
+ $('.subcategory').each(function(){ $(this).removeClass('selected'); });
+ $('.subcategory input[type=checkbox]').attr('checked', false);
+
+ var geo_objects = [{% for result in page.object_list %}{{result.object.getGeoJSON|safe}}{% if not forloop.last %}, {% endif %}{% endfor %}];
+ var geo_features = {};
+ for (idx=0 ; idx < geo_objects.length ; idx++){
+ var c_idx = geo_objects[idx].properties.pk;
+ if (search_result.indexOf(c_idx) == -1){
+ search_result.push(c_idx);
+ geo_features[c_idx] = $('#main-map').chimere('addMarker',
+ geo_objects[idx]);
+ }
+ }
+ {% if page.object_list.count %}$("#main-map").chimere("zoomToMarkerExtent");{% endif %}
+
+});
+</script>
+