from django.urls import path, include from teams.views.base import ( TeamListView, TeamGeneralView, TeamManageView, FixIrcAclView, ) from teams.views.members import ( TeamMembersView, TeamMemberRemoveView, TeamMemberApproveView, TeamJoinView, TeamLeaveView, ) from teams.views.info import ( InfoCategoriesListView, InfoItemUpdateView, InfoItemCreateView, InfoItemDeleteView, ) from teams.views.tasks import ( TeamTasksView, TaskCreateView, TaskDetailView, TaskUpdateView, ) from teams.views.shifts import ( ShiftListView, ShiftCreateView, ShiftCreateMultipleView, ShiftUpdateView, ShiftDeleteView, MemberTakesShift, ) app_name = 'teams' urlpatterns = [ path( '', TeamListView.as_view(), name='list' ), path( '/', include([ path( '', TeamGeneralView.as_view(), name='general' ), path( 'join/', TeamJoinView.as_view(), name='join' ), path( 'leave/', TeamLeaveView.as_view(), name='leave' ), path( 'manage/', TeamManageView.as_view(), name='manage' ), path( 'fix_irc_acl/', FixIrcAclView.as_view(), name='fix_irc_acl', ), path( 'members/', include([ path( '', TeamMembersView.as_view(), name='members' ), path( '/remove/', TeamMemberRemoveView.as_view(), name='member_remove', ), path( '/approve/', TeamMemberApproveView.as_view(), name='member_approve', ), ]), ), path( 'tasks/', include([ path( '', TeamTasksView.as_view(), name='tasks', ), path( 'create/', TaskCreateView.as_view(), name='task_create', ), path( '/', include([ path( '', TaskDetailView.as_view(), name='task_detail', ), path( 'update/', TaskUpdateView.as_view(), name='task_update', ), ]), ), ]), ), path( 'info/', include([ path( '', InfoCategoriesListView.as_view(), name='info_categories' ), path( '/', include([ path( 'create/', InfoItemCreateView.as_view(), name='info_item_create', ), path( '/', include([ path( 'update/', InfoItemUpdateView.as_view(), name='info_item_update', ), path( 'delete/', InfoItemDeleteView.as_view(), name='info_item_delete', ), ]), ), ]) ) ]) ), path('shifts/', include([ path( '', ShiftListView.as_view(), name="shifts" ), path( 'create/', ShiftCreateView.as_view(), name="shift_create" ), path( 'create_multiple/', ShiftCreateMultipleView.as_view(), name="shift_create_multiple" ), path('/', include([ path( '', ShiftUpdateView.as_view(), name="shift_update" ), path( 'delete', ShiftDeleteView.as_view(), name="shift_delete" ), path( 'take', MemberTakesShift.as_view(), name="shift_member_take" ), ])), ])) ]), ), ]