From e340b9fffeecb5a7ae6ee3698358e1e12554fa65 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 25 Mar 2015 17:51:46 -0400 Subject: [PATCH] fixed save/delete/purge in category ACP, #2463 --- public/src/admin/manage/category.js | 49 ++++++----------------------- public/src/ajaxify.js | 6 +++- 2 files changed, 14 insertions(+), 41 deletions(-) diff --git a/public/src/admin/manage/category.js b/public/src/admin/manage/category.js index 4b27ccbb90..81db954432 100644 --- a/public/src/admin/manage/category.js +++ b/public/src/admin/manage/category.js @@ -21,7 +21,9 @@ define('admin/manage/category', [ } } - function save() { + function save(e) { + e.preventDefault(); + if(Object.keys(modified_categories).length) { socket.emit('admin.categories.update', modified_categories, function(err, result) { if (err) { @@ -39,7 +41,6 @@ define('admin/manage/category', [ }); modified_categories = {}; } - return false; } $('.blockclass, form.category select').each(function() { @@ -85,24 +86,21 @@ define('admin/manage/category', [ // Colour Picker $('[data-name="bgColor"], [data-name="color"]').each(enableColorPicker); - // Options menu events - var optionsEl = $('.options'); - optionsEl.on('click', '.save', save); - optionsEl.on('click', '.revert', ajaxify.refresh); - optionsEl.on('click', '.purge', function() { - var categoryRow = $(this).parents('li[data-cid]'); - var cid = categoryRow.attr('data-cid'); + $('.save').on('click', save); + $('.revert').on('click', ajaxify.refresh); + $('.purge').on('click', function(e) { + e.preventDefault(); bootbox.confirm('

Do you really want to purge this category "' + $('form.category').find('input[data-name="name"]').val() + '"?

Warning! All topics and posts in this category will be purged!

', function(confirm) { if (!confirm) { return; } - socket.emit('admin.categories.purge', cid, function(err) { + socket.emit('admin.categories.purge', ajaxify.variables.get('cid'), function(err) { if (err) { return app.alertError(err.message); } app.alertSuccess('Category purged!'); - categoryRow.remove(); + ajaxify.go('admin/manage/categories'); }); }); }); @@ -144,35 +142,6 @@ define('admin/manage/category', [ setupEditTargets(); Category.setupPrivilegeTable(); - - $(function() { - - - // $('.admin-categories').on('click', '.permissions', function() { - // var cid = $(this).parents('li[data-cid]').attr('data-cid'); - // Categories.launchPermissionsModal(cid); - // return false; - // }); - - - // $('.admin-categories').on('click', '.delete-image', function() { - // var parent = $(this).parents('li[data-cid]'), - // inputEl = parent.find('.upload-button'), - // preview = parent.find('.preview-box'), - // bgColor = parent.find('.category_bgColor').val(); - - // inputEl.val(''); - // modified(inputEl[0]); - - // preview.css('background', bgColor); - - // $(this).addClass('hide').hide(); - // }); - - - - - }); }; Category.setupPrivilegeTable = function() { diff --git a/public/src/ajaxify.js b/public/src/ajaxify.js index f5cca44ccf..ed5d3e8b69 100644 --- a/public/src/ajaxify.js +++ b/public/src/ajaxify.js @@ -168,7 +168,11 @@ $(document).ready(function() { return url; }; - ajaxify.refresh = function() { + ajaxify.refresh = function(e) { + if (e && e instanceof jQuery.Event) { + e.preventDefault(); + } + ajaxify.go(ajaxify.currentPage); };