summaryrefslogtreecommitdiff
path: root/ishtar_common/forms_common.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/forms_common.py')
-rw-r--r--ishtar_common/forms_common.py16
1 files changed, 11 insertions, 5 deletions
diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py
index 3fa819a8f..187941bb6 100644
--- a/ishtar_common/forms_common.py
+++ b/ishtar_common/forms_common.py
@@ -605,6 +605,7 @@ class TargetKeyForm(forms.ModelForm):
]
if self.user.is_superuser:
choices += [("all", _("all users"))]
+ choices += [("all-importers", _("all users and importers"))]
self.fields["remember"].choices = choices
self.fields["remember"].widget.attrs["class"] = "auto"
self.remember_choices = choices
@@ -625,7 +626,7 @@ class TargetKeyForm(forms.ModelForm):
def save(self, commit=True):
try:
- super(TargetKeyForm, self).save(commit)
+ super().save(commit)
except ImporterError:
return
if not self.cleaned_data.get("value") or not self.user:
@@ -644,23 +645,28 @@ class TargetKeyForm(forms.ModelForm):
)
remember = self.cleaned_data.get("remember")
+ self.instance.associated_import = self.associated_import
+ force_importer_type, force_all = False, False
if remember == "import" and self.associated_import:
- self.instance.associated_import = self.associated_import
self.instance.associated_user = None
self.instance.associated_group = None
elif remember == "group" and can_edit_group:
- self.instance.associated_import = None
self.instance.associated_user = None
self.instance.associated_group = self.associated_import.associated_group
elif remember == "all" and self.user.is_superuser:
- self.instance.associated_import = None
self.instance.associated_user = None
self.instance.associated_group = None
+ force_importer_type = True
+ elif remember == "all-importers" and self.user.is_superuser:
+ self.instance.associated_user = None
+ self.instance.associated_group = None
+ force_all = True
else:
# for me!
- self.instance.associated_import = None
self.instance.associated_user = self.user.ishtaruser
self.instance.associated_group = None
+ self.instance.create_itemkey(force_importer_type=force_importer_type,
+ force_all=force_all)
self.instance.save()