diff options
author | etienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864> | 2010-04-25 16:43:20 +0000 |
---|---|---|
committer | etienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864> | 2010-04-25 16:43:20 +0000 |
commit | 1900a5b68bcb376a420a6e580a4b74a248c5efc6 (patch) | |
tree | 10cfae7c3ee4d1f9e0656cff2206757c4f079a41 | |
parent | 8af735d9ef047b1b858dfb089b100cd1a412ac14 (diff) | |
download | Chimère-1900a5b68bcb376a420a6e580a4b74a248c5efc6.tar.bz2 Chimère-1900a5b68bcb376a420a6e580a4b74a248c5efc6.zip |
Correct url resolution - #97
git-svn-id: http://www.peacefrogs.net/svn/chimere/trunk@81 9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864
-rw-r--r-- | chimere/main/views.py | 12 | ||||
-rw-r--r-- | chimere/urls.py | 25 |
2 files changed, 20 insertions, 17 deletions
diff --git a/chimere/main/views.py b/chimere/main/views.py index f8c93dc..0707caa 100644 --- a/chimere/main/views.py +++ b/chimere/main/views.py @@ -230,7 +230,7 @@ details.") 'contact_form':form, 'message':msg}) return render_to_response('contactus.html', response_dct) -def getDetail(request, marker_id): +def getDetail(request, area_name, marker_id): ''' Get the detail for a marker ''' @@ -246,7 +246,7 @@ def getDetail(request, marker_id): response_dct['simple'] = True return render_to_response('detail.html', response_dct) -def getDescriptionDetail(request, category_id): +def getDescriptionDetail(request, area_name, category_id): ''' Get the description for a category ''' @@ -254,11 +254,11 @@ def getDescriptionDetail(request, category_id): category = Category.objects.filter(id=int(category_id))[0] except (ValueError, IndexError): return HttpResponse('no results') - response_dct = get_base_response() + response_dct = get_base_response(area_name) response_dct['category'] = category return render_to_response('category_detail.html', response_dct) -def getGeoObjects(request, category_ids, status): +def getGeoObjects(request, area_name, category_ids, status): ''' Get the JSON for markers and routes ''' @@ -293,13 +293,13 @@ def getGeoObjects(request, category_ids, status): data = '{"type": "FeatureCollection", "features":[%s]}' % ",".join(jsons) return HttpResponse(data) -def getAvailableCategories(request, area=None, status='A', force=None): +def getAvailableCategories(request, area_name=None, area=None, status='A', force=None): ''' Get categories for a designed area ''' if settings.DYNAMIC_CATEGORIES and not area: return "" - response_dct = get_base_response() + response_dct = get_base_response('area_name') if not settings.DYNAMIC_CATEGORIES: subcategories = SubCategory.getAvailable() response_dct['sub_categories'] = subcategories diff --git a/chimere/urls.py b/chimere/urls.py index 799f03f..804949a 100644 --- a/chimere/urls.py +++ b/chimere/urls.py @@ -56,20 +56,23 @@ for area in url_areas: 'simple':True}),) extra = "|".join([area.urn for area in url_areas]) +default_dct = {} if extra: - extra = "(%s)?/?" % extra + extra = "(?P<area_name>%s)?/?" % extra +else: + default_dct = {'area_name':''} urlpatterns += patterns('chimere.main.views', -(base + extra + r'contact/$', 'contactus'), -(base + extra + r'edit/$', 'edit'), -(base + extra + r'edit_route/$', 'editRoute'), -(base + extra + r'submited/(\w+)/$', 'submited'), -(base + extra + r'getDetail/(?P<marker_id>\d+)/$', 'getDetail'), +(base + extra + r'contact/$', 'contactus', default_dct), +(base + extra + r'edit/$', 'edit', default_dct), +(base + extra + r'edit_route/$', 'editRoute', default_dct), +(base + extra + r'submited/(\w+)/$', 'submited', default_dct), +(base + extra + r'getDetail/(?P<marker_id>\d+)/$', 'getDetail', default_dct), (base + extra + r'getDescriptionDetail/(?P<category_id>\d+)/$', - 'getDescriptionDetail'), + 'getDescriptionDetail', default_dct), (base + extra + r'getGeoObjects/(?P<category_ids>\w+)(/(?P<status>\w+))?$', - 'getGeoObjects'), + 'getGeoObjects', default_dct), (base + extra + r'getAvailableCategories/(?P<area>\w+)(/(?P<status>\w+))?(/(?P<force>\w+))?$', - 'getAvailableCategories'), -(base + extra + r'getTinyUrl/(.*)$', 'getTinyfiedUrl'), -(base + extra + r'ty/(\w+)$', 'redirectFromTinyURN'), + 'getAvailableCategories', default_dct), +(base + extra + r'getTinyUrl/(?P<parameters>.*)$', 'getTinyfiedUrl', default_dct), +(base + extra + r'ty/(?P<tiny_urn>\w+)$', 'redirectFromTinyURN', default_dct), ) |