FEATURE: add support for group members visibility level (#8004)

There are 5 visibility levels (similar to group visibility)

public (default)
logged-in users
members only
staff
owners

Admins & group owners always have visibility to group members.
This commit is contained in:
Vinoth Kannan
2019-08-14 19:00:04 +05:30
committed by GitHub
parent f4aa6096ab
commit 88359b0f16
22 changed files with 351 additions and 15 deletions

View File

@ -159,6 +159,8 @@ class GroupsController < ApplicationController
def posts
group = find_group(:group_id)
guardian.ensure_can_see_group_members!(group)
posts = group.posts_for(
guardian,
params.permit(:before_post_id, :category_id)
@ -168,6 +170,8 @@ class GroupsController < ApplicationController
def posts_feed
group = find_group(:group_id)
guardian.ensure_can_see_group_members!(group)
@posts = group.posts_for(
guardian,
params.permit(:before_post_id, :category_id)
@ -204,6 +208,8 @@ class GroupsController < ApplicationController
def members
group = find_group(:group_id)
guardian.ensure_can_see_group_members!(group)
limit = (params[:limit] || 20).to_i
offset = params[:offset].to_i
@ -542,6 +548,7 @@ class GroupsController < ApplicationController
:incoming_email,
:primary_group,
:visibility_level,
:members_visibility_level,
:name,
:grant_trust_level,
:automatic_membership_email_domains,