diff --git a/disk/Onedrive.php b/disk/Onedrive.php index 8972d772ce7faad585e3cf7a27fba430750313df..2f59e5c10b37213db598986c53a2c70d0a5d80fc 100644 --- a/disk/Onedrive.php +++ b/disk/Onedrive.php @@ -342,7 +342,8 @@ class Onedrive { $oldname = path_format($file['path'] . '/' . $oldname); $data = '{"name":"' . $newname . '"}'; //echo $oldname; - $result = $this->MSAPI('PATCH', $oldname, $data); + if ($file['id']) $result = $this->MSAPI('PATCH', "/items/" . $file['id'], $data); + else $result = $this->MSAPI('PATCH', $oldname, $data); return output(json_encode($this->files_format(json_decode($result['body'], true))), $result['stat']); } public function Delete($file) { @@ -946,6 +947,9 @@ class Onedrive { $url = $this->api_url . $this->ext_api_url; if ($path=='' or $path=='/') { $url .= '/'; + } elseif (substr($path, 0, 6)=="/items") { + $url = substr($url, 0, -5); + $url .= $path; } else { $url .= ':' . $path; if (substr($url,-1)=='/') $url=substr($url,0,-1);