diff --git a/openslides/agenda/views.py b/openslides/agenda/views.py index f54903f0a..8da27311d 100644 --- a/openslides/agenda/views.py +++ b/openslides/agenda/views.py @@ -91,7 +91,7 @@ class SetClosed(RedirectView, SingleObjectMixin): """ permission_required = 'agenda.can_manage_agenda' allow_ajax = True - url = 'item_overview' + url_name = 'item_overview' model = Item def get_ajax_context(self, **kwargs): @@ -123,16 +123,7 @@ class ItemUpdate(UpdateView): model = Item context_object_name = 'item' form_class = ItemForm - success_url = 'item_overview' - apply_url = 'item_edit' - - def get_success_url(self): - messages.success( - self.request, _("Item %s was successfully modified.") - % html_strong(self.request.POST['title'])) - if 'apply' in self.request.POST: - return '' - return reverse(super(UpdateView, self).get_success_url()) + success_url_name = 'item_overview' class ItemCreate(CreateView): @@ -144,16 +135,7 @@ class ItemCreate(CreateView): model = Item context_object_name = 'item' form_class = ItemForm - success_url = 'item_overview' - apply_url = 'item_edit' - - def get_success_url(self): - messages.success( - self.request, _("Item %s was successfully created.") - % html_strong(self.request.POST['title'])) - if 'apply' in self.request.POST: - return reverse(self.get_apply_url(), args=[self.object.id]) - return reverse(super(CreateView, self).get_success_url()) + success_url_name = 'item_overview' class ItemDelete(DeleteView): @@ -162,6 +144,7 @@ class ItemDelete(DeleteView): """ permission_required = 'agenda.can_manage_agenda' model = Item + question_url_name = 'item_overview' success_url_name = 'item_overview' def get_answer_options(self): @@ -221,12 +204,11 @@ def get_widgets(request): """ return the agenda widget for the projector-tab. """ - return [ - Widget( - name='agenda', - display_name=_('Agenda'), - template='agenda/widget.html', - context={ - 'agenda': SLIDE['agenda'], - 'items': Item.objects.all()}, - permission_required='projector.can_manage_projector')] + return [Widget( + name='agenda', + display_name=_('Agenda'), + template='agenda/widget.html', + context={ + 'agenda': SLIDE['agenda'], + 'items': Item.objects.all()}, + permission_required='projector.can_manage_projector')] diff --git a/openslides/assignment/views.py b/openslides/assignment/views.py index 36c8fd30a..6de5509da 100644 --- a/openslides/assignment/views.py +++ b/openslides/assignment/views.py @@ -635,6 +635,7 @@ class Config(FormView): permission_required = 'config.can_manage_config' form_class = ConfigForm template_name = 'assignment/config.html' + success_url_name = 'config_assignment' def get_initial(self): return { @@ -685,10 +686,9 @@ def register_tab(request): def get_widgets(request): - return [ - Widget( - name='assignments', - display_name=_('Elections'), - template='assignment/widget.html', - context={'assignments': Assignment.objects.all()}, - permission_required='projector.can_manage_projector')] + return [Widget( + name='assignments', + display_name=_('Elections'), + template='assignment/widget.html', + context={'assignments': Assignment.objects.all()}, + permission_required='projector.can_manage_projector')] diff --git a/openslides/config/views.py b/openslides/config/views.py index 1c2ccdc4b..997527384 100644 --- a/openslides/config/views.py +++ b/openslides/config/views.py @@ -33,6 +33,7 @@ class GeneralConfig(FormView): permission_required = 'config.can_manage_config' form_class = GeneralConfigForm template_name = 'config/general.html' + success_url_name = 'config_general' def get_initial(self): return { diff --git a/openslides/participant/templates/participant/group_detail.html b/openslides/participant/templates/participant/group_detail.html index fb456c31c..3f8eff858 100644 --- a/openslides/participant/templates/participant/group_detail.html +++ b/openslides/participant/templates/participant/group_detail.html @@ -1,4 +1,4 @@ -{% extends "participant/base_participant.html" %} +{% extends "base.html" %} {% load i18n %} {% load tags %} diff --git a/openslides/participant/templates/participant/user_detail.html b/openslides/participant/templates/participant/user_detail.html index af3b581c3..90aea2843 100644 --- a/openslides/participant/templates/participant/user_detail.html +++ b/openslides/participant/templates/participant/user_detail.html @@ -1,4 +1,4 @@ -{% extends "participant/base_participant.html" %} +{% extends "base.html" %} {% load i18n %} {% load tags %} diff --git a/openslides/participant/views.py b/openslides/participant/views.py index 10704caca..479f1d00c 100644 --- a/openslides/participant/views.py +++ b/openslides/participant/views.py @@ -163,6 +163,7 @@ class UserCreateView(CreateView): model = User context_object_name = 'edit_user' form_class = UserCreateForm + success_url_name = 'user_overview' def manipulate_object(self, form): self.object.username = gen_username( @@ -181,6 +182,7 @@ class UserUpdateView(UpdateView): model = User context_object_name = 'edit_user' form_class = UserUpdateForm + success_url_name = 'user_overview' class UserDeleteView(DeleteView): @@ -396,6 +398,7 @@ class GroupCreateView(CreateView): context_object_name = 'group' model = Group form_class = GroupForm + success_url_name = 'user_group_overview' def get(self, request, *args, **kwargs): delete_default_permissions() @@ -411,6 +414,7 @@ class GroupUpdateView(UpdateView): model = Group context_object_name = 'group' form_class = GroupForm + success_url_name = 'user_group_overview' def get(self, request, *args, **kwargs): delete_default_permissions() @@ -439,6 +443,7 @@ class Config(FormView): permission_required = 'config.can_manage_config' form_class = ConfigForm template_name = 'participant/config.html' + success_url_name = 'config_participant' def get_initial(self): return { diff --git a/openslides/projector/models.py b/openslides/projector/models.py index f403b6395..c03c426cf 100644 --- a/openslides/projector/models.py +++ b/openslides/projector/models.py @@ -38,7 +38,9 @@ class ProjectorSlide(models.Model, SlideMixin): } @models.permalink - def get_absolute_url(self, link='delete'): + def get_absolute_url(self, link='edit'): + if link == 'edit': + return ('customslide_edit', [str(self.id)]) if link == 'delete': return ('customslide_delete', [str(self.id)]) diff --git a/openslides/projector/views.py b/openslides/projector/views.py index 68fd60e75..b70cd504d 100644 --- a/openslides/projector/views.py +++ b/openslides/projector/views.py @@ -341,6 +341,7 @@ class CustomSlideCreateView(CreateView): template_name = 'projector/new.html' model = ProjectorSlide context_object_name = 'customslide' + success_url_name = 'dashboard' class CustomSlideUpdateView(UpdateView): @@ -351,6 +352,7 @@ class CustomSlideUpdateView(UpdateView): template_name = 'projector/new.html' model = ProjectorSlide context_object_name = 'customslide' + success_url_name = 'dashboard' class CustomSlideDeleteView(DeleteView): @@ -359,7 +361,7 @@ class CustomSlideDeleteView(DeleteView): """ permission_required = 'projector.can_manage_projector' model = ProjectorSlide - url_name = 'dashboard' + success_url_name = 'dashboard' def register_tab(request):