check php version, the encryption app needs php >= 5.3.3

remotes/origin/stable6
Björn Schießle 12 years ago
parent cb5811bcf5
commit adcee5b695
  1. 5
      apps/files_encryption/appinfo/app.php
  2. 8
      apps/files_encryption/hooks/hooks.php
  3. 16
      apps/files_encryption/lib/helper.php

@ -34,10 +34,9 @@ if (!OC_Config::getValue('maintenance', false)) {
$view = new OC_FilesystemView('/');
$sessionReady = false;
if(extension_loaded("openssl")) {
$sessionReady = OCA\Encryption\Helper::checkRequirements();
if($sessionReady) {
$session = new \OCA\Encryption\Session($view);
$sessionReady = true;
}
$user = \OCP\USER::getUser();

@ -39,10 +39,10 @@ class Hooks {
*/
public static function login($params) {
$l = new \OC_L10N('files_encryption');
//check if openssl is available
if(!extension_loaded("openssl") ) {
$error_msg = $l->t("PHP module OpenSSL is not installed.");
$hint = $l->t('Please ask your server administrator to install the module. For now the encryption app was disabled.');
//check if all requirements are met
if(!Helper::checkRequirements() ) {
$error_msg = $l->t("Missing requirements.");
$hint = $l->t('Please make sure that the OpenSSL module and PHP >0 5.3.3 is installed. For now the encryption app was disabled.');
\OC_App::disable('files_encryption');
\OCP\Util::writeLog('Encryption library', $error_msg . ' ' . $hint, \OCP\Util::ERROR);
\OCP\Template::printErrorPage($error_msg, $hint);

@ -208,4 +208,20 @@ class Helper {
header('Location: ' . $location . '?p=' . $post);
exit();
}
/**
* check requirements for encryptoin app.
* @return bool true if requirements are met
*/
public static function checkRequirements() {
$result = true;
//openssl extension needs to be loaded
$result &= extension_loaded("openssl");
// we need php >= 5.3.3
$result &= version_compare(phpversion(), '5.3.11', '>=');
return $result;
}
}
Loading…
Cancel
Save