PageSourceSearch

https://www.talkshoe.com/wp-content/plugins/gdpr-cookie-compliance-addon/assets/js/gdpr_cc_addon.js?ver=3.2.6

js talkshoe.com collected 2026-09-24 09:05:20 UTC 11,725 bytes, 353 lines download raw bytes

1(function (window) {
2	jQuery(document).ready(function() {
3		var addon_script_delay_1 = typeof  moove_frontend_gdpr_scripts !== 'undefined' && typeof moove_frontend_gdpr_scripts.script_delay !== 'undefined' && parseInt( moove_frontend_gdpr_scripts.script_delay ) ? parseInt( moove_frontend_gdpr_scripts.script_delay ) : 0;
4
5		function addon_script_1_init() {
6			try	{
7			  var gdpr_last = +new Date();
8			  var gdpr_delay = 100; // default gdpr_delay
9
10			  // Manage event queue
11			  var gdpr_stack = [];
12
13			  function gdpr_dc_callback() {
14			    var gdpr_dc_now = +new Date();
15			    if (gdpr_dc_now - gdpr_last > gdpr_delay) {
16			      for (var i = 0; i < gdpr_stack.length; i++) {
17			        gdpr_stack[i]();
18			      }
19			      gdpr_last = gdpr_dc_now;
20			    }
21			  }
22
23			  // Public interface
24			  var GDPR_ON_DOM_CHANGE = function (fn, gdpr_dc_newdelay) {
25			    if (gdpr_dc_newdelay) {
26			    	gdpr_delay = gdpr_dc_newdelay;
27			    }
28			    gdpr_stack.push(fn);
29			  };
30
31			  // gdpr_dc_naive approach for compatibility
32			  function gdpr_dc_naive() {
33
34			    var gdpr_last = document.getElementsByTagName('*');
35			    var gdpr_lastlen = gdpr_last.length;
36			    var timer = setTimeout(
37			    	function gdpr_dc_check() {
38				      var current = document.getElementsByTagName('*');
39				      var len = current.length;
40				      if (len != gdpr_lastlen) {
41			          gdpr_last = [];
42				      }
43				      for (var i = 0; i < len; i++) {
44			          if (current[i] !== gdpr_last[i]) {
45			            gdpr_dc_callback();
46			            gdpr_last = current;
47			            gdpr_lastlen = len;
48			            break;
49			          }
50				      }
51			      setTimeout( gdpr_dc_check, gdpr_delay );
52			    }, gdpr_delay);
53			  }
54
55		    //
56		    //  Check for mutation events support
57		    //
58
59		    var support = {};
60
61		    var el = document.documentElement;
62		    var remain = 3;
63
64		    // gdpr_dc_callback for the gpdr_dc_tests
65		    function gdpr_dc_decide() {
66		      if (support.DOMNodeInserted) {
67		        window.addEventListener("DOMContentLoaded", function () {
68		          if (support.DOMSubtreeModified) { // for FF 3+, Chrome
69		            el.addEventListener('DOMSubtreeModified', gdpr_dc_callback, false);
70		          } else { // for FF 2, Safari, Opera 9.6+
71		            el.addEventListener('DOMNodeInserted', gdpr_dc_callback, false);
72		            el.addEventListener('DOMNodeRemoved', gdpr_dc_callback, false);
73		          }
74		        }, false);
75		      } else if (document.onpropertychange) { // for IE 5.5+
76		        document.onpropertychange = gdpr_dc_callback;
77		      } else { // fallback
78		        gdpr_dc_naive();
79		      }
80		    }
81
82		    // checks a particular event
83		    function gpdr_dc_test(event) {
84		      el.addEventListener(event, function fn() {
85		        support[event] = true;
86		        el.removeEventListener(event, fn, false);
87		        if (--remain === 0) gdpr_dc_decide();
88		      }, false);
89		    }
90
91		    // attach gpdr_dc_test events
92		    if (window.addEventListener) {
93		      gpdr_dc_test('DOMSubtreeModified');
94		      gpdr_dc_test('DOMNodeInserted');
95		      gpdr_dc_test('DOMNodeRemoved');
96		    } else {
97		      gdpr_dc_decide();
98		    }
99
100		    // do the gdpr_dc_dummy gpdr_dc_test
101		    var gdpr_dc_dummy = document.createElement("div");
102		    el.appendChild(gdpr_dc_dummy);
103		    el.removeChild(gdpr_dc_dummy);
104
105		    // expose
106		    window.GDPR_ON_DOM_CHANGE = GDPR_ON_DOM_CHANGE;
107			} catch(err) {
108				console.warn(err);
109			}
110		}
111		if ( addon_script_delay_1 > 0 ) {
112			setTimeout( function(){
113				addon_script_1_init()
114			}, addon_script_delay_1 );
115		} else {
116			addon_script_1_init();
117		}
118	});
119})(window);
120
121(function($) {
122  $(document).ready(function() {
123  	var addon_script_delay_2 = typeof  moove_frontend_gdpr_scripts !== 'undefined' && typeof moove_frontend_gdpr_scripts.script_delay !== 'undefined' && parseInt( moove_frontend_gdpr_scripts.script_delay ) ? parseInt( moove_frontend_gdpr_scripts.script_delay ) : 0;
124
125  	function addon_script_2_init() {
126  		try	{
127
128	  		if ( typeof moove_frontend_gdpr_scripts.ifbc !== 'undefined' ) {
129	  			if ( typeof moove_frontend_gdpr_scripts.ifbc_excl !== 'undefined' ) {
130						var ifb_excl 	= JSON.parse( moove_frontend_gdpr_scripts.ifbc_excl );
131					} else {
132						var ifb_excl = {};
133					}
134	  			function gdpr_ifbc_js_block_iframes( ) {
135	  				$(document).find('iframe').each(function() {
136	  					if ( ! $(this).attr('data-gdpr-iframesrc') ) {
137	  						var src 			= $(this).attr('src');    						
138	  						if ( src ) {
139	  							var change_iframe = true;
140	  							for (var i = ifb_excl.length - 1; i >= 0; i--) {
141	  								if (  src.indexOf( ifb_excl[i] ) >= 0 ) {
142	  									change_iframe = false;
143	  								}
144	  							}
145
146	  							if ( change_iframe ) {
147		    						var gdpr_src 	= moove_frontend_gdpr_scripts.ajaxurl;
148		    						var block_src = gdpr_src + '?action=gdpr_iframe_blocker&src=' + src;
149		    						$(this).attr('src', block_src);
150		    						$(this).attr('data-gdpr-iframesrc', src);
151		    						$(this).closest('.fb-video').addClass('fb-blocked-gdpr');
152		    					}
153	    					}
154	  					}
155	  				});
156	  			}
157	  			if ( typeof $(document).moove_gdpr_read_cookies !== 'undefined' ) {
158	    			var cookies = $(document).moove_gdpr_read_cookies();
159	    			if ( cookies ) {
160		          if ( moove_frontend_gdpr_scripts.ifbc === 'strict' && cookies && parseInt( cookies.strict ) === 0 ) {
161		          	GDPR_ON_DOM_CHANGE(gdpr_ifbc_js_block_iframes);
162		          }
163
164		          if ( moove_frontend_gdpr_scripts.ifbc === 'thirdparty' && cookies && parseInt( cookies.thirdparty ) === 0 ) {
165		          	GDPR_ON_DOM_CHANGE(gdpr_ifbc_js_block_iframes);
166		          }
167
168		          if ( moove_frontend_gdpr_scripts.ifbc === 'advanced' && cookies && parseInt( cookies.advanced ) === 0 ) {
169		          	GDPR_ON_DOM_CHANGE(gdpr_ifbc_js_block_iframes);
170		          }
171		        } else {
172		        	GDPR_ON_DOM_CHANGE(gdpr_ifbc_js_block_iframes);
173		        }
174		      }
175
176	      }
177	  	} catch( err ) {
178	  		console.warn(err);
179	  	}
180
181	  	function gdpr_cookie_compliance_setup_get_session( event_type ) {
182	  		var gdpr_uvid_session = false;
183	  		
184	  		if ( typeof( sessionStorage ) !== "undefined" ) {
185	  			gdpr_uvid_session = sessionStorage.getItem("gdpr_uvid");
186	  			if ( ! gdpr_uvid_session ) {
187	  				sessionStorage.setItem( "gdpr_uvid", moove_frontend_gdpr_scripts.gdpr_uvid );
188	  				gdpr_uvid_session = sessionStorage.getItem("gdpr_uvid");
189	  			}				
190				}
191			
192				return gdpr_uvid_session;
193	  	}
194	  	
195	  	function gdpr_cookie_compliance_get_cookies(){
196		  	var pairs = document.cookie.split(";");
197		  	var cookies = {};
198		  	for (var i=0; i<pairs.length; i++){
199		    	var pair = pairs[i].split("=");
200		    	cookies[(pair[0]+'').trim()] = unescape(pair[1]);
201		  	}
202		  	return cookies;
203			}
204
205			$(document).on('click','.gdpr-cd-details-toggle', function(e){
206				e.preventDefault();
207				var _this = $(this);
208				var text = _this.text();
209				var text2 = _this.attr('data-close');
210				_this.text(text2).append('<span></span>');
211				_this.attr('data-close',text);
212				_this.toggleClass('cd-details-open');
213				_this.parent().find('.gdpr-table-responsive-cnt').toggle();
214
215			});
216
217			function gdpr_cookie_compliance_set_cookies(name, value, days){
218		  	var expires;
219	      if (days) {
220	        var date = new Date();
221	        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
222	        expires = "; expires=" + date.toGMTString();
223	      } else {
224	        expires = "";
225	      }
226
227	      document.cookie = encodeURIComponent(name) + "=" + encodeURIComponent(value) + expires + "; path=/";
228	      (JSON.parse(value));
229			}
230
231			var started = false;
232			var timeout_req = 2000;
233			var gdpr_timeout = 0;
234			var analytics_inserted = [];
235			$.fn.gdpr_cookie_compliance_analytics = function(event, extras) {
236				if ( typeof ( analytics_inserted[event] ) === 'undefined' || analytics_inserted[event] !== JSON.stringify( extras ) ) {
237					analytics_inserted[event] = JSON.stringify( extras );
238					if ( moove_frontend_gdpr_scripts.stats_enabled ) {
239						var gdpr_uvid_session = gdpr_cookie_compliance_setup_get_session( event );				
240						if ( !started ) {
241							gdpr_timeout = 0;
242						} else {
243							gdpr_timeout = gdpr_timeout + timeout_req;
244						}
245						started = true;
246
247						if ( event === 'script_inject' ) {
248				    		if ( typeof( localStorage ) !== "undefined" ) {
249				    			gdpr_uvid_session = localStorage.getItem("gdpr_uvid");
250				    			if ( ! gdpr_uvid_session ) {
251				    				localStorage.setItem( "gdpr_uvid", moove_frontend_gdpr_scripts.gdpr_uvid );
252				    				gdpr_uvid_session = sessionStorage.getItem("gdpr_uvid");
253				    			} else {
254				    				if ( typeof( sessionStorage ) !== "undefined" ) {
255						    			_gdpr_uvid_session = sessionStorage.getItem("gdpr_uvid");
256						    			if ( ! _gdpr_uvid_session ) {
257						    				_gdpr_uvid_session.setItem( "gdpr_uvid", moove_frontend_gdpr_scripts.gdpr_uvid );
258						    				gdpr_uvid_session = sessionStorage.getItem("gdpr_uvid");
259						    			}
260						    			_event 		= 'existing_session';
261						    			_extras 	= '';
262						    			try {
263						            jQuery().gdpr_cookie_compliance_analytics_with_uvid( _event, _extras, _gdpr_uvid_session );
264						            jQuery().gdpr_cookie_compliance_analytics_with_uvid( 'script_injected', extras, _gdpr_uvid_session );
265							        } catch(err) {
266							        	// error
267							        }
268										}		
269				    			}				
270							}				
271						} 
272						setTimeout( function(){	
273							if ( gdpr_uvid_session && event ) {
274								$.post(
275					              	moove_frontend_gdpr_scripts.ajaxurl,
276					              	{
277						                action: 	"moove_gdpr_premium_save_analytics",
278						                event: 		event,
279						                extras: 	extras,
280						                gdpr_uvid: 	gdpr_uvid_session,
281						            },
282					              	function( msg ) {
283					              		// console.warn(gdpr_uvid_session);
284					              		if ( gdpr_timeout >= timeout_req ) {
285					              			gdpr_timeout = gdpr_timeout - timeout_req;
286					              		}
287					              	}
288					            );
289							}
290						}, gdpr_timeout );	
291					}
292				}
293			}	
294
295			$.fn.gdpr_cookie_compliance_consent_log = function( value ) {
296				if ( moove_frontend_gdpr_scripts.consent_log_enabled ) {
297					$.post(
298	        	moove_frontend_gdpr_scripts.ajaxurl,
299	        	{
300	            action: 	"save_consent_log",
301	            extras: 	value,
302	        	},
303	        	function( msg ) {
304	        		console.warn( msg );        		
305	        	}
306	      	);
307				}
308			}	
309
310			$.fn.gdpr_cookie_compliance_analytics_with_uvid = function(event, extras, uvid) {
311				if ( moove_frontend_gdpr_scripts.stats_enabled ) {
312					var gdpr_uvid_session = uvid;				
313					if ( !started ) {
314						gdpr_timeout = 0;
315					} else {
316						gdpr_timeout = gdpr_timeout + timeout_req;
317					}
318					started = true;
319
320					setTimeout( function(){	
321						if ( gdpr_uvid_session && event ) {
322							$.post(
323	            	moove_frontend_gdpr_scripts.ajaxurl,
324	            	{
325	                action: 	"moove_gdpr_premium_save_analytics",
326	                event: 		event,
327	                extras: 	extras,
328	                gdpr_uvid: 	gdpr_uvid_session,
329	            	},
330	            	function( msg ) {
331	            		// console.warn(gdpr_uvid_session);
332	            		if ( gdpr_timeout >= timeout_req ) {
333	            			gdpr_timeout = gdpr_timeout - timeout_req;
334	            		}
335	            	}
336	          	);
337						}
338					}, gdpr_timeout );
339					
340				}
341			}
342  	}
343
344  	if ( addon_script_delay_2 > 0 ) {
345			setTimeout( function(){
346				addon_script_2_init()
347			}, addon_script_delay_2 );
348		} else {
349			addon_script_2_init();
350		}
351 	});
352})(jQuery);
353

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.