PageSourceSearch

https://zamekorlik.info/wp-content/plugins/nextgen-gallery/product…/static/common.js?ver=3.4.7

js zamekorlik.info collected 2026-09-25 06:05:19 UTC 8,151 bytes, 210 lines download raw bytes

1(function($) {
2    window.NggPaginatedGallery = function(displayed_gallery_id, container) {
3        this.displayed_gallery_id = displayed_gallery_id;
4        this.container            = $(container);
5        this.container_name       = container;
6
7        this.get_displayed_gallery_obj = function() {
8            var index = 'gallery_' + this.displayed_gallery_id;
9            if (typeof(window.galleries[index]) == 'undefined') {
10                return false;
11            } else {
12                return window.galleries[index];
13            }
14        };
15
16        this.enable_ajax_pagination = function() {
17            var self = this;
18            // Attach a click event handler for each pagination link to adjust the request to be sent via XHR
19            $('body').on('click', 'a.ngg-browser-prev, a.ngg-browser-next', function (event) {
20
21                var skip = true;
22                $(this).parents(container).each(function() {
23                    if ($(this).data('nextgen-gallery-id') != self.displayed_gallery_id) {
24                        return true;
25                    }
26                    skip = false;
27                });
28
29                if (!skip) {
30                    event.preventDefault();
31                } else {
32                    return;
33                }
34
35                // Adjust the user notification
36                window['ngg_ajax_operaton_count']++;
37                $('body, a').css('cursor', 'wait');
38
39                // Send the AJAX request
40                $.get($(this).attr('href'), function (response) {
41                    window['ngg_ajax_operaton_count']--;
42                    if (window['ngg_ajax_operaton_count'] <= 0) {
43                        window['ngg_ajax_operaton_count'] = 0;
44                        $('body, a').css('cursor', 'auto');
45                    }
46
47                    if (response) {
48                        var html = $(response);
49                        var replacement = false;
50                        html.find(self.container_name).each(function() {
51                            if (replacement) {
52                                return true;
53                            }
54                            if ($(this).data('nextgen-gallery-id') != self.dis
54played_gallery_id) {
55                                return true;
56                            }
57                            replacement = $(this);
58                        });
59                        if (replacement) {
60                            self.container.each(function () {
61                                var $this = $(this);
62
63                                if ($this.data('nextgen-gallery-id') != self.displayed_gallery_id) {
64                                    return true;
65                                }
66
67                                // If the image gallery makes up the bulk of the post/page content the .html() call
68                                // below will empty the contents causing the browser's scroll position to be reset to
69                                // zero as the browser believes it has been pushed back to the top of the page. Here
70                                // we give the parent container a min-height equal to the gallery's height to prevent
71                                // this flicker and resetting of the scroll position.
72                                var $new_element = $(replacement.html());
73                                var promises = $new_element.find('img').toArray().map(function(img){
74                                    return new Promise(function(resolve, reject){
75                                        var i = new Image();
76                                        i.src = img.src;
77                                        $(i).on('load', resolve);
78                                    });
79                                });
80
81                                Promise.all(promises).then(function(){
82                                        $this.html($new_element);
83
84                                        // Let the user know that we've refreshed the content
85                                        $(document).trigger('refreshed');
86                                });
87
88                                return true;
89                            });
90                        }
91                    }
92                });
93            });
94        };
95
96        // Initialize
97        var displayed_gallery = this.get_displayed_gallery_obj();
98        if (displayed_gallery) {
99            if (typeof(displayed_gallery.display_settings['ajax_pagination']) != 'undefined') {
100                if (parseInt(displayed_gallery.display_settings['ajax_pagination'])) {
101                    this.enable_ajax_pagination();
102                }
103            }
104        }
105
106        // We maintain a count of all the current AJAX actions initiated
107        if (typeof(window['ngg_ajax_operation_count']) == 'undefined') {
108            window['ngg_ajax_operaton_count'] = 0;
109        }
110    };
111
112    // Polyfill for older browsers
113    Object.setPrototypeOf = Object.setPrototypeOf || function(obj, proto) {
114        obj.__proto__ = proto;
115        return obj;
116    };
117
118    if (typeof window.galleries !== 'undefined') {
119    Object.setPrototypeOf(
120        window.galleries,
121        {
122            get_api_version: function() {
123                return '0.1';
124            },
125
126            get_from_id: function (gallery_id) {
127                var self   = this;
128                var retval = null;
129                var keys   = Object.keys(this);
130
131                for (var i = 1; i <= keys.length; i++) {
132                    var gallery = self[keys[i - 1]];
133                    if (gallery.ID === gallery_id || gallery.ID === 'gallery_' + gallery_id || gallery.ID === parseInt(gallery_id)) {
134                        retval = gallery;
135                        break;
136                    }
137                }
138
139                return retval;
140            },
141
142            get_from_slug: function (slug) {
143                var self   = this;
144                var retval = null;
145                var keys   = Object.keys(this);
146
147                for (var i = 1; i <= keys.length; i++) {
148                    var gallery = self[keys[i - 1]];
149                    if (gallery.slug === slug) {
150                        retval = gallery;
151                        break;
152                    }
153                }
154
155                return retval;
156            },
157
158            get_setting: function(gallery_id, name, def) {
159                var tmp = '';
160                var gallery = this.get_from_id(gallery_id);
161                if (gallery && typeof gallery[name] !== 'undefined') {
162                    tmp = gallery[name];
163                } else {
164                    tmp = def;
165                }
166
167                if (tmp === 1)       tmp = true;
168                if (tmp === 0)       tmp = false;
169                if (tmp === '1')     tmp = true;
170                if (tmp === '0')     tmp = false;
171                if (tmp === 'false') tmp = false;
172                if (tmp === 'true')  tmp = true;
173
174                return tmp;
175            },
176
177            get_display_setting: function(gallery_id, name, def) {
178                var tmp = '';
179                var gallery = this.get_from_id(gallery_id);
180                if (gallery && typeof gallery.display_settings[name] !== 'undefined') {
181                    tmp = gallery.display_settings[name];
182                } else {
183                    tmp = def;
184                }
185
186                if (tmp === 1)       tmp = true;
187                if (tmp === 0)       tmp = false;
188                if (tmp === '1')     tmp = true;
189                if (tmp === '0')     tmp = false;
190                if (tmp === 'false') tmp = false;
191                if (tmp === 'true')  tmp = true;
192
193                return tmp;
194            },
195
196            is_widget: function(gallery_id) {
197                var retval  = false;
198                var gallery = this.get_from_id(gallery_id);
199                var slug    = gallery.slug;
200
201                if (slug) {
202                    return slug.indexOf('widget-ngg-images') !== -1;
203                }
204
205                return retval;
206            }
207        }
208    ); }
209
210})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.