cms.ajax.beforeRunHandler

Edit on GitHub

Triggered in: Cms\Classes\Controller.php

Provides an opportunity to modify an AJAX request

The parameter provided is $handler (the requested AJAX handler to be run)

Example usage (forwards AJAX handlers to a backend widget):

Event::listen('cms.ajax.beforeRunHandler', function ((\Cms\Classes\Controller) $controller, (string) $handler) {
    if (strpos($handler, '::')) {
        list($componentAlias, $handlerName) = explode('::', $handler);
        if ($componentAlias === $this->getBackendWidgetAlias()) {
            return $this->backendControllerProxy->runAjaxHandler($handler);
        }
    }
});

Or

$this->controller->bindEvent('ajax.beforeRunHandler', function ((string) $handler) {
    if (strpos($handler, '::')) {
        list($componentAlias, $handlerName) = explode('::', $handler);
        if ($componentAlias === $this->getBackendWidgetAlias()) {
            return $this->backendControllerProxy->runAjaxHandler($handler);
        }
    }
});

Keep informed

Sign up to our newsletter to receive updates on Winter CMS releases, new features in the works, and much more.
We'll never spam or give this address away.

Latest blog post

Winter.Notes plugin now available

Published January 14, 2022
Winter.Notes has just been released, a first-party Winter CMS plugin to add notes to any records in Winter through the use of a custom `notes` FormWidget that has a user experience similar to that of the Mac OS Notes app.

View this post Read all posts

Latest Winter CMS release

v1.1.7

Released November 13, 2021
3 UX/UI Improvements, 3 API Changes, 6 Bug Fixes, 4 Translation Improvements, 3 Community Improvements

View details View all releases