コード例 #1
0
ファイル: servers.php プロジェクト: carriercomm/WHMCS
        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);
                    }
                }
            } else {
                //MonitisApp::addWarning('Server '.$srvs[$i][name]. ' - ' .$resp['agent']['msg']);
            }
        }
    } else {
        //MonitisApp::addWarning("The server is not selected.");
    }
    MonitisApp::printNotifications();
}
$limit = MONITIS_PAGE_LIMIT;
$sList = array('name' => isset($_REQUEST['nameOrder']) ? $_REQUEST['nameOrder'] : 'ASC', 'hostname' => isset($_REQUEST['hostnameOrder']) ? $_REQUEST['hostnameOrder'] : 'ASC', 'ipaddress' => isset($_REQUEST['ipaddressOrder']) ? $_REQUEST['ipaddressOrder'] : 'ASC');
コード例 #2
0
ファイル: products.php プロジェクト: carriercomm/WHMCS
            MonitisApp::addMessage('Product "' . $_POST["productName"] . '" updated successfully');
        }
    } else {
        MonitisApp::addError('Monitor type is required');
    }
} elseif ($action) {
    $productIds = monitisPost('productIds');
    if ($productIds) {
        switch ($action) {
            case 'activate':
                $resp = $oMProduct->activateProducts($productIds);
                if ($resp['status'] == 'ok') {
                    $prdcts = $resp['products'];
                    for ($i = 0; $i < count($prdcts); $i++) {
                        if ($prdcts[$i]['status'] == 'error') {
                            MonitisApp::addError($prdcts[$i]['msg']);
                        } elseif ($prdcts[$i]['status'] == 'warning') {
                            //MonitisApp::addWarning($prdcts[$i]['msg']);
                        } else {
                            //MonitisApp::addMessage($prdcts[$i]['msg']);
                        }
                    }
                }
                break;
            case 'deactivate':
                $ids = implode(',', $productIds);
                $oMProduct->deactivateProducts($ids);
                break;
        }
    }
}
コード例 #3
0
ファイル: account.php プロジェクト: carriercomm/WHMCS
<?php

$isNewAcc = empty(MonitisConf::$apiKey);
if (monitisPostInt('monitisFormSubmitted')) {
    $apiKey = trim(monitisPost('apiKey'));
    $secretKey = trim(monitisPost('secretKey'));
    $timezone = monitisPostInt('monitisTimeZone');
    if (empty($apiKey)) {
        MonitisApp::addError('Please provide valid API Key');
    } elseif (empty($secretKey)) {
        MonitisApp::addError('Please provide valid Secret Key');
    } elseif (!MonitisApi::checkKeysValid($apiKey, $secretKey)) {
        MonitisApp::addError('Wrong API and/or Secret keys provided.');
    } else {
        MonitisConf::update_config(array('apiKey' => $apiKey, 'secretKey' => $secretKey, 'timezone' => $timezone));
        if ($isNewAcc) {
            //header('location: ' . MONITIS_APP_URL . '&monitis_page=configure&isNewAcc=1');
            header('location: ' . MONITIS_APP_URL . '&monitis_page=tabadmin&sub=settings&isNewAcc=1');
        }
    }
} else {
    if ($isNewAcc) {
        MonitisApp::addMessage('Please enter your Monitis account information below.');
    }
}
MonitisApp::printNotifications();
?>
<script type="text/javascript">
$(document).ready(function() {
	var d = new Date();
	var minutes = d.getTimezoneOffset(); // minutes
コード例 #4
0
ファイル: options.php プロジェクト: carriercomm/WHMCS
    }
    $optionGroups[$row['group_id']]['options'][$row['option_id']]['subs'][$row['sub_id']] = array('name' => $row['sub_name'], 'hasMonitor' => $hasMonitor);
}
if (isset($optionIdToRemove)) {
    $query = '
		DELETE FROM `mod_monitis_options`
		WHERE option_id = ' . $optionIdToRemove . '
	';
    if (mysql_query($query)) {
        $success = 'Option have been removed.';
    } else {
        $error = 'An error occurred. Try again later.';
    }
}
MonitisApp::addMessage($success);
MonitisApp::addError($error);
?>

<style type="text/css">
.monitis-options{
	text-align: left;
}
.monitis-options .datatable .actions div{
	padding: 0 0 10px 30px;
}
.monitis-options .datatable tbody tr th{
	background: #BBBBBB;
	color: black;
}
.datatable{
	width: 100%;
コード例 #5
0
ファイル: monitors.php プロジェクト: carriercomm/WHMCS
                $params = array('agentkey' => $agentKey, 'driveLetter' => $driveLetter, 'freeLimit' => $freeLimit, 'name' => 'drive_' . $driveLetter . '@' . $serverInfo['hostname'], 'tag' => $serverInfo['hostname'] . '_whmcs');
                $resp = MonitisApi::addDriveMonitor($params);
                if ($resp) {
                    if ($resp['status'] == 'ok') {
                        $newID = $resp['data']['testId'];
                        $pubKey = MonitisApi::monitorPublicKey(array('moduleType' => 'drive', 'monitorId' => $newID));
                        $values = array('server_id' => $serverInfo['id'], 'available' => MonitisConf::$settings['drive']['available'], 'agent_id' => $agentId, 'monitor_id' => $newID, 'monitor_type' => 'drive', 'client_id' => MONITIS_CLIENT_ID, 'publickey' => $pubKey);
                        insert_query('mod_monitis_int_monitors', $values);
                        MonitisApp::addMessage('Drive Monitor successfully added');
                        for ($i = 0; $i < count($serverInfo['agent']['drive']); $i++) {
                            if (isset($serverInfo['agent']['drive'][$i]['driveLetter']) && $serverInfo['agent']['drive'][$i]['driveLetter'] === $driveLetter) {
                                $serverInfo['agent']['drive'][$i] = $serverMonitors->getMonitor($resp['data']['testId'], 'drive');
                            }
                        }
                    } else {
                        MonitisApp::addError($resp['error']);
                    }
                }
            }
    }
}
if ($serverInfo['ping'] != NULL) {
    $interval = explode(',', $serverInfo['ping']['intervals']);
    $settings = array('interval' => $interval[0], 'locationIds' => explode(',', $serverInfo['ping']['locations']), 'timeout' => $serverInfo['ping']['timeout']);
    $serverInfo['ping']['settings'] = str_replace('"', "~", json_encode($settings));
}
if ($serverInfo['agent'] != NULL) {
    if ($serverInfo['agent']['cpu'] != NULL) {
        $settings = array('kernelMax' => $serverInfo['agent']['cpu']['kernelMax'], 'usedMax' => $serverInfo['agent']['cpu']['userMax']);
        if ($serverInfo['agent']['platform'] == 'LINUX') {
            $settings['idleMin'] = $serverInfo['agent']['cpu']['idleMin'];
コード例 #6
0
ファイル: addons.php プロジェクト: carriercomm/WHMCS
        $set['timeout'] = $_POST["timeout"];
        $set['interval'] = $_POST["interval"];
        $set['locationIds'] = $loc;
        $set['locationsMax'] = !$_POST["locationsMax"] ? 0 : $_POST["locationsMax"];
        $new_setting = json_encode($set);
        $resp = $oAddon->updateAddonSettings($addonId, $new_setting, $monitor_type);
        /*
        if ($resp['create']) {
        	MonitisApp::addMessage('Addon "' . $_POST["productName"] . '" activated successfully');
        } else {
        	MonitisApp::addMessage('Addon "' . $_POST["productName"] . '" updated successfully');
        }
        */
        MonitisApp::addMessage('Addon "' . $_POST["productName"] . '" updated successfully');
    } else {
        MonitisApp::addError('All fields required');
    }
} elseif ($action) {
    $productIds = monitisPost('productIds');
    switch ($action) {
        case 'activate':
            if ($productIds) {
                for ($i = 0; $i < count($productIds); $i++) {
                    $monitor_type = 'http';
                    $setting = MonitisConf::$settings[$monitor_type];
                    $oAddon->updateAddonSettings($productIds[$i], json_encode($setting), $monitor_type);
                }
            }
            break;
        case 'deactivate':
            if ($productIds) {