Add missing admin widgets changes

Missed because of the `admin/widgets.py` to `admin/widgets/*` split
pull/6257/head
Dan Braghis 2020-05-29 16:25:22 +01:00 zatwierdzone przez Matt Westcott
rodzic dce5020e17
commit ed2d9a0094
2 zmienionych plików z 29 dodań i 7 usunięć

Wyświetl plik

@ -73,11 +73,12 @@ class BaseDropdownMenuButton(Button):
class ButtonWithDropdownFromHook(BaseDropdownMenuButton):
template_name = 'wagtailadmin/pages/listing/_button_with_dropdown.html'
def __init__(self, label, hook_name, page, page_perms, is_parent, **kwargs):
def __init__(self, label, hook_name, page, page_perms, is_parent, next_url=None, **kwargs):
self.hook_name = hook_name
self.page = page
self.page_perms = page_perms
self.is_parent = is_parent
self.next_url = next_url
super().__init__(label, **kwargs)

Wyświetl plik

@ -11,13 +11,14 @@ from wagtail.admin.staticfiles import versioned_static
DEFAULT_DATE_FORMAT = '%Y-%m-%d'
DEFAULT_DATETIME_FORMAT = '%Y-%m-%d %H:%M'
DEFAULT_TIME_FORMAT = '%H:%M'
class AdminDateInput(widgets.DateInput):
template_name = 'wagtailadmin/widgets/date_input.html'
def __init__(self, attrs=None, format=None):
default_attrs = {'autocomplete': 'new-date'}
default_attrs = {'autocomplete': 'off'}
fmt = format
if attrs:
default_attrs.update(attrs)
@ -47,11 +48,26 @@ class AdminDateInput(widgets.DateInput):
class AdminTimeInput(widgets.TimeInput):
template_name = 'wagtailadmin/widgets/time_input.html'
def __init__(self, attrs=None, format='%H:%M'):
default_attrs = {'autocomplete': 'new-time'}
def __init__(self, attrs=None, format=None):
default_attrs = {'autocomplete': 'off'}
if attrs:
default_attrs.update(attrs)
super().__init__(attrs=default_attrs, format=format)
fmt = format
if fmt is None:
fmt = getattr(settings, 'WAGTAIL_TIME_FORMAT', DEFAULT_TIME_FORMAT)
self.js_format = to_datetimepicker_format(fmt)
super().__init__(attrs=default_attrs, format=fmt)
def get_context(self, name, value, attrs):
context = super().get_context(name, value, attrs)
config = {
'format': self.js_format,
'formatTime': self.js_format
}
context['widget']['config_json'] = json.dumps(config)
return context
@property
def media(self):
@ -63,14 +79,18 @@ class AdminTimeInput(widgets.TimeInput):
class AdminDateTimeInput(widgets.DateTimeInput):
template_name = 'wagtailadmin/widgets/datetime_input.html'
def __init__(self, attrs=None, format=None):
default_attrs = {'autocomplete': 'new-date-time'}
def __init__(self, attrs=None, format=None, time_format=None):
default_attrs = {'autocomplete': 'off'}
fmt = format
if attrs:
default_attrs.update(attrs)
if fmt is None:
fmt = getattr(settings, 'WAGTAIL_DATETIME_FORMAT', DEFAULT_DATETIME_FORMAT)
time_fmt = time_format
if time_fmt is None:
time_fmt = getattr(settings, 'WAGTAIL_TIME_FORMAT', DEFAULT_TIME_FORMAT)
self.js_format = to_datetimepicker_format(fmt)
self.js_time_format = to_datetimepicker_format(time_fmt)
super().__init__(attrs=default_attrs, format=fmt)
def get_context(self, name, value, attrs):
@ -79,6 +99,7 @@ class AdminDateTimeInput(widgets.DateTimeInput):
config = {
'dayOfWeekStart': get_format('FIRST_DAY_OF_WEEK'),
'format': self.js_format,
'formatTime': self.js_time_format
}
context['widget']['config_json'] = json.dumps(config)