From 7a3c725f51e06822bc1926ca335b50b515278441 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Thu, 5 Dec 2019 15:59:16 -0500 Subject: [PATCH] Convert BUTTON_CLASS_CHOICES to a ChoiceSet --- netbox/extras/choices.py | 25 +++++++++++++++++++++++++ netbox/extras/constants.py | 17 ----------------- netbox/extras/models.py | 4 ++-- 3 files changed, 27 insertions(+), 19 deletions(-) diff --git a/netbox/extras/choices.py b/netbox/extras/choices.py index 1ae508c4a..962a5395b 100644 --- a/netbox/extras/choices.py +++ b/netbox/extras/choices.py @@ -50,3 +50,28 @@ class CustomFieldFilterLogicChoices(ChoiceSet): FILTER_LOOSE: 1, FILTER_EXACT: 2, } + + +# +# CustomLinks +# + +class CustomLinkButtonClassChoices(ChoiceSet): + + CLASS_DEFAULT = 'default' + CLASS_PRIMARY = 'primary' + CLASS_SUCCESS = 'success' + CLASS_INFO = 'info' + CLASS_WARNING = 'warning' + CLASS_DANGER = 'danger' + CLASS_LINK = 'link' + + CHOICES = ( + (CLASS_DEFAULT, 'Default'), + (CLASS_PRIMARY, 'Primary (blue)'), + (CLASS_SUCCESS, 'Success (green)'), + (CLASS_INFO, 'Info (aqua)'), + (CLASS_WARNING, 'Warning (orange)'), + (CLASS_DANGER, 'Danger (red)'), + (CLASS_LINK, 'None (link)'), + ) diff --git a/netbox/extras/constants.py b/netbox/extras/constants.py index 4d4e8835e..f22fb1dd9 100644 --- a/netbox/extras/constants.py +++ b/netbox/extras/constants.py @@ -42,23 +42,6 @@ CUSTOMLINK_MODELS = [ 'virtualization.virtualmachine', ] -BUTTON_CLASS_DEFAULT = 'default' -BUTTON_CLASS_PRIMARY = 'primary' -BUTTON_CLASS_SUCCESS = 'success' -BUTTON_CLASS_INFO = 'info' -BUTTON_CLASS_WARNING = 'warning' -BUTTON_CLASS_DANGER = 'danger' -BUTTON_CLASS_LINK = 'link' -BUTTON_CLASS_CHOICES = ( - (BUTTON_CLASS_DEFAULT, 'Default'), - (BUTTON_CLASS_PRIMARY, 'Primary (blue)'), - (BUTTON_CLASS_SUCCESS, 'Success (green)'), - (BUTTON_CLASS_INFO, 'Info (aqua)'), - (BUTTON_CLASS_WARNING, 'Warning (orange)'), - (BUTTON_CLASS_DANGER, 'Danger (red)'), - (BUTTON_CLASS_LINK, 'None (link)'), -) - # Graph types GRAPH_TYPE_INTERFACE = 100 GRAPH_TYPE_DEVICE = 150 diff --git a/netbox/extras/models.py b/netbox/extras/models.py index 8278cc19a..07fdb86eb 100644 --- a/netbox/extras/models.py +++ b/netbox/extras/models.py @@ -387,8 +387,8 @@ class CustomLink(models.Model): ) button_class = models.CharField( max_length=30, - choices=BUTTON_CLASS_CHOICES, - default=BUTTON_CLASS_DEFAULT, + choices=CustomLinkButtonClassChoices, + default=CustomLinkButtonClassChoices.CLASS_DEFAULT, help_text="The class of the first link in a group will be used for the dropdown button" ) new_window = models.BooleanField(