From e8246f6c4bdeb63aee809048c8d69a4119002e1c Mon Sep 17 00:00:00 2001 From: Matt Westcott Date: Fri, 6 Feb 2015 12:54:09 +0000 Subject: [PATCH] introduce a common AdminChooser superclass for all our Admin*Choosers --- wagtail/wagtailadmin/widgets.py | 5 ++++- wagtail/wagtaildocs/widgets.py | 8 ++------ wagtail/wagtailimages/widgets.py | 8 ++------ wagtail/wagtailsnippets/widgets.py | 7 ++----- 4 files changed, 10 insertions(+), 18 deletions(-) diff --git a/wagtail/wagtailadmin/widgets.py b/wagtail/wagtailadmin/widgets.py index f8282082c..3b12b95d2 100644 --- a/wagtail/wagtailadmin/widgets.py +++ b/wagtail/wagtailadmin/widgets.py @@ -34,8 +34,11 @@ class AdminTagWidget(WidgetWithScript, TagWidget): json.dumps(reverse('wagtailadmin_tag_autocomplete'))) -class AdminPageChooser(WidgetWithScript, widgets.Input): +class AdminChooser(WidgetWithScript, widgets.Input): input_type = 'hidden' + + +class AdminPageChooser(AdminChooser): target_content_type = None def __init__(self, content_type=None, **kwargs): diff --git a/wagtail/wagtaildocs/widgets.py b/wagtail/wagtaildocs/widgets.py index fd23bec8c..643cfae66 100644 --- a/wagtail/wagtaildocs/widgets.py +++ b/wagtail/wagtaildocs/widgets.py @@ -2,13 +2,9 @@ from __future__ import absolute_import, unicode_literals import json -from django.forms import widgets - -from wagtail.utils.widgets import WidgetWithScript +from wagtail.wagtailadmin.widgets import AdminChooser -class AdminDocumentChooser(WidgetWithScript, widgets.Input): - input_type = 'hidden' - +class AdminDocumentChooser(AdminChooser): def render_js_init(self, id_, name, value): return "createDocumentChooser({0});".format(json.dumps(id_)) diff --git a/wagtail/wagtailimages/widgets.py b/wagtail/wagtailimages/widgets.py index 3580e74a1..82b278dc1 100644 --- a/wagtail/wagtailimages/widgets.py +++ b/wagtail/wagtailimages/widgets.py @@ -2,13 +2,9 @@ from __future__ import absolute_import, unicode_literals import json -from django.forms import widgets - -from wagtail.utils.widgets import WidgetWithScript +from wagtail.wagtailadmin.widgets import AdminChooser -class AdminImageChooser(WidgetWithScript, widgets.Input): - input_type = 'hidden' - +class AdminImageChooser(AdminChooser): def render_js_init(self, id_, name, value): return "createImageChooser({0});".format(json.dumps(id_)) diff --git a/wagtail/wagtailsnippets/widgets.py b/wagtail/wagtailsnippets/widgets.py index 00945e06f..7abf95a03 100644 --- a/wagtail/wagtailsnippets/widgets.py +++ b/wagtail/wagtailsnippets/widgets.py @@ -2,13 +2,10 @@ from __future__ import absolute_import, unicode_literals import json -from django.forms import widgets - -from wagtail.utils.widgets import WidgetWithScript +from wagtail.wagtailadmin.widgets import AdminChooser -class AdminSnippetChooser(WidgetWithScript, widgets.Input): - input_type = 'hidden' +class AdminSnippetChooser(AdminChooser): target_content_type = None def __init__(self, content_type=None, **kwargs):