campaign = $campaign; } /** * Execute registered campaign actions. */ public function run() { $pluginSettings = new PluginSettings(); $settings = $pluginSettings->getSettings(); if(Helpers::isUsingDashboard() && $settings['disable_actions']){ return; } foreach ($this->campaign->actions as $action) { switch ($action['id']) { // Hide. case C::ACTION_HIDE: add_filter('hurryt_campaign_template', '__return_empty_string', 1); break; // URL redirect. case C::ACTION_REDIRECT; @wp_redirect($action['redirectUrl']); break; // Change stock status (regular mode) case C::ACTION_CHANGE_STOCK_STATUS: $wcCampaign = new WCCampaign(); $wcCampaign->changeStockStatus($this->campaign, $action['wcStockStatus']); break; // Display message. case C::ACTION_DISPLAY_MESSAGE: add_filter('hurryt_campaign_template', function () use ($action) { return "
{$action['message']}
"; }, 2); break; } } } }