}
}
- if (version_compare(PHP_VERSION, '5.3.2', '<')) {
- $this->warning('Require PHP version 5.3.2 or greater.');
+ if (version_compare(PHP_VERSION, '5.5.0', '<')) {
+ $this->warning('Require PHP version 5.5.0 or greater.');
$pass = false;
}
}
// 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: <code>%s</code>', $fileSubdir, $fileFullPath),
sprintf('On your server, try this command: <code>chmod a+w %s</code>', $fileFullPath));
$pass = false;
}
}
- 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());
}
$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;
}