Make group acronym regex patterns consistent.
There were multiple different regex patterns in different urlpattern declarations, with some of them permitting characters which should not occur in group acronym. Changed them to consistently use [-a-z0-9]+ . - Legacy-Id: 11651
This commit is contained in:
parent
211943148d
commit
8ca48aac42
|
@ -2,6 +2,6 @@ from django.conf.urls import patterns, url
|
|||
|
||||
|
||||
urlpatterns = patterns('ietf.dbtemplate.views',
|
||||
url(r'^(?P<acronym>[\w.@+-]+)/$', 'template_list', name='template_list'),
|
||||
url(r'^(?P<acronym>[\w.@+-]+)/(?P<template_id>[\d]+)/$', 'template_edit', name='template_edit'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/$', 'template_list', name='template_list'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/(?P<template_id>[\d]+)/$', 'template_edit', name='template_edit'),
|
||||
)
|
||||
|
|
|
@ -11,7 +11,7 @@ urlpatterns = patterns('',
|
|||
(r'^concluded/$', 'ietf.group.views.concluded_groups'),
|
||||
(r'^email-aliases/$', 'ietf.group.views.email_aliases'),
|
||||
(r'^all-status/$', 'ietf.group.views.all_status'),
|
||||
(r'^(?P<acronym>[a-zA-Z0-9-._]+)/$', 'ietf.group.views.group_home', None, "group_home"),
|
||||
(r'^(?P<acronym>[a-zA-Z0-9-._]+)/', include('ietf.group.urls_info_details')),
|
||||
(r'^(?P<acronym>[-a-z0-9]+)/$', 'ietf.group.views.group_home', None, "group_home"),
|
||||
(r'^(?P<acronym>[-a-z0-9]+)/', include('ietf.group.urls_info_details')),
|
||||
)
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ from ietf.meeting import views
|
|||
from ietf.meeting import ajax
|
||||
|
||||
safe_for_all_meeting_types = [
|
||||
url(r'^session/(?P<acronym>[A-Za-z0-9_\-\+]+)/$', views.session_details),
|
||||
url(r'^session/(?P<acronym>[-a-z0-9]+)/$', views.session_details),
|
||||
url(r'^session/(?P<session_id>\d+)/drafts$', views.add_session_drafts),
|
||||
]
|
||||
|
||||
|
@ -69,16 +69,9 @@ type_ietf_only_patterns_id_optional = [
|
|||
]
|
||||
|
||||
urlpatterns = [
|
||||
# First patterns which start with unique strings
|
||||
url(r'^$', views.current_materials),
|
||||
url(r'^ajax/get-utc/$', views.ajax_get_utc),
|
||||
url(r'^requests.html$', RedirectView.as_view(url='/meeting/requests', permanent=True)),
|
||||
url(r'^(?P<num>\d+)/requests.html$', RedirectView.as_view(url='/meeting/%(num)s/requests', permanent=True)),
|
||||
url(r'^(?P<num>[A-Za-z0-9._+-]+)/', include(safe_for_all_meeting_types)),
|
||||
# The optionals have to go first, otherwise the agenda/(owner)/(name)/ patterns match things they shouldn't
|
||||
url(r'^(?:(?P<num>\d+)/)?', include(type_ietf_only_patterns_id_optional)),
|
||||
url(r'^(?P<num>\d+)/', include(type_ietf_only_patterns)),
|
||||
url(r'^(?P<num>interim-[a-z0-9-]+)/', include(type_ietf_only_patterns)),
|
||||
url(r'^upcoming/$', views.upcoming),
|
||||
url(r'^upcoming.ics/$', views.upcoming_ical),
|
||||
url(r'^interim/announce/$', views.interim_announce),
|
||||
url(r'^interim/announce/(?P<number>[A-Za-z0-9._+-]+)/$', views.interim_send_announcement),
|
||||
url(r'^interim/request/$', views.interim_request),
|
||||
|
@ -86,6 +79,17 @@ urlpatterns = [
|
|||
url(r'^interim/request/(?P<number>[A-Za-z0-9._+-]+)/edit/$', views.interim_request_edit),
|
||||
url(r'^interim/request/(?P<number>[A-Za-z0-9._+-]+)/cancel/$', views.interim_request_cancel),
|
||||
url(r'^interim/pending/$', views.interim_pending),
|
||||
url(r'^$', views.current_materials),
|
||||
url(r'^requests.html$', RedirectView.as_view(url='/meeting/requests', permanent=True)),
|
||||
url(r'^upcoming/$', views.upcoming),
|
||||
url(r'^upcoming.ics/$', views.upcoming_ical),
|
||||
# Then patterns from more specific to less
|
||||
url(r'^(?P<num>interim-[a-z0-9-]+)/', include(type_ietf_only_patterns)),
|
||||
url(r'^(?P<num>\d+)/requests.html$', RedirectView.as_view(url='/meeting/%(num)s/requests', permanent=True)),
|
||||
# The optionals have to go first of these two, otherwise the agenda/(owner)/(name)/ patterns match things they shouldn't
|
||||
url(r'^(?:(?P<num>\d+)/)?', include(type_ietf_only_patterns_id_optional)),
|
||||
url(r'^(?P<num>\d+)/', include(type_ietf_only_patterns)),
|
||||
#
|
||||
url(r'^(?P<num>\d+)/', include(safe_for_all_meeting_types)),
|
||||
url(r'^(?P<num>interim-[a-z0-9-]+)/', include(safe_for_all_meeting_types)),
|
||||
]
|
||||
|
||||
|
|
|
@ -6,11 +6,11 @@ urlpatterns = patterns('ietf.secr.groups.views',
|
|||
url(r'^blue-dot-report/$', 'blue_dot', name='groups_blue_dot'),
|
||||
url(r'^search/$', 'search', name='groups_search'),
|
||||
#(r'^ajax/get_ads/$', 'get_ads'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+\.]+)/$', 'view', name='groups_view'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+\.]+)/delete/(?P<id>\d{1,6})/$', 'delete_role', name='groups_delete_role'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+\.]+)/charter/$', 'charter', name='groups_charter'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+\.]+)/edit/$', 'edit', name='groups_edit'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+\.]+)/gm/$', 'view_gm', name='groups_view_gm'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+\.]+)/gm/edit/$', 'edit_gm', name='groups_edit_gm'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+\.]+)/people/$', 'people', name='groups_people'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/$', 'view', name='groups_view'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/delete/(?P<id>\d{1,6})/$', 'delete_role', name='groups_delete_role'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/charter/$', 'charter', name='groups_charter'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/edit/$', 'edit', name='groups_edit'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/gm/$', 'view_gm', name='groups_view_gm'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/gm/edit/$', 'edit_gm', name='groups_edit_gm'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/people/$', 'people', name='groups_people'),
|
||||
)
|
||||
|
|
|
@ -20,6 +20,6 @@ urlpatterns = patterns('ietf.secr.meetings.views',
|
|||
url(r'^(?P<meeting_id>\d{1,6})/(?P<schedule_name>[A-Za-z0-9_\-]+)/times/delete/(?P<time>[0-9\:]+)/$', 'times_delete', name='meetings_times_delete'),
|
||||
url(r'^(?P<meeting_id>\d{1,6})/(?P<schedule_name>[A-Za-z0-9_\-]+)/times/edit/(?P<time>[0-9\:]+)/$', 'times_edit', name='meetings_times_edit'),
|
||||
url(r'^(?P<meeting_id>\d{1,6})/(?P<schedule_name>[A-Za-z0-9_\-]+)/unschedule/(?P<session_id>\d{1,6})/$', 'unschedule', name='meetings_unschedule'),
|
||||
url(r'^(?P<meeting_id>\d{1,6})/(?P<schedule_name>[A-Za-z0-9_\-]+)/(?P<acronym>[A-Za-z0-9_\-\+]+)/schedule/$', 'schedule', name='meetings_schedule'),
|
||||
url(r'^(?P<meeting_id>\d{1,6})/(?P<acronym>[A-Za-z0-9_\-\+]+)/remove/$', 'remove_session', name='meetings_remove_session'),
|
||||
url(r'^(?P<meeting_id>\d{1,6})/(?P<schedule_name>[A-Za-z0-9_\-]+)/(?P<acronym>[-a-z0-9]+)/schedule/$', 'schedule', name='meetings_schedule'),
|
||||
url(r'^(?P<meeting_id>\d{1,6})/(?P<acronym>[-a-z0-9]+)/remove/$', 'remove_session', name='meetings_remove_session'),
|
||||
)
|
||||
|
|
|
@ -5,7 +5,7 @@ urlpatterns = patterns('ietf.secr.proceedings.views',
|
|||
url(r'^ajax/generate-proceedings/(?P<meeting_num>\d{1,3})/$', 'ajax_generate_proceedings', name='proceedings_ajax_generate_proceedings'),
|
||||
url(r'^ajax/order-slide/$', 'ajax_order_slide', name='proceedings_ajax_order_slide'),
|
||||
# special offline URL for testing proceedings build
|
||||
url(r'^build/(?P<meeting_num>\d{1,3}|interim-\d{4}-[A-Za-z0-9_\-\+]+)/(?P<acronym>[A-Za-z0-9_\-\+]+)/$',
|
||||
url(r'^build/(?P<meeting_num>\d{1,3}|interim-\d{4}-[A-Za-z0-9_\-\+]+)/(?P<acronym>[-a-z0-9]+)/$',
|
||||
'build', name='proceedings_build'),
|
||||
url(r'^delete/(?P<slide_id>[A-Za-z0-9._\-\+]+)/$', 'delete_material', name='proceedings_delete_material'),
|
||||
url(r'^edit-slide/(?P<slide_id>[A-Za-z0-9._\-\+]+)/$', 'edit_slide', name='proceedings_edit_slide'),
|
||||
|
@ -20,6 +20,6 @@ urlpatterns = patterns('ietf.secr.proceedings.views',
|
|||
# NOTE: we have two entries here which both map to upload_unified, passing session_id or acronym
|
||||
url(r'^(?P<meeting_num>\d{1,3}|interim-\d{4}-[A-Za-z0-9_\-\+]+)/(?P<session_id>\d{1,6})/$',
|
||||
'upload_unified', name='proceedings_upload_unified'),
|
||||
url(r'^(?P<meeting_num>\d{1,3}|interim-\d{4}-[A-Za-z0-9_\-\+]+)/(?P<acronym>[A-Za-z0-9_\-\+]+)/$',
|
||||
url(r'^(?P<meeting_num>\d{1,3}|interim-\d{4}-[A-Za-z0-9_\-\+]+)/(?P<acronym>[-a-z0-9]+)/$',
|
||||
'upload_unified', name='proceedings_upload_unified'),
|
||||
)
|
||||
|
|
|
@ -2,6 +2,6 @@ from django.conf.urls import patterns, url
|
|||
|
||||
urlpatterns = patterns('ietf.secr.roles.views',
|
||||
url(r'^$', 'main', name='roles'),
|
||||
url(r'^ajax/get-roles/(?P<acronym>[A-Za-z0-9_\-\+\.]+)/$', 'ajax_get_roles', name='roles_ajax_get_roles'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+\.]+)/delete/(?P<id>\d{1,6})/$', 'delete_role', name='roles_delete_role'),
|
||||
url(r'^ajax/get-roles/(?P<acronym>[-a-z0-9]+)/$', 'ajax_get_roles', name='roles_ajax_get_roles'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/delete/(?P<id>\d{1,6})/$', 'delete_role', name='roles_delete_role'),
|
||||
)
|
||||
|
|
|
@ -3,13 +3,13 @@ from django.conf.urls import patterns, url
|
|||
urlpatterns = patterns('ietf.secr.sreq.views',
|
||||
url(r'^$', 'main', name='sessions'),
|
||||
url(r'^status/$', 'tool_status', name='sessions_tool_status'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+]+)/$', 'view', name='sessions_view'),
|
||||
url(r'^(?P<num>[A-Za-z0-9_\-\+]+)/(?P<acronym>[A-Za-z0-9_\-\+]+)/view/$', 'view', name='sessions_view'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+]+)/approve/$', 'approve', name='sessions_approve'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+]+)/cancel/$', 'cancel', name='sessions_cancel'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+]+)/confirm/$', 'confirm', name='sessions_confirm'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+]+)/edit/$', 'edit', name='sessions_edit'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+]+)/new/$', 'new', name='sessions_new'),
|
||||
url(r'^(?P<acronym>[A-Za-z0-9_\-\+]+)/no_session/$', 'no_session', name='sessions_no_session'),
|
||||
url(r'^(?P<num>[A-Za-z0-9_\-\+]+)/(?P<acronym>[A-Za-z0-9_\-\+]+)/edit/$', 'edit_mtg', name='sessions_edit'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/$', 'view', name='sessions_view'),
|
||||
url(r'^(?P<num>[A-Za-z0-9_\-\+]+)/(?P<acronym>[-a-z0-9]+)/view/$', 'view', name='sessions_view'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/approve/$', 'approve', name='sessions_approve'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/cancel/$', 'cancel', name='sessions_cancel'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/confirm/$', 'confirm', name='sessions_confirm'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/edit/$', 'edit', name='sessions_edit'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/new/$', 'new', name='sessions_new'),
|
||||
url(r'^(?P<acronym>[-a-z0-9]+)/no_session/$', 'no_session', name='sessions_no_session'),
|
||||
url(r'^(?P<num>[A-Za-z0-9_\-\+]+)/(?P<acronym>[-a-z0-9]+)/edit/$', 'edit_mtg', name='sessions_edit'),
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue