diff options
author | Bernhard Posselt <nukeawhale@gmail.com> | 2012-09-02 02:49:34 +0200 |
---|---|---|
committer | Bernhard Posselt <nukeawhale@gmail.com> | 2012-09-02 02:49:49 +0200 |
commit | 462ca308aed3c7689a77ca7e19e796428ccb347c (patch) | |
tree | ddf28ab0aba8e672bcd3481983a90caa572be7b2 /js | |
parent | 0fe9dfd53e6d861748850ea5857ae5f5f743b7f0 (diff) |
made add feed and add folder dialog client side to speed up displaying
Diffstat (limited to 'js')
-rw-r--r-- | js/main.js | 51 | ||||
-rw-r--r-- | js/news.js | 39 |
2 files changed, 54 insertions, 36 deletions
diff --git a/js/main.js b/js/main.js index 740e429cb..8032987ae 100644 --- a/js/main.js +++ b/js/main.js @@ -29,17 +29,40 @@ $(document).ready(function(){ /* first run script ends */ $('#addfeed').click(function() { - News.UI.overview('#addfeed_dialog','feeddialog.php'); + $('#addfeed_dialog').dialog('open'); + $('#feed_add_url').html(''); + + // populate folderlist + $('#addfeed_dialog .menu').empty(); + + // http://9gag.com/trending + + var $rootFolder = $('<li>').addClass('menuItem').html($('<b>').html(t('News', 'None'))); + $rootFolder.click(function(){ + News.DropDownMenu.selectItem(this, 0); + }); + $('#addfeed_dialog .menu').append($rootFolder); + + $('#feeds .folder').each(function(){ + var title = $(this).children('.title').html(); + var id = parseInt($(this).data('id')); + var $folder = $('<li>').addClass('menuItem').html(title); + $folder.click(function(){ + News.DropDownMenu.selectItem(this, id); + }); + $('#addfeed_dialog .menu').append($folder); + }); }); + $('#addfolder').click(function() { + $('#addfolder_dialog').dialog('open'); + $('#folder_add_name').val(''); + }); + $('#addfeedbtn').click(function() { $(this).hide(); $('#addfeed_dialog_firstrun').show(); }); - - $('#addfolder').click(function() { - News.UI.overview('#addfolder_dialog','folderdialog.php'); - }); $('#addfeedfolder').click(function(event) { News.DropDownMenu.fade($(this).children('ul')); @@ -54,6 +77,24 @@ $(document).ready(function(){ } }); + $('#addfolder_dialog,#addfeed_dialog').dialog({ + dialogClass:'dialog', + minWidth: 600, + autoOpen: false + }).css('overflow','visible'); + + $('#folder_add_submit').click(function(){ + News.Folder.submit(this); + }); + + $('.dropdownBtn').click(function(){ + News.DropDownMenu.dropdown(this); + }); + + $('#feed_add_submit').click(function(){ + News.Feed.submit(this); + }); + $('#view').click(function(){ var data = {}; if($(this).hasClass('show_all')){ diff --git a/js/news.js b/js/news.js index 2db512560..9ca511360 100644 --- a/js/news.js +++ b/js/news.js @@ -5,7 +5,7 @@ News = { return false; }, dropdown:function(button){ - var list = $(button).parent().find('ul#dropdownmenu'); + var list = $(button).parent().find('ul.dropdownmenu'); if (list.css('display') == 'none') list.slideDown('fast').show(); else @@ -15,31 +15,9 @@ News = { }, selectItem:function(item, folderid){ var parent = $(item).parent().parent(); - parent.find('#dropdownBtn').text($(item).text()); + parent.find('.dropdownBtn').text($(item).text()); parent.find(':input[name="folderid"]').val(folderid); - parent.find('ul#dropdownmenu').slideUp('fast'); - } - }, - UI: { - overview:function(dialogtype, dialogfile){ - if($(dialogtype).dialog('isOpen') == true){ - $(dialogtype).dialog('moveToTop'); - }else{ - $('#dialog_holder').load(OC.filePath('news', 'ajax', dialogfile), function(jsondata){ - if(jsondata.status != 'error'){ - $(dialogtype).dialog({ - dialogClass:'dialog', - minWidth: 600, - close: function(event, ui) { - $(this).dialog('destroy').remove(); - } - }).css('overflow','visible'); - } else { - alert(jsondata.data.message); - } - }); - } - return false; + parent.find('ul.dropdownmenu').slideUp('fast'); } }, Folder: { @@ -54,7 +32,7 @@ News = { $(button).attr("disabled", true); $(button).prop('value', t('news', 'Adding...')); - var folderid = $('#inputfolderid:input[name="folderid"]').val(); + var folderid = 0; var url; url = OC.filePath('news', 'ajax', 'createfolder.php'); @@ -70,7 +48,7 @@ News = { title: title }; News.Objects.Menu.addNode(0, News.MenuNodeType.Folder, id, data); - $('#addfolder_dialog').dialog('destroy').remove(); + $('#addfolder_dialog').dialog('close'); } else { OC.dialogs.alert(jsondata.data.message, t('news', 'Error')); } @@ -96,9 +74,9 @@ News = { var folderid = 0; if($('#firstrun').length == 0){ - folderid = $('#inputfolderid:input[name="folderid"]').val(); + folderid = $('#addfeed_dialog .inputfolderid').val(); } - console.log(folderid); + $.ajax({ type: "POST", url: OC.filePath('news', 'ajax', 'createfeed.php'), @@ -113,7 +91,6 @@ News = { var $feed = $(jsondata.data.listfeed); var title = $feed.children('.title').html(); var icon = $feed.children('.title').css('background-image').replace(/"/g,"").replace(/url\(|\)$/ig, "");; - console.log(icon); var unreadCount = $feed.children('.unread_items_count').html(); var id = $feed.data('id'); var data = { @@ -124,7 +101,7 @@ News = { 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(); + $('#addfeed_dialog').dialog('close'); } else { OC.dialogs.alert(jsondata.data.message, t('news', 'Error')); } |