Preview: AgenticController.php
Size: 1.36 KB
/home/nshryvcy/radiantskinclinics.org/wp-content/plugins/woocommerce/src/Internal/Admin/Agentic/AgenticController.php
<?php
declare(strict_types=1);
namespace Automattic\WooCommerce\Internal\Admin\Agentic;
use Automattic\Jetpack\Constants;
use Automattic\WooCommerce\Internal\RegisterHooksInterface;
use Automattic\WooCommerce\Utilities\FeaturesUtil;
/**
* AgenticController class
*
* Main controller for Agentic Commerce Protocol features.
* Manages initialization of webhooks and future settings for the Agentic feature.
*
* @since 10.3.0
*/
class AgenticController implements RegisterHooksInterface {
/**
* Register this class instance to the appropriate hooks.
*
* @internal
*/
public function register() {
// Don't register hooks during installation.
if ( Constants::is_true( 'WC_INSTALLING' ) ) {
return;
}
// We want to run on init for translations but before woocommerce_init so that
// we can hook the new integration settings page. We should be able to simplify
// this by just hooking here when we no longer need to check if the feature is enabled.
add_action( 'before_woocommerce_init', array( $this, 'on_init' ) );
}
/**
* Hook into WordPress on init.
*
* @internal
*/
public function on_init() {
// Bail if the feature is not enabled.
if ( ! FeaturesUtil::feature_is_enabled( 'agentic_checkout' ) ) {
return;
}
// Resolve webhook manager from container.
wc_get_container()->get( AgenticWebhookManager::class )->register();
}
}
Directory Contents
Dirs: 0 × Files: 3