メインコンテンツに移動

コンテンツ・コモンズ — 共有アセットライブラリとモデレーション

各製品(WorshipCommons の楽曲、Lessons.church のレッスン、FreeShow のテンプレート、B1 ウェブサイトテンプレート)でユーザーが投稿し、共有されるコンテンツは、製品ごとに個別の審査フローを通すのではなく、単一のモデレーションキューを経由します。このページでは、投稿から承認までのライフサイクル、共有アセットのデータモデル、およびモデレーション機能の所在について説明します。

アセットの基幹テーブル​

製品に関係なく、すべてのコモンズ項目は次の 2 つのテーブルで管理されます。

  • assets — 公開される識別情報の行です。status は pending | published | unpublished | removed のいずれかです。種類固有のデータ(楽曲の詳細、作者など)は、assetId で結合された関連テーブルに保存されます。
  • assetFiles — アセットに添付されるすべてのファイル(音声、画像、ドキュメント)を格納します。個々のコンテンツテーブルにあった従来の path 列とカンマ区切りの files 列を置き換えるものです。
  • submissions — モデレーションの単位です。ライフサイクルは draft → pending → approved | rejected | withdrawn です。投稿は、まったく新しいアセットの場合もあれば、公開済みアセットへの編集(元の作者によるものでも第三者によるものでも)の場合もあります。

投稿が承認されると、製品ごとの公開フック(Api/src/modules/commons/helpers/publishHooks/、例:song.ts)が実行され、投稿内容が製品自身のレコードに展開されます。

投稿のフロー​

CommonsSubmissionController(Api/src/modules/commons/)はエンドユーザー向けの API です。下書きの作成、ファイルの事前署名と添付、審査への提出、取り下げを行います。実際の利用元は、外部の制作サイト(WorshipCommons サイト、Lessons.church、FreeShow、B1 ウェブサイトテンプレートギャラリー)であり、B1Admin ではありません。

教会向けの利用​

モデレーションとは別に、B1Admin もコモンズの基幹データを直接参照しています。奉仕 → 楽曲の「楽曲を追加」検索は、既存の外部楽曲データベースと並行して GET /songs?sundayReady=true を呼び出します。これにより、スタッフが日曜礼拝対応(後述の試聴ゲートを参照)と設定した、公開済みの WorshipCommons 楽曲がライセンスバッジ付きで表示されます。楽曲を選択すると、songDetailLinks を通じて新しい SongDetail が元の楽曲に紐付けられます。これは、個々の教会の B1Admin が、スタッフ専用のサーバー管理ツールを経由せずにコモンズのデータへ直接アクセスする唯一の経路です。教会向けの説明は、サポートドキュメントの WorshipCommons の無料楽曲 セクションを参照してください。

モデレーションキュー​

キューは B1Admin → サーバー管理 → コモンズ(B1Admin/src/serverAdmin/components/CommonsTab.tsx)にあります。アクセスは Permissions.server.admin 権限で制御されており、このページで教会、なりすまし、ジョブを制御するのと同じ権限です。これは ChurchApps スタッフ専用の社内ツールであり、個々の教会が利用するものではありません。

キューには 3 つのサブタブがあります。

  • キュー — すべての製品にわたる保留中の投稿をすべて表示します。製品やアセットの種類で絞り込めます。各行には、新規アセット、作者による編集、第三者による編集のいずれかのバッジ、投稿者の承認実績、フィールドとファイルの差分の概要、経過日数(72 時間を超えると警告表示)が表示されます。審査を開くと、フィールド単位の差分、ファイルのプレビュー、読み取り専用の製品プレビューが埋め込まれたドロワーが開きます。承認と却下にはキーボードショートカットがあります(j/k で移動、a/r で操作)。
  • 報告 — 公開済みアセットに対する著作権および方針・品質の報告を扱います。報告は 2 つのキューと解決済みの履歴に分かれています。スタッフは報告を引き受け、その後、解決結果(支持/却下/重複)と対応(なし/非公開化/削除)を選んで解決します。
  • アセット — 公開済みコンテンツを検索して閲覧できます。アセットごとに、注目への設定、非公開化または再公開、削除(理由:著作権/方針違反)の操作ができます。楽曲の場合、ここにある試聴ゲートによって「日曜礼拝対応」の状態が決まります。スタッフは、公開されているすべてのキーで楽曲を通して聴き、譜面、コード、スライドがすべて揃っていることを確認したら、それを一度マークします。

/commons/admin/* 配下のすべてのエンドポイント(CommonsAdminController.ts)は、サーバー管理者権限を個別に再確認します。

情報

この設計では意図的にキューを 1 つにまとめています。WorshipCommons 独自の /admin モデレーション UI は廃止され、すべての製品の投稿が B1Admin のサーバー管理ツールを経由するようになりました。

関係するコンポーネント​

Api(コモンズモジュール)、B1Admin(サーバー管理)、そして外部の制作サイトである WorshipCommons、Lessons.church、FreeShow、B1 ウェブサイトビルダーのテンプレートです。