From 8cc13031e95852e6d2999d963ed7844a7a491540 Mon Sep 17 00:00:00 2001
From: Vincent Petry <pvince81@owncloud.com>
Date: Mon, 12 Jan 2015 14:01:40 +0100
Subject: [PATCH] Return path attribute for ajax rename operations

This fixes an issue when renaming files from a flat list view like
"Favorites" or "Shared with you", in which case the path needs to be
present in the response to make sure the data-path attribute is properly
set in the JS side.
---
 apps/files/lib/app.php           | 1 +
 apps/files/tests/ajax_rename.php | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/apps/files/lib/app.php b/apps/files/lib/app.php
index e1aeb4d422..47d0ec9be9 100644
--- a/apps/files/lib/app.php
+++ b/apps/files/lib/app.php
@@ -106,6 +106,7 @@ class App {
 			$meta = $this->view->getFileInfo($normalizedNewPath);
 			$meta = \OCA\Files\Helper::populateTags(array($meta));
 			$fileInfo = \OCA\Files\Helper::formatFileInfo(current($meta));
+			$fileInfo['path'] = dirname($normalizedNewPath);
 			$result['success'] = true;
 			$result['data'] = $fileInfo;
 		} else {
diff --git a/apps/files/tests/ajax_rename.php b/apps/files/tests/ajax_rename.php
index 2ffba19e54..488c741d3f 100644
--- a/apps/files/tests/ajax_rename.php
+++ b/apps/files/tests/ajax_rename.php
@@ -118,6 +118,7 @@ class Test_OC_Files_App_Rename extends \Test\TestCase {
 		$this->assertEquals('httpd/unix-directory', $result['data']['mimetype']);
 		$this->assertEquals('abcdef', $result['data']['etag']);
 		$this->assertFalse(isset($result['data']['tags']));
+		$this->assertEquals('/', $result['data']['path']);
 		$icon = \OC_Helper::mimetypeIcon('dir');
 		$icon = substr($icon, 0, -3) . 'svg';
 		$this->assertEquals($icon, $result['data']['icon']);
@@ -182,6 +183,7 @@ class Test_OC_Files_App_Rename extends \Test\TestCase {
 		$this->assertEquals('text/plain', $result['data']['mimetype']);
 		$this->assertEquals('abcdef', $result['data']['etag']);
 		$this->assertEquals(array('tag1', 'tag2'), $result['data']['tags']);
+		$this->assertEquals('/', $result['data']['path']);
 		$icon = \OC_Helper::mimetypeIcon('text');
 		$icon = substr($icon, 0, -3) . 'svg';
 		$this->assertEquals($icon, $result['data']['icon']);
-- 
GitLab