'required|array_db scripts.scriptid' ]; $ret = $this->validateInput($fields); if (!$ret) { $this->setResponse(new CControllerResponseFatal()); } return $ret; } protected function checkPermissions() { if (!$this->checkAccess(CRoleHelper::UI_ADMINISTRATION_SCRIPTS)) { return false; } $scripts = API::Script()->get([ 'countOutput' => true, 'scriptids' => $this->getInput('scriptids'), 'editable' => true ]); return ($scripts == count($this->getInput('scriptids'))); } protected function doAction() { $scriptids = $this->getInput('scriptids'); $result = (bool) API::Script()->delete($scriptids); $deleted = count($scriptids); $response = new CControllerResponseRedirect((new CUrl('zabbix.php')) ->setArgument('action', 'script.list') ->setArgument('page', CPagerHelper::loadPage('script.list', null)) ); if ($result) { $response->setFormData(['uncheck' => '1']); CMessageHelper::setSuccessTitle(_n('Script deleted', 'Scripts deleted', $deleted)); } else { CMessageHelper::setErrorTitle(_n('Cannot delete script', 'Cannot delete scripts', $deleted)); } $this->setResponse($response); } }