manager: redirect to meeting type tab after meeting type change (#69439)

This commit is contained in:
Lauréline Guérin 2022-09-22 17:21:43 +02:00
parent 316aec9b32
commit f76bc34c30
No known key found for this signature in database
GPG Key ID: 1FAB9B9B4F93D473
2 changed files with 7 additions and 2 deletions

View File

@ -2601,6 +2601,7 @@ class AgendaAddMeetingTypeView(ManagedAgendaMixin, CreateView):
template_name = 'chrono/manager_meeting_type_form.html'
model = MeetingType
form_class = NewMeetingTypeForm
tab_anchor = 'meeting-types'
agenda_add_meeting_type = AgendaAddMeetingTypeView.as_view()
@ -2610,6 +2611,7 @@ class MeetingTypeEditView(ManagedAgendaSubobjectMixin, UpdateView):
template_name = 'chrono/manager_meeting_type_form.html'
model = MeetingType
form_class = MeetingTypeForm
tab_anchor = 'meeting-types'
def form_valid(self, form):
try:
@ -2630,6 +2632,7 @@ meeting_type_edit = MeetingTypeEditView.as_view()
class MeetingTypeDeleteView(ManagedAgendaSubobjectMixin, DeleteView):
template_name = 'chrono/manager_confirm_delete.html'
model = MeetingType
tab_anchor = 'meeting-types'
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)

View File

@ -125,6 +125,7 @@ def test_meetings_agenda_add_meeting_type(app, admin_user):
assert not MeetingType.objects.exists()
resp.form['duration'] = '60'
resp = resp.form.submit()
assert resp.location.endswith('/manage/agendas/%s/settings#open:meeting-types' % agenda.pk)
meeting_type = MeetingType.objects.get(agenda=agenda)
assert meeting_type.label == 'Blah'
@ -180,7 +181,8 @@ def test_meetings_agenda_edit_meeting_type(app, admin_user):
# no errors
resp = app.get('/manage/meetingtypes/%s/edit' % meeting_type.pk)
resp.form['duration'] = '120'
resp = resp.form.submit().follow()
resp = resp.form.submit()
assert resp.location.endswith('/manage/agendas/%s/settings#open:meeting-types' % agenda.pk)
resp = app.get('/manage/meetingtypes/%s/edit' % meeting_type.pk)
resp.form['duration'] = '90'
@ -205,7 +207,7 @@ def test_meetings_agenda_delete_meeting_type(app, admin_user):
assert 'Are you sure you want to delete this?' in resp.text
assert 'disabled' not in resp.text
resp = resp.form.submit()
assert resp.location.endswith('/manage/agendas/%s/settings' % agenda.id)
assert resp.location.endswith('/manage/agendas/%s/settings#open:meeting-types' % agenda.pk)
meeting_type.refresh_from_db()
assert meeting_type.deleted is True
assert '__deleted__' in meeting_type.slug