summaryrefslogtreecommitdiffstats
path: root/js/service
diff options
context:
space:
mode:
Diffstat (limited to 'js/service')
-rw-r--r--js/service/FolderResource.js21
1 files changed, 13 insertions, 8 deletions
diff --git a/js/service/FolderResource.js b/js/service/FolderResource.js
index 46f55e318..6867b4e86 100644
--- a/js/service/FolderResource.js
+++ b/js/service/FolderResource.js
@@ -45,21 +45,26 @@ app.factory('FolderResource', function (Resource, $http, BASE_URL, $q) {
FolderResource.prototype.rename = function (folderName, toFolderName) {
var folder = this.get(folderName);
+ var deferred = this.$q.defer();
+ var self = this;
- folder.name = toFolderName;
-
- delete this.hashMap[folderName];
- this.hashMap[toFolderName] = folder;
-
- // FIXME: check for errors
- // FIXME: transfer feeds
- return this.http({
+ this.http({
url: this.BASE_URL + '/folders/' + folder.id + '/rename',
method: 'POST',
data: {
folderName: toFolderName
}
+ }).success(function () {
+ folder.name = toFolderName;
+ delete self.hashMap[folderName];
+ self.hashMap[toFolderName] = folder;
+
+ deferred.resolve();
+ }).error(function (data) {
+ deferred.reject(data.message);
});
+
+ return deferred.promise;
};