diff options
author | etienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864> | 2009-01-13 22:06:50 +0000 |
---|---|---|
committer | etienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864> | 2009-01-13 22:06:50 +0000 |
commit | 5577411f505db728e778a9bda8cd8a958c805317 (patch) | |
tree | 036723e6d3daae48b8b7c100019f30394a9a0af2 | |
parent | b4eb64e8760e0f546064f73a846c0c6b9086ad93 (diff) | |
download | Chimère-5577411f505db728e778a9bda8cd8a958c805317.tar.bz2 Chimère-5577411f505db728e778a9bda8cd8a958c805317.zip |
Checkbox to display markers and routes waiting for validation on the main map
git-svn-id: http://www.peacefrogs.net/svn/chimere/trunk@12 9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864
-rw-r--r-- | main/views.py | 24 | ||||
-rw-r--r-- | static/main_map.js | 5 | ||||
-rw-r--r-- | static/styles.css | 6 | ||||
-rw-r--r-- | templates/base.html | 4 | ||||
-rw-r--r-- | templates/main_map.html | 2 | ||||
-rw-r--r-- | urls.py | 2 |
6 files changed, 20 insertions, 23 deletions
diff --git a/main/views.py b/main/views.py index 42c9229..8c26a36 100644 --- a/main/views.py +++ b/main/views.py @@ -165,35 +165,19 @@ def getDetail(request, marker_id): response_dct= {'media_path':settings.MEDIA_URL, 'marker':marker} return render_to_response('detail.html', response_dct) -def getMarkers(request, category_ids): - ''' - Get the JSON for a marker - ''' - try: - query = Marker.objects.filter(status='A') - query = query.extra(where=['subcategory_id IN (%s)' % \ - ",".join(category_ids.split('_'))]) - except: - return HttpResponse('no results') - markers = list(query) - if not markers: - return HttpResponse('no results') - data = '{"type": "FeatureCollection", "features":[%s]}' % \ - ",".join([marker.getGeoJSON() for marker in markers]) - return HttpResponse(data) - -def getGeoObjects(request, category_ids): +def getGeoObjects(request, category_ids, status='A'): ''' Get the JSON for a route ''' + status = status.split('_') try: - query = Route.objects.filter(status='A', + query = Route.objects.filter(status__in=status, subcategory__in=category_ids.split('_')) except: return HttpResponse('no results') geo_objects = list(query) try: - query = Marker.objects.filter(status='A', + query = Marker.objects.filter(status__in=status, subcategory__in=category_ids.split('_')) except: return HttpResponse('no results') diff --git a/static/main_map.js b/static/main_map.js index 0ba7ebb..adb97c1 100644 --- a/static/main_map.js +++ b/static/main_map.js @@ -80,6 +80,7 @@ function loadGeoObjects(){ /* get checked categories */ inputs = window.document.forms["frm_categories"]; var categories = ''; + var display_submited = false; for (var i = 0; i < inputs.length; i++) { input = inputs[i]; if (input.checked @@ -88,10 +89,14 @@ function loadGeoObjects(){ if(categories) categories += '_'; categories += id; } + if (input.checked && input.name == 'display_submited'){ + display_submited = true; + } } /* 0 stand for all categories */ if (!categories) categories = '0'; var uri = "/chimere/getGeoObjects/" + categories; + if (display_submited) uri += "/A_S"; OpenLayers.loadURL(uri, '', this, setGeoObjects); } diff --git a/static/styles.css b/static/styles.css index 6887dfb..f07784c 100644 --- a/static/styles.css +++ b/static/styles.css @@ -219,6 +219,7 @@ list-style:none; ul#categories li li{ font-variant:normal; +margin-left:20px; } ul#categories ul{ @@ -230,6 +231,11 @@ ul.subcategories img{ height:20px; } +ul#categories li#display_submited{ +font-variant:normal; +color:purple; +} + .errorlist{ color:purple; font-weight:bold; diff --git a/templates/base.html b/templates/base.html index da27cd2..e30e1e6 100644 --- a/templates/base.html +++ b/templates/base.html @@ -19,9 +19,7 @@ {% endfor %} </ul> </div> - <div id="sidebar"> - {% block sidebar %}{% endblock %} - </div> + {% block sidebar %}{% endblock %} <div id="content"> {% block content %}{% endblock %} </div> diff --git a/templates/main_map.html b/templates/main_map.html index b5aca16..20f740a 100644 --- a/templates/main_map.html +++ b/templates/main_map.html @@ -9,7 +9,9 @@ <li><input type='checkbox' onclick='loadGeoObjects()' name='category_{{sub_category.id}}' id='category_{{sub_category.id}}'{% if sub_category.selected %} checked='checked'{% endif %}/> <label for='{{sub_category.id}}'><img alt='{{sub_category.name}}' src='{{media_path}}{{sub_category.icon.image}}'/> {% trans sub_category.name %}</label></li>{% endfor %} </ul> </li>{% endfor %} + <li id='display_submited'><input type='checkbox' onclick='loadGeoObjects()' name='display_submited'/> {% trans "Display markers and routes waiting for validation"%}</li> </ul> + </form> </div> <div id='detail'> @@ -19,6 +19,8 @@ urlpatterns = patterns('', 'chimere.main.views.getDetail'), (r'^chimere/getGeoObjects/(?P<category_ids>\w+)/$', 'chimere.main.views.getGeoObjects'), + (r'^chimere/getGeoObjects/(?P<category_ids>\w+)/(?P<status>\w+)$', + 'chimere.main.views.getGeoObjects'), (r'^chimere/static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': ROOT_PATH + 'static/'}), (r'^chimere/media/(?P<path>.*)$', 'django.views.static.serve', |