function hook_monitis_ServerAdd($vars) { require_once 'monitisapp.php'; $res = mysql_query(sprintf('SELECT id, name, ipaddress, hostname FROM tblservers WHERE disabled=0 AND id=%d', $vars['serverid'])); $server = mysql_fetch_assoc($res); MonitisApiHelper::addAllDefault(MONITIS_CLIENT_ID, $server); }
public function filterWhmcsAdminList($groupId) { $whmcsAdminList = $this->whmcsAdminList(); $contactInfo = MonitisApiHelper::getContactsEmailByGroup($groupId); $filterContacts = array(); if (count($whmcsAdminList) > 0) { for ($i = 0; $i < count($whmcsAdminList); $i++) { if (count($contactInfo) > 0 && !in_array($whmcsAdminList[$i]['email'], $contactInfo)) { $filterContacts[] = $whmcsAdminList[$i]; } elseif (count($contactInfo) == 0) { $filterContacts[] = $whmcsAdminList[$i]; } } return $filterContacts; } return null; }
require_once '../modules/addons/monitis_addon/lib/serverslisttab.class.php'; $oSrvrs = new serversListTab(); if (isset($_POST['create_NewMonitors']) && $_POST['create_NewMonitors'] > 0) { if (isset($_POST['serverId'])) { $servers = array_map("intval", $_POST['serverId']); $srv_ids = MonitisHelper::idsByField($servers, ''); $srv_ids_str = implode(",", $srv_ids); $srvs = monitisWhmcsServer::serverByIds($srv_ids_str); $ext = monitisWhmcsServer::extMonitorsByServerIds($srv_ids_str); $int = monitisWhmcsServer::intMonitorsByServerIds($srv_ids_str); $whmcs = array('ext' => $ext, 'int' => $int); MonitisConf::$settings['ping']['autocreate'] = 1; MonitisConf::$settings['cpu']['autocreate'] = 1; MonitisConf::$settings['memory']['autocreate'] = 1; for ($i = 0; $i < count($srvs); $i++) { $resp = MonitisApiHelper::addAllDefault(MONITIS_CLIENT_ID, $srvs[$i], $whmcs); $ping = $resp['ping']; $msg = 'Server ' . $srvs[$i][name] . ' - PING monitor: ' . $ping['msg']; if ($ping['status'] == 'error') { MonitisApp::addError($msg); } elseif ($ping['status'] == 'warning') { //MonitisApp::addWarning($msg); } if ($resp['agent']['status'] == 'ok') { $internalMonitors = $resp['internal_monitors']; foreach ($internalMonitors as $key => $val) { $msg = 'Server ' . $srvs[$i][name] . ' - ' . strtoupper($key) . ' monitor: ' . $internalMonitors[$key]['msg']; if ($internalMonitors[$key]['status'] == 'error') { MonitisApp::addError($msg); } elseif ($internalMonitors[$key]['status'] == 'warning') { //MonitisApp::addWarning($msg);
static function load() { // HOUR $row = monitisSqlHelper::objQuery('SELECT *, TIMESTAMPDIFF(DAY, locations_update, NOW()) as locs, TIMESTAMPDIFF(HOUR, authToken_update, NOW()) as token FROM ' . MONITIS_SETTING_TABLE); if ($row) { self::$apiKey = $row['apiKey']; self::$secretKey = $row['secretKey']; self::$authToken = $row['authToken']; self::$adminName = $row['admin_name']; self::$settings = json_decode($row['settings'], true); self::$locations = json_decode($row['locations'], true); if ($row['locs'] > self::$locationsDays) { self::update_locations(MonitisApiHelper::getExternalLocations()); } if ($row['token'] > self::$authTokenHour) { self::update_token(); } self::update_parentDomain(); return true; } // if (empty(self::$locations) && !empty(self::$secretKey)) { self::update_locations(MonitisApiHelper::getExternalLocations()); } if (empty(self::$authToken)) { self::update_token(); } return false; }
if (!MonitisConf::$settings['ping']['autocreate'] && !MonitisConf::$settings['cpu']['autocreate'] && !MonitisConf::$settings['memory']['autocreate']) { MonitisApp::redirect(MONITIS_APP_URL . '&monitis_page=tabadmin'); } $servers = array(); $res = mysql_query('SELECT id, name, ipaddress, hostname FROM tblservers WHERE disabled=0'); while ($s = mysql_fetch_array($res)) { $servers[$s['id']] = $s; } if (count($servers) < 1) { MonitisApp::redirect(MONITIS_APP_URL . '&monitis_page=tabadmin'); //MonitisApp::redirect(MONITIS_APP_URL . '&monitis_page=servers'); } if (isset($_POST['sync'])) { if ($_POST['sync']) { foreach ($servers as $server) { MonitisApiHelper::addAllDefault(MONITIS_CLIENT_ID, $server); } } //MonitisApp::redirect(MONITIS_APP_URL . '&monitis_page=servers'); MonitisApp::redirect(MONITIS_APP_URL . '&monitis_page=tabadmin'); } $sets = MonitisConf::$settings; $newCreateMonitorsText = array(); if ($sets['ping']['autocreate'] > 0) { $newCreateMonitorsText[] = 'ping'; } if ($sets['cpu']['autocreate'] > 0) { $newCreateMonitorsText[] = 'cpu'; } if ($sets['memory']['autocreate'] > 0) { $newCreateMonitorsText[] = 'memory';
<?php require_once 'modules/addons/monitis_addon/monitisapp.php'; require_once 'modules/addons/monitis_addon/lib/clientui.php'; $locations = MonitisApiHelper::getExternalLocationsGrouped(); //$version = rand(1, 1000); $version = MONITIS_RESOURCE_VERSION; //$language = $this->_tpl_vars['clientsdetails']['language']; $language = 'english'; include_once 'modules/addons/monitis_addon/lang/' . $language . '.php'; ?> <link href="http://code.jquery.com/ui/1.10.3/themes/<?php echo MonitisConf::$jqueryClientTheme; ?> /jquery-ui.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script> <link href="modules/addons/monitis_addon/static/css/monitis.css?<?php echo $version; ?> " rel="stylesheet" type="text/css" /> <script type="text/javascript" src="modules/addons/monitis_addon/static/js/monitisclasses.js?<?php echo $version; ?> "></script> <script type="text/javascript" src="modules/addons/monitis_addon/static/js/clientui.js?<?php echo $version; ?> "></script> <script type="text/javascript" src="modules/addons/monitis_addon/lang/js/<?php echo $language; ?>
$contactGroups[$i]['id'] = $monitisContactGroups[$i]['contactGroupId']; $contactGroups[$i]['name'] = $monitisContactGroups[$i]['contactGroupName']; $alertRules = ''; if (MonitisConf::$settings['groups']['external']['groupId'] == $monitisContactGroups[$i]['contactGroupId']) { $monitorType = 'external'; $externalAlerts = MonitisApiHelper::getNotificationRuleByType($monitorType, $monitisContactGroups[$i]['contactGroupId']); if ($externalAlerts) { $alertRules = json_encode($externalAlerts); $alertRules = str_replace('"', "~", $alertRules); } else { $alertRules = json_encode(MonitisConf::$settings['groups'][$monitorType]['alert']); $alertRules = str_replace('"', "~", $alertRules); } } elseif (MonitisConf::$settings['groups']['internal']['groupId'] == $monitisContactGroups[$i]['contactGroupId']) { $monitorType = 'internal'; $internalAlerts = MonitisApiHelper::getNotificationRuleByType($monitorType, $monitisContactGroups[$i]['contactGroupId']); if ($internalAlerts) { $alertRules = json_encode($internalAlerts); $alertRules = str_replace('"', "~", $alertRules); } else { $alertRules = json_encode(MonitisConf::$settings['groups'][$monitorType]['alert']); $alertRules = str_replace('"', "~", $alertRules); } } $contactGroups[$i]['type'] = $monitorType; $contactGroups[$i]['alerts'] = $alertRules; $contactGroups[$i]['whmcsContacts'] = array(); $contactGroups[$i]['notWhmcsContacts'] = array(); for ($j = 0; $j < count($monitisContactGroups[$i]['contacts']); $j++) { $contact = array('email' => $monitisContactGroups[$i]['contacts'][$j]['account'], 'name' => $monitisContactGroups[$i]['contacts'][$j]['name'], 'isActive' => $monitisContactGroups[$i]['contacts'][$j]['activeFlag']); $isWhmcsContact = false;
static function editNotificationRule($params, $rule, $userid) { $user = self::userToken($userid); if ($user['status'] == 'ok') { $params = MonitisApiHelper::rulesFromJson($params, $rule); return self::requestPost('editNotificationRule', $params, $user); } else { return $user; } }
} else { MonitisApp::addError($resp['error']); } } else { $hostname = $serverInfo['hostname']; $agents = MonitisApi::getAgent($hostname); $agentKey = $agents[0]['key']; $platform = $agents[0]['platform']; $agentInfo = array('agentKey' => $agents[0]['key'], 'agentId' => $agents[0]['id'], 'name' => $hostname, 'platform' => $platform); $internalMonitors = MonitisApi::getInternalMonitors(); $cpu = MonitisConf::$settings['cpu'][$platform]; $cpuSettings = array('platform' => array($platform => array())); foreach ($cpu as $key => $val) { $cpuSettings['platform'][$platform][$key] = isset($_POST[$key]) ? intval($_POST[$key]) : $cpu[$key]; } $resp = MonitisApiHelper::addCPUMonitor($serverInfo, MONITIS_CLIENT_ID, $agentInfo, $internalMonitors['cpus'], $cpuSettings['platform']); if ($resp['status'] === 'ok') { MonitisApp::addMessage('CPU Monitor successfully created'); $serverInfo['agent']['cpu'] = $serverMonitors->getMonitor($resp['id'], 'cpu'); } else { MonitisApp::addError($resp['msg']); } } break; case 'memory': if (isset($_POST['id'])) { $monitor = MonitisApi::getMemoryInfo((int) $_POST['id']); $platform = $monitor['agentPlatform']; $monitorId = (int) $_POST['id']; $params = array('testId' => $monitorId, 'name' => 'memory@' . $serverInfo['hostname'], 'tag' => $serverInfo['hostname'] . '_whmcs', 'platform' => $platform); $memory = MonitisConf::$settings['memory'][$platform];