1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Merge branch 'develop' into feature

This commit is contained in:
Jeremy Stretch
2024-05-01 16:09:14 -04:00
38 changed files with 794 additions and 574 deletions

View File

@ -24,6 +24,7 @@ from ipam.validators import MaxPrefixLengthValidator, MinPrefixLengthValidator,
from utilities.exceptions import AbortScript, AbortTransaction
from utilities.forms import add_blank_choice
from utilities.forms.fields import DynamicModelChoiceField, DynamicModelMultipleChoiceField
from utilities.forms.widgets import DatePicker, DateTimePicker
from .context_managers import event_tracking
from .forms import ScriptForm
from .utils import is_report
@ -33,6 +34,8 @@ __all__ = (
'BaseScript',
'BooleanVar',
'ChoiceVar',
'DateVar',
'DateTimeVar',
'FileVar',
'IntegerVar',
'IPAddressVar',
@ -174,6 +177,28 @@ class ChoiceVar(ScriptVariable):
self.field_attrs['choices'] = add_blank_choice(choices)
class DateVar(ScriptVariable):
"""
A date.
"""
form_field = forms.DateField
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.form_field.widget = DatePicker()
class DateTimeVar(ScriptVariable):
"""
A date and a time.
"""
form_field = forms.DateTimeField
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.form_field.widget = DateTimePicker()
class MultiChoiceVar(ScriptVariable):
"""
Like ChoiceVar, but allows for the selection of multiple choices.