From acec12a5dc6de8e3427165c81f9c6a79f4355e9b Mon Sep 17 00:00:00 2001 From: Davide Saurino Date: Thu, 6 Feb 2014 16:38:14 +0100 Subject: Rename folders (FIX #456) --- .../businesslayer/folderbusinesslayer.coffee | 20 ++++++++++++++++++- js/public/app.js | 21 ++++++++++++++++++++ templates/part.listfolder.php | 23 +++++++++++++++++----- 3 files changed, 58 insertions(+), 6 deletions(-) diff --git a/js/app/services/businesslayer/folderbusinesslayer.coffee b/js/app/services/businesslayer/folderbusinesslayer.coffee index acb3b4a58..2be1c415a 100644 --- a/js/app/services/businesslayer/folderbusinesslayer.coffee +++ b/js/app/services/businesslayer/folderbusinesslayer.coffee @@ -155,6 +155,24 @@ FeedModel, $rootScope) -> @_folderModel.removeByName(folderName) + edit: (folderId) -> + folder = @_folderModel.getById(folderId) + folder.editing = true + folder.originalValue = folder.name + + + rename: (folderId, folderName) -> + folder = @_folderModel.getById(folderId) + folder.editing = false + @_persistence.renameFolder(folderId, folderName) + + + cancel: (folderId) -> + folder = @_folderModel.getById(folderId) + folder.editing = false + folder.name = folder.originalValue + + import: (xml) -> opml = @_opmlParser.parseXML(xml) @_importElement(opml, 0) @@ -187,4 +205,4 @@ FeedModel, $rootScope) -> ActiveFeed, Persistence, FeedType, ItemModel, OPMLParser, NewestItem, FeedModel, $rootScope) -] \ No newline at end of file +] diff --git a/js/public/app.js b/js/public/app.js index f8002b608..789ab42e8 100644 --- a/js/public/app.js +++ b/js/public/app.js @@ -1494,6 +1494,27 @@ License along with this library. If not, see . return this._folderModel.removeByName(folderName); }; + FolderBusinessLayer.prototype.edit = function(folderId) { + var folder; + folder = this._folderModel.getById(folderId); + folder.editing = true; + return folder.originalValue = folder.name; + }; + + FolderBusinessLayer.prototype.rename = function(folderId, folderName) { + var folder; + folder = this._folderModel.getById(folderId); + folder.editing = false; + return this._persistence.renameFolder(folderId, folderName); + }; + + FolderBusinessLayer.prototype.cancel = function(folderId) { + var folder; + folder = this._folderModel.getById(folderId); + folder.editing = false; + return folder.name = folder.originalValue; + }; + FolderBusinessLayer.prototype["import"] = function(xml) { var opml; opml = this._opmlParser.parseXML(xml); diff --git a/templates/part.listfolder.php b/templates/part.listfolder.php index 23775f971..49a83eb24 100644 --- a/templates/part.listfolder.php +++ b/templates/part.listfolder.php @@ -11,10 +11,22 @@ data-id="{{ folder.id }}" droppable> +
+ + + +
@@ -49,10 +61,11 @@ ng-show="folder.error" oc-tooltip> - +
    -- cgit v1.2.3