イベント一覧


ACMS.events で購読できるイベントの一覧です。使い方は イベント(ACMS.events) を参照してください。

実験的機能

この機能は Ver. 3.2 の間は実験的機能として提供し、Ver. 3.3 で正式に提供する予定です。

  • 変わりうる範囲: イベント名と受け取る値の構造は、マイナーバージョンアップで変更される可能性があります。
  • 変わらない範囲: 従来の DOM イベントと ACMS.dispatchEvent 経由のイベントは、今後も発火します(末尾の「従来のイベントとの対応」参照)。
  • 公開 API の線引き: このページに掲載しているイベントを公開 API として扱います。 掲載外のものも利用できますが、告知なく変更されることがあります。
  • サポート対象外: 管理画面に追加した独自の JavaScript・CSS は、バージョンアップ後の動作を保証しません。これらを原因とする不具合は、サポートの対象外です。
  • 「種別」が 中止可 のイベントは、ハンドラの第2引数 gateCtx の cancel() で操作を中止できます。値の書き換えは、受け取った値のプロパティを直接書き換えて行います(イベント の「ゲートでできること」参照)。
  • 「通知」のイベントは、戻り値を返しても無視され、中止もできません。

メディア

イベント名種別発生タイミング受け取れる値変更できるもの効く画面
media.upload.before中止可ファイルを選択し、アップロードを開始する直前files(File の配列)files の除外のみ(新しい File への差し替えは反映されません)メディア管理・カスタムフィールド・ブロックエディターの画像/ファイル・リッチエディター・バナー・ナビゲーション・ユニットなど、メディア選択を使うすべての画面
media.upload.success通知アップロードが完了した後items(登録されたメディア)—同上
media.update.before中止可メディア詳細の「保存」直前item, formDataformData の書き換えメディア詳細モーダル(上記すべての画面から開けます)
media.update.success通知保存が成功した後item—同上
media.update-as-new.before中止可「別名で保存」の直前item, formDataformData の書き換え同上
media.update-as-new.success通知別名保存が成功した後item—同上
media.delete.before中止可メディア一覧の一括削除の直前(確認ダイアログの後)mediaIds絞り込みは不可(中止のみ)メディア管理の一覧
media.delete.success通知一括削除が成功した後mediaIds—同上

エントリー

イベント名種別発生タイミング受け取れる値変更できるもの効く画面
entry.trash.before中止可エントリーをゴミ箱へ移す直前(確認の後)entryentry の書き換え(書き換えた内容が実際の対象になります)エントリー一覧
entry.trash.success通知ゴミ箱へ移した後entry—同上
entry.duplicate.success通知エントリーを複製した後entry—同上
entry.bulk-status.before中止可複数選択して公開状態を変更する直前formDataformData の書き換えエントリー一覧(一括操作)
entry.bulk-status.success通知一括変更が成功した後formData—同上
entry.bulk-trash.success通知一括でゴミ箱へ移した後formData—同上
entry.bulk-duplicate.success通知一括で複製した後formData—同上

モジュール

イベント名種別発生タイミング受け取れる値変更できるもの効く画面
module.bulk-status.before中止可複数選択して公開状態を変更する直前formDataformData の書き換えモジュール一覧(一括操作)
module.bulk-status.success通知一括変更が成功した後formData—同上

プレビュー・タイムマシン

イベント名種別発生タイミング受け取れる値変更できるもの効く画面
preview.share.before中止可共有用プレビュー URL を発行する直前formDataformData の書き換えプレビュー画面
preview.share.success通知共有 URL の発行が成功した後shareUrl—同上
preview.mode.change通知プレビューモードのオン/オフが切り替わった後enabled—エントリー編集・プレビュー
timemachine.mode.change通知タイムマシンモードのオン/オフが切り替わった後enabled—エントリー編集

入力フィールド

イベント名種別発生タイミング受け取れる値効く画面
category.select.change通知カテゴリーの選択が変わった後target(対象の要素)エントリー編集・カスタムフィールド
sub-category.select.change通知サブカテゴリーの選択が変わった後target同上
tag.select.change通知タグの選択が変わった後target同上
related-entry.select.change通知関連エントリーが変わった後target, entries, type, title, moduleId, ctx, maxItemエントリー編集
entry.main-image.change通知メイン画像が設定された後target, mediaId, thumbnailブロックエディターの画像ブロック
media-field.change通知メディアフィールドの値が変わった後targetカスタムフィールド
media-unit.change通知メディアユニットの値が変わった後target, mediaItemsエントリー編集(ユニット)
field-group.add.after通知カスタムフィールドグループの行が追加された後element(追加された要素)カスタムフィールドを使う画面全般

同じ種類のフィールドが複数ある画面では、すべてのフィールドの変更が同じイベントで届きます。 どのフィールドかを判定するには target を確認してください。

画面共通の UI

イベント名種別発生タイミング受け取れる値効く画面
dialog.open.after通知ダイアログ・モーダル・ドロワーが開いた後element管理画面全般
tab.select.change通知タブが選択された後tab管理画面全般
tab.show.after通知タブのパネルが表示された後tab, panel(パネルがない場合は null)同上
tab.hide.after通知タブのパネルが非表示になった後tab, panel(パネルがない場合は null)同上
admin.delayed-contents.change通知非同期に読み込まれたコンテンツが差し込まれた後target, detail管理画面全般
custom-field-maker.preview.after通知カスタムフィールドメーカーのプレビューが再描画された後elementカスタムフィールドメーカー
geo.info-add.after通知地図に位置情報が追加された後element地図フィールド
lazy-load.load.after通知遅延読み込みの要素が読み込まれた後element管理画面・サイト表示側

フォームの検証

イベント名種別発生タイミング受け取れる値
validator.invalid.after通知検証に失敗した後results, element
validator.valid.after通知検証に成功した後results, element
validator.validated.after通知検証が完了した後(成功・失敗を問わず)results, element
validator.submit-fail.after通知検証エラーで送信が中止された後results, form

ユニットエディター

イベント名種別発生タイミング受け取れる値備考
unit-editor.create.after通知ユニットエディターが生成された後editor, settings従来の acmsUnitEditorCreate と同じタイミングで発火します
unit-editor.command.before通知(中止できません)ユニットの追加・削除・移動・複製・更新などの操作の直前commands, editor名前は .before ですが、観測専用です。値の書き換え・中止・非同期の待機はできません
unit-editor.command.success通知同じ操作が完了した後commands, editor—
unit-editor.inplace-dialog-open.after通知インライン編集のダイアログが開いた後element—

起動

購読より先に完了しているかどうかを確認してください(イベント の「起動時の処理を書く」参照)。

イベント名確認するプロパティ意味
acms.state.readyACMS.readyStates.readyJavaScript の初期化が完了した
acms.state.admin-readyACMS.readyStates.adminReady管理画面の初期化が完了した
acms.pending.readyACMS.pendingReadyState読み込み中表示の準備が完了した

従来のイベントとの対応

以下の DOM イベント(document.addEventListener で購読するもの)と ACMS.dispatchEvent 経由のイベントは、今後も発火します。既存の購読はそのままで動作します。新しく書く場合は右列のイベントを使ってください。

従来のイベント新しいイベント内容
acms.media-updatedmedia.update.successメディアの更新
acms.set-main-imageentry.main-image.changeメイン画像の設定
acms.category.changecategory.select.changeカテゴリー選択の変更
acms.sub-category.changesub-category.select.changeサブカテゴリー選択の変更
acms.tag.changetag.select.changeタグ選択の変更
acms.related-entry.changerelated-entry.select.change関連エントリーの変更
acms.media-field.changemedia-field.changeメディアフィールドの変更
acms.media-unit.changemedia-unit.changeメディアユニットの変更
acmsUnitEditorCreateunit-editor.create.afterユニットエディターの生成
acmsAddUnit(対応なし)サーバー側で描画されたユニットの追加
acmsCustomFieldMakerPreviewcustom-field-maker.preview.afterプレビューの再描画
acmsAdminDelayedContentsadmin.delayed-contents.change非同期コンテンツの差し込み
acmsDialogOpeneddialog.open.afterダイアログの表示
acmsAdminSelectTabtab.select.changeタブの選択
acmsAdminShowTabPaneltab.show.afterタブパネルの表示
acmsAdminHideTabPaneltab.hide.afterタブパネルの非表示
acmsAddCustomFieldGroupfield-group.add.afterフィールドグループの追加
acmsInplaceDialogOpenunit-editor.inplace-dialog-open.afterインライン編集ダイアログの表示
onGeoInfoAddedgeo.info-add.after位置情報の追加
acmsLazyLoadedlazy-load.load.after遅延読み込みの完了
acmsFormInvalidvalidator.invalid.after検証の失敗
acmsFormValidvalidator.valid.after検証の成功
acmsFormValidatedvalidator.validated.after検証の完了
acmsValidateFailedvalidator.submit-fail.after検証エラーによる送信中止
acmsReadyacms.state.ready初期化の完了
acmsAdminReadyacms.state.admin-ready管理画面の初期化完了

変更履歴

バージョン変更内容
Ver. 3.2.29新規追加(実験的機能)
Ver. 3.2.33media.* などの「中止可」イベントの中止方法を gateCtx.cancel() に変更