発信力だけあり余ってる感じ2019-12-07Garoonカスタマイズのイベントが発生する条件(全体Jsのイベントが発火しない)Garoon今日もまたコーディング。Codingが大好きだから。環境Garoonの全体カスタマイズとアプリカスタマイズ公式からの注意喚起まとめ環境GaroonGaroonの全体カスタマイズとアプリカスタマイズこれまで、Garoonでカスタマイズできるのはポータル、スケジュール、ワークフロー、メッセージなど限られていた。2019年11月のCybozuDays2019でも発表されたように、Garoonのアップデートが入り、Garoon全体に対するカスタマイズが可能になった。ヘルプGaroonシステム管理>基本システムの管理タブ>カスタマイズ>JavaScript/CSSによるカスタマイズところが、これの適用条件でちょっとハマった。スケジュール、ワークフロー、メッセージのように個別カスタマイズが用意されているアプリケーションは、個別アプリに何かしら「カスタマイズを適用」しておかないと、全体スクリプトがgaroonイベントを拾ってくれないのだ。js自体は読み込まれているのでDOM操作はできるのだが、garoonイベントが発生しない。発火する個別アプリのカスタマイズが不適用の状態ではイベントは発火しないが、jsは読み込まれているので、events.onによらない処理(jQueryとか)は動作する。個別アプリ(スケジュール、ワークフロー、メッセージ)のカスタマイズがONになっている時にのみ、これらのイベントが発生する。ちなみに、個別アプリが適用になると全体アプリもイベントが発火するようになるため、全体アプリと個別アプリで2回とも発火することになる。Tampermonkeyなどのブラウザ側スクリプトも同じで、個別アプリに何かしら適用してあれば、発火するようになる。個別アプリに適用されているものがないと、イベント自体が発生しない。上記の全体カスタマイズのドキュメントにも、以下の記述がある。次のアプリケーションは、各アプリケーションの管理画面でカスタマイズすることを推奨します。ヘルプまとめ公式の方でもこの現象は把握しているそうなので、そのうちこの仕様変更されるかもしれない。#phpconPHPカンファレンス2019に行ってきました。エンジニア文章、写真、デザイン、コーディングまで一通りこなす自走式フルスタックブロガー。読者になる@mogami74をフォローはてなブログをはじめよう!mogami74さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。