예제 #1
0
 def test_instance_permissions(self, user, instance_id, is_leader=False):
     instance_kwargs = {}
     if type(instance_id) == int:
         instance_kwargs = {'id': instance_id}
     else:
         instance_kwargs = {'provider_alias': instance_id}
     return Instance.shared_with_user(
         user, is_leader=is_leader).filter(**instance_kwargs).exists()
예제 #2
0
 def get_queryset(self):
     """
     Filter projects by current user.
     """
     user = self.request.user
     qs = Instance.shared_with_user(user)
     if 'archived' not in self.request.query_params:
         qs = qs.filter(only_current_instances())
     # logger.info("DEBUG- User %s querying for instances, available IDs are:%s" % (user, qs.values_list('id',flat=True)))
     qs = qs.select_related("created_by")\
         .select_related('created_by_identity')\
         .select_related('source')\
         .select_related('project')
     return qs
예제 #3
0
 def get_queryset(self):
     """
     Filter projects by current user.
     """
     user = self.request.user
     qs = Instance.shared_with_user(user)
     if 'archived' not in self.request.query_params:
         qs = qs.filter(only_current_instances())
     # logger.info("DEBUG- User %s querying for instances, available IDs are:%s" % (user, qs.values_list('id',flat=True)))
     qs = qs.select_related("created_by")\
         .select_related('created_by_identity')\
         .select_related('source')\
         .select_related('project')
     return qs
    def get_queryset(self):
        request_user = self.request.user
        if request_user.is_staff or request_user.is_superuser:
            instances_qs = Instance.objects.all()
        elif request_user.is_authenticated():
            instances_qs = Instance.shared_with_user(request_user)
        else:
            raise exceptions.NotAuthenticated()
        query_params = self.request.query_params
        query = self.get_filter_query(query_params)

        queryset = instances_qs.select_related('source').prefetch_related(
            'source__providermachine__application_version__application',
        ).filter(query)
        return queryset
예제 #5
0
    def get_queryset(self):
        request_user = self.request.user
        if request_user.is_staff or request_user.is_superuser:
            instances_qs = Instance.objects.all()
        elif request_user.is_authenticated():
            instances_qs = Instance.shared_with_user(request_user)
        else:
            raise exceptions.NotAuthenticated()
        query_params = self.request.query_params
        query = self.get_filter_query(query_params)

        queryset = instances_qs.select_related('source').prefetch_related(
            'source__providermachine__application_version__application',
        ).filter(query)
        return queryset
예제 #6
0
 def get_queryset(self):
     user = self.request.user
     qs = Instance.shared_with_user(user)
     if 'archived' in self.request.query_params:
         return qs
     return qs.filter(only_current())
 def get_queryset(self):
     user = self.request.user
     qs = Instance.shared_with_user(user)
     if 'archived' in self.request.query_params:
         return qs
     return qs.filter(only_current())