mirror of
https://github.com/ansible/awx.git
synced 2026-04-08 19:49:22 -02:30
fix issue with Team.roles and ActivityStream
This commit is contained in:
@@ -158,13 +158,17 @@ def org_admin_edit_members(instance, action, model, reverse, pk_set, **kwargs):
|
|||||||
|
|
||||||
def rbac_activity_stream(instance, sender, **kwargs):
|
def rbac_activity_stream(instance, sender, **kwargs):
|
||||||
user_type = ContentType.objects.get_for_model(User)
|
user_type = ContentType.objects.get_for_model(User)
|
||||||
|
team_type = ContentType.objects.get_for_model(Team)
|
||||||
# Only if we are associating/disassociating
|
# Only if we are associating/disassociating
|
||||||
if kwargs['action'] in ['pre_add', 'pre_remove']:
|
if kwargs['action'] in ['pre_add', 'pre_remove']:
|
||||||
# Only if this isn't for the User.admin_role
|
# Only if this isn't for the User.admin_role
|
||||||
if hasattr(instance, 'content_type'):
|
if hasattr(instance, 'content_type'):
|
||||||
if instance.content_type in [None, user_type]:
|
if instance.content_type in [None, user_type]:
|
||||||
return
|
return
|
||||||
role = instance
|
elif instance.content_type == team_type:
|
||||||
|
role = kwargs['model'].objects.filter(pk__in=kwargs['pk_set']).first()
|
||||||
|
else:
|
||||||
|
role = instance
|
||||||
instance = instance.content_object
|
instance = instance.content_object
|
||||||
else:
|
else:
|
||||||
role = kwargs['model'].objects.filter(pk__in=kwargs['pk_set']).first()
|
role = kwargs['model'].objects.filter(pk__in=kwargs['pk_set']).first()
|
||||||
@@ -192,6 +196,7 @@ post_save.connect(emit_ad_hoc_command_event_detail, sender=AdHocCommandEvent)
|
|||||||
m2m_changed.connect(rebuild_role_ancestor_list, Role.parents.through)
|
m2m_changed.connect(rebuild_role_ancestor_list, Role.parents.through)
|
||||||
m2m_changed.connect(org_admin_edit_members, Role.members.through)
|
m2m_changed.connect(org_admin_edit_members, Role.members.through)
|
||||||
m2m_changed.connect(rbac_activity_stream, Role.members.through)
|
m2m_changed.connect(rbac_activity_stream, Role.members.through)
|
||||||
|
m2m_changed.connect(rbac_activity_stream, Role.parents.through)
|
||||||
post_save.connect(sync_superuser_status_to_rbac, sender=User)
|
post_save.connect(sync_superuser_status_to_rbac, sender=User)
|
||||||
post_save.connect(create_user_role, sender=User)
|
post_save.connect(create_user_role, sender=User)
|
||||||
pre_delete.connect(cleanup_detached_labels_on_deleted_parent, sender=UnifiedJob)
|
pre_delete.connect(cleanup_detached_labels_on_deleted_parent, sender=UnifiedJob)
|
||||||
|
|||||||
Reference in New Issue
Block a user