* Filemanager/WebDAV: fix mounting WebDAV URL as webdavs://user:pass@host/path

This commit is contained in:
Ralf Becker 2021-09-10 14:08:42 +02:00
parent e20cea757a
commit df946f7c80
4 changed files with 217 additions and 663 deletions

View File

@ -93,7 +93,7 @@
"egroupware/status": "self.version",
"egroupware/swoolepush": "self.version",
"egroupware/tracker": "self.version",
"egroupware/webdav": "dev-master",
"egroupware/webdav": "^v0.3.1",
"egroupware/z-push-dev": "^2.5",
"giggsey/libphonenumber-for-php": "^8.12",
"npm-asset/as-jqplot": "1.0.*",

871
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -484,11 +484,6 @@ function load_wrapper($url)
{
switch($scheme)
{
case 'webdav':
case 'webdavs':
require_once('HTTP/WebDAV/Client.php');
break;
default:
if (!isset($GLOBALS['egw']) && !in_array($scheme,array('smb','imap')) &&
($user = parse_url($url,PHP_URL_USER)) && ($pass = parse_url($url,PHP_URL_PASS)))

View File

@ -261,7 +261,7 @@ class filemanager_admin extends filemanager_ui
{
$content['mounts'][$n++] = array(
'path' => $path,
'url' => $url,
'url' => preg_replace('#://([^:@/]+):([^@/]+)@#', '://$1:****@', $url),
);
$readonlys["disable[$path]"] = !$this->versioning || !Vfs::$is_root ||
Vfs::parse_url($url,PHP_URL_SCHEME) != $this->versioning;