レポート フォーム一覧の削除ボタンについて

2016年12月7日 at 14:01

現在運営しているサイトで、
基本フォームを使っています。

それに関連するフォーム一覧について、
フォーム一覧のみ閲覧できるグループを作っているのですが、
そのグループが「削除」ボタンも操作できない、
もしくは削除ボタンが表示されないようにしたいのですが、
どのようにしたら良いでしょうか?

ちなみに、上級権限モードは設定しています。

c5 version : 5.7.5.9
サーバー:CPI

タグ:

Re: レポート フォーム一覧の削除ボタンについて

2016年12月7日 at 23:42
取り急ぎ。未検証ですが・・・

/concrete/single_pages/dashboard/reports/forms.php
ファイルを
/application/single_pages/dashboard/reports/forms.php
にコピーします

129〜131行目をコメントアウトや削除すると、削除ボタンが消えます。
ただ、CSS などの微調整が必要かもです。
 

Re: レポート フォーム一覧の削除ボタンについて

2016年12月8日 at 10:34
ありがとうございます。

Katzさんのやり方でコピーして、
該当の場所を display:none で見えなくしました。

例えば

管理者 → 削除ボタン表示
フォーム閲覧のみグループ → 削除ボタン非表示、もしくは操作不可能

というような権限設定はできませんかね??
 

Re: レポート フォーム一覧の削除ボタンについて

2016年12月8日 at 10:54
concrete5 デフォルトの管理者グループは表示するという分岐のサンプルコードはこちらです。
http://gist.github.com/katzueno/bd21a22543344349ff92a998a2efba4b
 

Re: レポート フォーム一覧の削除ボタンについて

2016年12月28日 at 7:57
Katzさん、ありがとうございます!
返信遅くなりすいません。

Katzさんから教えていただいた方法でやると、
[use]のとこでシンタックスエラーが出てしまったので、
色々やって解決しました

サンプルコードはこちら
http://gist.github.com/mikihicom/60c7327f39775d9402812a9eae4b7439

ありがとうございました!


ただ、結構強引なやり方だと思うので、もうちょっとスマートなやり方はないかなと、、
 

Re: レポート フォーム一覧の削除ボタンについて

2016年12月28日 at 8:00
ありがとうございます。
(すいません、コードの検証はしてなかったので・・・苦笑)

もう use Group はされていたかな・・・。
とにかく、動いて良かったです。
 

Re: レポート フォーム一覧の削除ボタンについて

2016年12月28日 at 8:11
use Group でもエラー出ましたねぇ。。

他に、スマートなやり方や、
複数のグループ指定が簡単に出来ないか検証してみますー。
 

Re: レポート フォーム一覧の削除ボタンについて

2016年12月28日 at 8:52
複数のグループ指定は

if($u->isSuperUser() || $u->inGroup(Group::getByName('Administrators'))){

の部分に

if($u->isSuperUser() || $u->inGroup(Group::getByName('Administrators')) || $u->inGroup(Group::getByName('Editor'))){

などと || をつなげていけば可能です。if 文が長くなりますが・・・。