1/** 2 * Privacy Settings Events. 3 * 4 * @package tmbi-privacy-settings-events 5 */ 6 7/** 8 * Filter to handle Privacy Settings - Form Submit Event. 9 */ 10wp.hooks.addFilter( 11 'tda_opt_out_privacy_filter', 12 'tmbi-data-analytics', 13 function( eventData, digitalData ) { 14 15 var payload = {}; 16 17 if ( undefined !== digitalData.page && undefined !== digitalData.page.optin ) { 18 if ( undefined !== digitalData.page.optin.donotsell ) { 19 payload[ 'cd_do_not_sell' ] = digitalData.page.optin.donotsell; 20 } 21 22 if ( undefined !== digitalData.page.optin.deletedata ) { 23 payload[ 'cd_delete_data' ] = digitalData.page.optin.deletedata; 24 } 25 26 if ( undefined !== digitalData.page.optin.access ) { 27 payload[ 'cd_access' ] = digitalData.page.optin.access; 28 } 29 } 30 31 eventData.eventLabel = null; 32 eventData.payload = payload; 33 34 return eventData; 35 36 } 37); 38 39/** 40 * Action to handle Submit Event 41 */ 42wp.hooks.addAction( 43 'tda_opt_out_privacy', 44 'tmbi-data-analytics', 45 function( digitalData ) { 46 var filteredData = wp.hooks.applyFilters( 'tda_opt_out_privacy_filter', {}, digitalData ); 47 wp.hooks.doAction( 'tmbi_ga_send_event', 'privacy_setting', 'submit', digitalData, filteredData.eventLabel, filteredData.payload ); 48 } 49); 50 51/** 52 * Filter to handle Privacy Settings - Validation error Event. 53 */ 54wp.hooks.addFilter( 55 'tda_opt_out_privacy_validation_error_filter', 56 'tmbi-data-analytics', 57 function ( eventData, digitalData ) { 58 59 var payload = {}; 60 61 if ( undefined !== digitalData.page ) { 62 payload[ 'cd_error_type' ] = 'privacy form'; 63 } 64 65 eventData.eventLabel = null; 66 eventData.payload = payload; 67 68 return eventData; 69 70 } 71); 72 73/** 74 * Action to handle Validation Error Event 75 */ 76wp.hooks.addAction( 77 'tda_opt_out_privacy_validation_error', 78 'tmbi-data-analytics', 79 function( digitalData ) { 80 var filteredData = wp.hooks.applyFilters( 'tda_opt_out_privacy_validation_error_filter', {}, digitalData ); 81 wp.hooks.doAction( 'tmbi_ga_send_event', 'privacy_setting', 'validation_failed', digitalData, filteredData.eventLabel, filteredData.payload ); 82 } 83);
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.