summaryrefslogtreecommitdiff
path: root/ishtar_common/forms.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/forms.py')
-rw-r--r--ishtar_common/forms.py20
1 files changed, 18 insertions, 2 deletions
diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py
index 2f311a779..8c1c0a5b1 100644
--- a/ishtar_common/forms.py
+++ b/ishtar_common/forms.py
@@ -1046,6 +1046,14 @@ class HistorySelect(CustomForm, TableSelect):
)
modified = DateField(label=_("Modified"), required=False)
locked = forms.NullBooleanField(label=_("Is locked?"))
+ ishtar_users = forms.IntegerField(
+ label=_("Attached to user"),
+ widget=widgets.JQueryAutoComplete(
+ reverse_lazy("autocomplete-user"), associated_model=User
+ ),
+ required=False,
+ )
+
_explicit_ordering = True
CURRENT_FIELDS = [
@@ -1054,17 +1062,25 @@ class HistorySelect(CustomForm, TableSelect):
"history_modifier",
"modified",
"locked",
+ "ishtar_users"
]
+ ADMIN_FIELDS = ["ishtar_users"]
def __init__(self, *args, **kwargs):
- super(HistorySelect, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
field_order = self.fields.keys()
fields = OrderedDict()
for k in field_order:
if k in self.CURRENT_FIELDS:
continue
fields[k] = self.fields[k]
- for k in self.CURRENT_FIELDS:
+ current_fields = self.CURRENT_FIELDS[:]
+ current_user = getattr(self, "current_user", None)
+ if not current_user or not current_user.is_ishtaradmin:
+ for k in self.ADMIN_FIELDS:
+ if k in current_fields:
+ current_fields.pop(current_fields.index(k))
+ for k in current_fields:
fields[k] = self.fields[k]
self.fields = fields
self.custom_form_ordering()