[サイト管理] 新規プラグイン作成時の投稿権限初期値を追加しました#2430
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
サイト基本設定に「プラグイン新規作成時の投稿権限」を追加しました。
サイト管理者が、掲示板・ブログ・データベースなどのプラグインを新しく作成したときに、モデレータ・編集者へ投稿権限を初期付与するかを設定できます。
背景と目的
現状では、バケツを新規作成した際の「権限設定」において、モデレータと編集者の両方が投稿できない状態になります。
そのため、環境によっては、バケツを配置するたびに、各プラグインの権限設定で「投稿できる」に手動でチェックを入れる必要があります。
この手動設定を忘れると、ユーザーから「投稿できない」と問い合わせが発生します。
特に学校などの環境では、コンテンツ管理者以外が投稿する運用が一般的であり、現在の初期設定が実運用と合わないケースがあります。
また、NC2やNC3では、モデレータや一般ユーザーが投稿できる状態を基本とし、「投稿してほしくないプラグイン」の場合に個別に設定を変更する運用でした。
Connect-CMSでも、サイト単位で新規バケツ作成時の投稿権限初期値を設定できるようにすることで、運用に合わせた初期状態を選べるようにします。
修正内容
サイト基本設定:
サイト基本設定画面に「プラグイン新規作成時の投稿権限」を追加しました。
モデレータ、編集者それぞれについて、投稿を許可するかをチェックボックスで設定できます。
設定値は
new_bucket_role_article_post_flagとnew_bucket_role_reporter_post_flagとして保存します。サイト設計書PDF出力にも同設定を追加しました。
共通処理:
Bucketsに新規バケツ作成時の投稿権限初期化処理を追加しました。Config の値に従い、
role_article/role_reporterのbuckets_rolesを作成します。既存の権限設定がある場合は上書きしません。
同じ初期化処理が複数回呼ばれても、権限レコードが重複しないようにしています。
バケツ削除時に、関連する
buckets_rolesを削除するようにしました。対象プラグイン:
投稿権限設定を持つプラグインの新規作成処理で、共通の初期化処理を通るようにしました。
対象は以下です。
対象外:
課題管理は投稿権限設定を持たないため、今回の初期投稿権限の適用対象外です。
リンクリストや新着情報など、投稿権限設定を持たないプラグインも対象外です。
権限設定画面:
固定記事のようにバケツ未作成の状態で権限設定画面を表示するケースでは、サイト基本設定の初期値をチェック状態に反映するようにしました。
テスト:
Bucketsの共通処理に対するUnitテストを追加しました。対象プラグインごとにFeatureテストを追加し、新規作成時に初期投稿権限が作成されることを確認しています。
サイト基本設定画面の保存・表示に関するFeatureテストを追加しました。
影響範囲
新しく作成する対象プラグインの投稿権限初期値に影響します。
既存のプラグイン設定や既存の
buckets_rolesは変更しません。各プラグイン作成後は、従来どおり個別の権限設定画面で変更できます。
完了条件
特記事項
レビュー完了希望日
関連Pull requests/Issues
参考
DB変更の有無
無し
チェックリスト