manager: fix simple desk management & tab redirection (#68217)
gitea-wip/chrono/pipeline/pr-main This commit looks good
Details
gitea-wip/chrono/pipeline/pr-main This commit looks good
Details
This commit is contained in:
parent
790528ae76
commit
662785c072
|
@ -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'
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue