メニューアクション、ユーザーアクションの表示条件などをプラグインで拡張しやすくする
Activity
Kenichi IshigakiNovember 28, 2024 at 5:47 AM
@Chieko Matsuo ありがとうございます。マージしました。
Chieko MatsuoNovember 28, 2024 at 4:26 AM
@Kenichi Ishigaki 上記コメント確認手順で、期待通りの結果が得られることを確認しました。
Kenichi IshigakiNovember 28, 2024 at 3:15 AM
@Keita Sugama ありがとうございます。
@Reiko Sato https://github.com/movabletype/movabletype/pull/3463 で対応しました。以下のようなプラグインを plugins/ActionsTest/config.yaml として保存したときに、システム管理者としてサイトダッシュボードなどにアクセスすると左サイドメニューの「検索」ボタンの下に「Menu action for System Administrator only
」というボタンが表示され、そのリンク先(ボタンにフォーカスをあわせたときに表示されるURLを見るとか、ソースコードを検索するとかしてください)に「Menu action href for (ID)」のような文言がふくまれていること、左下のユーザメニューの下には「User action for System Administrator only
」というメニューが追加され、リンク先に「User action href for (ID)」のような文言がふくまれていること、一般ユーザでアクセスするとそれらが消えていることをご確認おねがいします。
id: ActionsTest
name: ActionsTest
version: 0
applications:
cms:
menu_actions:
menu_test:
icon: ic_user
condition: |
sub {
my $app = shift;
$app->user->is_superuser;
}
mode: cfg_system_general
label: 'Menu action for System Administrator only'
href: |
sub {
my ($app, $param) = @_;
'Menu action href for ' . $param->{author_id};
}
order: 999
user_actions:
user_test:
condition: |
sub {
my $app = shift;
$app->user->is_superuser;
}
mode: cfg_system_general
label: 'User action for System Administrator only'
href: |
sub {
my ($app, $param) = @_;
'User action href for ' . $param->{author_id};
}
order: 999
Keita SugamaNovember 28, 2024 at 2:29 AM
@Kenichi Ishigaki
確認しました。良さそうです。
Kenichi IshigakiNovember 27, 2024 at 1:23 AM
@Masakazu Hayase ありがとうございます。
@Keita Sugama https://github.com/movabletype/movabletype/pull/3463 で対応しました。レビューおねがいします。
https://movabletype.atlassian.net/browse/FEEDBACK-2586 の修正用。現状の MT::App::CMS::build_actions では
CODE
の判定前に handler_to_coderef を通していないので config.yaml に直書きしたアクションの条件判定が正しく行われない(常に真になる)。condition、href が該当。