manager: fix simple desk management & tab redirection (#68217)
gitea-wip/chrono/pipeline/pr-main This commit looks good Details

This commit is contained in:
Lauréline Guérin 2023-01-10 10:03:04 +01:00
parent 790528ae76
commit 662785c072
No known key found for this signature in database
GPG Key ID: 1FAB9B9B4F93D473
2 changed files with 11 additions and 4 deletions

View File

@ -3046,7 +3046,14 @@ class AgendaDateTimePeriodListView(ManagedDeskMixin, ListView):
agenda_date_time_period_list = AgendaDateTimePeriodListView.as_view()
class AgendaAddDesk(ManagedAgendaMixin, CreateView):
class AgendaDeskMixin:
def get_success_url(self):
if not self.object.agenda.desk_simple_management:
self.tab_anchor = 'time-periods'
return super().get_success_url()
class AgendaAddDesk(AgendaDeskMixin, ManagedAgendaMixin, CreateView):
template_name = 'chrono/manager_desk_form.html'
model = Desk
form_class = NewDeskForm
@ -3060,7 +3067,7 @@ class AgendaAddDesk(ManagedAgendaMixin, CreateView):
agenda_add_desk = AgendaAddDesk.as_view()
class DeskEditView(ManagedAgendaSubobjectMixin, UpdateView):
class DeskEditView(AgendaDeskMixin, ManagedAgendaSubobjectMixin, UpdateView):
template_name = 'chrono/manager_desk_form.html'
model = Desk
form_class = DeskForm
@ -3073,7 +3080,7 @@ class DeskEditView(ManagedAgendaSubobjectMixin, UpdateView):
desk_edit = DeskEditView.as_view()
class DeskDeleteView(ManagedAgendaSubobjectMixin, DeleteView):
class DeskDeleteView(AgendaDeskMixin, ManagedAgendaSubobjectMixin, DeleteView):
template_name = 'chrono/manager_confirm_delete.html'
model = Desk
tab_anchor = 'desks'

View File

@ -380,7 +380,7 @@ def test_meetings_agenda_delete_desk(app, admin_user):
resp = resp.click('Desk A')
resp = resp.click('Delete')
resp = resp.form.submit()
assert resp.location.endswith('/manage/agendas/%s/settings#open:desks' % agenda.pk)
assert resp.location.endswith('/manage/agendas/%s/settings#open:time-periods' % agenda.pk)
assert Desk.objects.count() == 1
# only one desk