summaryrefslogtreecommitdiff
path: root/django/contrib/admin/widgets.py
diff options
context:
space:
mode:
authorJohannes Hoppe <info@johanneshoppe.com>2017-07-20 17:06:30 +0200
committerTim Graham <timograham@gmail.com>2017-07-20 11:06:30 -0400
commitc19b56f633e172b3c02094cbe12d28865ee57772 (patch)
tree698bf39231100f9a95ab87aa37b416eb7056e4e0 /django/contrib/admin/widgets.py
parentf86b6f351d45c366f733c586127251c598dfd541 (diff)
Fixed #28377 -- Made combining form Media retain relative asset order.
Thanks Florian Apolloner, Mariusz Felisiak, and Tim Graham for reviews.
Diffstat (limited to 'django/contrib/admin/widgets.py')
-rw-r--r--django/contrib/admin/widgets.py26
1 files changed, 23 insertions, 3 deletions
diff --git a/django/contrib/admin/widgets.py b/django/contrib/admin/widgets.py
index 4b932f2c01..7cf71bb6ce 100644
--- a/django/contrib/admin/widgets.py
+++ b/django/contrib/admin/widgets.py
@@ -4,6 +4,7 @@ Form Widget classes specific to the Django admin site.
import copy
from django import forms
+from django.conf import settings
from django.db.models.deletion import CASCADE
from django.urls import reverse
from django.urls.exceptions import NoReverseMatch
@@ -22,7 +23,14 @@ class FilteredSelectMultiple(forms.SelectMultiple):
"""
@property
def media(self):
- js = ["core.js", "SelectBox.js", "SelectFilter2.js"]
+ extra = '' if settings.DEBUG else '.min'
+ js = [
+ 'vendor/jquery/jquery%s.js' % extra,
+ 'jquery.init.js',
+ 'core.js',
+ 'SelectBox.js',
+ 'SelectFilter2.js',
+ ]
return forms.Media(js=["admin/js/%s" % path for path in js])
def __init__(self, verbose_name, is_stacked, attrs=None, choices=()):
@@ -43,7 +51,13 @@ class FilteredSelectMultiple(forms.SelectMultiple):
class AdminDateWidget(forms.DateInput):
@property
def media(self):
- js = ["calendar.js", "admin/DateTimeShortcuts.js"]
+ extra = '' if settings.DEBUG else '.min'
+ js = [
+ 'vendor/jquery/jquery%s.js' % extra,
+ 'jquery.init.js',
+ 'calendar.js',
+ 'admin/DateTimeShortcuts.js',
+ ]
return forms.Media(js=["admin/js/%s" % path for path in js])
def __init__(self, attrs=None, format=None):
@@ -56,7 +70,13 @@ class AdminDateWidget(forms.DateInput):
class AdminTimeWidget(forms.TimeInput):
@property
def media(self):
- js = ["calendar.js", "admin/DateTimeShortcuts.js"]
+ extra = '' if settings.DEBUG else '.min'
+ js = [
+ 'vendor/jquery/jquery%s.js' % extra,
+ 'jquery.init.js',
+ 'calendar.js',
+ 'admin/DateTimeShortcuts.js',
+ ]
return forms.Media(js=["admin/js/%s" % path for path in js])
def __init__(self, attrs=None, format=None):