PageSourceSearch

https://www.arboretum.ie/wp-content/plugins/wordpress-gdpr/public/js/wordpress-gdpr-public.js

js arboretum.ie collected 2026-09-26 08:31:58 UTC 32,731 bytes, 766 lines download raw bytes

1(function( $ ) {
2    'use strict';
3
4    // Create the defaults once
5    var pluginName = "gdpr",
6        defaults = {
7            bla: "",
8        };
9
10    // The actual plugin constructor
11    function Plugin ( element, options ) {
12        this.element = element;
13        this.settings = $.extend( {}, defaults, options );
14        this._defaults = defaults;
15
16        this._name = pluginName;
17        this.init();
18    }
19
20    // Avoid Plugin.prototype conflicts
21    $.extend( Plugin.prototype, {
22        init: function() {
23            var that = this;
24            this.window = $(window);
25            this.documentHeight = $( document ).height();
26            this.windowHeight = this.window.height();
27            this.privacySettingsCheckPerformed = false;
28
29            this.elements = {};
30            this.elements.popUp = $('.wordpress-gdpr-popup-container');
31            this.elements.popUpAgreeLink = $('.wordpress-gdpr-popup-agree');
32            this.elements.popUpDeclineLink = $('.wordpress-gdpr-popup-decline');
33            this.elements.popUpCloseLink = $('.wordpress-gdpr-popup-close');
34            this.elements.popUpBackdrop = $('.wordpress-gdpr-popup-overlay-backdrop');
35
36            this.privacySettingsLoaded = {};
37            this.elements.privacySettingsPopupTrigger = $('.wordpress-gdpr-privacy-settings-trigger-container');
38            this.elements.privacySettingsPopup = $('.wordpress-gdpr-privacy-settings-popup');
39            this.elements.privacySettingsPopupPrivacySettings = $('.wordpress-gdpr-privacy-settings-popup-privacy-settings-modal');
40            this.elements.privacySettingsPopupAgreeLink = $('.wordpress-gdpr-privacy-settings-popup-agree');
41            this.elements.privacySettingsPopupDeclineLink = $('.wordpress-gdpr-privacy-settings-popup-decline');
42            this.elements.privacySettingsPopupCloseLink = $('.wordpress-gdpr-privacy-settings-popup-close');
43            this.elements.privacySettingsPopupSaveLink = $('.wordpress-gdpr-privacy-settings-popup-services-save');
44            
45            this.elements.privacySettingsPopupBackdrop = $('.wordpress-gdpr-privacy-settings-popup-backdrop');
46
47            if(this.settings.geoIP == "1") {
48                this.getUsersCountry(function(country) {
49                    
50                    var euCountries = ['AT', 'BE', 'BG', 'HR', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', '
50SE', 'GB', 'NO', 'LI', 'IS'];
51                    var isEU = that.isInArray(country, euCountries);
52                    if(isEU) {
53                        that.popUp();
54                    } else {
55                        $('.wordpress-gdpr-popup-actions-buttons .wordpress-gdpr-popup-agree').trigger('click');
56                        that.elements.privacySettingsPopupTrigger.remove();
57                    }
58                });
59                
60            } else {
61                this.popUp();
62            }
63
64            this.popUpAgree();
65            this.popUpClose();
66            this.popUpDecline();
67
68            this.popUpPrivacySettings();
69            this.popUpPrivacySettingsOpen();
70            this.popUpPrivacySettingsClose();
71
72            this.privacyPolicyTermsAcceptance();
73            this.commentFormprivacyPolicyTermsAcceptance();
74        },
75        popUp : function() {
76
77            var botPattern = "(craw|googlebot\/|bot|Googlebot-Mobile|Googlebot-Image|Google favicon|Mediapartners-Google|bingbot|Slurp|Java|wget|curl|Commons-HttpClient|Python-urllib|libwww|httpunit|nutch|phpcrawl|msnbot|jyxobot|FAST-WebCrawler|FAST Enterprise Crawler|biglotron|teoma|convera|seekbot|gigablast|exabot|ngbot|ia_archiver|GingerCrawler|webmon |httrack|webcrawler|grub.org|UsineNouvelleCrawler|antibot|netresearchserver|speedy|fluffy|bibnum.bnf|findlink|msrbot|panscient|yacybot|AISearchBot|IOI|ips-agent|tagoobot|MJ12bot|dotbot|woriobot|yanga|buzzbot|mlbot|yandexbot|purebot|Linguee Bot|Voyager|CyberPatrol|voilabot|baiduspider|citeseerxbot|spbot|twengabot|postrank|turnitinbot|scribdbot|page2rss|sitebot|linkdex|Adidxbot|blekkobot|ezooms|dotbot|Mail.RU_Bot|discobot|heritrix|findthatfile|europarchive.org|NerdByNature.Bot|sistrix crawler|ahrefsbot|Aboundex|domaincrawler|wbsearchbot|summify|ccbot|edisterbot|seznambot|ec2linkfinder|gslfbot|aihitbot|intelium_bot|facebookexternalhit|yeti|RetrevoPageAnalyzer|lb-spider|sogou|lssbot|careerbot|wotbox|wocbot|ichiro|DuckDuckBot|lssrocketcrawler|drupact|webcompanycrawler|acoonbot|openindexspider|gnam gnam spider|web-archive-net.com.bot|backlinkcrawler|coccoc|integromedb|content crawler spider|toplistbot|seokicks-robot|it2media-domain-crawler|ip-web-crawler.com|lighthouse|siteexplorer.info|elisabot|proximic|changedetection|blexbot|arabot|WeSEE:Search|niki-bot|CrystalSemanticsBot|rogerbot|360Spider|psbot|InterfaxScanBot|Lipperhey SEO Service|CC Metadata Scaper|g00g1e.net|GrapeshotCrawler|urlappendbot|brainobot|fr-crawler|binlar|SimpleCrawler|Livelapbot|Twitterbot|cXensebot|smtbot|bnf.fr_bot|A6-Indexer|ADmantX|Facebot|Twitterbot|OrangeBot|memorybot|AdvBot|MegaIndex|SemanticScholarBot|ltx71|nerdybot|xovibot|BUbiNG|Qwantify|archive.org_bot|Applebot|TweetmemeBot|crawler4j|findxbot|SemrushBot|yoozBot|lipperhey|y!j-asr|Domain Re-Animator Bot|AddThis|bot|googlebot|crawler|spider|robot|crawling)";
78            var re = new RegExp(botPattern, 'i');
79            if (re.test(navigator.userAgent)) {
80                return false;
81            }
82
83            var that = this;
84            var cookiesAllowed = false;
85
86
87            if(localStorage && that.getParameterByName('gdpr') !== "debug" && ( that.getCookie('wordpress_gdpr_cookies_allowed') || that.getCookie('wordpress_gdpr_cookies_declined') ) ) {
88
89                var retrievedObject = localStorage.getItem('wordpress_gdpr_services_allowed_temp');
90                if(retrievedObject) {
91                    var services = JSON.parse(retrievedObject);
92                    if(services) { 
93                        if(services.version == that.settings.version) {
94                            that.executeServices(services);
95                            return;
96                        } else {
97
98                            if(that.elements.popUpBackdrop.length > 0) {
99                                that.elements.popUpBackdrop.show();
100                            }
101                            that.elements.popUp.show();
102                            that.checkPrivacySettings();
103                            return;
104                        }
105                    } else {
106                        
107                        if(that.elements.popUpBackdrop.length > 0) {
108                            that.elements.popUpBackdrop.show();
109                        }
110                        that.elements.popUp.show();
111                        that.checkPrivacySettings();
112                        return;
113                    }
114
115                }
116            }
117
118            $.ajax({
119                type : 'post',
120                url : that.settings.ajaxURL,
121                dataType : 'json',
122                data : {
123                    action : 'check_privacy_setting',
124                    setting : 'wordpress_gdpr_cookies_allowed',
125                    current_page_id : that.get_current_page_id()
126                },
127                success : function( response ) {     
128
129                    var popupExcludePages = that.settings.popupExcludePages;
130                    var exclude = false;
131                    if(!that.isEmpty(popupExcludePages)) {
132                        var currentPage, matches = document.body.className.match(/(^|\s)post-id-(\d+)(\s|$)/);
133                        if (matches) {
134                            currentPage = matches[2];
135                        } else {
136                            matches = document.body.className.match(/(^|\s)page-id-(\d+)(\s|$)/);
137                            if (matches) {
138                                currentPage = matches[2];
139                            } 
140                        }
141                        if(currentPage !== "" && that.isInArray(currentPage, popupExcludePages)) {
142                            exclude = true;
143                        }
144                    }
145
146                    if(!exclude) {
147                        if(response.firstTime) {
148                            if(that.elements.popUpBackdrop.length > 0) {
149                                that.elements.popUpBackdrop.show();
150                            }
151                            $.each($('.gdpr-service-switch:not(:disabled)'), function(i, index) {
152                                $(this).prop('checked', true);
153                            });
154                            that.elements.popUp.show();
155                        }
156                        else if((!response.allowed && !response.declined) || that.getParameterByName('gdpr') === "debug") {
157                            if(that.elements.popUpBackdrop.length > 0) {
158                                that.elements.popUpBackdrop.show();
159                            }
160                            that.elements.popUp.show();
161                        } else {
162                            if(that.elements.popUpBackdrop.length > 0) {
163                                that.elements.popUpBackdrop.hide();
164                            }
165                            that.elements.popUp.hide();
166                        }
167                    }
168
169                    //if(response.declined == true) {
170                       // return;
171                    //}
172                    that.checkPrivacySettings();
173                },
174                error: function (xhr, ajaxOptions, thrownError) {
175                    console.log(xhr);
176                    console.log(ajaxOptions);
177                    console.log(thrownError);
178                }
179             });
180        },
181        popUpClose : function() {
182
183            var that = this;
184            
185            $(that.elements.popUpCloseLink).on('click', function(e) {
186                e.preventDefault();
187                if(that.elements.popUpBackdrop.length > 0) {
188                    that.elements.popUpBackdrop.fadeOut();
189                }
190                that.elements.popUp.fadeOut();
191            });
192        },
193        popUpDecline : function() {
194
195            var that = this;
196            
197            that.elements.popUpDeclineLink.on('click', function(e) {
198
199                e.preventDefault();
200
201                var $this = $(this);
202                var text = $this.text();
203                $this.html('<i class="fa fa-spinner fa-spin"></i>');
204
205                $.ajax({
206                    type : 'post',
207                    url : that.settings.ajaxURL,
208                    dataType : 'json',
209                    data : {
210                        action : 'wordpress_gdpr_decline_cookies'
211                    },
212                    success : function( response ) {  
213
214                        if(localStorage) {
215                            localStorage.removeItem('wordpress_gdpr_services_allowed_temp');
216                        }
217
218                        if(that.elements.popUpBackdrop.length > 0) {
219                            that.elements.popUpBackdrop.fadeOut();
220                        }
221                        $('.wordpress-gdpr-privacy-settings-popup, .wordpress-gdpr-privacy-settings-popup-backdrop').fadeOut();
222                        that.elements.popUp.fadeOut();
223                        $.each($('.gdpr-service-switch:not(:disabled)'), function(i, index) {
224                            $(this).prop('checked', false);
225                        });
226                        $this.text(text);
227
228                    },
229                    error: function (xhr, ajaxOptions, thrownError) {
230                        console.log(xhr);
231                        console.log(ajaxOptions);
232                        console.log(thrownError);
233                    }
234                 });
235            });
236        },
237        popUpAgree : function() {
238
239            var that = this;
240
241            that.elements.popUpAgreeLink.on('click', function(e) {
242                e.preventDefault();
243
244                var $this = $(this);
245                var text = $this.text();
246                $this.html('<i class="fa fa-spinner fa-spin"></i>');
247
248                $.ajax({
249                    type : 'post',
250                    url : that.settings.ajaxURL,
251                    dataType : 'json',
252                    data : {
253                        action : 'wordpress_gdpr_allow_cookies'
254                    },
255                    success : function( response ) {
256
257                        if(localStorage) {
258                            localStorage.removeItem('wordpress_gdpr_services_allowed_temp');
259                        }
260
261                        if(that.elements.popUpBackdrop.length > 0) {
262                            that.elements.popUpBackdrop.fadeOut();
263                        }
264                        $('.wordpress-gdpr-privacy-settings-popup, .wordpress-gdpr-privacy-settings-popup-backdrop').fadeOut();
265                        that.elements.popUp.fadeOut();
266                        $.each($('.gdpr-service-switch:not(:disabled)'), function(i, index) {
267                            $(this).prop('checked', true);
268                        });
269                        
270                        that.checkPrivacySettings();
271                        $this.text(text);
272                    },
273                    error: function (xhr, ajaxOptions, thrownError) {
274                        console.log(xhr);
275                        console.log(ajaxOptions);
276                        console.log(thrownError);
277                    }
278                 });
279            });
280        },
281        popUpPrivacySettingsOpen : function () {
282
283            var that = this;
284
285            $('.wordpress-gdpr-open-privacy-settings-modal').on('click', function(e) {
286                e.preventDefault();
287
288                if(($('.wordpress-gdpr-privacy-settings-popup-services-container').length < 1)) {
289                    alert('No GDPR Service Categories / Services created yet. Remove the trigger or create services and attach them to service categories first.');
290                    return false;
291                }
292
293                if($('.wordpress-gdpr-popup').length > 0) {
294                    $('.wordpress-gdpr-popup').hide(0, function() {
295                        $('.wordpress-gdpr-privacy-settings-popup, .wordpress-gdpr-privacy-settings-popup-backdrop').fadeIn();
296                    });
297                } else {
298                    $('.wordpress-gdpr-privacy-settings-popup, .wordpress-gdpr-privacy-settings-popup-backdrop').fadeIn();
299                }
300            });
301        },
302        popUpPrivacySettingsClose : function () {
303
304            var that = this;
305                
306            $(that.elements.privacySettingsPopupCloseLink).on('click', function(e) {
307                e.preventDefault();
308                if(that.elements.privacySettingsPopupBackdrop.length > 0) {
309                    that.elements.privacySettingsPopupBackdrop.fadeOut();
310                }
311                that.elements.privacySettingsPopup.fadeOut();
312            });
313
314            $(that.elements.privacySettingsPopupSaveLink).on('click', function(e) {
315                e.preventDefault();
316                if(that.elements.privacySettingsPopupBackdrop.length > 0) {
317                    that.elements.privacySettingsPopupBackdrop.fadeOut();
318                }
319                that.checkPrivacySettings();
320                that.elements.privacySettingsPopup.fadeOut();
321            });
322
323            if(that.settings.privacySettingsPopupBackdropDisableClick == "0") {
324                $(that.elements.privacySettingsPopupBackdrop).on('click', function(e) {
325                    e.preventDefault();
326                    if(that.elements.privacySettingsPopupBackdrop.length > 0) {
327                        that.elements.privacySettingsPopupBackdrop.fadeOut();
328                    }
329                    that.elements.privacySettingsPopup.fadeOut();
330                });
331            }
332        },
333        popUpPrivacySettings : function() {
334
335            $('.wordpress-gdpr-popup-privacy-settings-open-service-category').on('click', function(e) {
336                e.preventDefault();
337
338                $('.wordpress-gdpr-popup-privacy-settings-open-service-category').removeClass('wordpress-gdpr-popup-privacy-settings-service-category-active');
339
340                $(this).addClass('wordpress-gdpr-popup-privacy-settings-service-category-active');
341
342                var id = $(this).data('id');
343                $('.wordpress-gdpr-popup-privacy-settings-services-content:not(#wordpress-gdpr-popup-privacy-settings-services-content-' + id + ')').hide(0, function() {
344                    $('#wordpress-gdpr-popup-privacy-settings-services-content-' + id).show();
345                });
346            });
347
348            $('.wordpress-gdpr-popup-privacy-settings-services-content-title').on('click', function(e) {
349                e.preventDefault();
350
351                var $this = $(this);
352                var id= $(this).data('id');
353                var fa = $this.find('.fa');
354
355                var description = $('#wordpress-gdpr-popup-privacy-settings-services-content-description-' + id);
356                if (description.css('display') == 'none') {
357                    description.slideDown();
358                    fa.removeClass('fa-caret-right').addClass('fa-caret-down');
359                } else {
360                    description.slideUp();
361                    fa.removeClass('fa-caret-down').addClass('fa-caret-right');
362                }
363            });
364        },
365        checkPrivacySettings : function() {
366
367            var that = this;
368            var settings = {};
369            var switches = $('.gdpr-service-switch');
370
371            $.each(switches, function() {
372                var serviceID = $(this).data('id');
373                settings[serviceID] = serviceID;
374            });
375
376            $.ajax({
377                type : 'post',
378                url : that.settings.ajaxURL,
379                dataType : 'json',
380                data : {
381                    action : 'check_privacy_settings',
382                    settings : settings,
383                },
384                success : function( response ) {
385
386                    if(localStorage && response !== 0) {
387                        response.version = that.settings.version;
388                        localStorage.setItem('wordpress_gdpr_services_allowed_temp', JSON.stringify(response));
389                    }
390
391                    that.executeServices(response);
392                },
393                error: function (xhr, ajaxOptions, thrownError) {
394                    console.log(xhr);
395                    console.log(ajaxOptions);
396                    console.log(thrownError);
397                }
398             });
399        },
400        executeServices : function(services) {
401
402            var that = this;
403
404            if(!services) {
405                return;
406            }
407
408            window.dataLayer = window.dataLayer || [];
409
410            if(that.settings.consentModeV2 == "1") {
411                window.gtag = function() { dataLayer.push(arguments); }
412                window.gtag('consent', 'default', {
413                  ad_storage: 'denied',
414                  analytics_storage: 'denied',
415                  ad_user_data: 'denied',
416                  ad_personalization: 'denied',
417                  wait_for_update: 500
418                });
419            }
420
421            var that = this;
422            var obj = {'event' : 'consent_status'};
423            $.each(services, function(i, index) {
424
425                if(index.allowed && !that.privacySettingsLoaded[i]) {
426
427                    if(index.head !== "") {
428                        $("head").append(index.head);
429                    }
430
431                    if(index.body !== "") {
432                        $(index.body).prependTo($('body'));
433                    }
434                }
435
436                if(index.adsense == "1" && !index.allowed && that.privacySettingsLoaded[i]) {
437
438                    var adsExists = $(".adsbygoogle");
439                    if(adsExists.length > 0 && that.getCookie('wordpress_gdpr_adsense_allowed') !== "true") {
440                        adsExists.remove();
441                    } 
442                }
443
444                if(index.adwords == "1" && index.allowed && that.settings.consentModeV2 == "1") {
445                    window.gtag('consent', 'update', {
446                      'ad_storage': 'granted',
447                      'ad_user_data': 'granted',
448                      'ad_personalization': 'granted',
449                    });
450                }
451
452                if(index.analytics == "1" && index.allowed && that.settings.consentModeV2 == "1") {
453                    window.gtag('consent', 'update', {
454                      'analytics_storage': 'granted',
455                    });
456                }
457
458                var checkbox_exists = $('input[name="' + i + '"]') ;
459                if(checkbox_exists.length > 0) {
460                    if(index.allowed) {
461                        checkbox_exists.prop('checked', true);
462                        that.privacySettingsLoaded[i] = true;
463                    } else {
464                        checkbox_exists.prop('checked', false);
465                        that.privacySettingsLoaded[i] = false;
466                    }
467                }
468                
469                obj[index.name] = index.allowed;
470
471                if(checkbox_exists.length > 0 && !that.privacySettingsCheckPerformed) {
472
473                    checkbox_exists.on('change', function(e) {
474
475                        var checked = $(this).prop('checked');
476                        var name = $(this).prop('name');
477
478                        $('.wordpress-gdpr-privacy-settings-popup-message').fadeIn();
479
480                        $.ajax({
481                            type : 'post',
482                            url : that.settings.ajaxURL,
483                            dataType : 'json',
484                            data : {
485                                action : 'update_privacy_setting',
486                                setting : name,
487                                checked : checked,
488                            },
489                            success : function( response ) {
490
491                                if(localStorage) {
492                                    localStorage.removeItem('wordpress_gd
492pr_services_allowed_temp');
493                                }
494
495                                setTimeout(function(){ $('.wordpress-gdpr-privacy-settings-popup-message').fadeOut(); }, 1500);                                        
496
497                                var index = response[name];
498                                if(index.head !== "" && index.allowed && !that.privacySettingsLoaded[name]) {
499                                    $("head").append(index.head);
500                                }
501                                if(index.body !== "" && index.allowed && !that.privacySettingsLoaded[name]) {
502                                    $(index.body).prependTo($('body'));
503                                }
504
505                                if(index.adsense == "1" && !index.allowed && !that.privacySettingsLoaded[name]) {
506                                    var adsExists = $(".adsbygoogle");
507
508                                    if(adsExists.length > 0 && that.getCookie('wordpress_gdpr_adsense_allowed') !== "true") {
509                                        adsExists.remove();
510                                    }
511                                }
512                                
513                                var obj = {};
514                                obj[index.name] = index.allowed;
515                                window.dataLayer.push( { 'event' : 'consent_status', 'consents': obj } );
516
517                                if(index.analytics == "1" && index.allowed && that.settings.consentModeV2 == "1") {
518                                    window.gtag('consent', 'update', {
519                                      'analytics_storage': 'granted',
520                                    });
521                                }
522
523                                if(index.adwords == "1" && index.allowed && that.settings.consentModeV2 == "1") {
524                                    window.gtag('consent', 'update', {
525                                      'ad_storage': 'granted',
526                                      'ad_user_data': 'granted',
527                                      'ad_personalization': 'granted',
528                                    });
529                                }
530
531                                var checkbox_exists = $('input[name="' + name + '"]') ;
532                                if(checkbox_exists.length > 0) {
533                                    if(index.allowed) {
534                                        checkbox_exists.prop('checked', true);
535                                        that.privacySettingsLoaded[name] = true;
536                                    } else {
537                                        checkbox_exists.prop('checked', false);
538                                    }
539                                }
540                            }
541                        });
542                    });
543                }
544            });
545
546            that.privacySettingsCheckPerformed = true;
547
548            if(that.settings.consentModeV2 == "1") {
549                window.dataLayer.push( { 'event' : 'consent_status', 'consents': obj } );
550            }
551        },
552        get_current_page_id : function() {
553            var page_body = $('body.page');
554
555            var id = 0;
556
557            if(page_body) {
558                var page_body_class = page_body.attr('class')
559
560                if(page_body_class || page_body_class != null) {
561                    if(page_body_class.length > 1) {
562                        var page_body_class_list = page_body_class.split(/\s+/);
563
564                        $.each(page_body_class_list, function(index, item) {
565                            if (item.indexOf('page-id') >= 0) {
566                                var item_arr = item.split('-');
567                                id =  item_arr[item_arr.length -1];
568                                return false;
569                            }
570                        });
571                    }
572                }
573            }
574            return id;
575        },
576        getUsersCountry : function(callback) {
577            var that = this;
578
579            $.ajax({
580                url: "https://get.geojs.io/v1/ip/geo.json",
581                type: 'get',
582                dataType: 'json',
583                success : function( response ) {
584                    callback(response.country_code);
585                },
586                error: function(jqXHR, textStatus, errorThrown) {
587                    console.log(jqXHR);
588                    console.log(textStatus);
589                    console.log(errorThrown);
590                }
591            });
592        },
593        commentFormprivacyPolicyTermsAcceptance : function() {
594            var that = this;
595
596            var submit = $('#commentform input[type="submit"]');
597            if(submit.length < 1) {
598                return false;
599            }
600
601            var checkbox = $('#commentform #privacy_policy');
602            if(checkbox.length < 1) {
603                return false;
604            }
605
606            submit.on('click', function(e) {
607                var checkboxChecked = checkbox.is(':checked');
608                if(!checkboxChecked) {
609                    e.preventDefault();
610                    alert(that.settings.acceptanceText);
611                    return false;
612                }
613
614                $.ajax({
615                    type : 'post',
616                    url : that.settings.ajaxURL,
617                    dataType : 'json',
618                    data : {
619                        action : 'wordpress_gdpr_update_privacy_policy_terms',
620                        setting : 'wordpress_gdpr_privacy_policy_accepted',
621                        checked : checkboxChecked,
622                    }
623                });
624                return true;                
625            });
626        },
627        privacyPolicyTermsAcceptance : function() {
628            var that = this;
629
630            if($('#accept-privacy-policy-checkbox').length < 1 && $('#accept-terms-conditions-checkbox').length < 1) {
631                return false;
632            }
633
634            $('#accept-privacy-policy-checkbox').on('click', function(e) {
635                var name = $(this).prop('name');
636                var checked = $(this).prop('checked');
637
638                if(!checked) {
639                    alert(that.settings.acceptanceText);
640                    return false;
641                }
642                
643                $.ajax({
644                    type : 'post',
645                    url : that.settings.ajaxURL,
646                    dataType : 'json',
647                    data : {
648                        action : 'wordpress_gdpr_update_privacy_policy_terms',
649                        setting : name,
650                        checked : checked,
651                    },
652                });
653            });
654
655            $('#accept-terms-conditions-checkbox').on('click', function(e) {
656                var name = $(this).prop('name');
657                var checked = $(this).prop('checked');
658
659                // if(!checked) {
660                //     alert(that.settings.termsAcceptanceText);
661                //     return false;
662                // }
663                
664                $.ajax({
665                    type : 'post',
666                    url : that.settings.ajaxURL,
667                    dataType : 'json',
668                    data : {
669                        action : 'wordpress_gdpr_update_privacy_policy_terms',
670                        setting : name,
671                        checked : checked,
672                    },
673                });
674            });
675        },
676        //////////////////////
677        ///Helper Functions///
678        //////////////////////
679        deleteAllCookies : function() {
680            var cookies = document.cookie.split(";");
681            for (var i = 0; i < cookies.length; i++) {
682                var cookie = cookies[i];
683                var eqPos = cookie.indexOf("=");
684                var name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;
685                document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";
686            }
687
688        },
689        isEmpty: function(obj) {
690
691            if (obj == null)        return true;
692            if (obj.length > 0)     return false;
693            if (obj.length === 0)   return true;
694
695            for (var key in obj) {
696                if (hasOwnProperty.call(obj, key)) return false;
697            }
698
699            return true;
700        },
701        sprintf: function parse(str) {
702            var args = [].slice.call(arguments, 1),
703                i = 0;
704
705            return str.replace(/%s/g, function() {
706                return args[i++];
707
708            });
709        },
710        getCookie: function(cname) {
711            var name = cname + "=";
712            var ca = document.cookie.split(';');
713            for(var i=0; i<ca.length; i++) {
714                var c = ca[i];
715                while (c.charAt(0)==' ') c = c.substring(1);
716                if (c.indexOf(name) === 0) return c.substring(name.length, c.length);
717            }
718            return "";
719        },
720        createCookie: function(name, value, days) {
721            var expires = "";
722
723            if (days) {
724                var date = new Date();
725                date.setTime(date.getTime() + (days*24*60*60*1000));
726                var expires = "; expires="+date.toGMTString();
727            }
728
729            document.cookie = name + "=" + value+expires + "; path=/";
730        },
731        deleteCookie: function(name) {
732            this.createCookie(name, '', -10);
733        },
734        getParameterByName: function(name, url) {
735            if (!url) url = window.location.href;
736            name = name.replace(/[\[\]]/g, "\\$&");
737            var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)", "i"),
738                results = regex.exec(url);
739            if (!results) return null;
740            if (!results[2]) return '';
741            return decodeURIComponent(results[2].replace(/\+/g, " "));
742        },
743        isInArray : function (value, array) {
744            return array.indexOf(value) > -1;
745        }
746    } );
747
748    // Constructor wrapper
749    $.fn[ pluginName ] = function( options ) {
750        return this.each( function() {
751            if ( !$.data( this, "plugin_" + pluginName ) ) {
752                $.data( this, "plugin_" +
753                    pluginName, new Plugin( this, options ) );
754            }
755        } );
756    };
757
758    $(document).ready(function() {
759
760        $( "body" ).gdpr( 
761            gdpr_options
762        );
763
764    } );
765
766})( 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.