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.php34
1 files changed, 34 insertions, 0 deletions
diff --git a/engine/lib/install.php b/engine/lib/install.php
index ca615c473..c0ed7ab91 100644
--- a/engine/lib/install.php
+++ b/engine/lib/install.php
@@ -11,6 +11,40 @@
* @copyright Curverider Ltd 2008
* @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.2.0', '>='))
+ 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