summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBernhard Posselt <nukeawhale@gmail.com>2012-08-31 19:52:53 +0200
committerBernhard Posselt <nukeawhale@gmail.com>2012-09-01 00:31:39 +0200
commit9b0ccc5641aa49d6b41a846d9c63bfc5746efe88 (patch)
treeb87b8ea9390a353c4d497719f722fa117b36b67b
parent3876f38f3cb82545c075026ab0b149e00bd9eaef (diff)
wired removing and adding of feeds
-rw-r--r--js/items.js2
-rw-r--r--js/menu.js21
-rw-r--r--js/news.js56
3 files changed, 39 insertions, 40 deletions
diff --git a/js/items.js b/js/items.js
index 87242de13..b3bd46ca3 100644
--- a/js/items.js
+++ b/js/items.js
@@ -56,7 +56,7 @@ var t = t || function(app, string){ return string; }; // mock translation for lo
onSuccessCallback();
} else {
OC.dialogs.alert(t('news', 'Error while loading the feed'), t('news', 'Error'));
- this._$articleList.children('ul').show();
+ self._$articleList.children('ul').show();
}
self._$articleList.removeClass('loading');
});
diff --git a/js/menu.js b/js/menu.js
index 7e5170573..f302f6ae4 100644
--- a/js/menu.js
+++ b/js/menu.js
@@ -152,7 +152,8 @@ var News = News || {};
}
var $html;
- var icon = 'url("' + data.icon + '")';
+ var icon;
+
switch(type){
case MenuNodeType.Feed:
$html = this._$mockFeed.clone();
@@ -166,7 +167,9 @@ var News = News || {};
}
$html.children('.title').html(data.title);
- $html.children('.title').css('background-image', icon);
+ if(data.icon !== undefined){
+ $html.children('.title').css('background-image', 'url("' + data.icon + '")');
+ }
$html.children('.unread_items_counter').html(data.unreadCount);
$html.attr('data-id', id);
$html.children('ul').attr('data-id', id);
@@ -249,6 +252,7 @@ var News = News || {};
Menu.prototype.setShowAll = function(showAll){
this._showAll = showAll;
this.triggerHideRead();
+ this._load(this._activeFeedType, this._activeFeedId);
};
/**
@@ -378,11 +382,11 @@ var News = News || {};
});
$listItem.children('.buttons').children('.feeds_delete').click(function(){
- self._delete(MenuNodeType.Folder, id);
+ self._delete(MenuNodeType.Feed, id);
});
$listItem.children('.buttons').children('.feeds_markread').click(function(){
- self._markRead(MenuNodeType.Folder, id);
+ self._markRead(MenuNodeType.Feed, id);
});
$listItem.draggable({
@@ -401,11 +405,12 @@ var News = News || {};
* @param $listItem the jquery list element
*/
Menu.prototype._bindStarred = function($listItem){
+ var self = this;
this._setUnreadCount(MenuNodeType.Starred, 0,
this._getAndRemoveUnreadCount($listItem));
$listItem.children('.title').click(function(){
- self._load(MenuNodeType.Starred, id);
+ self._load(MenuNodeType.Starred, -1);
return false;
});
@@ -416,13 +421,14 @@ var News = News || {};
* @param $listItem the jquery list element
*/
Menu.prototype._bindSubscriptions = function($listItem){
+ var self = this;
$listItem.children('.title').click(function(){
- self._load(MenuNodeType.Subscriptions, id);
+ self._load(MenuNodeType.Subscriptions, -2);
return false;
});
$listItem.children('.feeds_markread').click(function(){
- self._markRead(MenuNodeType.Folder, id);
+ self._markRead(MenuNodeType.Subscriptions, 0);
});
};
@@ -477,6 +483,7 @@ var News = News || {};
if(type === self._activeFeedType && id === self._activeFeedId){
window.location.reload();
}
+ self._resetOpenFolders();
} else{
OC.dialogs.alert(jsondata.data.message, t('news', 'Error'));
}
diff --git a/js/news.js b/js/news.js
index 57c70a066..e7ae6e643 100644
--- a/js/news.js
+++ b/js/news.js
@@ -62,13 +62,14 @@ News = {
$.post(url, { name: displayname, parentid: folderid },
function(jsondata){
if(jsondata.status == 'success'){
- // if we got a parent folder
- if(folderid > 0){
- $('.collapsable_container[data-id="' + folderid + '"] > ul').append(jsondata.data.listfolder);
- } else {
- $('#feeds > ul').append(jsondata.data.listfolder);
- }
- setupFeedList();
+ // FIXME: this should receive json by default
+ var $folder = $(jsondata.data.listfolder);
+ var title = $folder.children('.title').html();
+ var id = $folder.data('id');
+ var data = {
+ title: title
+ };
+ News.Objects.Menu.addNode(0, News.MenuNodeType.Folder, id, data);
$('#addfolder_dialog').dialog('destroy').remove();
} else {
OC.dialogs.alert(jsondata.data.message, t('news', 'Error'));
@@ -107,24 +108,22 @@ News = {
if($('#firstrun').length > 0){
window.location.reload();
} else {
- if(jsondata.status == 'success'){
- if(folderid > 0){
- $('.collapsable_container[data-id="' + folderid + '"] > ul').append(jsondata.data.listfeed);
- } else {
- $('#feeds > ul').append(jsondata.data.listfeed);
- }
- setupFeedList();
- News.Feed.load(jsondata.data.feedid);
-
- //$('#ui-dialog-title-addfeed_dialog').html('Feed added. Do you want to add another feed?')
-
- /*
- OC.dialogs.confirm(t('news', ), t('news', 'Feed added!'), function(answer) {
- if(!answer) {
- $('#addfeed_dialog').dialog('destroy').remove();
- $('ul.accordion').before(jsondata.data.part_newfeed);
- }
- });*/
+ if(jsondata.status == 'success'){
+ // FIXME: this should receive json by default
+ var $feed = $(jsondata.data.listfeed);
+ var title = $feed.children('.title').html();
+ var icon = $feed.css('background-image').replace(/url\(|\)$/ig, "");
+ var unreadCount = $feed.children('.unread_items_count').html();
+ var id = $feed.data('id');
+ var data = {
+ title: title,
+ unreadCount: unreadCount,
+ icon: icon
+ };
+ News.Objects.Menu.addNode(folderid, News.MenuNodeType.Feed, id, data);
+ News.Objects.Menu._load(News.MenuNodeType.Feed, jsondata.data.feedid);
+
+ $('#addfeed_dialog').dialog('destroy').remove();
} else {
OC.dialogs.alert(jsondata.data.message, t('news', 'Error'));
}
@@ -141,16 +140,9 @@ News = {
}
});
},
- load:function(feedId) {
-
- },
-
-
},
-
-
}