public function addonsList() { $sql = 'SELECT id, name, mod_monitis_addon.* FROM tbladdons LEFT JOIN mod_monitis_addon on ( tbladdons.id = mod_monitis_addon.addon_id )'; return monitisSqlHelper::query($sql); }
static function extServerMonitors($server_id) { $sql = 'SELECT id, name, ipaddress, hostname, mod_monitis_ext_monitors.* FROM mod_monitis_ext_monitors LEFT JOIN tblservers ON tblservers.id=mod_monitis_ext_monitors.server_id WHERE tblservers.disabled=0 AND tblservers.id=' . $server_id; return monitisSqlHelper::query($sql); }
public function getFieldById($fielId) { $vals = monitisSqlHelper::query('SELECT fieldoptions FROM tblcustomfields WHERE id=' . $fielId); if ($vals) { return $vals[0]; } else { return null; } }
public function synchronizeClients() { $all = array(); $subUsers = MonitisApi::clients(true); $clntByUsr = monitisSqlHelper::query('SELECT user_id, firstname, lastname, email, LOWER(status) as status, api_key, secret_key FROM mod_monitis_user LEFT JOIN tblclients ON tblclients.id=mod_monitis_user.user_id'); for ($i = 0; $i < count($subUsers); $i++) { $apikey = $subUsers[$i]['apikey']; $whmcsUser = MonitisHelper::in_array($clntByUsr, 'api_key', $apikey); $userid = 0; // user linked if ($whmcsUser) { $userid = $whmcsUser['user_id']; } else { // link user $arr = explode('_', $subUsers[$i]['account']); if ($arr && $arr[0]) { $userid = intval(substr($arr[0], 5)); if ($userid > 0) { $resp = monitisClientApi::linkUserByApikey($apikey, $userid); if (@$resp['status'] == 'ok' && isset($resp['data'])) { //$secretkey = $resp['data']['secret_key']; $whmcsUser = $this->userById($userid); $whmcsUser['api_key'] = $apikey; $whmcsUser['secret_key'] = $resp['data']['secret_key']; } } } } $monitors = null; if ($userid > 0) { $monitors = $subUsers[$i]['monitors']; $monitors = $this->synchronizeMonitors($userid, $monitors); } $all[] = array('api_user' => $subUsers[$i], 'whmcs_user' => $whmcsUser, 'monitors' => $monitors); } return $all; }
public function whmcsAdminList() { //return $this->adminList(); return monitisSqlHelper::query('SELECT * FROM tbladmins'); }
public function clientProductMonitors($userid) { $monitors = monitisSqlHelper::query('SELECT * FROM mod_monitis_product_monitor WHERE user_id =' . $userid); $apiMons = monitisClientApi::externalMonitors($userid); if ($apiMons && isset($apiMons['testList'])) { $apiMons = $apiMons['testList']; } else { $apiMons = null; } $userProducts = MonitisSeviceHelper::userProducts($userid); $avMonitors = array(); $ids = array(); if ($userProducts) { for ($i = 0; $i < count($monitors); $i++) { $orderid = $monitors[$i]['order_id']; $serviceid = $monitors[$i]['service_id']; $isAvailble = false; if ($monitors[$i]['type'] == 'addon') { $addon = $this->_addonsByServiceId($serviceid, $monitors[$i]['product_id'], $userid); if ($addon) { $monitors[$i]['settings'] = $addon['settings']; $product = $this->productByField($userProducts, 'id', $serviceid); if ($product && $product['status'] == "Active") { $monitors[$i]['productname'] = $product['groupname'] . ' - ' . $product['name'] . ' <div class="addon">addon: ' . $addon['addonname'] . '</div>'; $isAvailble = true; } } } else { $result = select_query('tblhosting', 'domainstatus', array('id' => $serviceid, 'userid' => $userid), null, null, 1); $data = mysql_fetch_assoc($result); if ($data && $data['domainstatus'] == "Active") { $product = $this->productByField($userProducts, 'id', $serviceid); if ($product && $product['status'] == "Active") { if ($monitors[$i]['type'] == 'product') { $monproduct = $this->isMonitisProduct($product['pid']); $monitors[$i]['settings'] = $monproduct['settings']; } else { // hayk $option_id = $monitors[$i]['option_id']; $result = select_query('mod_monitis_options', 'settings', array('option_id' => $option_id), null, null, 1); $data = mysql_fetch_assoc($result); $monitors[$i]['settings'] = html_entity_decode($data['settings']); } $monitors[$i]['productname'] = $product['groupname'] . ' - ' . $product['name']; $isAvailble = true; } } } if ($isAvailble) { $monitor_id = intval($monitors[$i]['monitor_id']); $monitorIndex = $this->in_array($apiMons, 'id', $monitor_id); if ($monitorIndex > -1) { $monitors[$i]['info'] = $apiMons[$monitorIndex]; $avMonitors[] = $monitors[$i]; } else { // delete $monitor_id from mod_monitis_product //monitisSqlHelper::altQuery('DELETE FROM mod_monitis_product WHERE monitor_id='.$monitor_id ); } } } } else { return null; } return $avMonitors; }
public function editHookHandler($vars, $hook) { $serviceid = $vars['serviceid']; $userid = $vars['userid']; $result = array('status' => 'nomonitis', 'serviceid' => $serviceid, 'userid' => $userid, 'title' => 'Service: ' . $serviceid, 'hook_type' => ''); if (isset($serviceid) && isset($userid)) { if (empty($hook)) { $rslt = monitisSqlHelper::query('SELECT tblhosting.domainstatus as status FROM tblhosting WHERE tblhosting.id=' . $serviceid); $hook = strtolower($rslt[0]['status']); if ($hook == 'cancelled') { $hook = 'cancel'; } } $result = $this->moduleHookHandler($vars, $hook); $result['hook_type'] = 'edit'; } return $result; }
if ($notificationRuleIdsOnContact != '') { $notifications->editNotificationRule($contact['contactId'], $groupName, $groupAlerts, $notificationRuleIdsOnContact); } else { MonitisApiHelper::addNotificationRule($contact['contactId'], $groupType, $groupId, $groupAlerts); } } } break; } } MonitisApp::printNotifications(); $monitisContactGroups = MonitisApi::getContactsByGroupID('All'); if (!$monitisContactGroups) { $monitisContactGroups = $notifications->createDefaultGroup(); } $whmcsAdmins = monitisSqlHelper::query('SELECT CONCAT(firstname, " ", lastname) as name, email FROM tbladmins'); $contactGroups = array(); for ($i = 0; $i < count($monitisContactGroups); $i++) { $contactGroups[$i] = array(); $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);
monitisAddonHookHandler($vars, $hook); break; case 'multiple': $type = $_POST["producttype"]; if ($type == 'addon') { $resp = MonitisHookClass::applyCreateAddonMonitor($_POST['addonserviceid'], $_POST['serviceid'], $_POST['userid']); } else { $resp = MonitisHookClass::applyCreateConfigOptionMonitor($_POST['option_id'], $_POST['productid'], $_POST['serviceid']); } break; } } elseif ($action == 'clean') { monitisSqlHelper::altQuery('DELETE FROM ' . MONITIS_HOOK_REPORT_TABLE); } } $list = monitisSqlHelper::query('SELECT * FROM ' . MONITIS_HOOK_REPORT_TABLE . ' ORDER BY `date` DESC'); ?> <div style="text-align: left;padding: 0px 0px 5px;"> <form method="post" action=""> <input type="submit" value="Clean" name="act" class="btn" /> </form> </div> <table class="datatable" width="100%" border="0" cellspacing="1" cellpadding="3" style="text-align: left;"> <tr> <th>Date</th> <th>Title</th> <th>Client</th> <th>Product type</th> <th>URL / IP</th> <th>Monitor type</th> <th>Response</th>
static function dump() { return monitisSqlHelper::query('SELECT * FROM ' . MONITIS_LOG_TABLE . ' ORDER BY `date` DESC'); }
static function linksMonitors($userid) { return monitisSqlHelper::query('SELECT * FROM mod_monitis_product_monitor WHERE user_id=' . $userid); }
public function all() { //mysql_query('DELETE FROM mod_monitis_int_monitors WHERE server_id=0'); $this->whmcsAllServers = monitisSqlHelper::query('SELECT id, name, ipaddress, hostname FROM tblservers WHERE disabled=0'); if ($this->whmcsAllServers) { $this->initServers(); } return $this->result; }