datatracker/ietf/group/urls.py
Robert Sparks dbe1749438
feat: IAB statements (#5940)
* feat: support iab and iesg statements. Import iab statements. (#5895)

* feat: infrastructure for statements doctype

* chore: basic test framework

* feat: basic statement document view

* feat: show replaced statements

* chore: black

* fix: state help for statements

* fix: cleanout non-relevant email expansions

* feat: import iab statements, provide group statements tab

* fix: guard against running import twice

* feat: build redirect csv for iab statements

* fix: set document state on import

* feat: show published date on main doc view

* feat: handle pdf statements

* feat: create new and update statements

* chore: copyright block updates

* chore: remove flakes

* chore: black

* feat: add edit/new buttons for the secretariat

* fix: address PR #5895 review comments

* fix: pin pydantic until inflect catches up (#5901) (#5902)

* chore: re-un-pin pydantic
2023-07-23 11:00:24 -07:00

93 lines
4.9 KiB
Python

# Copyright The IETF Trust 2013-2023, All Rights Reserved
from django.conf import settings
from django.urls import include
from django.views.generic import RedirectView
from ietf.community import views as community_views
from ietf.doc import views_material as material_views
from ietf.group import views, milestones as milestone_views
from ietf.utils.urls import url
# These are not used externally, only in include statements further down:
info_detail_urls = [
url(r'^$', views.group_home),
url(r'^documents/txt/$', views.group_documents_txt),
url(r'^documents/$', views.group_documents),
url(r'^documents/manage/$', community_views.manage_list),
url(r'^documents/csv/$', community_views.export_to_csv),
url(r'^documents/feed/$', community_views.feed),
url(r'^documents/subscription/$', community_views.subscription),
url(r'^charter/$', views.group_about),
url(r'^about/$', views.group_about),
url(r'^about/status/$', views.group_about_status),
url(r'^about/status/edit/$', views.group_about_status_edit),
url(r'^about/status/meeting/(?P<num>\d+)/$', views.group_about_status_meeting),
url(r'^history/$',views.history),
url(r'^history/addcomment/$',views.add_comment),
url(r'^email/$', views.email),
url(r'^deps\.json$', views.dependencies),
url(r'^meetings/$', views.meetings),
url(r'^edit/$', views.edit, {'action': "edit"}),
url(r'^edit/(?P<field>[-a-z0-9_]+)/?$', views.edit, {'action': "edit"}),
url(r'^conclude/$', views.conclude),
url(r'^milestones/$', milestone_views.edit_milestones, {'milestone_set': "current"}, name='ietf.group.milestones.edit_milestones;current'),
url(r'^milestones/charter/$', milestone_views.edit_milestones, {'milestone_set': "charter"}, name='ietf.group.milestones.edit_milestones;charter'),
url(r'^milestones/charter/reset/$', milestone_views.reset_charter_milestones, None, 'ietf.group.milestones.reset_charter_milestones'),
url(r'^workflow/$', views.customize_workflow),
url(r'^materials/$', views.materials),
url(r'^materials/new/$', material_views.choose_material_type),
url(r'^materials/new/(?P<doc_type>[\w-]+)/$', material_views.edit_material, { 'action': "new" }, 'ietf.doc.views_material.edit_material'),
url(r'^photos/$', views.group_photos),
url(r'^reviews/$', views.review_requests),
url(r'^reviews/manage/(?P<assignment_status>unassigned)/$', views.manage_review_requests),
url(r'^reviews/email-assignments/$', views.email_open_review_assignments),
url(r'^reviewers/$', views.reviewer_overview),
url(r'^reviewers/(?P<reviewer_email>[\w%+-.@]+)/settings/$', views.change_reviewer_settings),
url(r'^secretarysettings/$', views.change_review_secretary_settings),
url(r'^reset_next_reviewer/$', views.reset_next_reviewer),
url(r'^email-aliases/$', RedirectView.as_view(pattern_name=views.email,permanent=False),name='ietf.group.urls_info_details.redirect.email'),
url(r'^statements/$', views.statements),
]
group_urls = [
url(r'^$', views.active_groups),
url(r'^groupstats.json', views.group_stats_data, None, 'ietf.group.views.group_stats_data'),
url(r'^groupmenu.json', views.group_menu_data, None, 'ietf.group.views.group_menu_data'),
url(r'^chartering/$', views.chartering_groups),
url(r'^chartering/create/(?P<group_type>(wg|rg))/$', views.edit, {'action': "charter"}),
url(r'^concluded/$', views.concluded_groups),
url(r'^email-aliases/$', views.email_aliases),
url(r'^all-status/$', views.all_status),
#
url(r'^%(acronym)s/$' % settings.URL_REGEXPS, views.group_home),
url(r'^%(acronym)s/' % settings.URL_REGEXPS, include(info_detail_urls)),
]
stream_urls = [
url(r'^$', views.streams),
url(r'^%(acronym)s/$' % settings.URL_REGEXPS, views.stream_documents, None),
url(r'^%(acronym)s/edit/$' % settings.URL_REGEXPS, views.stream_edit),
]
grouptype_urls = [
url(r'^$', views.active_groups),
url(r'^summary.txt', RedirectView.as_view(url='/wg/1wg-summary.txt', permanent=True)),
url(r'^summary-by-area.txt', RedirectView.as_view(url='/wg/1wg-summary.txt', permanent=True)),
url(r'^summary-by-acronym.txt', RedirectView.as_view(url='/wg/1wg-summary-by-acronym.txt', permanent=True)),
url(r'^1wg-summary.txt', views.wg_summary_area),
url(r'^1wg-summary-by-acronym.txt', views.wg_summary_acronym),
url(r'^1wg-charters.txt', views.wg_charters),
url(r'^1wg-charters-by-acronym.txt', views.wg_charters_by_acronym),
url(r'^chartering/$', RedirectView.as_view(url='/group/chartering/', permanent=True)),
url(r'^chartering/create/$', RedirectView.as_view(url='/group/chartering/create/%(group_type)s/', permanent=True)),
url(r'^bofs/$', views.bofs),
url(r'^email-aliases/$', views.email_aliases),
url(r'^bofs/create/$', views.edit, {'action': "create", }),
url(r'^photos/$', views.chair_photos),
url(r'^%(acronym)s/' % settings.URL_REGEXPS, include(info_detail_urls)),
]