aboutsummaryrefslogtreecommitdiff
path: root/engine/lib/install.php
diff options
context:
space:
mode:
Diffstat (limited to 'engine/lib/install.php')
-rw-r--r--engine/lib/install.php233
1 files changed, 112 insertions, 121 deletions
diff --git a/engine/lib/install.php b/engine/lib/install.php
index 03abede14..1b363b950 100644
--- a/engine/lib/install.php
+++ b/engine/lib/install.php
@@ -1,126 +1,117 @@
<?php
- /**
- * Elgg installation
- * Various functions to assist with installing and upgrading the system
- *
- * @package Elgg
- * @subpackage Core
-
- * @author Curverider Ltd
-
- * @link http://elgg.org/
- */
-
- /**
- * Check that the installed version of PHP meets the minimum requirements (currently 5.2 or greater).
- *
- * @return bool
- */
- function php_check_version()
- {
- /*
- if ( // TODO: Remove this when Redhat pulls its finger out
- (version_compare(phpversion(), '5.1.6', '>=')) &&
- (version_compare(phpversion(), '5.2.0', '<'))
- )
- register_error(elgg_echo('configurationwarning:phpversion'));
- */
-
- if (version_compare(phpversion(), '5.1.2', '>='))
- return true;
-
+/**
+ * Elgg installation
+ * Various functions to assist with installing and upgrading the system
+ *
+ * @package Elgg
+ * @subpackage Core
+ * @author Curverider Ltd
+ * @link http://elgg.org/
+ */
+
+/**
+ * Check that the installed version of PHP meets the minimum requirements (currently 5.2 or greater).
+ *
+ * @return bool
+ */
+function php_check_version() {
+ if (version_compare(phpversion(), '5.1.2', '>=')) {
+ return true;
+ }
+
+ return false;
+}
+
+/**
+ * Validate the platform Elgg is being installed on.
+ *
+ * @throws ConfigurationException if the validation fails.
+ * @return bool
+ */
+function validate_platform() {
+ // Get database version
+ if (!db_check_version()) {
+ throw new ConfigurationException(elgg_echo('ConfigurationException:BadDatabaseVersion'));
+ }
+
+ // Now check PHP
+ if (!php_check_version()) {
+ throw new ConfigurationException(elgg_echo('ConfigurationException:BadPHPVersion'));
+ }
+
+ // TODO: Consider checking for installed modules etc
+ return true;
+}
+
+/**
+ * Returns whether or not the database has been installed
+ *
+ * @return true|false Whether the database has been installed
+ */
+function is_db_installed() {
+ global $CONFIG;
+
+ if (isset($CONFIG->db_installed)) {
+ return $CONFIG->db_installed;
+ }
+
+ if ($dblink = get_db_link('read')) {
+ mysql_query("select name from {$CONFIG->dbprefix}datalists limit 1", $dblink);
+ if (mysql_errno($dblink) > 0) {
return false;
}
-
- /**
- * Validate the platform Elgg is being installed on.
- *
- * @throws ConfigurationException if the validation fails.
- * @return bool
- */
- function validate_platform()
- {
- // Get database version
- if (!db_check_version())
- throw new ConfigurationException(elgg_echo('ConfigurationException:BadDatabaseVersion'));
-
- // Now check PHP
- if (!php_check_version())
- throw new ConfigurationException(elgg_echo('ConfigurationException:BadPHPVersion'));
-
- // TODO: Consider checking for installed modules etc
-
- return true;
- }
+ } else {
+ return false;
+ }
- /**
- * Returns whether or not the database has been installed
- *
- * @return true|false Whether the database has been installed
- */
- function is_db_installed() {
-
- global $CONFIG;
-
- if (isset($CONFIG->db_installed)) {
- return $CONFIG->db_installed;
- }
-
- if ($dblink = get_db_link('read')) {
- mysql_query("select name from {$CONFIG->dbprefix}datalists limit 1",$dblink);
- if (mysql_errno($dblink) > 0) return false;
- } else return false;
-
- $CONFIG->db_installed = true; // Set flag if db is installed (if false then we want to check every time)
-
- return true;
-
- }
-
- /**
- * Returns whether or not other settings have been set
- *
- * @return true|false Whether or not the rest of the installation has been followed through with
- */
- function is_installed() {
-
- global $CONFIG;
- return datalist_get('installed');
-
- }
-
- /**
- * Copy and create a new settings.php from settings.example.php, substituting the variables in
- * $vars where appropriate.
- *
- * $vars is an associate array of $key => $value, where $key is the variable text you wish to substitute (eg
- * CONFIG_DBNAME will replace {{CONFIG_DBNAME}} in the settings file.
- *
- * @param array $vars The array of vars
- * @param string $in_file Optional input file (if not settings.example.php)
- * @return string The file containing substitutions.
- */
- function create_settings(array $vars, $in_file="engine/settings.example.php")
- {
- $file = file_get_contents($in_file);
-
- if (!$file) return false;
-
- foreach ($vars as $k => $v)
- $file = str_replace("{{".$k."}}", $v, $file);
-
- return $file;
- }
-
- /**
- * Initialisation for installation functions
- *
- */
- function install_init() {
- register_action("systemsettings/install",true);
- }
-
- register_elgg_event_handler("boot","system","install_init");
-
-?> \ No newline at end of file
+ // Set flag if db is installed (if false then we want to check every time)
+ $CONFIG->db_installed = true;
+
+ return true;
+}
+
+/**
+ * Returns whether or not other settings have been set
+ *
+ * @return true|false Whether or not the rest of the installation has been followed through with
+ */
+function is_installed() {
+ global $CONFIG;
+ return datalist_get('installed');
+}
+
+/**
+ * Copy and create a new settings.php from settings.example.php, substituting the variables in
+ * $vars where appropriate.
+ *
+ * $vars is an associate array of $key => $value, where $key is the variable text you wish to substitute (eg
+ * CONFIG_DBNAME will replace {{CONFIG_DBNAME}} in the settings file.
+ *
+ * @param array $vars The array of vars
+ * @param string $in_file Optional input file (if not settings.example.php)
+ * @return string The file containing substitutions.
+ */
+function create_settings(array $vars, $in_file="engine/settings.example.php") {
+ $file = file_get_contents($in_file);
+
+ if (!$file) {
+ return false;
+ }
+
+ foreach ($vars as $k => $v) {
+ $file = str_replace("{{".$k."}}", $v, $file);
+ }
+
+ return $file;
+}
+
+/**
+ * Initialisation for installation functions
+ *
+ */
+function install_init() {
+ register_action("systemsettings/install",true);
+}
+
+register_elgg_event_handler("boot","system","install_init"); \ No newline at end of file