1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
News = {
DropDownMenu: {
fade:function(menu){
$(menu).toggle();
return false;
},
dropdown:function(button){
var list = $(button).parent().find('ul.dropdownmenu');
if (list.css('display') == 'none')
list.slideDown('fast').show();
else
list.slideUp('fast');
return false;
},
selectItem:function(item, folderid){
var parent = $(item).parent().parent();
parent.find('.dropdownBtn').text($(item).text());
parent.find(':input[name="folderid"]').val(folderid);
parent.find('ul.dropdownmenu').slideUp('fast');
}
},
Folder: {
submit:function(button){
var displayname = $("#folder_add_name").val().trim();
if(displayname.length == 0) {
OC.dialogs.alert(t('news', 'Name of the folder cannot be empty.'), t('news', 'Error'));
return false;
}
$(button).attr("disabled", true);
$(button).prop('value', t('news', 'Adding...'));
var folderid = 0;
var url;
url = OC.filePath('news', 'ajax', 'createfolder.php');
$.post(url, { name: displayname, parentid: folderid },
function(jsondata){
if(jsondata.status == 'success'){
// 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('close');
} else {
OC.dialogs.alert(jsondata.data.message, t('news', 'Error'));
}
$("#folder_add_name").val('');
$(button).attr("disabled", false);
$(button).prop('value', t('news','Add folder'));
});
},
},
Feed: {
id:'',
submit:function(button){
var feedurl = $("#feed_add_url").val().trim();
if(feedurl.length == 0) {
OC.dialogs.alert(t('news', 'URL cannot be empty.'), t('news', 'Error'));
return false;
}
$(button).attr("disabled", true);
$(button).prop('value', t('news', 'Adding...'));
var folderid = 0;
if($('#firstrun').length == 0){
folderid = $('#addfeed_dialog .inputfolderid').val();
}
$.ajax({
type: "POST",
url: OC.filePath('news', 'ajax', 'createfeed.php'),
data: { 'feedurl': feedurl, 'folderid': folderid },
dataType: "json",
success: function(jsondata){
if($('#firstrun').length > 0){
window.location.reload();
} else {
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.children('.title').css('background-image').replace(/"/g,"").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('close');
} else {
OC.dialogs.alert(jsondata.data.message, t('news', 'Error'));
}
$("#feed_add_url").val('');
$(button).attr("disabled", false);
$(button).prop('value', t('news', 'Add feed'));
}
},
error: function(xhr) {
OC.dialogs.alert(t('news', 'Error while parsing the feed'), t('news', 'Fatal Error'));
$("#feed_add_url").val('');
$(button).attr("disabled", false);
$(button).prop('value', t('news', 'Add feed'));
}
});
},
},
}
|