|
|
|
|
@ -137,6 +137,9 @@ class Storage extends DAV implements ISharedStorage {
|
|
|
|
|
if (!$storage) {
|
|
|
|
|
$storage = $this;
|
|
|
|
|
}
|
|
|
|
|
if(!$this->remoteIsOwnCloud()) {
|
|
|
|
|
return parent::getScanner($path, $storage);
|
|
|
|
|
}
|
|
|
|
|
if (!isset($this->scanner)) {
|
|
|
|
|
$this->scanner = new Scanner($storage);
|
|
|
|
|
}
|
|
|
|
|
@ -239,6 +242,19 @@ class Storage extends DAV implements ISharedStorage {
|
|
|
|
|
return (is_object($data) and !empty($data->version));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Whether the remote is an ownCloud, used since some sharing features are not
|
|
|
|
|
* standardized. Let's use this to detect whether to use it.
|
|
|
|
|
*
|
|
|
|
|
* @return bool
|
|
|
|
|
*/
|
|
|
|
|
private function remoteIsOwnCloud() {
|
|
|
|
|
if(defined('PHPUNIT_RUN') || !$this->testRemoteUrl($this->getRemote() . '/status.php')) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @return mixed
|
|
|
|
|
* @throws ForbiddenException
|
|
|
|
|
@ -251,7 +267,7 @@ class Storage extends DAV implements ISharedStorage {
|
|
|
|
|
$password = $this->getPassword();
|
|
|
|
|
|
|
|
|
|
// If remote is not an ownCloud do not try to get any share info
|
|
|
|
|
if(!$this->testRemoteUrl($remote . '/status.php')) {
|
|
|
|
|
if(!$this->remoteIsOwnCloud()) {
|
|
|
|
|
return ['status' => 'unsupported'];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|