「テーマのテンプレート編集不可」仕様に関して

4.4.1バージョンより追加された「テーマのテンプレート編集不可」仕様に関して質問です。
この仕様変更は、固定ページ編集画面のコード挿入欄にも影響しているのでしょうか?
サイト管理者権限以外のユーザー(たとえば、運用管理者アカウント)に固定ページの編集権限を付与した状態で、編集画面を表示すると、コード挿入欄が表示されません。
この状況は、4.4.1以前からある仕様なのか、現時点では未確認なのですが。


固定ページで、コード挿入欄を利用してページ毎に個別のスクリプトを挿入して運用しておりますが、これまでは、固定ページの編集作業を管理者権限アカウントで行っていたため、この状況を認識できておりませんでした。
今回、固定ページの編集作業を管理者権限アカウントから運用管理アカウントに移管することとなりましたが、運用管理アカウントで、本文の更新し保存しようとすると、「入力エラーです。内容を修正してください。」というエラーメッセージが表示され、保存ができない状況に遭遇しました。

現状では、コード挿入欄を利用した固定ページの編集作業を運用管理アカウントに移管できない状況です。

上記エラー表示となる原因は、おそらくコード挿入欄が表示されない事象が起因するものではないかと考えています。というのもコード欄が空欄の固定ページをテストで作成し、運用管理アカウントで同様の作業を行ったところ、問題なく更新、保存ができたためです。

なお、現状(4.4.1)、「リスクを認識した上で機能を有効化する方法」に記載のコードを適用済みですが、状況は変わりません。

以上、ご確認、ご教示いただけると助かります。よろしくお願いいたします。

【環境情報】
・baserCMSのバージョン:4.4.1
・レンタルサーバー名:ロリポップ
・使用テーマ:Omotenashi2
・PHPスキル(自己評価):E

@GUSSAN

管理者権限以外のユーザーにてコード欄が表示されない件につきましては、
以前からの仕様です。
コード編集については、設定で変更する方法が現状ないので、管理者権限にて作業いただく必要があります。
また、コード欄使用のページを管理者権限以外で編集した際に起こるエラーは、こちらでは再現しなかったのですが、
どのようなスクリプトを入力していたか・エラーログ(/app/tmp/error.log等)にはなにか出力されているか 等の情報をいただけますでしょうか?
再現次第解消法はないか調査してみます!

1 Likes

ご返信ありがとうございます。
仕様の件、承知いたしました。
ログデータは、error.logではなく、debug.logにのみ以下の出力がありました。

2020-11-19 11:12:12 Notice: Notice (8): Undefined index: created in [/home/***/lib/Baser/View/Elements/admin/content_fields.php, line 408]
Trace:
ErrorHandler::handleError() - CORE/Cake/Error/ErrorHandler.php, line 230
include - CORE/Baser/View/Elements/admin/content_fields.php, line 408
View::_evaluate() - CORE/Cake/View/View.php, line 971
BcAppView::_evaluate() - CORE/Baser/View/BcAppView.php, line 532
View::_render() - CORE/Cake/View/View.php, line 933
View::_renderElement() - CORE/Cake/View/View.php, line 1224
View::element() - CORE/Cake/View/View.php, line 418
BcContentsEventListener::formAfterCreate() - CORE/Baser/Event/BcContentsEventListener.php, line 65
CakeEventManager::dispatch() - CORE/Baser/Event/CakeEventManager.php, line 244
BcEventDispatcher::dispatch() - CORE/Baser/Event/BcEventDispatcher.php, line 64
BcAppHelper::dispatchEvent() - CORE/Baser/View/Helper/BcAppHelper.php, line 228
BcFormHelper::create() - CORE/Baser/View/Helper/BcFormHelper.php, line 110
include - CORE/Baser/View/Pages/admin/form.php, line 27
View::_evaluate() - CORE/Cake/View/View.php, line 971
BcAppView::_evaluate() - CORE/Baser/View/BcAppView.php, line 532
View::_render() - CORE/Cake/View/View.php, line 933
View::render() - CORE/Cake/View/View.php, line 473
Controller::render() - CORE/Cake/Controller/Controller.php, line 968
PagesController::admin_edit() - CORE/Baser/Controller/PagesController.php, line 207
ReflectionMethod::invokeArgs() - [internal], line ??
Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 499
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167
[main] - ROOT/index.php, line 123

2020-11-19 11:12:12 Notice: Notice (8): Undefined index: modified in [/home/***/lib/Baser/View/Elements/admin/content_fields.php, line 409]
Trace:
ErrorHandler::handleError() - CORE/Cake/Error/ErrorHandler.php, line 230
include - CORE/Baser/View/Elements/admin/content_fields.php, line 409
View::_evaluate() - CORE/Cake/View/View.php, line 971
BcAppView::_evaluate() - CORE/Baser/View/BcAppView.php, line 532
View::_render() - CORE/Cake/View/View.php, line 933
View::_renderElement() - CORE/Cake/View/View.php, line 1224
View::element() - CORE/Cake/View/View.php, line 418
BcContentsEventListener::formAfterCreate() - CORE/Baser/Event/BcContentsEventListener.php, line 65
CakeEventManager::dispatch() - CORE/Baser/Event/CakeEventManager.php, line 244
BcEventDispatcher::dispatch() - CORE/Baser/Event/BcEventDispatcher.php, line 64
BcAppHelper::dispatchEvent() - CORE/Baser/View/Helper/BcAppHelper.php, line 228
BcFormHelper::create() - CORE/Baser/View/Helper/BcFormHelper.php, line 110
include - CORE/Baser/View/Pages/admin/form.php, line 27
View::_evaluate() - CORE/Cake/View/View.php, line 971
BcAppView::_evaluate() - CORE/Baser/View/BcAppView.php, line 532
View::_render() - CORE/Cake/View/View.php, line 933
View::render() - CORE/Cake/View/View.php, line 473
Controller::render() - CORE/Cake/Controller/Controller.php, line 968
PagesController::admin_edit() - CORE/Baser/Controller/PagesController.php, line 207
ReflectionMethod::invokeArgs() - [internal], line ??
Controller::invokeAction() - CORE/Cake/Controller/Controller.php, line 499
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 167
[main] - ROOT/index.php, line 123

スクリプトは以下です。

<?php $this->BcBaser->css(array('ayumi')); ?>
<script type="text/javascript">
$(function(){
$("ul.ayumilist").hide();
$("#menu2 #title2").click(function(){
$(this).next().slideToggle(400);
});
$("#menu2 #title2:first").next().show(); 
});
$(function(){
$("li.program").hide();
$("ul.ayumilist li.performance").click(function(){
    $(this).next("li.program").slideToggle(300);
});
});
$(function(){
$("li.program").hide();
$("ul.ayumilist li.allopen").click(function(){
    $(this).nextAll("li.program").slideDown(300);
});
});
$(function(){
$("li.program").hide();
$("ul.ayumilist li.allclose").click(function(){
    $(this).nextAll("li.program").slideUp(300);
});
});
</script>

@GUSSAN

ありがとうございます。見た感じ、関係あるかどうかは謎ですね・・・
先程、こちらの環境にて再現確認しました!(デバッグモードにて)
ちょっと引き続き見てみます。お時間ください。

1 Likes

いつもありがとうございます。
よろしくお願いいたします。

1 Likes