diff options
author | Gerardo Zamudio <gerardozamudio@users.noreply.github.com> | 2016-02-24 23:48:50 -0600 |
---|---|---|
committer | Gerardo Zamudio <gerardozamudio@users.noreply.github.com> | 2016-02-24 23:48:50 -0600 |
commit | e4de6b3898b64b26d29aff31f21df5fda8055686 (patch) | |
tree | 575f8a65440f291d70a070d168eafca8c82a6459 /app/check_setup.php | |
parent | d9ffbea174ea6524d0a22f8375ca8b3aa04a3c96 (diff) | |
parent | a6540bc604c837d92c9368540c145606723e97f7 (diff) |
Merge pull request #1 from fguillot/master
Update from upstream
Diffstat (limited to 'app/check_setup.php')
-rw-r--r-- | app/check_setup.php | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/app/check_setup.php b/app/check_setup.php index be52a718..eec63ed8 100644 --- a/app/check_setup.php +++ b/app/check_setup.php @@ -19,14 +19,29 @@ if (version_compare(PHP_VERSION, '5.4.0', '<')) { } } -// Check extension: PDO -if (! extension_loaded('pdo_sqlite') && ! extension_loaded('pdo_mysql') && ! extension_loaded('pdo_pgsql')) { - throw new Exception('PHP extension required: pdo_sqlite or pdo_mysql or pdo_pgsql'); +// Check data folder if sqlite +if (DB_DRIVER === 'sqlite' && ! is_writable('data')) { + throw new Exception('The directory "data" must be writeable by your web server user'); } -// Check extension: mbstring -if (! extension_loaded('mbstring')) { - throw new Exception('PHP extension required: mbstring'); +// Check PDO extensions +if (DB_DRIVER === 'sqlite' && ! extension_loaded('pdo_sqlite')) { + throw new Exception('PHP extension required: "pdo_sqlite"'); +} + +if (DB_DRIVER === 'mysql' && ! extension_loaded('pdo_mysql')) { + throw new Exception('PHP extension required: "pdo_mysql"'); +} + +if (DB_DRIVER === 'postgres' && ! extension_loaded('pdo_pgsql')) { + throw new Exception('PHP extension required: "pdo_pgsql"'); +} + +// Check other extensions +foreach (array('gd', 'mbstring', 'hash', 'openssl', 'json', 'hash', 'ctype', 'filter', 'session') as $ext) { + if (! extension_loaded($ext)) { + throw new Exception('PHP extension required: "'.$ext.'"'); + } } // Fix wrong value for arg_separator.output, used by the function http_build_query() |