Discourseグループのユーザー状況

Discourse グループユーザー状況

| | | |
| :information_source: | 概要 | ユーザー状況機能を特定のグループに制限します |
| :hammer_and_wrench: | リポジトリリンク | \u003chttps://github.com/Lillinator/discourse-group-user-status\u003e |
| :open_book: | インストールガイド | Discourseでプラグインをインストールする方法 |

:woman_technologist:t2: 概要

このシンプルなプラグインにより、フォーラム管理者はユーザー状況を特定のユーザーグループまたは信頼レベルに制限する機能を利用できるようになります。

現在、Discourseコアのユーザー状況機能はフォーラム全体でのみ有効にできます。しかし、このプラグインはよりきめ細かな制御を導入し、管理者がどのユーザーグループがユーザー状況を設定および表示できるかを指定できるようにすることで、より調整されたコミュニティ管理のための柔軟性を提供します。

特徴

  • グループベースの権限 - ユーザー状況の設定を、選択したグループ(信頼レベル、カスタムグループ、またはその両方)に制限します
  • 管理者による上書き - グループ選択に関係なく、管理者は常に状況の権限を保持します
  • 自動クリーンアップ - 権限を失ったユーザー(設定変更またはグループ削除による)から状況を削除します
  • UI統合 - 権限のないユーザーから状況制御を非表示にします

インストールとセットアップ

  1. 標準のプラグインインストールガイドに従ってください。

  2. 管理画面すべてのサイト設定 に移動し、「user status」を検索して関連する管理設定を取得します。

  3. 既存の管理設定 Enable_user_status が有効になっていることを確認してください。

  4. 次に、新しい管理設定 User_status_allowed_groups に移動し、ユーザー状況機能の使用と表示が許可されているグループを選択します。

  5. User_status_allowed_groups 設定リストに含まれていないグループは、ユーザーメニューのタブからも、設定/アカウント タブからも、ユーザー状況モーダルへのアクセス権がなくなります。

  6. Enable_user_status がすでに有効になっており、一部のユーザーがユーザー状況を設定している場合、このプラグインは、それらのユーザーが新しい設定にすぐに追加されない限り、その状況をクリアします。

  7. また、ユーザーが /admin/users/ または /admin/groups/ パスを介して許可されたグループから削除された場合(または自分でグループを離れることが許可されていてそうした場合)、既存の状況も削除されます。

  8. 疑似グループ everyone を選択することは、デフォルトで空のままにするか、コンポーネントをインストールしないことと同じです!

  9. 管理者は、選択されているグループに関係なく、常に状況を設定および変更できます。したがって、admins グループを選択するだけで、フォーラム管理者にユーザー状況の使用が制限されます。


:wrench: 設定

プラグインによって追加される新しい管理設定は1つだけです - User_status_allowed_groups。これはフォーラムのグループのドロップダウンリストです。すべてのサイト設定で user status を検索すると見つけることができ、管理サイドバーの グループ権限 セクションの下にリストされています。


:briefcase: 使用例

  • ユーザー状況機能がフォーラムスタッフにのみ関連し、残りのフォーラムに対してユーザー状況を表示したい場合。

  • カテゴリモデレーターのみが状況を設定できるようにする。

  • 信頼度の低いユーザーグループによるユーザー状況機能の悪用(またはその他の誤用)を防ぐために使用できます。

  • 特別なグループ(例:テクニカルサポートチーム、製品販売者、カテゴリエキスパート、パトロン、マスターヨーヨー芸人など)のみがユーザー状況を表示できるようにする。

  • 管理者のみがコーヒーを飲みに行くことが許可されます :wink: :coffee:


:bulb: 注記: 通知とカレンダー統合

このプラグインはユーザー状況にのみ影響し、通知設定には影響しません。

  • 状況モーダル内の「通知を一時停止」オプションは別の機能です。
  • ユーザーの状況がこのプラグインによってクリアされても、一時停止された通知はアクティブなままです。
  • 一時停止された通知のインジケーターは、期間が終了するか、ユーザーが手動で一時停止を解除するまで、アバターに表示されたままになります。

Discourse Calendar プラグイン をインストールしている場合:

  • カレンダープラグインによって設定された休日の状況は、このプラグインの影響を受けません。
  • 非常にまれなエッジケース: ユーザーが手動で休日の状況を上書きし、そのスケジュールされた休日の間に管理者がそのユーザーのグループを user_status_allowed_groups から削除した場合、手動の状況はクリアされます。
  • カレンダープラグインは休日の状況を10分ごとに自動的にリセットするため、クリアされた状況は次のスケジュールされた実行時に復元されます。
  • スケジュールされた休日の状況がある場合でも、許可されたグループにいないユーザーは、状況を手動で設定または編集することはできません。

スクリーンショット

ユーザー状況への設定効果のスクリーンショット

ユーザー状況機能を使用する権限は、User_status_allowed_groups 設定で付与されます。たとえば、test-pilot ユーザーは TL_2 であり、purple グループに所属しています。この場合、彼らはユーザー状況を設定および表示する権限があり、Staff および TL_4 と同様です。

\u003cbr\u003e

User_status_allowed_groups 設定が変更され、purple グループが設定から削除されると、test-pilot ユーザーのユーザー状況機能を使用する機能はユーザーメニューと preferences/account ページから削除され、既存のユーザー状況を設定している場合は、次のページ更新時にクリアされます。ユーザーがグループから削除された場合(または許可されていて削除した場合)も同様の効果が発生します。

「いいね!」 12

素晴らしい出来栄えです!そして、ドキュメントも美しく書かれていますね。試してみるのが楽しみです。

「いいね!」 1