# 機能提案：プライマリグループメンバーシップに基づくカスタマイズ、別名「テナンシー・ライト」

**URL:** https://meta.discourse.org/t/feature-proposal-customizations-based-on-primary-group-membership-a-k-a-tenancy-lite/101608
**Category:** Feature
**Created:** [2018 年 11 月 8 日午後 2:45 UTC](https://meta.discourse.org/t/feature-proposal-customizations-based-on-primary-group-membership-a-k-a-tenancy-lite/101608 "2018-11-08T14:45:20Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![trudat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/trudat/32/104354_2.png) [@trudat](https://meta.discourse.org/u/trudat)
#### Post date: [2018 年 11 月 8 日午後 2:45 UTC](https://meta.discourse.org/t/feature-proposal-customizations-based-on-primary-group-membership-a-k-a-tenancy-lite/101608/1 "2018-11-08T14:45:20Z")

</div>

A user on my forum wants their own separate forum for their group (within the larger institution) so that the experience is customized to their content. I can’t support multiple forums and it defeats the purpose of Discourse, _but_ it gave me this idea for a way to implement pseudo-tenancy. Maybe this already exists in some form?

### Feature description

In the `Group > Manage` interface add a new section called `Customize`. Here are the settings to include there.

- [checkbox] Display a different UI theme for users who are primary members of this group.
  - [select] Select which theme to display. (Pull all available themes from `admin > customize`)
  - [file] Display a different site logo.
  - [group multi-select] Exception. Primary group members who are _also_ members of this group, e.g. admin, are exempted from this setting.

- [category multi-select] Hide these topic categories for primary members of this group. They will never see those topics.
  - [group multi-select] Exception. Primary group members who are _also_ members of this group, e.g. admin, are exempted from this setting.

- [category select] The home page (after logging in) for primary group members will be this category.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2018 年 11 月 8 日午後 3:03 UTC](https://meta.discourse.org/t/feature-proposal-customizations-based-on-primary-group-membership-a-k-a-tenancy-lite/101608/2 "2018-11-08T15:03:50Z")

</div>

Why not just let them select the theme in their profile? That’d solve the look stuff without changes.

There are some plugins that you can use to watch categories for group members.

---

<div class="post-metadata">

### Author: ![trudat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/trudat/32/104354_2.png) [@trudat](https://meta.discourse.org/u/trudat)
#### Post date: [2018 年 11 月 8 日午後 4:31 UTC](https://meta.discourse.org/t/feature-proposal-customizations-based-on-primary-group-membership-a-k-a-tenancy-lite/101608/3 "2018-11-08T16:31:55Z")

</div>

> [@pfaffman](#):
>
> Why not just let them select the theme in their profile?

That would work sure. But after reading your reply I updated the original post, realising that the feature is about more than just the theme, it’s perhaps more about filtering content.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2018 年 11 月 8 日午後 6:35 UTC](https://meta.discourse.org/t/feature-proposal-customizations-based-on-primary-group-membership-a-k-a-tenancy-lite/101608/4 "2018-11-08T18:35:43Z")

</div>

> [@trudat](#):
>
> [category multi-select] Hide these topic categories for primary members of this group. They will never see those topics.

Something like [GitHub - amical/discourse-watch-category: Watches a category for all the users in a particular group · GitHub](https://github.com/amical/discourse-watch-category) will do that. (You’ll need to customize it for your site; there is no UX for the plugin).

> [@trudat](#):
>
> [category select] The home page (after logging in) for primary group members will be this category.

That’s already user selectable too, though I think with the categories on/off you might not need it. You could probably add changing that to the plugin as well.

If you’re hosted, you’d need to be on a plan that allows such plugins.

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [2018 年 11 月 8 日午後 6:43 UTC](https://meta.discourse.org/t/feature-proposal-customizations-based-on-primary-group-membership-a-k-a-tenancy-lite/101608/5 "2018-11-08T18:43:01Z")

</div>

> [@trudat](#):
>
> I can’t support multiple forums and it defeats the purpose of Discourse

Why not [Multisite](https://meta.discourse.org/t/multisite-configuration-with-docker/14084)? Running a separate discourse database and front end within the same footprint? It’s going to be much easier to support a partition at that level than it is to embark on any of the above.

When you get to the point that you’re separating the theme, front end and content you’re effectively talking about separate Discourse instances. That’s pretty much why multisite exists. The added benefit is that they can make use of different site settings and sign-on.

New plugins and code changes aren’t just adding stuff to accommodate a new forum with the above, you’re adding complexity and a big risk of blowback onto your existing customers.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2018 年 11 月 8 日午後 7:30 UTC](https://meta.discourse.org/t/feature-proposal-customizations-based-on-primary-group-membership-a-k-a-tenancy-lite/101608/6 "2018-11-08T19:30:37Z")

</div>

> [@Stephen](#):
>
> Why not [Multisite](https://meta.discourse.org/t/multisite-configuration-with-docker/14084)?

I was going to suggest that too, but apparently got distracted. 🙂

You can also set one Discourse as the SSO master and the other as a slave, so there is still just one user database.
