@@ -2380,8 +2380,8 @@ class JobEventAccess(BaseAccess):
23802380
23812381 def filtered_queryset (self ):
23822382 return self .model .objects .filter (
2383- Q (host__inventory__in = Inventory .accessible_pk_qs (self .user , 'read_role' ))
2384- | Q (job__job_template__in = JobTemplate .accessible_pk_qs (self .user , 'read_role' ))
2383+ Q (host_id__in = Host . objects . filter ( inventory__in = Inventory .accessible_pk_qs (self .user , 'read_role' )). values ( 'pk ' ))
2384+ | Q (job_id__in = Job . objects . filter ( job_template__in = JobTemplate .accessible_pk_qs (self .user , 'read_role' )). values ( 'pk ' ))
23852385 )
23862386
23872387 def can_add (self , data ):
@@ -2511,7 +2511,11 @@ class UnifiedJobTemplateAccess(BaseAccess):
25112511 def filtered_queryset (self ):
25122512 return self .model .objects .filter (
25132513 Q (pk__in = self .model .accessible_pk_qs (self .user , 'read_role' ))
2514- | Q (inventorysource__inventory__id__in = Inventory ._accessible_pk_qs (Inventory , self .user , 'read_role' ))
2514+ | Q (
2515+ pk__in = InventorySource .objects .filter (
2516+ inventory_id__in = Inventory ._accessible_pk_qs (Inventory , self .user , 'read_role' ),
2517+ ).values ('unifiedjobtemplate_ptr_id' )
2518+ )
25152519 )
25162520
25172521 def can_start (self , obj , validate_license = True ):
@@ -2561,8 +2565,8 @@ def filtered_queryset(self):
25612565 org_auditor_qs = Organization .objects .filter (Q (admin_role__members = self .user ) | Q (auditor_role__members = self .user ))
25622566 qs = self .model .objects .filter (
25632567 Q (unified_job_template_id__in = UnifiedJobTemplate .accessible_pk_qs (self .user , 'read_role' ))
2564- | Q (inventoryupdate__inventory_source__inventory__id__in = inv_pk_qs )
2565- | Q (adhoccommand__inventory__id__in = inv_pk_qs )
2568+ | Q (pk__in = InventoryUpdate . objects . filter ( inventory_source__inventory_id__in = inv_pk_qs ). values ( 'pk' ) )
2569+ | Q (pk__in = AdHocCommand . objects . filter ( inventory_id__in = inv_pk_qs ). values ( 'pk' ) )
25662570 | Q (organization__in = org_auditor_qs )
25672571 )
25682572 return qs
@@ -2685,8 +2689,12 @@ class LabelAccess(BaseAccess):
26852689 def filtered_queryset (self ):
26862690 return self .model .objects .filter (
26872691 Q (organization__in = Organization .accessible_pk_qs (self .user , 'read_role' ))
2688- | Q (unifiedjobtemplate_labels__in = UnifiedJobTemplate .accessible_pk_qs (self .user , 'read_role' ))
2689- ).distinct ()
2692+ | Q (
2693+ pk__in = UnifiedJobTemplate .labels .through .objects .filter (
2694+ unifiedjobtemplate_id__in = UnifiedJobTemplate .accessible_pk_qs (self .user , 'read_role' ),
2695+ ).values ('label_id' )
2696+ )
2697+ )
26902698
26912699 @check_superuser
26922700 def can_add (self , data ):
0 commit comments