diff options
Diffstat (limited to 'ishtar_common/models_common.py')
-rw-r--r-- | ishtar_common/models_common.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py index 1033be9ed..79c9600dd 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -1106,6 +1106,21 @@ class Imported(models.Model): class Meta: abstract = True + def _get_imports(self, user, key): + if not user.ishtaruser: + return [] + q = getattr(self, key) + if user.is_superuser or user.ishtaruser.has_right("view_import"): + return list(q.all()) + q = q.filter(Q(user=user.ishtaruser) | Q(importer_type__users__pk=user.ishtaruser.pk)) + return list(q.all()) + + def get_imports(self, user): + return self._get_imports(user, "imports") + + def get_imports_updated(self, user): + return self._get_imports(user, "imports_updated") + class JsonData(models.Model, CachedGen): data = JSONField(default=dict, blank=True) |