X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FCore%2FInstaller.php;h=b6090bddb60f667e2be9919036aad4d5eb455226;hb=11e39da6ccd4ff86be95de6af9e6f84ca67996d9;hp=6ea3d553cf8a1bf6a96e415edef41273d4aed332;hpb=3282ce53894b624893ee2989747a59866ab4b137;p=friendica.git diff --git a/src/Core/Installer.php b/src/Core/Installer.php index 6ea3d553cf..b6090bddb6 100644 --- a/src/Core/Installer.php +++ b/src/Core/Installer.php @@ -6,11 +6,12 @@ namespace Friendica\Core; use DOMDocument; use Exception; -use Friendica\Core\Renderer; +use Friendica\Core\Config\Cache\IConfigCache; use Friendica\Database\DBA; use Friendica\Database\DBStructure; use Friendica\Object\Image; use Friendica\Util\Network; +use Friendica\Util\Profiler; use Friendica\Util\Strings; /** @@ -169,12 +170,14 @@ class Installer /*** * Installs the DB-Scheme for Friendica * + * @param string $basePath The base path of this application + * * @return bool true if the installation was successful, otherwise false * @throws Exception */ - public function installDatabase() + public function installDatabase($basePath) { - $result = DBStructure::update(false, true, true); + $result = DBStructure::update($basePath, false, true, true); if ($result) { $txt = L10n::t('You may need to import the file "database.sql" manually using phpmyadmin or mysql.') . EOL; @@ -225,8 +228,6 @@ class Installer */ public function checkPHP($phppath = null, $required = false) { - $passed = false; - $passed2 = false; $passed3 = false; if (!isset($phppath)) { @@ -357,6 +358,7 @@ class Installer * - mb_string * - XML * - iconv + * - fileinfo * - POSIX * * @return bool false if something required failed @@ -395,7 +397,7 @@ class Installer $help = ''; $status = true; try { - $xml = new DOMDocument(); + new DOMDocument(); } catch (Exception $e) { $help = L10n::t('Error, XML PHP module required but not installed.'); $status = false; @@ -452,6 +454,13 @@ class Installer ); $returnVal = $returnVal ? $status : false; + $status = $this->checkFunction('finfo_open', + L10n::t('File Information PHP module'), + L10n::t('Error: File Information PHP module required but not installed.'), + true + ); + $returnVal = $returnVal ? $status : false; + return $returnVal; } @@ -582,17 +591,20 @@ class Installer /** * Checking the Database connection and if it is available for the current installation * - * @param string $dbhost Hostname/IP of the Friendica Database - * @param string $dbuser Username of the Database connection credentials - * @param string $dbpass Password of the Database connection credentials - * @param string $dbdata Name of the Database + * @param string $basePath The basepath of this call + * @param IConfigCache $configCache The configuration cache + * @param Profiler $profiler The profiler of this app + * @param string $dbhost Hostname/IP of the Friendica Database + * @param string $dbuser Username of the Database connection credentials + * @param string $dbpass Password of the Database connection credentials + * @param string $dbdata Name of the Database * * @return bool true if the check was successful, otherwise false * @throws Exception */ - public function checkDB($dbhost, $dbuser, $dbpass, $dbdata) + public function checkDB($basePath, IConfigCache $configCache, Profiler $profiler, $dbhost, $dbuser, $dbpass, $dbdata) { - if (!DBA::connect($dbhost, $dbuser, $dbpass, $dbdata)) { + if (!DBA::connect($basePath, $configCache, $profiler, $dbhost, $dbuser, $dbpass, $dbdata)) { $this->addCheck(L10n::t('Could not connect to database.'), false, true, ''); return false;