From 56cb542e1ad8d20818d3a9f9f1c9ec57ede6ae33 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Thu, 20 Jul 2023 10:45:54 -0400 Subject: [PATCH] Clean up user & group import --- netbox/netbox/navigation/menu.py | 14 ++++++++++++++ netbox/users/forms/bulk_import.py | 13 +++---------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/netbox/netbox/navigation/menu.py b/netbox/netbox/navigation/menu.py index 4b77e6816..45de28f2b 100644 --- a/netbox/netbox/navigation/menu.py +++ b/netbox/netbox/navigation/menu.py @@ -368,6 +368,13 @@ ADMIN_MENU = Menu( permissions=[f'auth.add_user'], color=ButtonColorChoices.GREEN ), + MenuItemButton( + link=f'users:netboxuser_import', + title='Import', + icon_class='mdi mdi-upload', + permissions=[f'auth.add_user'], + color=ButtonColorChoices.CYAN + ) ) ), # Proxy model for auth.Group @@ -383,6 +390,13 @@ ADMIN_MENU = Menu( permissions=[f'auth.add_group'], color=ButtonColorChoices.GREEN ), + MenuItemButton( + link=f'users:netboxgroup_import', + title='Import', + icon_class='mdi mdi-upload', + permissions=[f'auth.add_group'], + color=ButtonColorChoices.CYAN + ) ) ), get_model_item('users', 'objectpermission', _('Permissions'), actions=['add']), diff --git a/netbox/users/forms/bulk_import.py b/netbox/users/forms/bulk_import.py index 723b121de..25f779044 100644 --- a/netbox/users/forms/bulk_import.py +++ b/netbox/users/forms/bulk_import.py @@ -1,5 +1,3 @@ -from django import forms - from users.models import NetBoxGroup, NetBoxUser from utilities.forms import CSVModelForm @@ -28,12 +26,7 @@ class UserImportForm(CSVModelForm): ) def save(self, *args, **kwargs): - edited = getattr(self, 'instance', None) - instance = super().save(*args, **kwargs) + # Set the hashed password + self.instance.set_password(self.cleaned_data.get('password')) - # On edit, check if we have to save the password - if edited and self.cleaned_data.get("password"): - instance.set_password(self.cleaned_data.get("password")) - instance.save() - - return instance + return super().save(*args, **kwargs)