diff --git a/chrono/manager/templates/chrono/manager_meetings_agenda_settings.html b/chrono/manager/templates/chrono/manager_meetings_agenda_settings.html
index c06389d1..113ea5bb 100644
--- a/chrono/manager/templates/chrono/manager_meetings_agenda_settings.html
+++ b/chrono/manager/templates/chrono/manager_meetings_agenda_settings.html
@@ -12,12 +12,6 @@
{% endif %}
{% endblock %}
-{% block agenda-extra-management-actions %}
- {% if has_resources %}{% trans 'Add resource' %}{% endif %}
- {% trans 'New Meeting Type' %}
- {% trans 'New Desk' %}
-{% endblock %}
-
{% block agenda-extra-menu-actions %}
{% if object.desk_simple_management %}
{% trans 'Switch to invididual desk management' %}
@@ -66,11 +60,14 @@
{% else %}
{% blocktrans trimmed %}
- This agenda doesn't have any meeting type yet. Click on the "New Meeting Type" button in
- the top right of the page to add a first one.
+ This agenda doesn't have any meeting type yet. Click on the "New Meeting Type" button to add a first one.
{% endblocktrans %}
{% endif %}
+
+
{% if object.desk_simple_management %}
@@ -79,10 +76,13 @@
{% for desk in object.prefetched_desks %}
{{ desk.label }}
- {% trans "remove" %}
+ {% if object.prefetched_desks|length > 1 %}{% trans "remove" %}{% endif %}
{% endfor %}
+
{% endif %}
@@ -139,11 +139,15 @@
{% else %}
{% blocktrans trimmed %}
- This agenda doesn't have any desk yet. Click on the "New Desk" button in
- the top right of the page to add a first one.
+ This agenda doesn't have any desk yet. Click on the "New Desk" button to add a first one.
{% endblocktrans %}
{% endif %}
+ {% if not object.desk_simple_management %}
+
+ {% endif %}
{% if has_resources %}
@@ -164,12 +168,14 @@
{% else %}
{% blocktrans trimmed %}
- This agenda doesn't have any resource yet. Click on the "Add resource" button in
- the top right of the page to add a first one.
+ This agenda doesn't have any resource yet. Click on the "Add resource" button to add a first one.
{% endblocktrans %}
{% endif %}
{% endwith %}
+
{% endif %}
diff --git a/chrono/manager/views.py b/chrono/manager/views.py
index 55dd2102..271be14c 100644
--- a/chrono/manager/views.py
+++ b/chrono/manager/views.py
@@ -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'
diff --git a/tests/manager/test_meetings_agenda_options.py b/tests/manager/test_meetings_agenda_options.py
index bce94146..50dfb6af 100644
--- a/tests/manager/test_meetings_agenda_options.py
+++ b/tests/manager/test_meetings_agenda_options.py
@@ -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