autopilotUtil = $autopilotUtil; } public static function getTypes() { return [ 'settings' => 0, ]; } public function getVars($smarty_tpl_vars) { $cfg = Config::get(); $statuses = $cfg['Order']['Status']['global']; $active = array_flip(getStatuses('active')); $active = array_intersect_key($statuses, $active); $notActive = array_diff_key($statuses, $active); $fromStatuses = []; $frm = \Settings::getDefault()['autopilot']['from_statuses'] ?? getStatuses('active'); foreach ($frm as $value) { $fromStatuses[$value] = true; } $vars = [ 'statuses' => $statuses, 'active' => $active, 'notActive' => $notActive, 'autopilotDescr' => $this->autopilotUtil->getAutopilotDescription(), 'fromStatuses' => $fromStatuses, ]; if ($this->autopilotUtil->getTestMode()) { $vars['test'] = ['orders' => $this->autopilotUtil->getTestLog()]; } return $vars; } public function handleTestAutopilot() { $autopilot = getVal('autopilot', getVal('data') ?? [], []); $autopilotStatus = $autopilot['status'] ?? null; $autopilotFromStatuses = $autopilot['from_statuses'] ?? null; $this->autopilotUtil->setTestMode(true); $this->autopilotUtil->setFromStatuses($autopilotFromStatuses); $this->autopilotUtil->autopilot($autopilotStatus); } }