mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-03 21:43:21 +00:00 
			
		
		
		
	user_groups: Add can_leave_group setting for user group.
This field will be used to control permission for who can leave a user group.
This commit is contained in:
		
				
					committed by
					
						
						Tim Abbott
					
				
			
			
				
	
			
			
			
						parent
						
							6007630164
						
					
				
				
					commit
					060156fca4
				
			@@ -63,6 +63,7 @@ class NamedUserGroup(UserGroup):  # type: ignore[django-manager-missing] # djang
 | 
			
		||||
        UserGroup, on_delete=models.RESTRICT, related_name="+"
 | 
			
		||||
    )
 | 
			
		||||
    can_join_group = models.ForeignKey(UserGroup, on_delete=models.RESTRICT, related_name="+")
 | 
			
		||||
    can_leave_group = models.ForeignKey(UserGroup, on_delete=models.RESTRICT, related_name="+")
 | 
			
		||||
    can_manage_group = models.ForeignKey(UserGroup, on_delete=models.RESTRICT, related_name="+")
 | 
			
		||||
    can_mention_group = models.ForeignKey(
 | 
			
		||||
        UserGroup, on_delete=models.RESTRICT, db_column="can_mention_group_id"
 | 
			
		||||
@@ -118,6 +119,16 @@ class NamedUserGroup(UserGroup):  # type: ignore[django-manager-missing] # djang
 | 
			
		||||
            default_for_system_groups=SystemGroups.NOBODY,
 | 
			
		||||
            id_field_name="can_join_group_id",
 | 
			
		||||
        ),
 | 
			
		||||
        "can_leave_group": GroupPermissionSetting(
 | 
			
		||||
            require_system_group=False,
 | 
			
		||||
            allow_internet_group=False,
 | 
			
		||||
            allow_owners_group=True,
 | 
			
		||||
            allow_nobody_group=True,
 | 
			
		||||
            allow_everyone_group=True,
 | 
			
		||||
            default_group_name=SystemGroups.EVERYONE,
 | 
			
		||||
            default_for_system_groups=SystemGroups.NOBODY,
 | 
			
		||||
            id_field_name="can_leave_group_id",
 | 
			
		||||
        ),
 | 
			
		||||
        "can_manage_group": GroupPermissionSetting(
 | 
			
		||||
            require_system_group=False,
 | 
			
		||||
            allow_internet_group=False,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user