X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Finstaller.php;h=ff7677dc7d86ba03ef06499d1946c7c5adddd5c0;hb=3326b7b850f538f0e3c2c7969c5e566e2a374ffb;hp=738eb80472d46a4bced35a4fb234ee3395a9853e;hpb=4ea396f8718648ef6b900ea2aa8a7cad9f14d721;p=quix0rs-gnu-social.git
diff --git a/lib/installer.php b/lib/installer.php
index 738eb80472..ff7677dc7d 100644
--- a/lib/installer.php
+++ b/lib/installer.php
@@ -133,10 +133,16 @@ abstract class Installer
}
// Check the subdirs used for file uploads
- $fileSubdirs = array('avatar', 'background', 'file');
+ $fileSubdirs = array('avatar', 'file');
foreach ($fileSubdirs as $fileSubdir) {
- $fileFullPath = INSTALLDIR."/$fileSubdir/";
- if (!is_writable($fileFullPath)) {
+ $fileFullPath = INSTALLDIR."/$fileSubdir";
+ if (!file_exists($fileFullPath)) {
+ $pass = $pass && mkdir($fileFullPath);
+ } elseif (!is_dir($fileFullPath)) {
+ $this->warning(sprintf('GNU social expected a directory but found something else on this path: %s', $fileFullPath),
+ 'Either make sure it goes to a directory or remove it and a directory will be created.');
+ $pass = false;
+ } elseif (!is_writable($fileFullPath)) {
$this->warning(sprintf('Cannot write to %s directory: %s
', $fileSubdir, $fileFullPath),
sprintf('On your server, try this command: chmod a+w %s
', $fileFullPath));
$pass = false;
@@ -293,7 +299,10 @@ abstract class Installer
}
}
- if (!$conn instanceof DB_common) {
+ if (!is_object($conn)) {
+ // No object at all
+ throw new Exception('Fatal error: conn is no object.');
+ } elseif (!$conn instanceof DB_common) {
// Is not the right instance
throw new Exception('Cannot connect to database: ' . $conn->getMessage());
}
@@ -518,7 +527,7 @@ abstract class Installer
$data['email'] = $this->adminEmail;
}
try {
- $user = User::register($data);
+ $user = User::register($data, true); // true to skip email sending verification
} catch (Exception $e) {
return false;
}