summaryrefslogtreecommitdiff
path: root/chimere/templates
diff options
context:
space:
mode:
Diffstat (limited to 'chimere/templates')
-rw-r--r--chimere/templates/chimere/base.html1
-rw-r--r--chimere/templates/chimere/blocks/footer.html2
-rw-r--r--chimere/templates/chimere/main_map.html18
-rw-r--r--chimere/templates/search/indexes/chimere/marker_text.txt3
-rw-r--r--chimere/templates/search/indexes/chimere/route_text.txt1
-rw-r--r--chimere/templates/search/search.html54
6 files changed, 77 insertions, 2 deletions
diff --git a/chimere/templates/chimere/base.html b/chimere/templates/chimere/base.html
index 894cb01..82f28c4 100644
--- a/chimere/templates/chimere/base.html
+++ b/chimere/templates/chimere/base.html
@@ -24,6 +24,7 @@
{% endblock %}
{% block content %}
{% block top %}{% endblock %}
+ {% if has_search %} {% block search_box %}{% endblock %} {% endif %}
{% block message_map %}{% endblock %}
{% block message_edit %}{% endblock %}
{% block bottom %}{% endblock %}
diff --git a/chimere/templates/chimere/blocks/footer.html b/chimere/templates/chimere/blocks/footer.html
index a783939..8958939 100644
--- a/chimere/templates/chimere/blocks/footer.html
+++ b/chimere/templates/chimere/blocks/footer.html
@@ -1,3 +1,3 @@
{% load i18n %}
-{% trans "This site uses Chimère"%} - <img src="{{STATIC_URL}}chimere/img/copyleft.png" alt="copyleft"/> 2008-2013 <a href='http://www.chymeres.net/'>Chimère project</a> - {% trans "Map"%} <img src="{{STATIC_URL}}chimere/img/copyleft.png" alt="copyleft"/> <a href='http://openstreetmap.org/'>OpenStreetMap</a>
+{% trans "This site uses Chimère"%} <img src="{{STATIC_URL}}chimere/img/copyleft.png" alt="copyleft"/> 2008-2014 <a href='http://www.chymeres.net/'>Chimère project</a> - {% trans "Map"%} <img src="{{STATIC_URL}}chimere/img/copyleft.png" alt="copyleft"/> <a href='http://openstreetmap.org/'>OpenStreetMap</a>
diff --git a/chimere/templates/chimere/main_map.html b/chimere/templates/chimere/main_map.html
index b7aa868..a3dec9a 100644
--- a/chimere/templates/chimere/main_map.html
+++ b/chimere/templates/chimere/main_map.html
@@ -5,6 +5,9 @@
{% head_chimere %}
{% head_jme %}
<script src="{{ STATIC_URL }}chimere/js/jquery.chimere.js" type="text/javascript"></script>
+{% if has_search %}
+<script src="{{ STATIC_URL }}chimere/js/search.js" type="text/javascript"></script>
+<script src="{{ STATIC_URL }}chimere/js/search-autocomplete.js" type="text/javascript"></script>{% endif %}
{{ block.super }}
{% endblock %}
{% block message_edit %}{% endblock %}
@@ -36,6 +39,10 @@
</div>
<div id='detail' class='ui-widget ui-corner-all'></div>
{% endblock %}
+{% block search_box %}
+<div id='search-box' class='ui-widget ui-corner-all'>
+</div>
+{% endblock %}
{% block content %}
{{block.super}}
<div id='main-map'></div>
@@ -46,7 +53,16 @@
{% map 'main-map' %}
<div id='chimere_message'></div>
<script type='text/javascript'>
- $(function(){$('#chimere_message').dialog({'autoOpen':false});});
+ var has_search = {% if has_search %}true{% else %}false{% endif %};
+ // array to keep trace of already displayed items
+ var search_result = new Array();
+ var search_url = "/search/";
+ $(function(){
+ $('#chimere_message').dialog({'autoOpen':false});
+ if (has_search){
+ load_search_box();
+ }
+ });
</script>
{% endblock %}
{% block footer %}
diff --git a/chimere/templates/search/indexes/chimere/marker_text.txt b/chimere/templates/search/indexes/chimere/marker_text.txt
new file mode 100644
index 0000000..ad5bae1
--- /dev/null
+++ b/chimere/templates/search/indexes/chimere/marker_text.txt
@@ -0,0 +1,3 @@
+{% load unescape %}
+{{object.name}}
+{{object.description|safe|striptags|unescape}}
diff --git a/chimere/templates/search/indexes/chimere/route_text.txt b/chimere/templates/search/indexes/chimere/route_text.txt
new file mode 100644
index 0000000..2fad18d
--- /dev/null
+++ b/chimere/templates/search/indexes/chimere/route_text.txt
@@ -0,0 +1 @@
+{{object.name}}
diff --git a/chimere/templates/search/search.html b/chimere/templates/search/search.html
new file mode 100644
index 0000000..b40359a
--- /dev/null
+++ b/chimere/templates/search/search.html
@@ -0,0 +1,54 @@
+{% load url from future %}{% load i18n %}
+{% if query %}
+<script type='text/javascript'>
+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>
+<div id='search-listing'>
+ <ul>
+{% for result in page.object_list %}
+ <li>
+ <img src='{{MEDIA_URL}}{{result.object.default_category.icon.image}}'/><a href="#" onclick="$('#main-map').chimere('showPopup', {{result.object.pk}});return false;">{{ result.object }}</a>
+ </li>
+{% empty %}
+ <li>{% trans "No results found." %}</li>
+{% endfor %}
+ </ul>
+</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 %}
+ </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>
+</form>
+<div id='search-result'></div>
+<script type='text/javascript'>
+no_result_message = "{% trans 'No exact match.' %}";
+$(function(){
+ $('#haystack-search').click(
+ function(evt){
+ $("#main-map").chimere("razMap");
+ haystack_search(evt);
+ });
+ window.autocomplete = new Autocomplete({
+ form_selector: '.autocomplete-me'
+ });
+ window.autocomplete.setup();
+});
+</script>
+{% endif %}