campaign = $campaign; } function redirect($url) { ob_start(); header("Location: $url"); exit; } function run() { foreach ($this->campaign->actions as $action) { switch ($action['id']) { case C::ACTION_HIDE: add_filter('hurryt_campaign_template', function () { return ''; }, 1); break; case C::ACTION_REDIRECT; $this->redirect($action['redirectUrl']); break; case C::ACTION_CHANGE_STOCK_STATUS: $wcCampaign = new WCCampaign(); $wcCampaign->changeStockStatus($this->campaign, $action['wcStockStatus']); break; case C::ACTION_DISPLAY_MESSAGE: add_filter('hurryt_campaign_template', function ($template) use ($action) { return "
"; }, 2); break; } } } }