削除のアクセス権に関して

現在、詳細画面にjsで削除ボタンを設置しています。
もとの削除ボタンはアクセス権で削除できないよう設定してあります。
この場合、jsでの削除もアクセス権が働き、削除できなくなるのでしょうか。
自作の削除ボタンを押すと、
message: “権限がありません。”
と表記され削除できません。

ご回答お待ちしております。
どうぞよろしくお願いいたします。

田中さん

アクセス権が働くと思いますよ。
そもそもの設計として、なぜ自作の削除ボタンを用意しているのでしょうか?
特定のユーザのみ削除させたくないという事であれば、アプリの権限で特定のユーザのみ削除権限を付与しないとかでも対応出来そうですが。

あまり回答になっておらず、申し訳ありません。。。

鈴木佑介さん
ご回答ありがとうございます。

そもそもの設計として、なぜ自作の削除ボタンを用意しているのでしょうか?
別アプリ(A)で、削除ボタンを設置したアプリ(B)がルックアップされております。
Bアプリのレコードを削除しようとした際に、Aアプリにすでにルックアップされているデータがある場合、削除出来ないようにさせたいのです。
削除ボタンのイベントを使用しようとしましたが、アラートは出せるものの
結局削除されてしまいました・・・。
なので、自作で削除ボタンを作成したという経緯です!
何か良い方法があればご教示いただけますと幸いです。

田中さん
ご回答ありがとうございます。

別アプリ(A)で、削除ボタンを設置したアプリ(B)がルックアップされております。
Bアプリのレコードを削除しようとした際に、Aアプリにすでにルックアップされているデータがある場合、削除出来ないようにさせたいのです。
削除ボタンのイベントを使用しようとしましたが、アラートは出せるものの
結局削除されてしまいました・・・。

経緯は理解致しました。
以下の順で処理するようになると思います。
①削除ボタン(自作)の押下
②BアプリのレコードがAアプリでルックアップされているか確認
③ルックアップされていれば削除しない or ルックアップされていれば削除する

そうした場合に下記のURLが参考になりそうです。
https://cybozudev.zendesk.com/hc/ja/articles/204537310

上記のURLを参考にすればAアプリにあるルックアップの取得(レコードの取得)が行えます。
そこで条件分岐を入れ、削除する or しないを行うのがいいと思います。

回答になっていますでしょうか?
ご確認下さい。

鈴木佑介さん
早々にご連絡いただきありがとうございます。
アドバイスいただいたように、jsでの削除を実装しているのですが、
削除ボタンが2つになってしまうとややこしいため、
本来の削除ボタンを押下出来ないようにさせたいと思っております。
そこで、アクセス権で削除権限を付与しないようにすると、
jsで作成した削除ボタンでの削除も出来なくなってしまいます。
本来の削除ボタンを押下出来ないようにする方法は
アクセス権を設定する以外にございますでしょうか??
どうぞ宜しくお願いいたします。

田中さん

削除ボタンが2つになってしまうとややこしいため、本来の削除ボタンを押下出来ないようにさせたいと思っております。そこで、アクセス権で削除権限を付与しないようにすると、jsで作成した削除ボタンでの削除も出来なくなってしまいます。
本来の削除ボタンを押下出来ないようにする方法はアクセス権を設定する以外にございますでしょうか??

すいません。話が1周してしまいましたね。
アクセス権に関しては、APIを叩く以上必ずアクセス権が当たってしまうと思われます。

その為、自作ボタン内では、
スペース内のユーザを取得して個別に権限処理をするほかなさそうな気がします。

https://cybozudev.zendesk.com/hc/communities/public/questions/201530024-%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97-%E6%89%80%E5%B1%9E%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E6%83%85%E5%A0%B1%E3%81%AE%E5%8F%96%E5%BE%97?locale=ja

元の削除ボタンなんかに関してはCSSとかで見えないようにするとかが可能であればその方法を取るのもありだと思われます。

拙い回答ですが、
ご確認下さい。

途中から失礼します。

削除を実行しているユーザに削除権限無いことで、問題が発生しているので
あれば、APIトークンを利用したら解決したりしないでしょうか?
ログインしいているユーザに権限がなく、APIトークンのみに権限を付与しての
削除を実行したことがあるわけではないので、正常に動作するか確認はとって
いないのですが。。。
後で試してみますが、動かなかったら、すいません。

また、内容から考えるに、おそらく API を用いてレコードの削除を行っている
という前提でお話をしていますが、違う場合スルーしてください。

鈴木佑介さん
cssで既存の削除ボタンをみえなくできるのであれば、そうしたいです!
方法おわかりでしたらご教示いただけますでしょうか?
ちょっとためしてみたのですが、うまくいきません。。
宜しくお願いいたします。

サクラエビさん
ご回答ありがとうございます!
おっしゃる通り、APIを用いてレコードの削除をおこなっております。
すみません、APIトークンをあまり理解しておらず・・・
そちらの方法で可能なのであれば、ご教示いただけると幸いです。
宜しくお願いいたします。

田中さん
お返事遅れてすいません。

CSSでボタンなんかを消す場合には、
chromeのdeveloperTool(F12)などで、id名を確認し
visibility:hiddenにしたらどうでしょうか?

但し、注意としては
kintoneのアップデートに合わせてid名が予告なく変更される可能性があるので、あまり保守性としてはよくないです。
一応、そういう方法もあるという所で検討頂ければ幸いです。

サクラエビさんの仰っている、トークンで行う方法を失念しておりました。
その方法であれば、削除ボタンを非活性にしつつ、自作の削除ボタンで処理も行えますね。
確か私の記憶が正しければトークンはAdministrator権限で動くといったものだったと思うので、併せてご確認下さい。

鈴木さん
いろいろとアドバイスいただきありがとうございます!
cssでのボタン非表示なのですが、
document.getElementsByClassName(‘gaia-ui-actionmenu-delete’).style.visibility=‘hidden’;
でやってみました。が、うまくいきません・・・。
何度もすみませんが、ご指摘いただけますと幸いです。。
宜しくお願いいたします。

田中さん

別途CSSファイルを書いて、アプリに適用するのがいいと思います。
”gaia-ui-actionmenu-delete”は多分class名じゃないでしょうか?

であれば
.gaia-ui-actionmenu-delete { visibility: hidden;}

と記述して、これをhoge.cssとして保存し、アプリに適用されたら消えませんか?
非表示になっているかご確認下さい。

鈴木さん
削除ボタンを非表示にすることができました。
ありがとうございます!!これまでcssを使用していなかったので、とても参考になりました!

田中 さん
お!よかったです(^^
class名やid名はkintoneのアップデートで有無を言わさず変わる場合があるので、そこだけ注意です。

また何かありましたら気軽にご質問下さい!