PluginProbe ʕ •ᴥ•ʔ
Nested Pages / 3.3.1
Nested Pages v3.3.1
3.3.1 3.2.15 3.2.14 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 trunk 1.0 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.3.0 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.2 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.6.0 1.6.1 1.6.2 1.6.3 1.6.3.1 1.6.3.2 1.6.4 1.6.5 1.6.5.1 1.6.5.2 1.6.6 1.6.7 1.6.8 1.7.0 1.7.1 2.0.1 2.0.2 2.0.3 2.0.4 3.0.1 3.0.10 3.0.11 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.20 3.1.21 3.1.22 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7
wp-nested-pages / assets / js / src / nestedpages.move-post.js
wp-nested-pages / assets / js / src Last commit date
jquery.mjs.nestedSortable.js 2 weeks ago jquery.ui.touch-punch.min.js 2 weeks ago nestedpages-factory.js 2 weeks ago nestedpages.bulk-actions.js 2 weeks ago nestedpages.check-all.js 2 weeks ago nestedpages.clone.js 2 weeks ago nestedpages.confirm-delete.js 2 weeks ago nestedpages.dropdowns.js 2 weeks ago nestedpages.formatter.js 2 weeks ago nestedpages.hidden-item-count.js 2 weeks ago nestedpages.manual-sync.js 2 weeks ago nestedpages.menu-links.js 2 weeks ago nestedpages.menu-search.js 2 weeks ago nestedpages.menu-toggle.js 2 weeks ago nestedpages.modals.js 2 weeks ago nestedpages.move-post.js 2 weeks ago nestedpages.nesting.js 2 weeks ago nestedpages.new-post.js 2 weeks ago nestedpages.page-toggle.js 2 weeks ago nestedpages.post-search.js 2 weeks ago nestedpages.quickedit-link.js 2 weeks ago nestedpages.quickedit-post.js 2 weeks ago nestedpages.settings-admin-customization.js 2 weeks ago nestedpages.settings-reset.js 2 weeks ago nestedpages.settings.js 2 weeks ago nestedpages.sync-menu-setting.js 2 weeks ago nestedpages.tabs.js 2 weeks ago nestedpages.trash-with-children.js 2 weeks ago nestedpages.trash.js 2 weeks ago nestedpages.userprefs-reset.js 2 weeks ago nestedpages.wpml.js 2 weeks ago
nestedpages.move-post.js
93 lines
1 var NestedPages = NestedPages || {};
2
3 /**
4 * Move a Post Up or Down in the list
5 * @package Nested Pages
6 * @author Kyle Phillips - https://github.com/kylephillips/wp-nested-pages
7 */
8 NestedPages.MovePost = function()
9 {
10 var plugin = this;
11 var $ = jQuery;
12
13 plugin.formatter = new NestedPages.Formatter;
14 plugin.nesting = new NestedPages.Nesting;
15 plugin.activeRow;
16
17 plugin.selectors = {
18 moveToTop : 'data-push-to-top',
19 moveToBottom : 'data-push-to-bottom'
20 }
21
22 plugin.bindEvents = function()
23 {
24 $(document).ready(function(){
25 plugin.disableTopOnFirst();
26 plugin.disableBottomOnLast();
27 });
28 $(document).on('click', '[' + plugin.selectors.moveToTop + ']', function(e){
29 e.preventDefault();
30 if ( $(this).hasClass('disabled') ) return;
31 plugin.activeRow = $(this).closest(NestedPages.selectors.rows);
32 plugin.moveToTop();
33 });
34 $(document).on('click', '[' + plugin.selectors.moveToBottom + ']', function(e){
35 e.preventDefault();
36 if ( $(this).hasClass('disabled') ) return;
37 plugin.activeRow = $(this).closest(NestedPages.selectors.rows);
38 plugin.moveToBottom();
39 });
40 }
41
42 /**
43 * Move a post to the top of its list
44 */
45 plugin.moveToTop = function()
46 {
47 var parent = $(plugin.activeRow).parent(NestedPages.selectors.lists);
48 var first = $(parent).find(NestedPages.selectors.rows).first();
49 $(plugin.activeRow).insertBefore(first);
50 plugin.formatter.setBorders();
51 $(document).click(); // Close Dropdowns
52 plugin.nesting.syncNesting();
53 plugin.disableTopOnFirst();
54 plugin.disableBottomOnLast();
55 }
56
57 /**
58 * Move a post to the bottom of its list
59 */
60 plugin.moveToBottom = function()
61 {
62 var parent = $(plugin.activeRow).parent(NestedPages.selectors.lists);
63 var last = $(parent).children(NestedPages.selectors.rows).last();
64 $(plugin.activeRow).insertAfter(last);
65 plugin.formatter.setBorders();
66 $(document).click(); // Close Dropdowns
67 plugin.nesting.syncNesting();
68 plugin.disableTopOnFirst();
69 plugin.disableBottomOnLast();
70 }
71
72 plugin.disableTopOnFirst = function()
73 {
74 var lists = $(NestedPages.selectors.lists);
75 $.each(lists, function(){
76 $(this).find('[' + plugin.selectors.moveToTop + ']').removeClass('disabled');
77 var first = $(this).find(NestedPages.selectors.rows).first();
78 $(first).find('[' + plugin.selectors.moveToTop + ']').addClass('disabled');
79 });
80 }
81
82 plugin.disableBottomOnLast = function()
83 {
84 var lists = $(NestedPages.selectors.lists);
85 $.each(lists, function(){
86 $(this).find('[' + plugin.selectors.moveToBottom + ']').removeClass('disabled');
87 var last = $(this).find(NestedPages.selectors.rows).last();
88 $(last).find('[' + plugin.selectors.moveToBottom + ']').addClass('disabled');
89 });
90 }
91
92 return plugin.bindEvents();
93 }