if ($Server->getErrno() == 0) { print SUCCESSFULL . ','; } else { print FAILED . ',' . $Server->error; } break; case 2: $Server->scannPort($port); if ($Server->getErrno() == 0) { print SUCCESSFULL . ','; } else { print FAILED . ',' . $Server->error; } break; case 3: $Server->loginDbServer($user, $passwd); $Server->setDataBase($db_name, $port); if ($Server->errno == 0) { $response = $Server->tryConnectServer($type); if ($response->status == 'SUCCESS') { print SUCCESSFULL . ','; } else { print FAILED . ',' . $Server->error; } } else { print FAILED . ',' . $Server->error; } break; case 4: $Server->loginDbServer($user, $passwd); $Server->setDataBase($db_name, $port);
} } else { echo FAILED . "," . $Server->error; } break; default: echo "finished"; break; } } else { $connectionType = $_POST["connectionType"]; $tns = $_POST["tns"]; $net = new NET(); switch ($step) { case 1: $net->loginDbServer($user, $passwd); if ($net->errno == 0) { $arrayServerData = array("connectionType" => $connectionType, "tns" => $tns); $response = $net->tryConnectServer($type, $arrayServerData); if ($response->status == "SUCCESS") { $response = $net->tryOpenDataBase($type, $arrayServerData); if ($response->status == "SUCCESS") { echo SUCCESSFULL . "," . $net->error; } else { echo FAILED . "," . $net->error; } } else { echo FAILED . "," . $net->error; } } else { echo FAILED . "," . $net->error;
function testConnection($type, $server, $user, $passwd, $port = 'none', $dbName = "") { if ($port == 'none' || $port == '' || $port == 0) { //setting defaults ports switch ($type) { case 'mysql': $port = 3306; break; case 'pgsql': $port = 5432; break; case 'mssql': $port = 1433; break; case 'oracle': $port = 1521; break; } } G::LoadClass('net'); $Server = new NET($server); if ($Server->getErrno() == 0) { $Server->scannPort($port); if ($Server->getErrno() == 0) { $Server->loginDbServer($user, $passwd); $Server->setDataBase($dbName, $port); if ($Server->errno == 0) { $response = $Server->tryConnectServer($type); if ($response->status == 'SUCCESS') { if ($Server->errno == 0) { $message = ""; $response = $Server->tryConnectServer($type); $connDatabase = @mysql_connect($server, $user, $passwd); $dbNameTest = "PROCESSMAKERTESTDC"; $db = @mysql_query("CREATE DATABASE " . $dbNameTest, $connDatabase); $success = false; if (!$db) { $message = mysql_error(); } else { $usrTest = "wfrbtest"; $chkG = "GRANT ALL PRIVILEGES ON `" . $dbNameTest . "`.* TO " . $usrTest . "@'%' IDENTIFIED BY 'sample' WITH GRANT OPTION"; $ch = @mysql_query($chkG, $connDatabase); if (!$ch) { $message = mysql_error(); } else { $sqlCreateUser = "******" . $user . "_usertest'@'%' IDENTIFIED BY 'sample'"; $result = @mysql_query($sqlCreateUser, $connDatabase); if (!$result) { $message = mysql_error(); } else { $success = true; $message = G::LoadTranslation('ID_SUCCESSFUL_CONNECTION'); } $sqlDropUser = "******" . $user . "_usertest'@'%'"; @mysql_query($sqlDropUser, $connDatabase); @mysql_query("DROP USER " . $usrTest . "@'%'", $connDatabase); } @mysql_query("DROP DATABASE " . $dbNameTest, $connDatabase); } return array($success, $message != "" ? $message : $Server->error); } else { return array(false, $Server->error); } } else { return array(false, $Server->error); } } else { return array(false, $Server->error); } } else { return array(false, $Server->error); } } else { return array(false, $Server->error); } }
function getDBVersion() { $sMySQLVersion = '?????'; if (defined("DB_HOST")) { G::LoadClass('net'); G::LoadClass('dbConnections'); $dbNetView = new NET(DB_HOST); $dbNetView->loginDbServer(DB_USER, DB_PASS); $dbConns = new dbConnections(''); $availdb = ''; foreach ($dbConns->getDbServicesAvailables() as $key => $val) { if ($availdb != '') { $availdb .= ', '; } $availdb .= $val['name']; } try { $sMySQLVersion = $dbNetView->getDbServerVersion('mysql'); } catch (Exception $oException) { $sMySQLVersion = '?????'; } } return $sMySQLVersion; }
/** * Get metadata from this workspace * * @param string $path the directory where to create the sql files * @return array information about this workspace */ public function getMetadata() { $Fields = array_merge(System::getSysInfo(), $this->getDBInfo()); $Fields['WORKSPACE_NAME'] = $this->name; if (isset($this->dbHost)) { //TODO: This code stopped working with the refactoring //require_once ("propel/Propel.php"); //G::LoadClass('dbConnections'); //$dbConns = new dbConnections(''); //$availdb = ''; //foreach( $dbConns->getDbServicesAvailables() as $key => $val ) { //if(!empty($availdb)) // $availdb .= ', '; // $availdb .= $val['name']; //} G::LoadClass('net'); $dbNetView = new NET($this->dbHost); $dbNetView->loginDbServer($this->dbUser, $this->dbPass); try { $sMySQLVersion = $dbNetView->getDbServerVersion('mysql'); } catch (Exception $oException) { $sMySQLVersion = 'Unknown'; } $Fields['DATABASE'] = $dbNetView->dbName($this->dbAdapter) . ' (Version ' . $sMySQLVersion . ')'; $Fields['DATABASE_SERVER'] = $this->dbHost; $Fields['DATABASE_NAME'] = $this->dbName; $Fields['AVAILABLE_DB'] = "Not defined"; //$Fields['AVAILABLE_DB'] = $availdb; } else { $Fields['DATABASE'] = "Not defined"; $Fields['DATABASE_SERVER'] = "Not defined"; $Fields['DATABASE_NAME'] = "Not defined"; $Fields['AVAILABLE_DB'] = "Not defined"; } return $Fields; }
/** * Test DataBase Connection * @var string $dataCon. Data for DataBase Connection * @var string $returnArray. Flag for url * * @author Brayan Pereyra (Cochalo) <*****@*****.**> * @copyright Colosa - Bolivia * * @return void */ public function testConnection($dataCon, $returnArray = false) { $resp = array(); $respTest = array(); $resp['resp'] = false; $dataCon = array_change_key_case($dataCon, CASE_UPPER); $flagTns = ($dataCon["DBS_TYPE"] == "oracle" && $dataCon["DBS_CONNECTION_TYPE"] == "TNS")? 1 : 0; G::LoadClass( 'net' ); if ($flagTns == 0) { $Server = new \NET($dataCon['DBS_SERVER']); // STEP 1 : Resolving Host Name $respTest['0'] = array(); $respTest['0']['test'] = 'Resolving Host Name ' . $dataCon['DBS_SERVER']; if ($Server->getErrno() != 0) { if ($returnArray) { $respTest['0']['error'] = "Error Testing Connection: Resolving Host Name FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Resolving Host Name FAILED : " . $Server->error; return $resp; } } // STEP 2 : Checking port $respTest['1'] = array(); $respTest['1']['test'] = 'Checking port ' . $dataCon['DBS_PORT']; $Server->scannPort($dataCon['DBS_PORT']); if ($Server->getErrno() != 0) { if ($returnArray) { $respTest['1']['error'] = "Error Testing Connection: Checking port FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Checking port FAILED : " . $Server->error; return $resp; } } // STEP 3 : Trying to connect to host $respTest['2'] = array(); $respTest['2']['test'] = 'Connecting to host ' . $dataCon['DBS_SERVER'] . (($dataCon['DBS_PORT'] != '') ? ':'.$dataCon['DBS_PORT'] : ''); $Server->loginDbServer($dataCon['DBS_USERNAME'], $dataCon['DBS_PASSWORD']); $Server->setDataBase($dataCon['DBS_DATABASE_NAME'], $dataCon['DBS_PORT']); if ($Server->errno == 0) { $response = $Server->tryConnectServer($dataCon['DBS_TYPE']); if ($response->status != 'SUCCESS') { if ($returnArray) { $respTest['2']['error'] = "Error Testing Connection: Connecting to host FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Connecting to host FAILED : " . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['2']['error'] = "Error Testing Connection: Connecting to host FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Connecting to host FAILED : " . $Server->error; return $resp; } } // STEP 4 : Trying to open database $respTest['3'] = array(); $respTest['3']['test'] = 'Opening database [' . $dataCon['DBS_DATABASE_NAME'] . ']'; $Server->loginDbServer($dataCon['DBS_USERNAME'], $dataCon['DBS_PASSWORD']); $Server->setDataBase($dataCon['DBS_DATABASE_NAME'], $dataCon['DBS_PORT']); if ($Server->errno == 0) { $response = $Server->tryConnectServer($dataCon['DBS_TYPE']); if ($response->status == 'SUCCESS') { $response = $Server->tryOpenDataBase($dataCon['DBS_TYPE']); if ($response->status != 'SUCCESS') { if ($returnArray) { $respTest['3']['error'] = "Error Testing Connection: Opening database FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Opening database FAILED : " . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['3']['error'] = "Error Testing Connection: Opening database FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Opening database FAILED : " . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['3']['error'] = "Error Testing Connection: Opening database FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Opening database FAILED : " . $Server->error; return $resp; } } } else { $net = new \NET(); //STEP 0: Trying to open database type TNS $respTest["0"] = array(); $respTest["0"]["test"] = "Test TNS: " . $dataCon["DBS_TNS"]; $net->loginDbServer($dataCon["DBS_USERNAME"], $dataCon["DBS_PASSWORD"]); if ($net->errno == 0) { $arrayServerData = array("connectionType" => $dataCon["DBS_CONNECTION_TYPE"], "tns" => $dataCon["DBS_TNS"]); $response = $net->tryConnectServer($dataCon["DBS_TYPE"], $arrayServerData); if ($response->status == "SUCCESS") { $response = $net->tryOpenDataBase($dataCon["DBS_TYPE"], $arrayServerData); if ($response->status != "SUCCESS") { if ($returnArray) { $respTest["0"]["error"] = "Error Testing Connection: Opening database type TNS FAILED, " . $net->error; } else { $resp["message"] = "Error Testing Connection: Opening database type TNS FAILED, " . $net->error; //Return return $resp; } } } else { if ($returnArray) { $respTest["0"]["error"] = "Error Testing Connection: Opening database type TNS FAILED, " . $net->error; } else { $resp["message"] = "Error Testing Connection: Opening database type TNS FAILED, " . $net->error; //Return return $resp; } } } else { if ($returnArray) { $respTest["0"]["error"] = "Error Testing Connection: Opening database type TNS FAILED, " . $net->error; } else { $resp["message"] = "Error Testing Connection: Opening database type TNS FAILED, " . $net->error; //Return return $resp; } } } if ($returnArray) { return $respTest; } else { // CORRECT CONNECTION $resp['resp'] = true; return $resp; } }
/** * Test DataBase Connection * @var string $dataCon. Data for DataBase Connection * @var string $returnArray. Flag for url * * @author Brayan Pereyra (Cochalo) <*****@*****.**> * @copyright Colosa - Bolivia * * @return void */ public function testConnection($dataCon, $returnArray = false) { $resp = array(); $respTest = array(); $resp['resp'] = false; $dataCon = array_change_key_case($dataCon, CASE_UPPER); $flagTns = $dataCon["DBS_TYPE"] == "oracle" && $dataCon["DBS_CONNECTION_TYPE"] == "TNS" ? 1 : 0; G::LoadClass('net'); if ($flagTns == 0) { $Server = new \NET($dataCon['DBS_SERVER']); // STEP 1 : Resolving Host Name $respTest['0'] = array(); $respTest['0']['test'] = G::loadTranslation('RESOLVING_NAME') . ' ' . $dataCon['DBS_SERVER']; if ($Server->getErrno() != 0) { if ($returnArray) { $respTest['0']['error'] = G::loadTranslation('ID_ERROR_HOST_NAME_FAILED') . ' : ' . $Server->error; } else { $resp['message'] = G::loadTranslation('ID_ERROR_HOST_NAME_FAILED') . ' : ' . $Server->error; return $resp; } } // STEP 2 : Checking port $respTest['1'] = array(); $respTest['1']['test'] = G::loadTranslation('ID_CHECK_PORT') . ' ' . $dataCon['DBS_PORT']; $Server->scannPort($dataCon['DBS_PORT']); if ($Server->getErrno() != 0) { if ($returnArray) { $respTest['1']['error'] = G::loadTranslation('ID_CHECK_PORT_FAILED') . ' : ' . $Server->error; } else { $resp['message'] = G::loadTranslation('ID_CHECK_PORT_FAILED') . ' : ' . $Server->error; return $resp; } } // STEP 3 : Trying to connect to host $respTest['2'] = array(); $respTest['2']['test'] = G::loadTranslation('ID_CONNECTING_TO_HOST') . ' ' . $dataCon['DBS_SERVER'] . ($dataCon['DBS_PORT'] != '' ? ':' . $dataCon['DBS_PORT'] : ''); $Server->loginDbServer($dataCon['DBS_USERNAME'], $dataCon['DBS_PASSWORD']); $Server->setDataBase($dataCon['DBS_DATABASE_NAME'], $dataCon['DBS_PORT']); if ($Server->errno == 0) { $response = $Server->tryConnectServer($dataCon['DBS_TYPE']); if ($response->status != 'SUCCESS') { if ($returnArray) { $respTest['2']['error'] = G::loadTranslation('ID_CONNECTING_TO_HOST_FAILED') . ' : ' . $Server->error; } else { $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_HOST_FAILED') . ' : ' . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['2']['error'] = G::loadTranslation('ID_CONNECTING_TO_HOST_FAILED') . ' : ' . $Server->error; } else { $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_HOST_FAILED') . ' : ' . $Server->error; return $resp; } } // STEP 4 : Trying to open database $respTest['3'] = array(); $respTest['3']['test'] = G::loadTranslation('ID_OPEN_DATABASE') . ' [' . $dataCon['DBS_DATABASE_NAME'] . ']'; $Server->loginDbServer($dataCon['DBS_USERNAME'], $dataCon['DBS_PASSWORD']); $Server->setDataBase($dataCon['DBS_DATABASE_NAME'], $dataCon['DBS_PORT']); if ($Server->errno == 0) { $response = $Server->tryConnectServer($dataCon['DBS_TYPE']); if ($response->status == 'SUCCESS') { $response = $Server->tryOpenDataBase($dataCon['DBS_TYPE']); if ($response->status != 'SUCCESS') { if ($returnArray) { $respTest['3']['error'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error; } else { $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['3']['error'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error; } else { $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['3']['error'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error; } else { $resp['message'] = G::loadTranslation('ID_CONNECTING_TO_DATABASE_FAILED') . ' : ' . $Server->error; return $resp; } } } else { $net = new \NET(); //STEP 0: Trying to open database type TNS $respTest["0"] = array(); $respTest["0"]["test"] = G::loadTranslation('ID_TEST_DATABASE_ORACLE_TNS') . ' ' . $dataCon["DBS_TNS"]; $net->loginDbServer($dataCon["DBS_USERNAME"], $dataCon["DBS_PASSWORD"]); if ($net->errno == 0) { $arrayServerData = array("connectionType" => $dataCon["DBS_CONNECTION_TYPE"], "tns" => $dataCon["DBS_TNS"]); $response = $net->tryConnectServer($dataCon["DBS_TYPE"], $arrayServerData); if ($response->status == "SUCCESS") { $response = $net->tryOpenDataBase($dataCon["DBS_TYPE"], $arrayServerData); if ($response->status != "SUCCESS") { if ($returnArray) { $respTest["0"]["error"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error; } else { $resp["message"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error; //Return return $resp; } } } else { if ($returnArray) { $respTest["0"]["error"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error; } else { $resp["message"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error; //Return return $resp; } } } else { if ($returnArray) { $respTest["0"]["error"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error; } else { $resp["message"] = G::loadTranslation('ID_TEST_ERROR_ORACLE_TNS') . ', ' . $net->error; //Return return $resp; } } } if ($returnArray) { return $respTest; } else { // CORRECT CONNECTION $resp['resp'] = true; return $resp; } }
private function _getSystemInfo() { G::LoadClass("system"); if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CLIENT_IP'); } else { if (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } else { $ip = getenv('REMOTE_ADDR'); } } $redhat = ''; if (file_exists('/etc/redhat-release')) { $fnewsize = filesize('/etc/redhat-release'); $fp = fopen('/etc/redhat-release', 'r'); $redhat = trim(fread($fp, $fnewsize)); fclose($fp); } $redhat .= " (" . PHP_OS . ")"; if (defined("DB_HOST")) { G::LoadClass('net'); G::LoadClass('dbConnections'); $dbNetView = new NET(DB_HOST); $dbNetView->loginDbServer(DB_USER, DB_PASS); $dbConns = new dbConnections(''); $availdb = ''; foreach ($dbConns->getDbServicesAvailables() as $key => $val) { if ($availdb != '') { $availdb .= ', '; } $availdb .= $val['name']; } try { $sMySQLVersion = $dbNetView->getDbServerVersion(DB_ADAPTER); } catch (Exception $oException) { $sMySQLVersion = '?????'; } } if (file_exists(PATH_HTML . "lib/versions")) { $versions = json_decode(file_get_contents(PATH_HTML . "lib/versions"), true); $pmuiVer = $versions["pmui_ver"]; $mafeVer = $versions["mafe_ver"]; $pmdynaformVer = $versions["pmdynaform_ver"]; } else { $pmuiVer = $mafeVer = $pmdynaformVer = "(unknown)"; } $sysSection = G::loadTranslation('ID_SYSTEM_INFO'); $pmSection = G::LoadTranslation('ID_PROCESS_INFORMATION'); $properties = array(); $ee = class_exists('pmLicenseManager') ? " - Enterprise Edition" : ''; $systemName = 'ProcessMaker'; if (defined('SYSTEM_NAME')) { $systemName = SYSTEM_NAME; } $properties[] = array($systemName . ' Ver.', System::getVersion() . $ee, $pmSection); $properties[] = array("PMUI JS Lib. Ver.", $pmuiVer, $pmSection); $properties[] = array("MAFE JS Lib. Ver.", $mafeVer, $pmSection); $properties[] = array("PM Dynaform JS Lib. Ver.", $pmdynaformVer, $pmSection); if (file_exists(PATH_DATA . 'log/upgrades.log')) { $properties[] = array(G::LoadTranslation('ID_UPGRADES_PATCHES'), '<a href="#" onclick="showUpgradedLogs(); return false;">' . G::LoadTranslation('ID_UPGRADE_VIEW_LOG') . '</a>', $pmSection); } else { $properties[] = array(G::LoadTranslation('ID_UPGRADES_PATCHES'), G::LoadTranslation('ID_UPGRADE_NEVER_UPGRADE'), $pmSection); } $properties[] = array(G::LoadTranslation('ID_OPERATING_SYSTEM'), $redhat, $sysSection); $properties[] = array(G::LoadTranslation('ID_TIME_ZONE'), defined('TIME_ZONE') ? TIME_ZONE : "Unknown", $sysSection); $properties[] = array(G::LoadTranslation('ID_WEB_SERVER'), getenv('SERVER_SOFTWARE'), $sysSection); $properties[] = array(G::LoadTranslation('ID_SERVER_NAME'), getenv('SERVER_NAME'), $pmSection); $properties[] = array(G::LoadTranslation('ID_SERVER_IP'), $this->lookup($ip), $sysSection); $properties[] = array(G::LoadTranslation('ID_PHP_VERSION'), phpversion(), $sysSection); if (defined("DB_HOST")) { $properties[] = array(G::LoadTranslation('ID_DATABASE'), $dbNetView->dbName(DB_ADAPTER) . ' (Version ' . $sMySQLVersion . ')', $pmSection); $properties[] = array(G::LoadTranslation('ID_DATABASE_SERVER'), DB_HOST, $pmSection); $properties[] = array(G::LoadTranslation('ID_DATABASE_NAME'), DB_NAME, $pmSection); $properties[] = array(G::LoadTranslation('ID_AVAILABLE_DB'), $availdb, $sysSection); } else { $properties[] = array(G::LoadTranslation('ID_DATABASE'), "Not defined", $pmSection); $properties[] = array(G::LoadTranslation('ID_DATABASE_SERVER'), "Not defined", $pmSection); $properties[] = array(G::LoadTranslation('ID_DATABASE_NAME'), "Not defined", $pmSection); $properties[] = array(G::LoadTranslation('ID_AVAILABLE_DB'), "Not defined", $sysSection); } $properties[] = array(G::LoadTranslation('ID_WORKSPACE'), defined("SYS_SYS") ? SYS_SYS : "Not defined", $pmSection); $properties[] = array(G::LoadTranslation('ID_SERVER_PROTOCOL'), getenv('SERVER_PROTOCOL'), $sysSection); $properties[] = array(G::LoadTranslation('ID_SERVER_PORT'), getenv('SERVER_PORT'), $sysSection); //$sysSection[] = array('Remote Host', getenv ('REMOTE_HOST'), $sysSection); $properties[] = array(G::LoadTranslation('ID_SERVER_NAME'), getenv('SERVER_ADDR'), $sysSection); $properties[] = array(G::LoadTranslation('ID_USER_BROWSER'), getenv('HTTP_USER_AGENT'), $sysSection); return $properties; }
private function _getSystemInfo() { G::LoadClass("system"); if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CLIENT_IP'); } else { if (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } else { $ip = getenv('REMOTE_ADDR'); } } $redhat = ''; if (file_exists('/etc/redhat-release')) { $fnewsize = filesize('/etc/redhat-release'); $fp = fopen('/etc/redhat-release', 'r'); $redhat = trim(fread($fp, $fnewsize)); fclose($fp); } $redhat .= " (" . PHP_OS . ")"; if (defined("DB_HOST")) { G::LoadClass('net'); G::LoadClass('dbConnections'); $dbNetView = new NET(DB_HOST); $dbNetView->loginDbServer(DB_USER, DB_PASS); $dbConns = new dbConnections(''); $availdb = ''; foreach ($dbConns->getDbServicesAvailables() as $key => $val) { if ($availdb != '') { $availdb .= ', '; } $availdb .= $val['name']; } try { $sMySQLVersion = $dbNetView->getDbServerVersion(DB_ADAPTER); } catch (Exception $oException) { $sMySQLVersion = '?????'; } } $sysSection = G::loadTranslation('ID_SYSTEM_INFO'); $pmSection = 'ProcessMaker Information'; $properties = array(); $ee = class_exists('pmLicenseManager') ? " - Enterprise Edition" : ''; $properties[] = array('ProcessMaker Ver.', System::getVersion() . $ee, $pmSection); $properties[] = array('Operating System', $redhat, $sysSection); $properties[] = array('Time Zone', defined('TIME_ZONE') ? TIME_ZONE : "Unknown", $sysSection); $properties[] = array('Web Server', getenv('SERVER_SOFTWARE'), $sysSection); $properties[] = array('Server Name', getenv('SERVER_NAME'), $pmSection); $properties[] = array('Server IP Address', $this->lookup($ip), $sysSection); $properties[] = array('PHP Version', phpversion(), $sysSection); if (defined("DB_HOST")) { $properties[] = array('Data Base', $dbNetView->dbName(DB_ADAPTER) . ' (Version ' . $sMySQLVersion . ')', $pmSection); $properties[] = array('Data Base Server', DB_HOST, $pmSection); $properties[] = array('Data Base Name', DB_NAME, $pmSection); $properties[] = array('Available DB Engines', $availdb, $sysSection); } else { $properties[] = array('Data Base', "Not defined", $pmSection); $properties[] = array('Data Base Server', "Not defined", $pmSection); $properties[] = array('Data Base Name', "Not defined", $pmSection); $properties[] = array('Available DB Engines', "Not defined", $sysSection); } $properties[] = array('Workspace', defined("SYS_SYS") ? SYS_SYS : "Not defined", $pmSection); $properties[] = array('Server Protocol', getenv('SERVER_PROTOCOL'), $sysSection); $properties[] = array('Server Port', getenv('SERVER_PORT'), $sysSection); //$properties[] = array('Remote Host', getenv ('REMOTE_HOST'), $sysSection); $properties[] = array('Server Addr.', getenv('SERVER_ADDR'), $sysSection); $properties[] = array('User\'s Browser', getenv('HTTP_USER_AGENT'), $sysSection); return $properties; }
function get_infoOnPM($workspace) { $infoPM = array(); $Fields = getSysInfo(); $Fields['WORKSPACE_NAME'] = $workspace; if (defined("DB_HOST")) { G::LoadClass('net'); G::LoadClass('dbConnections'); $dbNetView = new NET(DB_HOST); $dbNetView->loginDbServer(DB_USER, DB_PASS); $dbConns = new dbConnections(''); $availdb = ''; foreach ($dbConns->getDbServicesAvailables() as $key => $val) { if ($availdb != '') { $availdb .= ', '; } $availdb .= $val['name']; } try { $sMySQLVersion = $dbNetView->getDbServerVersion('mysql'); } catch (Exception $oException) { $sMySQLVersion = 'Unknown'; } $Fields['DATABASE'] = $dbNetView->dbName(DB_ADAPTER) . ' (Version ' . $sMySQLVersion . ')'; $Fields['DATABASE_SERVER'] = DB_HOST; $Fields['DATABASE_NAME'] = DB_NAME; $Fields['AVAILABLE_DB'] = $availdb; } else { $Fields['DATABASE'] = "Not defined"; $Fields['DATABASE_SERVER'] = $info_db['adap']; $Fields['DATABASE_NAME'] = "Not defined"; $Fields['AVAILABLE_DB'] = "Not defined"; } $info_db = get_DirDB($workspace); $Fields['MYSQL_DATA_DIR'] = $info_db['datadir']; $Fields['PLUGINS_LIST'] = get_plugins(); $Fields['DB_ADAPTER'] = $info_db['DB_ADAPTER']; $Fields['DB_HOST'] = $info_db['DB_HOST']; $Fields['DB_NAME'] = $info_db['DB_NAME']; $Fields['DB_USER'] = $info_db['DB_USER']; $Fields['DB_PASS'] = $info_db['DB_PASS']; $Fields['DB_RBAC_HOST'] = $info_db['DB_RBAC_HOST']; $Fields['DB_RBAC_NAME'] = $info_db['DB_RBAC_NAME']; $Fields['DB_RBAC_USER'] = $info_db['DB_RBAC_USER']; $Fields['DB_RBAC_PASS'] = $info_db['DB_RBAC_PASS']; $Fields['DB_REPORT_HOST'] = $info_db['DB_REPORT_HOST']; $Fields['DB_REPORT_NAME'] = $info_db['DB_REPORT_NAME']; $Fields['DB_REPORT_USER'] = $info_db['DB_REPORT_USER']; $Fields['DB_REPORT_PASS'] = $info_db['DB_REPORT_PASS']; $infoPM = $Fields; return $infoPM; }
$ip = getenv('REMOTE_ADDR'); } } $redhat = ''; if (file_exists('/etc/redhat-release')) { $fnewsize = filesize('/etc/redhat-release'); $fp = fopen('/etc/redhat-release', 'r'); $redhat = trim(fread($fp, $fnewsize)); fclose($fp); } $redhat .= " (" . PHP_OS . ")"; if (defined("DB_HOST")) { G::LoadClass('net'); G::LoadClass('dbConnections'); $dbNetView = new NET(DB_HOST); $dbNetView->loginDbServer(DB_USER, DB_PASS); $dbConns = new dbConnections(''); $availdb = ''; foreach ($dbConns->getDbServicesAvailables() as $key => $val) { if ($availdb != '') { $availdb .= ', '; } $availdb .= $val['name']; } try { $sMySQLVersion = $dbNetView->getDbServerVersion(DB_ADAPTER); } catch (Exception $oException) { $sMySQLVersion = '?????'; } } $Fields['SYSTEM'] = $redhat;
/** * Test DataBase Connection * @var string $dataCon. Data for DataBase Connection * @var string $returnArray. Flag for url * * @author Brayan Pereyra (Cochalo) <*****@*****.**> * @copyright Colosa - Bolivia * * @return void */ public function testConnection($dataCon, $returnArray = false) { $resp = array(); $respTest = array(); $resp['resp'] = false; $dataCon = array_change_key_case($dataCon, CASE_UPPER); G::LoadClass( 'net' ); $Server = new \NET($dataCon['DBS_SERVER']); // STEP 1 : Resolving Host Name $respTest['0'] = array(); $respTest['0']['test'] = 'Resolving Host Name ' . $dataCon['DBS_SERVER']; if ($Server->getErrno() != 0) { if ($returnArray) { $respTest['0']['error'] = "Error Testing Connection: Resolving Host Name FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Resolving Host Name FAILED : " . $Server->error; return $resp; } } // STEP 2 : Checking port $respTest['1'] = array(); $respTest['1']['test'] = 'Checking port ' . $dataCon['DBS_PORT']; $Server->scannPort($dataCon['DBS_PORT']); if ($Server->getErrno() != 0) { if ($returnArray) { $respTest['1']['error'] = "Error Testing Connection: Checking port FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Checking port FAILED : " . $Server->error; return $resp; } } // STEP 3 : Trying to connect to host $respTest['2'] = array(); $respTest['2']['test'] = 'Trying to connect to host ' . $dataCon['DBS_SERVER'] . (($dataCon['DBS_PORT'] != '') ? ':'.$dataCon['DBS_PORT'] : ''); $Server->loginDbServer($dataCon['DBS_USERNAME'], $dataCon['DBS_PASSWORD']); $Server->setDataBase($dataCon['DBS_DATABASE_NAME'], $dataCon['DBS_PORT']); if ($Server->errno == 0) { $response = $Server->tryConnectServer($dataCon['DBS_TYPE']); if ($response->status != 'SUCCESS') { if ($returnArray) { $respTest['2']['error'] = "Error Testing Connection: Trying to connect to host FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Trying to connect to host FAILED : " . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['2']['error'] = "Error Testing Connection: Trying to connect to host FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Trying to connect to host FAILED : " . $Server->error; return $resp; } } // STEP 4 : Trying to open database $respTest['3'] = array(); $respTest['3']['test'] = 'Trying to open database [' . $dataCon['DBS_DATABASE_NAME'] . ']'; $Server->loginDbServer($dataCon['DBS_USERNAME'], $dataCon['DBS_PASSWORD']); $Server->setDataBase($dataCon['DBS_DATABASE_NAME'], $dataCon['DBS_PORT']); if ($Server->errno == 0) { $response = $Server->tryConnectServer($dataCon['DBS_TYPE']); if ($response->status == 'SUCCESS') { $response = $Server->tryOpenDataBase($dataCon['DBS_TYPE']); if ($response->status != 'SUCCESS') { if ($returnArray) { $respTest['3']['error'] = "Error Testing Connection: Trying to open database FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Trying to open database FAILED : " . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['3']['error'] = "Error Testing Connection: Trying to open database FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Trying to open database FAILED : " . $Server->error; return $resp; } } } else { if ($returnArray) { $respTest['3']['error'] = "Error Testing Connection: Trying to open database FAILED : " . $Server->error; } else { $resp['message'] = "Error Testing Connection: Trying to open database FAILED : " . $Server->error; return $resp; } } if ($returnArray) { return $respTest; } else { // CORRECT CONNECTION $resp['resp'] = true; return $resp; } }