PluginProbe ʕ •ᴥ•ʔ
Gallery : FooGallery / 3.3.2
Gallery : FooGallery v3.3.2
3.3.2 3.3.3 3.3.0 3.1.31 3.1.32 3.1.34 3.1.36 3.2.0 3.2.6 trunk 1.10.3 2.0.24 2.1.34 2.2.44 2.3.3 2.4.32 3.0.6 3.1.11 3.1.12 3.1.13 3.1.20 3.1.25 3.1.26 3.1.26.1 3.1.26.2
foogallery / js / admin-page-foogallery-extensions.js
foogallery / js Last commit date
admin-foogallery-attachment-autosave.js 3 days ago admin-foogallery-divi.js 3 days ago admin-foogallery-edit.js 3 days ago admin-foogallery-editor.js 3 days ago admin-foogallery-elementor.js 3 days ago admin-page-foogallery-extensions-modal.js 3 days ago admin-page-foogallery-extensions.js 3 days ago admin-page-foogallery-settings.js 3 days ago admin-tinymce.js 3 days ago admin-uploader.js 3 days ago foogallery-command-palette.js 3 days ago foogallery.admin.datasources.js 3 days ago foogallery.admin.min.js 3 days ago foogallery.admin.template.js 3 days ago
admin-page-foogallery-extensions.js
108 lines
1 (function(FOOGALLERY, $, undefined) {
2 FOOGALLERY.extension_search_timer = false;
3 FOOGALLERY.extension_search_timer_delay = 300; // 0.6 seconds delay after last input
4
5 //hook up clicking the tag links above the extensions
6 FOOGALLERY.bindTagLinks = function() {
7 $('.extension-controls a.extension-filter').on('click', function() {
8 var filter = $(this).attr('href').replace('#', '');
9 $('.extension-controls a.extension-filter').removeClass('current');
10 $(this).addClass('current');
11 $('.foogallery-extension-browser .extensions .extension').hide();
12 $('.foogallery-extension-browser .extensions .' + filter).show();
13 });
14 };
15
16 FOOGALLERY.showSpinner = function($btn) {
17 var $container = $btn.parents('.extension:first');
18 $container.addClass('updating');
19 $container.find('.banner:first').html($btn.data('banner-text'));
20 };
21
22 //show the spinner when performing actions
23 FOOGALLERY.bindActionButtons = function() {
24 $('a.ext_action').on('click', function(e) {
25 var $btn = $(this);
26
27 //if the target is blank then allow and get out
28 if ($btn.attr('target') == '_blank') {
29 return true;
30 }
31
32 //if its disabled then do nothing!
33 if ($btn.is('.disabled')) {
34 e.preventDefault();
35 return false;
36 }
37
38 var confirmMsg = $(this).data('confirm');
39
40 if (confirmMsg) {
41 if (confirm(confirmMsg)) {
42 FOOGALLERY.showSpinner($btn);
43 $btn.addClass('disabled');
44 } else {
45 e.preventDefault();
46 return false;
47 }
48 } else {
49 //otherwise just show the spinner while redirecting
50 FOOGALLERY.showSpinner($btn);
51 $btn.addClass('disabled');
52 }
53 });
54 };
55
56 //perform the extensions search
57 FOOGALLERY.doSearch = function() {
58 var search = $('#extensions-search-input').val().toLowerCase();
59 $('.foogallery-extension-browser .extensions .extension').hide();
60 $('.foogallery-extension-browser .extensions .search-me').each(function() {
61 var html = $(this).html();
62 if (html && html.toLowerCase().indexOf(search) > -1) {
63 $(this).parents('.extension:first').show();
64 }
65 });
66 };
67
68 //hook up the extensions search
69 FOOGALLERY.bindSearch = function() {
70 $('#extensions-search-input').bind('input', function() {
71 window.clearTimeout(FOOGALLERY.extension_search_timer);
72 FOOGALLERY.extension_search_timer = window.setTimeout(function(){
73 FOOGALLERY.doSearch();
74 }, FOOGALLERY.extension_search_timer_delay);
75 });
76 };
77
78 FOOGALLERY.bindTabs = function() {
79 $("a.nav-tab").on('click', function(e) {
80 $this = $(this);
81
82 $this.parents(".nav-tab-wrapper:first").find(".nav-tab-active").removeClass("nav-tab-active");
83 $this.addClass("nav-tab-active");
84
85 var filter = $this.attr('href').replace('#', '');
86 $('.foogallery-extension-browser .extensions .extension').hide();
87 $('.foogallery-extension-browser .extension-page').hide();
88 $('.foogallery-extension-browser .extensions .' + filter).show();
89 $('.foogallery-extension-browser .extension-page-' + filter).show();
90 });
91
92 if (window.location.hash) {
93 $('a.nav-tab[href="' + window.location.hash + '"]').click();
94 } else {
95 $('a.nav-tab-all').click();
96 }
97
98 return false;
99 };
100
101 $(function() { //wait for ready
102 FOOGALLERY.bindTabs();
103 FOOGALLERY.bindTagLinks();
104 FOOGALLERY.bindActionButtons();
105 FOOGALLERY.bindSearch();
106 });
107
108 }(window.FOOGALLERY = window.FOOGALLERY || {}, jQuery));