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.menu-toggle.js
wp-nested-pages / assets / js / src Last commit date
jquery.mjs.nestedSortable.js 1 week ago jquery.ui.touch-punch.min.js 1 week ago nestedpages-factory.js 1 week ago nestedpages.bulk-actions.js 1 week ago nestedpages.check-all.js 1 week ago nestedpages.clone.js 1 week ago nestedpages.confirm-delete.js 1 week ago nestedpages.dropdowns.js 1 week ago nestedpages.formatter.js 1 week ago nestedpages.hidden-item-count.js 1 week ago nestedpages.manual-sync.js 1 week ago nestedpages.menu-links.js 1 week ago nestedpages.menu-search.js 1 week ago nestedpages.menu-toggle.js 1 week ago nestedpages.modals.js 1 week ago nestedpages.move-post.js 1 week ago nestedpages.nesting.js 1 week ago nestedpages.new-post.js 1 week ago nestedpages.page-toggle.js 1 week ago nestedpages.post-search.js 1 week ago nestedpages.quickedit-link.js 1 week ago nestedpages.quickedit-post.js 1 week ago nestedpages.settings-admin-customization.js 1 week ago nestedpages.settings-reset.js 1 week ago nestedpages.settings.js 1 week ago nestedpages.sync-menu-setting.js 1 week ago nestedpages.tabs.js 1 week ago nestedpages.trash-with-children.js 1 week ago nestedpages.trash.js 1 week ago nestedpages.userprefs-reset.js 1 week ago nestedpages.wpml.js 1 week ago
nestedpages.menu-toggle.js
97 lines
1 var NestedPages = NestedPages || {};
2
3 /**
4 * Toggles Menu Elements
5 * @package Nested Pages
6 * @author Kyle Phillips - https://github.com/kylephillips/wp-nested-pages
7 */
8 NestedPages.MenuToggle = function()
9 {
10 var plugin = this;
11 var $ = jQuery;
12
13 plugin.formatter = new NestedPages.Formatter;
14
15 plugin.bindEvents = function()
16 {
17 $(document).on('click', NestedPages.selectors.childToggleLink, function(e){
18 e.preventDefault();
19 plugin.toggleSingleMenu($(this));
20 });
21 $(document).on('click', NestedPages.selectors.toggleAll, function(e){
22 e.preventDefault();
23 plugin.toggleAllMenus();
24 });
25 }
26
27
28 // Toggle individual submenus
29 plugin.toggleSingleMenu = function(button)
30 {
31 var submenu = $(button).parent(NestedPages.selectors.childToggle).parent(NestedPages.selectors.row).siblings('ol');
32 $(button).toggleClass('open');
33 $(submenu).toggle();
34 plugin.formatter.setBorders();
35 plugin.formatter.setNestedMargins();
36 plugin.syncUserToggles();
37 }
38
39
40 // Toggle All Submenus
41 plugin.toggleAllMenus = function()
42 {
43 var button = NestedPages.selectors.toggleAll;
44 if ( $(button).attr('data-toggle') === 'closed' ){
45 $(NestedPages.selectors.lists).show();
46 $(button).attr('data-toggle', 'opened').text(NestedPages.jsData.collapseText);
47 $(NestedPages.selectors.childToggle + ' a').addClass('open');
48 plugin.formatter.setBorders();
49 plugin.syncUserToggles();
50 return;
51 }
52
53 $(NestedPages.selectors.lists).not($(NestedPages.selectors.lists)[0]).hide();
54 $(button).attr('data-toggle', 'closed').text(NestedPages.jsData.expandText);
55 $(NestedPages.selectors.childToggle + ' a').removeClass('open');
56 plugin.formatter.setBorders();
57 plugin.syncUserToggles();
58 }
59
60
61 // Get an array of visible rows
62 plugin.visibleRowIDs = function()
63 {
64 var visible_ids = [];
65 var visible = $(NestedPages.selectors.rows + ':visible');
66 $.each(visible, function(i, v){
67 var id = $(this).attr('id');
68 visible_ids.push(id.replace("menuItem_", ""));
69 });
70 return visible_ids;
71 }
72
73
74 // Save the user's toggled menus
75 plugin.syncUserToggles = function()
76 {
77 $.ajax({
78 url: NestedPages.jsData.ajaxurl,
79 type: 'post',
80 datatype: 'json',
81 data: {
82 action : NestedPages.formActions.syncToggles,
83 nonce : NestedPages.jsData.nonce,
84 ids : plugin.visibleRowIDs(),
85 posttype : NestedPages.jsData.posttype
86 },
87 success: function(data){
88 if ( data.status !== 'success' ){
89 console.log('There was an error saving toggled pages.');
90 }
91 }
92 });
93 }
94
95
96 return plugin.bindEvents();
97 }