*/
public function updateFile(Attachment $attachment, array $requestData): Attachment
{
- $attachment->name = $requestData['name'];
- $link = trim($requestData['link'] ?? '');
+ if (isset($requestData['name'])) {
+ $attachment->name = $requestData['name'];
+ }
+ $link = trim($requestData['link'] ?? '');
if (!empty($link)) {
if (!$attachment->external) {
$this->deleteFileInStorage($attachment);
$attachment->external = true;
$attachment->extension = '';
}
- $attachment->path = $requestData['link'];
+ $attachment->path = $link;
}
$attachment->save();
* Delete a file from the filesystem it sits on.
* Cleans any empty leftover folders.
*/
- protected function deleteFileInStorage(Attachment $attachment): void
+ public function deleteFileInStorage(Attachment $attachment): void
{
$this->storage->delete($attachment->path);
}