diff --git a/lib/api/folder_list.php b/lib/api/folder_list.php --- a/lib/api/folder_list.php +++ b/lib/api/folder_list.php @@ -67,6 +67,8 @@ // get folders from default driver if (!$this->rc->config->get('fileapi_backend_storage_disabled')) { $folders = $this->folder_list($backend, $params); + } else { + $folders = array(); } } diff --git a/lib/drivers/seafile/seafile_api.php b/lib/drivers/seafile/seafile_api.php --- a/lib/drivers/seafile/seafile_api.php +++ b/lib/drivers/seafile/seafile_api.php @@ -555,7 +555,8 @@ } // first get upload link - $result = $this->request('GET', "repos/$repo_id/upload-link"); + $parent_dir = '/'; + $result = $this->request('GET', "repos/$repo_id/upload-link/?p=$parent_dir"); if ($this->is_error() || empty($result)) { return false; @@ -563,13 +564,14 @@ $path = explode('/', $filename); $filename = array_pop($path); - $dir = '/' . ltrim(implode('/', $path), '/'); + $dir = ltrim(implode('/', $path), '/'); $file['name'] = $filename; // then update file $result = $this->request('POST', $result, null, array( - 'parent_dir' => $dir + 'parent_dir' => $parent_dir, + 'relative_path' => $dir ), array('file' => $file) );