global $installType;
$installType = strtolower($_SESSION['civicrm_install_type']);
-if (!in_array($installType, array(
- 'drupal', 'wordpress'))) {
+if (!in_array($installType, array('drupal', 'wordpress'))) {
$errorTitle = "Oops! Unsupported installation mode";
$errorMsg = "";
errorDisplayPage($errorTitle, $errorMsg);
$pattern = '/' . preg_quote(CIVICRM_DIRECTORY_SEPARATOR . 'modules', CIVICRM_DIRECTORY_SEPARATOR) . '/';
if (!preg_match($pattern,
- str_replace("\\", "/", $_SERVER['SCRIPT_FILENAME'])
- )) {
+ str_replace("\\", "/", $_SERVER['SCRIPT_FILENAME'])
+ )
+ ) {
$errorTitle = "Oops! Please Correct Your Install Location";
$errorMsg = "Please untar (uncompress) your downloaded copy of CiviCRM in the <strong>" . implode(CIVICRM_DIRECTORY_SEPARATOR, array(
- 'sites', 'all', 'modules')) . "</strong> directory below your Drupal root directory. Refer to the online " . $docLink . " for more information.";
+ 'sites',
+ 'all',
+ 'modules',
+ )) . "</strong> directory below your Drupal root directory. Refer to the online " . $docLink . " for more information.";
errorDisplayPage($errorTitle, $errorMsg);
}
}
if ($installType == 'drupal') {
$errorMsg = "CiviCRM has already been installed in this Drupal site. <ul><li>To <strong>start over</strong>, you must delete or rename the existing CiviCRM settings file - <strong>civicrm.settings.php</strong> - from <strong>" . implode(CIVICRM_DIRECTORY_SEPARATOR, array(
- '[your Drupal root directory]', 'sites', $siteDir)) . "</strong>.</li><li>To <strong>upgrade an existing installation</strong>, refer to the online " . $docLink . ".</li></ul>";
+ '[your Drupal root directory]',
+ 'sites',
+ $siteDir,
+ )) . "</strong>.</li><li>To <strong>upgrade an existing installation</strong>, refer to the online " . $docLink . ".</li></ul>";
}
elseif ($installType == 'wordpress') {
$errorMsg = "CiviCRM has already been installed in this WordPress site. <ul><li>To <strong>start over</strong>, you must delete or rename the existing CiviCRM settings file - <strong>civicrm.settings.php</strong> - from <strong>" . $cmsPath . "</strong>.</li><li>To <strong>upgrade an existing installation</strong>, refer to the online " . $docLink . ".</li></ul>";
const MINIMUM_THREAD_STACK = 192;
/**
- * Just check that the database configuration is okay
+ * Just check that the database configuration is okay.
+ * @param $databaseConfig
+ * @param $dbName
*/
- function checkdatabase($databaseConfig, $dbName) {
+ public function checkdatabase($databaseConfig, $dbName) {
if ($this->requireFunction('mysql_connect',
- array(
- "PHP Configuration",
- "MySQL support",
- "MySQL support not included in PHP.",
- )
- )) {
+ array(
+ "PHP Configuration",
+ "MySQL support",
+ "MySQL support not included in PHP.",
+ )
+ )
+ ) {
$this->requireMySQLServer($databaseConfig['server'],
array(
"MySQL $dbName Configuration",
)
);
if ($this->requireMysqlConnection($databaseConfig['server'],
- $databaseConfig['username'],
- $databaseConfig['password'],
- array(
- "MySQL $dbName Configuration",
- "Are the access credentials correct",
- "That username/password doesn't work",
- )
- )) {
+ $databaseConfig['username'],
+ $databaseConfig['password'],
+ array(
+ "MySQL $dbName Configuration",
+ "Are the access credentials correct",
+ "That username/password doesn't work",
+ )
+ )
+ ) {
@$this->requireMySQLVersion("5.1",
array(
"MySQL $dbName Configuration",
array(
"MySQL $dbName Configuration",
"Does MySQL thread_stack meet minimum (" . self::MINIMUM_THREAD_STACK . "k)",
- "", // "The MySQL thread_stack does not meet minimum " . CRM_Upgrade_Form::MINIMUM_THREAD_STACK . "k. Please update thread_stack in my.cnf.",
+ "",
+ // "The MySQL thread_stack does not meet minimum " . CRM_Upgrade_Form::MINIMUM_THREAD_STACK . "k. Please update thread_stack in my.cnf.",
)
);
}
}
/**
- * Check everything except the database
+ * Check everything except the database.
*/
- function check() {
+ public function check() {
global $crmPath, $installType;
$this->errors = NULL;
- $this->requirePHPVersion('5.3.3', array("PHP Configuration", "PHP5 installed", NULL, "PHP version " . phpversion()));
+ $this->requirePHPVersion('5.3.3', array(
+ "PHP Configuration",
+ "PHP5 installed",
+ NULL,
+ "PHP version " . phpversion(),
+ ));
// Check that we can identify the root folder successfully
$this->requireFile($crmPath . CIVICRM_DIRECTORY_SEPARATOR . 'README.txt',
foreach ($requiredDirectories as $dir) {
$this->requireFile($crmPath . CIVICRM_DIRECTORY_SEPARATOR . $dir,
array(
- "File permissions", "$dir folder exists", "There is no $dir folder"), TRUE
+ "File permissions",
+ "$dir folder exists",
+ "There is no $dir folder",
+ ), TRUE
);
}
}
// Check for $_SERVER configuration
- $this->requireServerVariables(array('SCRIPT_NAME', 'HTTP_HOST', 'SCRIPT_FILENAME'), array("Webserver config", "Recognised webserver", "You seem to be using an unsupported webserver. The server variables SCRIPT_NAME, HTTP_HOST, SCRIPT_FILENAME need to be set."));
+ $this->requireServerVariables(array('SCRIPT_NAME', 'HTTP_HOST', 'SCRIPT_FILENAME'), array(
+ "Webserver config",
+ "Recognised webserver",
+ "You seem to be using an unsupported webserver. The server variables SCRIPT_NAME, HTTP_HOST, SCRIPT_FILENAME need to be set.",
+ ));
// Check for MySQL support
$this->requireFunction('mysql_connect',
// Check for xcache_isset and emit warning if exists
$this->checkXCache(array(
"PHP Configuration",
- "XCache compatibility",
- "XCache is installed and there are known compatibility issues between XCache and CiviCRM. Consider using an alternative PHP caching mechanism or disable PHP caching altogether.",
- ));
+ "XCache compatibility",
+ "XCache is installed and there are known compatibility issues between XCache and CiviCRM. Consider using an alternative PHP caching mechanism or disable PHP caching altogether.",
+ ));
// Check memory allocation
$this->requireMemory(32 * 1024 * 1024,
* @param $recommended
* @param $testDetails
*/
- function requireMemory($min, $recommended, $testDetails) {
+ public function requireMemory($min, $recommended, $testDetails) {
$this->testing($testDetails);
$mem = $this->getPHPMemory();
/**
* @return float
*/
- function getPHPMemory() {
+ public function getPHPMemory() {
$memString = ini_get("memory_limit");
switch (strtolower(substr($memString, -1))) {
}
}
- function listErrors() {
+ public function listErrors() {
if ($this->errors) {
echo "<p>The following problems are preventing me from installing CiviCRM:</p>";
foreach ($this->errors as $error) {
/**
* @param null $section
*/
- function showTable($section = NULL) {
+ public function showTable($section = NULL) {
if ($section) {
$tests = $this->tests[$section];
echo "<table class=\"testResults\" width=\"100%\">";
*
* @return bool
*/
- function requireFunction($funcName, $testDetails) {
+ public function requireFunction($funcName, $testDetails) {
$this->testing($testDetails);
if (!function_exists($funcName)) {
/**
* @param $testDetails
*/
- function checkXCache($testDetails) {
+ public function checkXCache($testDetails) {
if (function_exists('xcache_isset') &&
ini_get('xcache.size') > 0
) {
* @param $testDetails
* @param null $maxVersion
*/
- function requirePHPVersion($minVersion, $testDetails, $maxVersion = NULL) {
+ public function requirePHPVersion($minVersion, $testDetails, $maxVersion = NULL) {
$this->testing($testDetails);
- $phpVersion = phpversion();
+ $phpVersion = phpversion();
$aboveMinVersion = version_compare($phpVersion, $minVersion) >= 0;
$belowMaxVersion = $maxVersion ? version_compare($phpVersion, $maxVersion) < 0 : TRUE;
* @param $testDetails
* @param bool $absolute
*/
- function requireFile($filename, $testDetails, $absolute = FALSE) {
+ public function requireFile($filename, $testDetails, $absolute = FALSE) {
$this->testing($testDetails);
if (!$absolute) {
$filename = $this->getBaseDir() . $filename;
/**
* @param $testDetails
*/
- function requireNoPathSeparator($testDetails) {
+ public function requireNoPathSeparator($testDetails) {
$this->testing($testDetails);
if (substr_count($this->getBaseDir(), PATH_SEPARATOR)) {
$this->error($testDetails);
* @param string $filename
* @param $testDetails
*/
- function requireNoFile($filename, $testDetails) {
+ public function requireNoFile($filename, $testDetails) {
$this->testing($testDetails);
$filename = $this->getBaseDir() . $filename;
if (file_exists($filename)) {
* @param string $filename
* @param $testDetails
*/
- function moveFileOutOfTheWay($filename, $testDetails) {
+ public function moveFileOutOfTheWay($filename, $testDetails) {
$this->testing($testDetails);
$filename = $this->getBaseDir() . $filename;
if (file_exists($filename)) {
* @param $testDetails
* @param bool $absolute
*/
- function requireWriteable($filename, $testDetails, $absolute = FALSE) {
+ public function requireWriteable($filename, $testDetails, $absolute = FALSE) {
$this->testing($testDetails);
if (!$absolute) {
$filename = $this->getBaseDir() . $filename;
* @param string $moduleName
* @param $testDetails
*/
- function requireApacheModule($moduleName, $testDetails) {
+ public function requireApacheModule($moduleName, $testDetails) {
$this->testing($testDetails);
if (!in_array($moduleName, apache_get_modules())) {
$this->error($testDetails);
* @param $password
* @param $testDetails
*/
- function requireMysqlConnection($server, $username, $password, $testDetails) {
+ public function requireMysqlConnection($server, $username, $password, $testDetails) {
$this->testing($testDetails);
$conn = @mysql_connect($server, $username, $password);
* @param $server
* @param $testDetails
*/
- function requireMySQLServer($server, $testDetails) {
+ public function requireMySQLServer($server, $testDetails) {
$this->testing($testDetails);
$conn = @mysql_connect($server, NULL, NULL);
* @param $version
* @param $testDetails
*/
- function requireMySQLVersion($version, $testDetails) {
+ public function requireMySQLVersion($version, $testDetails) {
$this->testing($testDetails);
if (!mysql_get_server_info()) {
* @param $database
* @param $testDetails
*/
- function requireMySQLInnoDB($server, $username, $password, $database, $testDetails) {
+ public function requireMySQLInnoDB($server, $username, $password, $database, $testDetails) {
$this->testing($testDetails);
$conn = @mysql_connect($server, $username, $password);
if (!$conn) {
* @param $database
* @param $testDetails
*/
- function requireMySQLTempTables($server, $username, $password, $database, $testDetails) {
+ public function requireMySQLTempTables($server, $username, $password, $database, $testDetails) {
$this->testing($testDetails);
$conn = @mysql_connect($server, $username, $password);
if (!$conn) {
* @param $database
* @param $testDetails
*/
- function requireMySQLTrigger($server, $username, $password, $database, $testDetails) {
+ public function requireMySQLTrigger($server, $username, $password, $database, $testDetails) {
$this->testing($testDetails);
$conn = @mysql_connect($server, $username, $password);
if (!$conn) {
* @param $database
* @param $testDetails
*/
- function requireMySQLLockTables($server, $username, $password, $database, $testDetails) {
+ public function requireMySQLLockTables($server, $username, $password, $database, $testDetails) {
$this->testing($testDetails);
$conn = @mysql_connect($server, $username, $password);
if (!$conn) {
}
$result = mysql_query('DROP TEMPORARY TABLE civicrm_install_temp_table_test');
- return;
}
/**
* @param $password
* @param $testDetails
*/
- function requireMySQLAutoIncrementIncrementOne($server, $username, $password, $testDetails) {
+ public function requireMySQLAutoIncrementIncrementOne($server, $username, $password, $testDetails) {
$this->testing($testDetails);
$conn = @mysql_connect($server, $username, $password);
if (!$conn) {
* @param $minValueKB
* @param $testDetails
*/
- function requireMySQLThreadStack($server, $username, $password, $database, $minValueKB, $testDetails) {
+ public function requireMySQLThreadStack($server, $username, $password, $database, $minValueKB, $testDetails) {
$this->testing($testDetails);
$conn = @mysql_connect($server, $username, $password);
if (!$conn) {
* @param $testDetails
* @param bool $onlyRequire
*/
- function requireDatabaseOrCreatePermissions($server,
+ public function requireDatabaseOrCreatePermissions(
+ $server,
$username,
$password,
$database,
* @param $varNames
* @param $errorMessage
*/
- function requireServerVariables($varNames, $errorMessage) {
+ public function requireServerVariables($varNames, $errorMessage) {
//$this->testing($testDetails);
foreach ($varNames as $varName) {
if (!$_SERVER[$varName]) {
*
* @return bool
*/
- function isRunningApache($testDetails) {
+ public function isRunningApache($testDetails) {
$this->testing($testDetails);
if (function_exists('apache_get_modules') || stristr($_SERVER['SERVER_SIGNATURE'], 'Apache')) {
return TRUE;
/**
* @return string
*/
- function getBaseDir() {
+ public function getBaseDir() {
return dirname($_SERVER['SCRIPT_FILENAME']) . CIVICRM_DIRECTORY_SEPARATOR;
}
/**
* @param $testDetails
*/
- function testing($testDetails) {
+ public function testing($testDetails) {
if (!$testDetails) {
return;
}
/**
* @param $testDetails
*/
- function error($testDetails) {
+ public function error($testDetails) {
$section = $testDetails[0];
$test = $testDetails[1];
/**
* @param $testDetails
*/
- function warning($testDetails) {
+ public function warning($testDetails) {
$section = $testDetails[0];
$test = $testDetails[1];
/**
* @return int
*/
- function hasErrors() {
- return sizeof($this->errors);
+ public function hasErrors() {
+ return count($this->errors);
}
/**
* @return int
*/
- function hasWarnings() {
- return sizeof($this->warnings);
+ public function hasWarnings() {
+ return count($this->warnings);
}
+
}
/**
* @param $password
* @param $database
*/
- function createDatabaseIfNotExists($server, $username, $password, $database) {
+ public function createDatabaseIfNotExists($server, $username, $password, $database) {
$conn = @mysql_connect($server, $username, $password);
if (@mysql_select_db($database)) {
return;
}
- if (@mysql_query("CREATE DATABASE $database")) {}
+ if (@mysql_query("CREATE DATABASE $database")) {
+ }
else {
$errorTitle = "Oops! Could not create Database $database";
$errorMsg = "We encountered an error when attempting to create the database. Please check your mysql server permissions and the database name and try again.";
*
* @return mixed
*/
- function install($config) {
+ public function install($config) {
global $installDirPath;
// create database if does not exists
return $this->errors;
}
+
}
function civicrm_install_set_drupal_perms() {
foreach (array_diff($perms, $allPerms) as $perm) {
watchdog('civicrm',
'Cannot grant the %perm permission because it does not yet exist.',
- array(
- '%perm' => $perm), WATCHDOG_ERROR
+ array('%perm' => $perm),
+ WATCHDOG_ERROR
);
}
$perms = array_intersect($perms, $allPerms);
for ($j = count($server); $j > 0; $j--) {
$dir = implode('.', array_slice($server, -$j)) . implode('.', array_slice($uri, 0, $i));
if (file_exists($cmsPath . CIVICRM_DIRECTORY_SEPARATOR .
- 'sites' . CIVICRM_DIRECTORY_SEPARATOR . $dir
- )) {
+ 'sites' . CIVICRM_DIRECTORY_SEPARATOR . $dir
+ )) {
$siteDir = $dir;
return $siteDir;
}