summaryrefslogtreecommitdiffstats
path: root/js/controller
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2014-09-11 20:26:04 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2014-09-11 20:26:04 +0200
commitf3091d84e14537a42334e66ea6588cf2b83f9ab6 (patch)
tree943151aa564177e956d5dc1b2fff12845e48c4c0 /js/controller
parentf50dba835fa58f9ba979a9038ffd185ab8fe3b96 (diff)
various work on creating feeds, folders and showing folders
Diffstat (limited to 'js/controller')
-rw-r--r--js/controller/NavigationController.js54
1 files changed, 40 insertions, 14 deletions
diff --git a/js/controller/NavigationController.js b/js/controller/NavigationController.js
index 6a79b8970..3099c384f 100644
--- a/js/controller/NavigationController.js
+++ b/js/controller/NavigationController.js
@@ -9,7 +9,7 @@
*/
app.controller('NavigationController',
function ($route, FEED_TYPE, FeedResource, FolderResource, ItemResource,
- SettingsResource) {
+ SettingsResource, Publisher) {
'use strict';
this.feedError = '';
@@ -112,32 +112,58 @@ function ($route, FEED_TYPE, FeedResource, FolderResource, ItemResource,
};
this.folderNameExists = function (folderName) {
- return FolderResource.get(folderName) !== undefined;
+ folderName = folderName || '';
+ return FolderResource.get(folderName.toUpperCase()) !== undefined;
};
- // TBD
- this.isAddingFolder = function () {
- return true;
+ this.createFeed = function (feed) {
+ this.newFolder = false;
+
+ var self = this;
+
+ // we dont need to create a new folder
+ if (feed.folder === undefined) {
+ FeedResource.create(feed.url, feed.folderId, undefined)
+ .then(function (data) {
+ Publisher.publishAll(data);
+ });
+ } else {
+ // create folder first and then the feed
+ FolderResource.create(feed.folder).then(function (data) {
+ Publisher.publishAll(data);
+
+ self.createFeed({
+ url: feed.url,
+ folderId: data.name
+ });
+
+ feed.folderId = data.name;
+ feed.folder = '';
+ });
+ }
+
+ feed.url = '';
};
this.createFolder = function (folder) {
- console.log(folder.name);
+ FolderResource.create(folder.name).then(function (data) {
+ Publisher.publishAll(data);
+ });
folder.name = '';
};
- this.createFeed = function (feed) {
- this.newFolder = false;
- console.log(feed.url + feed.folder);
- feed.url = '';
+ this.moveFeed = function (feedId, folderId) {
+ FeedResource.move(feedId, folderId);
};
+ // TBD
this.renameFeed = function (feed) {
feed.editing = false;
// todo remote stuff
};
- this.renameFolder = function () {
- console.log('TBD');
+ this.renameFolder = function (folder) {
+ console.log(folder);
};
this.deleteFeed = function (feed) {
@@ -158,8 +184,8 @@ function ($route, FEED_TYPE, FeedResource, FolderResource, ItemResource,
console.log(folderName);
};
- this.moveFeed = function (feedId, folderId) {
- console.log(feedId + folderId);
+ this.removeFolder = function (folder) {
+ console.log('remove ' + folder);
};
}); \ No newline at end of file