Imported Upstream version 3.4.0
This commit is contained in:
436
admin/import.php
436
admin/import.php
@@ -5,216 +5,294 @@
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// (c) 2005-2017 by Martin Willisegger
|
||||
// (c) 2005-2018 by Martin Willisegger
|
||||
//
|
||||
// Project : NagiosQL
|
||||
// Component : Admin configuration verification
|
||||
// Website : http://www.nagiosql.org
|
||||
// Date : $LastChangedDate: 2017-06-22 09:29:35 +0200 (Thu, 22 Jun 2017) $
|
||||
// Author : $LastChangedBy: martin $
|
||||
// Version : 3.3.0
|
||||
// Revision : $LastChangedRevision: 2 $
|
||||
// Website : https://sourceforge.net/projects/nagiosql/
|
||||
// Version : 3.4.0
|
||||
// GIT Repo : https://gitlab.com/wizonet/NagiosQL
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Path settings
|
||||
// ===================
|
||||
$strPattern = '(admin/[^/]*.php)';
|
||||
$preRelPath = preg_replace($strPattern, '', filter_input(INPUT_SERVER, 'PHP_SELF', FILTER_SANITIZE_STRING));
|
||||
$preBasePath = preg_replace($strPattern, '', filter_input(INPUT_SERVER, 'SCRIPT_FILENAME', FILTER_SANITIZE_STRING));
|
||||
//
|
||||
// Define common variables
|
||||
// =======================
|
||||
$prePageId = 25;
|
||||
$preContent = "admin/import.tpl.htm";
|
||||
$preAccess = 1;
|
||||
$preFieldvars = 1;
|
||||
$intModus = 0;
|
||||
$prePageId = 25;
|
||||
$preContent = 'admin/import.htm.tpl';
|
||||
$preAccess = 1;
|
||||
$preFieldvars = 1;
|
||||
$intModus = 0;
|
||||
//
|
||||
// Include preprocessing files
|
||||
// ===========================
|
||||
require("../functions/prepend_adm.php");
|
||||
require("../functions/prepend_content.php");
|
||||
require $preBasePath.'functions/prepend_adm.php';
|
||||
require $preBasePath.'functions/prepend_content.php';
|
||||
//
|
||||
// Initialize import class
|
||||
// =======================
|
||||
include("../functions/import_class.php");
|
||||
$myImportClass = new nagimport;
|
||||
$myImportClass->myDataClass =& $myDataClass;
|
||||
$myImportClass->myDBClass =& $myDBClass;
|
||||
$myImportClass->myConfigClass =& $myConfigClass;
|
||||
$myImportClass = new functions\NagImportClass($_SESSION);
|
||||
$myImportClass->myDBClass =& $myDBClass;
|
||||
$myImportClass->myDataClass =& $myDataClass;
|
||||
$myImportClass->myConfigClass =& $myConfigClass;
|
||||
//
|
||||
// Get configuration set ID
|
||||
// ========================
|
||||
$arrConfigSet = $myConfigClass->getConfigSets();
|
||||
$myConfigClass->getConfigTargets($arrConfigSet);
|
||||
$intConfigId = $arrConfigSet[0];
|
||||
//
|
||||
// Process form variables
|
||||
// ======================
|
||||
if (isset($_FILES['datValue1']) && ($_FILES['datValue1']['name'] != "") && ($chkStatus == 1)) {
|
||||
// Upload Error
|
||||
if ($_FILES['datValue1']['error'] !== UPLOAD_ERR_OK) {
|
||||
$myVisClass->processMessage(translate('File upload error:')." ".$_FILES['filMedia']['error'],$strErrorMessage);
|
||||
} else {
|
||||
$intModus = 1;
|
||||
$strFileName = tempnam($_SESSION['SETS']['path']['tempdir'], 'nagiosql_local_imp');
|
||||
if (isset($_FILES['datValue1']) && ($_FILES['datValue1']['name'] != '') && ($chkStatus == 1)) {
|
||||
// Upload Error
|
||||
if ($_FILES['datValue1']['error'] !== UPLOAD_ERR_OK) {
|
||||
$myVisClass->processMessage(
|
||||
translate('File upload error:'). ' ' .$_FILES['filMedia']['error'],
|
||||
$strErrorMessage
|
||||
);
|
||||
} else {
|
||||
$intModus = 1;
|
||||
$strFileName = tempnam($_SESSION['SETS']['path']['tempdir'], 'nagiosql_local_imp');
|
||||
move_uploaded_file($_FILES['datValue1']['tmp_name'], $strFileName);
|
||||
$intReturn = $myImportClass->fileImport($strFileName,$intConfigId,$chkChbValue1);
|
||||
if ($intReturn != 0) {
|
||||
$myVisClass->processMessage($myImportClass->strErrorMessage,$strErrorMessage);
|
||||
} else {
|
||||
$myVisClass->processMessage($myImportClass->strInfoMessage,$strInfoMessage);
|
||||
$myDataClass->writeLog(translate('File imported - File [overwite flag]:')." ".$_FILES['datValue1']['name']." [".$chkChbValue1."]");
|
||||
}
|
||||
}
|
||||
$intReturn = $myImportClass->fileImport($strFileName, $intConfigId, $chkChbValue1);
|
||||
if ($intReturn != 0) {
|
||||
$myVisClass->processMessage($myImportClass->strErrorMessage, $strErrorMessage);
|
||||
} else {
|
||||
$myVisClass->processMessage($myImportClass->strInfoMessage, $strInfoMessage);
|
||||
$myDataClass->writeLog(translate('File imported - File [overwrite flag]:'). ' ' .
|
||||
$_FILES['datValue1']['name']. ' [' .$chkChbValue1. ']');
|
||||
}
|
||||
}
|
||||
}
|
||||
if (($chkMselValue1[0] != "") && ($chkStatus == 1)) {
|
||||
foreach($chkMselValue1 AS $elem) {
|
||||
$intModus = 1;
|
||||
$myImportClass->strErrorMessage = "";
|
||||
$myImportClass->strInfoMessage = "";
|
||||
$intReturn = $myImportClass->fileImport($elem,$intConfigId,$chkChbValue1);
|
||||
if ($intReturn != 0) {
|
||||
$myVisClass->processMessage($myImportClass->strErrorMessage,$strErrorMessage);
|
||||
} else {
|
||||
$myVisClass->processMessage($myImportClass->strInfoMessage,$strInfoMessage);
|
||||
$myDataClass->writeLog(translate('File imported - File [overwite flag]:')." ".$elem." [".$chkChbValue1."]");
|
||||
}
|
||||
}
|
||||
if (($chkMselValue1[0] != '') && ($chkStatus == 1)) {
|
||||
/** @var array $chkMselValue1 */
|
||||
foreach ($chkMselValue1 as $elem) {
|
||||
$intModus = 1;
|
||||
$myImportClass->strErrorMessage = '';
|
||||
$myImportClass->strInfoMessage = '';
|
||||
$intReturn = $myImportClass->fileImport($elem, $intConfigId, $chkChbValue1);
|
||||
if ($intReturn != 0) {
|
||||
$myVisClass->processMessage($myImportClass->strErrorMessage, $strErrorMessage);
|
||||
} else {
|
||||
$myVisClass->processMessage($myImportClass->strInfoMessage, $strInfoMessage);
|
||||
$myDataClass->writeLog(translate('File imported - File [overwrite flag]:'). ' ' .$elem. ' ['
|
||||
.$chkChbValue1. ']');
|
||||
}
|
||||
}
|
||||
}
|
||||
//
|
||||
// Start content
|
||||
// =============
|
||||
$conttp->setVariable("TITLE",translate('Configuration import'));
|
||||
$conttp->parse("header");
|
||||
$conttp->show("header");
|
||||
$conttp->setVariable("LANG_SEARCH_STRING",translate('Filter string'));
|
||||
$conttp->setVariable("LANG_SEARCH",translate('Search'));
|
||||
$conttp->setVariable("LANG_DELETE",translate('Delete'));
|
||||
$conttp->setVariable("LANG_DELETE_SEARCH",translate("Reset filter"));
|
||||
$conttp->setVariable("DAT_SEARCH",$chkTfSearch);
|
||||
$conttp->setVariable("TEMPLATE",translate('Template definition'));
|
||||
$conttp->setVariable("IMPORTFILE",translate('Import file'));
|
||||
$conttp->setVariable("LOCAL_FILE",translate('Local import file'));
|
||||
$conttp->setVariable("OVERWRITE",translate('Overwrite database'));
|
||||
$conttp->setVariable("MAKE",translate('Import'));
|
||||
$conttp->setVariable("ABORT",translate('Abort'));
|
||||
$conttp->setVariable("CTRL_INFO",translate('Hold CTRL to select<br>more than one'));
|
||||
$conttp->setVariable("IMAGE_PATH",$_SESSION['SETS']['path']['base_url']."images/");
|
||||
$conttp->setVariable("ACTION_INSERT",filter_var($_SERVER['PHP_SELF'], FILTER_SANITIZE_STRING));
|
||||
$conttp->setVariable("DAT_IMPORTFILE_1","");
|
||||
$conttp->setVariable("IMPORT_INFO_1",translate("To prevent errors or misconfigurations, you should import your configurations in an useful order. We recommend to do it like this:<br><br><b><i>commands -> timeperiods -> contacttemplates -> contacts -> contactgroups -> hosttemplates -> hosts -> hostgroups -> servicetemplates -> services -> servicegroups</i></b><br><br>"));
|
||||
$conttp->setVariable("IMPORT_INFO_2","<span style=\"color:#FF0000\">".translate("<b>Check your configuration after import!</b><br>In cause of an error or an uncomplete configuration, re-importing the wrong configuration can solve the problem.")."</span>");
|
||||
$conttp->parse("filelist1");
|
||||
$conttp->setVariable('TITLE', translate('Configuration import'));
|
||||
$conttp->parse('header');
|
||||
$conttp->show('header');
|
||||
$conttp->setVariable('LANG_SEARCH_STRING', translate('Filter string'));
|
||||
$conttp->setVariable('LANG_SEARCH', translate('Search'));
|
||||
$conttp->setVariable('LANG_DELETE', translate('Delete'));
|
||||
$conttp->setVariable('LANG_DELETE_SEARCH', translate('Reset filter'));
|
||||
$conttp->setVariable('DAT_SEARCH', $chkTfSearch);
|
||||
$conttp->setVariable('TEMPLATE', translate('Template definition'));
|
||||
$conttp->setVariable('IMPORTFILE', translate('Import file'));
|
||||
$conttp->setVariable('LOCAL_FILE', translate('Local import file'));
|
||||
$conttp->setVariable('OVERWRITE', translate('Overwrite database'));
|
||||
$conttp->setVariable('MAKE', translate('Import'));
|
||||
$conttp->setVariable('ABORT', translate('Abort'));
|
||||
$conttp->setVariable('CTRL_INFO', translate('Hold CTRL to select<br>more than one'));
|
||||
$conttp->setVariable('IMAGE_PATH', $_SESSION['SETS']['path']['base_url']. 'images/');
|
||||
$conttp->setVariable('ACTION_INSERT', filter_input(INPUT_SERVER, 'PHP_SELF', FILTER_SANITIZE_STRING));
|
||||
$conttp->setVariable('DAT_IMPORTFILE_1', '');
|
||||
$conttp->setVariable('IMPORT_INFO_1', translate('To prevent errors or misconfigurations, you should import your '
|
||||
. 'configurations in an useful order. We recommend to do it like this:<br><br><b><i>commands -> '
|
||||
. 'timeperiods -> contacttemplates -> contacts -> contactgroups -> hosttemplates -> hosts -> '
|
||||
. 'hostgroups -> servicetemplates -> services -> servicegroups</i></b><br><br>'));
|
||||
$conttp->setVariable('IMPORT_INFO_2', '<span style="color:#FF0000">' .translate('<b>Check your configuration after '
|
||||
. 'import!</b><br>In cause of an error or an uncomplete configuration, re-importing the wrong configuration '
|
||||
. 'can solve the problem.'). '</span>');
|
||||
$conttp->parse('filelist1');
|
||||
// Get settings
|
||||
$myConfigClass->getConfigData($intConfigId,"method",$intMethod);
|
||||
$myConfigClass->getConfigData($intConfigId,"basedir",$strBaseDir);
|
||||
$myConfigClass->getConfigData($intConfigId,"hostconfig",$strHostDir);
|
||||
$myConfigClass->getConfigData($intConfigId,"serviceconfig",$strServiceDir);
|
||||
$myConfigClass->getConfigData($intConfigId,"backupdir",$strBackupDir);
|
||||
$myConfigClass->getConfigData($intConfigId,"hostbackup",$strHostBackupDir);
|
||||
$myConfigClass->getConfigData($intConfigId,"servicebackup",$strServiceBackupDir);
|
||||
$myConfigClass->getConfigData($intConfigId,"importdir",$strImportDir);
|
||||
$myConfigClass->getConfigData($intConfigId,"nagiosbasedir",$strNagiosBaseDir);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'method', $intMethod);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'basedir', $strBaseDir);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'hostconfig', $strHostDir);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'serviceconfig', $strServiceDir);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'backupdir', $strBackupDir);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'hostbackup', $strHostBackupDir);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'servicebackup', $strServiceBackupDir);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'importdir', $strImportDir);
|
||||
$myConfigClass->getConfigValues($intConfigId, 'nagiosbasedir', $strNagiosBaseDir);
|
||||
if ($intMethod == 1) {
|
||||
// Building local file list
|
||||
$output = array();
|
||||
$temp=$myConfigClass->DirToArray($strBaseDir, "\.cfg", "cgi.cfg|nagios.cfg|nrpe.cfg|nsca.cfg",$output,$strErrorMessage);
|
||||
if ($strNagiosBaseDir != $strBaseDir) {
|
||||
$temp=$myConfigClass->DirToArray($strNagiosBaseDir, "\.cfg", "cgi.cfg|nagios.cfg|nrpe.cfg|nsca.cfg",$output,$strErrorMessage);
|
||||
}
|
||||
$temp=$myConfigClass->DirToArray($strHostDir, "\.cfg", "",$output,$strErrorMessage);
|
||||
$temp=$myConfigClass->DirToArray($strServiceDir, "\.cfg", "",$output,$strErrorMessage);
|
||||
$temp=$myConfigClass->DirToArray($strHostBackupDir, "\.cfg_", "",$output,$strErrorMessage);
|
||||
$temp=$myConfigClass->DirToArray($strServiceBackupDir, "\.cfg_", "",$output,$strErrorMessage);
|
||||
if (($strImportDir != "") && ($strImportDir != $strBaseDir) && ($strImportDir != $strNagiosBaseDir)) {
|
||||
$temp=$myConfigClass->DirToArray($strImportDir, "\.cfg", "",$output,$strErrorMessage);
|
||||
}
|
||||
$output=array_unique($output);
|
||||
if (is_array($output) && (count($output) != 0)) {
|
||||
foreach ($output AS $elem) {
|
||||
if (($chkTfSearch == "") || (substr_count($elem,$chkTfSearch) != 0)) {
|
||||
$conttp->setVariable("DAT_IMPORTFILE_2",$elem);
|
||||
$conttp->parse("filelist2");
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if ($intMethod == 2) {
|
||||
// Set up basic connection
|
||||
if ($myConfigClass->getFTPConnection($intConfigId) == "0") {
|
||||
$arrFiles = array();
|
||||
$arrFiles1 = ftp_nlist($myConfigClass->resConnectId,$strBaseDir);
|
||||
if (is_array($arrFiles1)) $arrFiles = array_merge($arrFiles,$arrFiles1);
|
||||
$arrFiles2 = ftp_nlist($myConfigClass->resConnectId,$strHostDir);
|
||||
if (is_array($arrFiles2)) $arrFiles = array_merge($arrFiles,$arrFiles2);
|
||||
$arrFiles3 = ftp_nlist($myConfigClass->resConnectId,$strServiceDir);
|
||||
if (is_array($arrFiles3)) $arrFiles = array_merge($arrFiles,$arrFiles3);
|
||||
$arrFiles4 = ftp_nlist($myConfigClass->resConnectId,$strHostBackupDir);
|
||||
if (is_array($arrFiles4)) $arrFiles = array_merge($arrFiles,$arrFiles4);
|
||||
$arrFiles5 = ftp_nlist($myConfigClass->resConnectId,$strServiceBackupDir);
|
||||
if (is_array($arrFiles5)) $arrFiles = array_merge($arrFiles,$arrFiles5);
|
||||
if ($strImportDir != "" ) {
|
||||
$arrFiles6 = ftp_nlist($myConfigClass->resConnectId,$strImportDir);
|
||||
if (is_array($arrFiles6)) $arrFiles = array_merge($arrFiles,$arrFiles6);
|
||||
}
|
||||
if (is_array($arrFiles) && (count($arrFiles) != 0)) {
|
||||
foreach ($arrFiles AS $elem) {
|
||||
if (!substr_count($elem,"cfg")) continue;
|
||||
if (substr_count($elem,"resource.cfg")) continue;
|
||||
if (substr_count($elem,"nagios.cfg")) continue;
|
||||
if (substr_count($elem,"cgi.cfg")) continue;
|
||||
if (substr_count($elem,"nrpe.cfg")) continue;
|
||||
if (substr_count($elem,"nsca.cfg")) continue;
|
||||
if (($chkTfSearch == "") || (substr_count($elem,$chkTfSearch) != 0)) {
|
||||
$conttp->setVariable("DAT_IMPORTFILE_2",str_replace("//","/",$elem));
|
||||
$conttp->parse("filelist2");
|
||||
}
|
||||
}
|
||||
}
|
||||
ftp_close($myConfigClass->resConnectId);
|
||||
} else {
|
||||
$myVisClass->processMessage($myConfigClass->strErrorMessage,$strErrorMessage);
|
||||
}
|
||||
} else if ($intMethod == 3) {
|
||||
// Set up basic connection
|
||||
if ($myConfigClass->getSSHConnection($intConfigId) == "0") {
|
||||
$arrFiles = array();
|
||||
$arrFiles1 = $myConfigClass->sendSSHCommand("ls ".$strBaseDir."*.cfg");
|
||||
if ($arrFiles1 && is_array($arrFiles1)) $arrFiles = array_merge($arrFiles,$arrFiles1);
|
||||
$arrFiles2 = $myConfigClass->sendSSHCommand("ls ".$strHostDir."*.cfg");
|
||||
if (is_array($arrFiles2)) $arrFiles = array_merge($arrFiles,$arrFiles2);
|
||||
$arrFiles3 = $myConfigClass->sendSSHCommand("ls ".$strServiceDir."*.cfg");
|
||||
if (is_array($arrFiles3)) $arrFiles = array_merge($arrFiles,$arrFiles3);
|
||||
$arrFiles4 = $myConfigClass->sendSSHCommand("ls ".$strHostBackupDir."*.cfg*");
|
||||
if (is_array($arrFiles4)) $arrFiles = array_merge($arrFiles,$arrFiles4);
|
||||
$arrFiles5 = $myConfigClass->sendSSHCommand("ls ".$strServiceBackupDir."*.cfg*");
|
||||
if (is_array($arrFiles5)) $arrFiles = array_merge($arrFiles,$arrFiles5);
|
||||
if ($strImportDir != "" ) {
|
||||
$arrFiles6 = $myConfigClass->sendSSHCommand("ls ".$strImportDir."*.cfg");
|
||||
if (is_array($arrFiles6)) $arrFiles = array_merge($arrFiles,$arrFiles6);
|
||||
}
|
||||
if (is_array($arrFiles) && (count($arrFiles) != 0)) {
|
||||
foreach ($arrFiles AS $elem) {
|
||||
if (!substr_count($elem,"cfg")) continue;
|
||||
if (substr_count($elem,"resource.cfg")) continue;
|
||||
if (substr_count($elem,"nagios.cfg")) continue;
|
||||
if (substr_count($elem,"cgi.cfg")) continue;
|
||||
if (substr_count($elem,"nrpe.cfg")) continue;
|
||||
if (substr_count($elem,"nsca.cfg")) continue;
|
||||
if (($chkTfSearch == "") || (substr_count($elem,$chkTfSearch) != 0)) {
|
||||
$conttp->setVariable("DAT_IMPORTFILE_2",str_replace("//","/",$elem));
|
||||
$conttp->parse("filelist2");
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$myVisClass->processMessage($myConfigClass->strErrorMessage,$strErrorMessage);
|
||||
}
|
||||
// Building local file list
|
||||
$arrOutput1 = array();
|
||||
$myConfigClass->storeDirToArray(
|
||||
$strBaseDir,
|
||||
"\.cfg",
|
||||
'cgi.cfg|nagios.cfg|nrpe.cfg|nsca.cfg',
|
||||
$arrOutput1,
|
||||
$strErrorMessage
|
||||
);
|
||||
if ($strNagiosBaseDir != $strBaseDir) {
|
||||
$myConfigClass->storeDirToArray(
|
||||
$strNagiosBaseDir,
|
||||
"\.cfg",
|
||||
'cgi.cfg|nagios.cfg|nrpe.cfg|nsca.cfg',
|
||||
$arrOutput1,
|
||||
$strErrorMessage
|
||||
);
|
||||
}
|
||||
$myConfigClass->storeDirToArray($strHostDir, "\.cfg", '', $arrOutput1, $strErrorMessage);
|
||||
$myConfigClass->storeDirToArray($strServiceDir, "\.cfg", '', $arrOutput1, $strErrorMessage);
|
||||
$myConfigClass->storeDirToArray($strHostBackupDir, "\.cfg_", '', $arrOutput1, $strErrorMessage);
|
||||
$myConfigClass->storeDirToArray($strServiceBackupDir, "\.cfg_", '', $arrOutput1, $strErrorMessage);
|
||||
if (($strImportDir != '') && ($strImportDir != $strBaseDir) && ($strImportDir != $strNagiosBaseDir)) {
|
||||
$myConfigClass->storeDirToArray($strImportDir, "\.cfg", '', $arrOutput1, $strErrorMessage);
|
||||
}
|
||||
$arrOutput2=array_unique($arrOutput1);
|
||||
if (is_array($arrOutput2) && (count($arrOutput2) != 0)) {
|
||||
foreach ($arrOutput2 as $elem) {
|
||||
if (($chkTfSearch == '') || (substr_count($elem, $chkTfSearch) != 0)) {
|
||||
$conttp->setVariable('DAT_IMPORTFILE_2', $elem);
|
||||
$conttp->parse('filelist2');
|
||||
}
|
||||
}
|
||||
}
|
||||
} elseif ($intMethod == 2) {
|
||||
// Set up basic connection
|
||||
if ($myConfigClass->getFTPConnection($intConfigId) == '0') {
|
||||
$arrFiles = array();
|
||||
$arrFiles1 = ftp_nlist($myConfigClass->resConnectId, $strBaseDir);
|
||||
if (is_array($arrFiles1)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles1);
|
||||
}
|
||||
$arrFiles2 = ftp_nlist($myConfigClass->resConnectId, $strHostDir);
|
||||
if (is_array($arrFiles2)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles2);
|
||||
}
|
||||
$arrFiles3 = ftp_nlist($myConfigClass->resConnectId, $strServiceDir);
|
||||
if (is_array($arrFiles3)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles3);
|
||||
}
|
||||
$arrFiles4 = ftp_nlist($myConfigClass->resConnectId, $strHostBackupDir);
|
||||
if (is_array($arrFiles4)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles4);
|
||||
}
|
||||
$arrFiles5 = ftp_nlist($myConfigClass->resConnectId, $strServiceBackupDir);
|
||||
if (is_array($arrFiles5)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles5);
|
||||
}
|
||||
if ($strImportDir != '') {
|
||||
$arrFiles6 = ftp_nlist($myConfigClass->resConnectId, $strImportDir);
|
||||
if (is_array($arrFiles6)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles6);
|
||||
}
|
||||
}
|
||||
if (is_array($arrFiles) && (count($arrFiles) != 0)) {
|
||||
foreach ($arrFiles as $elem) {
|
||||
if (!substr_count($elem, 'cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'resource.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'nagios.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'cgi.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'nrpe.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'nsca.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (($chkTfSearch == '') || (substr_count($elem, $chkTfSearch) != 0)) {
|
||||
$conttp->setVariable('DAT_IMPORTFILE_2', str_replace('//', '/', $elem));
|
||||
$conttp->parse('filelist2');
|
||||
}
|
||||
}
|
||||
}
|
||||
ftp_close($myConfigClass->resConnectId);
|
||||
} else {
|
||||
$myVisClass->processMessage($myConfigClass->strErrorMessage, $strErrorMessage);
|
||||
}
|
||||
} elseif ($intMethod == 3) {
|
||||
// Set up basic connection
|
||||
if ($myConfigClass->getSSHConnection($intConfigId) == '0') {
|
||||
$arrFiles = array();
|
||||
$intReturn = $myConfigClass->sendSSHCommand('ls ' .$strBaseDir. '*.cfg', $arrFiles1);
|
||||
if (($intReturn == 0) && is_array($arrFiles1)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles1);
|
||||
}
|
||||
$intReturn = $myConfigClass->sendSSHCommand('ls ' .$strHostDir. '*.cfg', $arrFiles2);
|
||||
if (($intReturn == 0) && is_array($arrFiles2)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles2);
|
||||
}
|
||||
$intReturn = $myConfigClass->sendSSHCommand('ls ' .$strServiceDir. '*.cfg', $arrFiles3);
|
||||
if (($intReturn == 0) && is_array($arrFiles3)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles3);
|
||||
}
|
||||
$intReturn = $myConfigClass->sendSSHCommand('ls ' .$strHostBackupDir. '*.cfg*', $arrFiles4);
|
||||
if (($intReturn == 0) && is_array($arrFiles4)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles4);
|
||||
}
|
||||
$intReturn = $myConfigClass->sendSSHCommand('ls ' .$strServiceBackupDir. '*.cfg*', $arrFiles5);
|
||||
if (($intReturn == 0) && is_array($arrFiles5)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles5);
|
||||
}
|
||||
if ($strImportDir != '') {
|
||||
$intReturn = $myConfigClass->sendSSHCommand('ls ' .$strImportDir. '*.cfg', $arrFiles6);
|
||||
if (($intReturn == 0) && is_array($arrFiles6)) {
|
||||
$arrFiles = array_merge($arrFiles, $arrFiles6);
|
||||
}
|
||||
}
|
||||
if (is_array($arrFiles) && (count($arrFiles) != 0)) {
|
||||
foreach ($arrFiles as $elem) {
|
||||
if (!substr_count($elem, 'cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'resource.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'nagios.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'cgi.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'nrpe.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (substr_count($elem, 'nsca.cfg')) {
|
||||
continue;
|
||||
}
|
||||
if (($chkTfSearch == '') || (substr_count($elem, $chkTfSearch) != 0)) {
|
||||
$conttp->setVariable('DAT_IMPORTFILE_2', str_replace('//', '/', $elem));
|
||||
$conttp->parse('filelist2');
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$myVisClass->processMessage($myConfigClass->strErrorMessage, $strErrorMessage);
|
||||
}
|
||||
}
|
||||
// Check access rights for adding new objects
|
||||
if ($myVisClass->checkAccGroup($prePageKey,'write') != 0) $conttp->setVariable("ADD_CONTROL","disabled=\"disabled\"");
|
||||
if ($strErrorMessage != "") $conttp->setVariable("ERRORMESSAGE",$strErrorMessage);
|
||||
$conttp->setVariable("INFOMESSAGE",$strInfoMessage);
|
||||
$conttp->parse("main");
|
||||
$conttp->show("main");
|
||||
if ($myVisClass->checkAccountGroup($prePageKey, 'write') != 0) {
|
||||
$conttp->setVariable('ADD_CONTROL', 'disabled="disabled"');
|
||||
}
|
||||
if ($strErrorMessage != '') {
|
||||
$conttp->setVariable('ERRORMESSAGE', $strErrorMessage);
|
||||
}
|
||||
$conttp->setVariable('INFOMESSAGE', $strInfoMessage);
|
||||
$conttp->parse('main');
|
||||
$conttp->show('main');
|
||||
//
|
||||
// Process footer
|
||||
// ==============
|
||||
$maintp->setVariable("VERSION_INFO","<a href='http://www.nagiosql.org' target='_blank'>NagiosQL</a> $setFileVersion");
|
||||
$maintp->parse("footer");
|
||||
$maintp->show("footer");
|
||||
?>
|
||||
$maintp->setVariable('VERSION_INFO', "<a href='https://sourceforge.net/projects/nagiosql/' "
|
||||
. "target='_blank'>NagiosQL</a> $setFileVersion");
|
||||
$maintp->parse('footer');
|
||||
$maintp->show('footer');
|
||||
|
||||
Reference in New Issue
Block a user