From 7785beecc609970a31cd5872ea66de9a5f8fc886 Mon Sep 17 00:00:00 2001 From: Matt Westcott Date: Wed, 12 Aug 2015 17:08:22 +0100 Subject: [PATCH] Allow AdminPageChooser edit link to be hidden, and hide it on the page permissions interface --- .../wagtailadmin/templates/wagtailadmin/widgets/chooser.html | 4 +++- wagtail/wagtailadmin/widgets.py | 3 +++ wagtail/wagtailusers/forms.py | 3 ++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/wagtail/wagtailadmin/templates/wagtailadmin/widgets/chooser.html b/wagtail/wagtailadmin/templates/wagtailadmin/widgets/chooser.html index 924233691..321a9b399 100644 --- a/wagtail/wagtailadmin/templates/wagtailadmin/widgets/chooser.html +++ b/wagtail/wagtailadmin/templates/wagtailadmin/widgets/chooser.html @@ -17,7 +17,9 @@
  • {% endif %}
  • -
  • {{ widget.link_to_chosen_text }}
  • + {% if widget.show_edit_link %} +
  • {{ widget.link_to_chosen_text }}
  • + {% endif %} diff --git a/wagtail/wagtailadmin/widgets.py b/wagtail/wagtailadmin/widgets.py index 58e1f9eeb..ffa5730c3 100644 --- a/wagtail/wagtailadmin/widgets.py +++ b/wagtail/wagtailadmin/widgets.py @@ -66,6 +66,7 @@ class AdminChooser(WidgetWithScript, widgets.Input): choose_another_text = _("Choose another item") clear_choice_text = _("Clear choice") link_to_chosen_text = _("Edit this item") + show_edit_link = True def get_instance(self, model_class, value): # helper method for cleanly turning 'value' into an instance object @@ -106,6 +107,8 @@ class AdminChooser(WidgetWithScript, widgets.Input): self.clear_choice_text = kwargs.pop('clear_choice_text') if 'link_to_chosen_text' in kwargs: self.link_to_chosen_text = kwargs.pop('link_to_chosen_text') + if 'show_edit_link' in kwargs: + self.show_edit_link = kwargs.pop('show_edit_link') super(AdminChooser, self).__init__(**kwargs) diff --git a/wagtail/wagtailusers/forms.py b/wagtail/wagtailusers/forms.py index 884dc7254..ce4108a01 100644 --- a/wagtail/wagtailusers/forms.py +++ b/wagtail/wagtailusers/forms.py @@ -229,7 +229,8 @@ class GroupForm(forms.ModelForm): class GroupPagePermissionForm(forms.ModelForm): - page = forms.ModelChoiceField(queryset=Page.objects.all(), widget=AdminPageChooser()) + page = forms.ModelChoiceField(queryset=Page.objects.all(), + widget=AdminPageChooser(show_edit_link=False)) class Meta: model = GroupPagePermission