.htaccess not visited'; if ($allow_overwrite == "") $allow_overwrite = 'Off'; $tmz = @date_default_timezone_get(); //Check if we can access to the configuration file $pathConfigFile = realpath(join(DIRECTORY_SEPARATOR, array('application', 'config', $env, 'database.php'))); $configFileExists = file_exists($pathConfigFile); $dbErrorMessages = array(); $dbConn = NULL; $rowsSchema = NULL; $dbConnError = FALSE; $dbQueryError = FALSE; $dbDbError = FALSE; $dbProcsError = FALSE; if ($configFileExists) { include $pathConfigFile; //Try to connect to database try { $dbConn = new PDO($db[$active_group]['dsn'], $db[$active_group]['username'], $db[$active_group]['password']); } catch(PDOException $ex) { $dbConnError = TRUE; array_push($dbErrorMessages, $ex->getMessage()); } if (!$dbConnError) { //Examine organization structure try { $resultOrg = $dbConn->query("SELECT id FROM organization WHERE parent_id=-1"); } catch(PDOException $ex) { $dbQueryError = TRUE; array_push($dbErrorMessages, $ex->getMessage()); } if (!$dbQueryError) { $rowOrg = $resultOrg->fetch(PDO::FETCH_ASSOC); //Try to use a procedure in order to check the install script //We don't know if the user has access to information schema //So we try to call one of the procedures with a parameter returning a small set of results try { $dbConn->query("SELECT GetParentIDByID(0) AS result"); } catch(PDOException $ex) { $dbProcsError = TRUE; array_push($dbErrorMessages, $ex->getMessage()); } $sql = "SELECT TABLE_NAME, MD5(GROUP_CONCAT(CONCAT(TABLE_NAME, COLUMN_NAME, COALESCE(COLUMN_DEFAULT, ''), IS_NULLABLE, COLUMN_TYPE, COALESCE(COLLATION_NAME, '')) SEPARATOR ', ')) AS signature" . " FROM information_schema.columns" . " WHERE table_schema = DATABASE()" . " GROUP BY TABLE_NAME" . " ORDER BY TABLE_NAME"; try { $stmt = $dbConn->query($sql); } catch(PDOException $ex) { $dbQueryError = TRUE; array_push($dbErrorMessages, $ex->getMessage()); } $rowsSchema = $stmt->fetchAll(PDO::FETCH_ASSOC); } } } ?> Jorani Requirements

Jorani Requirements

Web Server

= 0) {?>
Requirement Value / Description
 Environment
 Server software
 Allow overwrite (.htaccess files) (used for cool URLs). Ignore this message if you are running something else than Apache.
 Apache module rewrite (mod_rewrite) (used for cool URLs). Ignore this message if you are running something else than Apache.
 Apache module gzip (mod_gzip) (turning it On would improve response times).
 PHP 5.6.0+
 Old PHP version Ignore this message if you are running an exotic PHP runtime
 HHVM
 PHP
 Timezone defined
 Timezone undefined If error, please check date.timezone into PHP.ini.
 mb_strimwidth function exists
 mb_strimwidth function doesn't exist PHP must be compiled with multibyte string support.
 json_encode function exists
 json_encode function doesn't exist PHP must be compiled with json support.
 Jorani can write into logs folder
 Jorani can't write into logs folder The folder application/logs/ must be writable.
 Jorani can write files
 Jorani can't write files The folder local/upload/leaves/ must be writable.
 pdo_mysql is LOADED
 PDO/mysql IS NOT LOADED. PDO/mysql is the recommended database driver.
 OPcache is LOADED
 OPcache IS NOT LOADED. Please consider activating OPcache for the best performances.
 openssl is LOADED
 openssl IS NOT LOADED. PHP Extension openssl is required if you use PHP7.1.
 curl is LOADED
 curl IS NOT LOADED. PHP Extension curl is needed for OAuth2 authentication.
 ldap is LOADED
 ldap IS NOT LOADED PHP Extension ldap is optional and allows you to use LDAP for authentication.
 zip is LOADED
 zip IS NOT LOADED PHP Extension zip allows you to use the export to Excel feature.
 xml is LOADED
 xml IS NOT LOADED PHP Extension xml allows you to use the export to Excel feature (and SAML/SSO).
 gd is LOADED
 gd IS NOT LOADED PHP Extension gd2 allows you to use the export to Excel feature.
 date is LOADED
 date IS NOT LOADED PHP Extension zlib allows you to use the Authentication by SAML feature (SSO).
 zlib is LOADED
 zlib IS NOT LOADED PHP Extension zlib allows you to use the Authentication by SAML feature (SSO).

Additional configuration

You can test the following settings, but you need to edit the corresponding PHP scripts :

Database

Requirement Value / Description
 Configuration fileFound
 Configuration fileNot Found
 Database connectionOK
 Database connectionError
 Database queryOK
 Database queryError
 Database proceduresOK
 Database proceduresError. Please check if your hosting company allows custom procedures (e.g. Amazon RDS).
 Organization structureNo root entity was found.
 Organization structureThe root entity must be equal to zero. To fix a problem of backup/restore, please execute this query:
UPDATE `organization` SET `organization`.`id` = 0 WHERE `parent_id` = -1
 Organization structureOK
 Error

Schema

Table Signature
 
Impossible to query database