1function copylink(){ 2 var clink = jQuery('[data-gttaction=copy] a'); 3 var copyclipboard = jQuery('#gtt-current-link'); 4 copyclipboard.focus(); 5 copyclipboard.select(); 6 try { 7 var stext = document.execCommand('copy'); 8 var mtext = stext ? 'Copied' : 'Not copied'; 9 } catch (err) { 10 mtext = 'Unable to copy'; 11 } 12 jQuery('.gttactionmsg').remove(); 13 14 var litem = jQuery( '<div />'); 15 litem.attr( 'class', 'elementor-icon-list-item elementor-inline-item gttactionmsg' ); 16 litem.text( mtext ); 17 clink.parent().parent().append(litem); 18 setTimeout(function(){ 19 jQuery('.gttactionmsg').remove(); 20 },2000); 21} 22jQuery( document ).ready(function($) { 23 //Change Language Switcher Icon 24 $('.gtt-language-switcher .trp-ls-shortcode-current-language a').html('<span class="gtt-globe-icon"></span>'); 25 26 var slink = jQuery('[data-gttaction=send] a'); 27 if(typeof slink !== 'undefined' && slink !== false){ 28 var sendlink = 'mailto:?subject='; 29 sendlink = sendlink + jQuery('title').text(); 30 sendlink = sendlink + '&body='; 31 sendlink = sendlink + jQuery(location).attr('href'); 32 slink.attr('href',sendlink); 33 } 34 var clink = jQuery('[data-gttaction=copy] a'); 35 clink.click(function(event){ 36 event.preventDefault(); 37 }); 38 if(typeof clink !== 'undefined' && clink !== false){ 39 clink.attr('onclick','javascript:copylink();'); 40 var lint = jQuery( '<input />'); 41 lint.attr( 'type', 'text' ); 42 lint.attr( 'id', 'gtt-current-link' ); 43 lint.attr( 'value', jQuery(location).attr('href') ); 44 lint.attr( 'aria-label', jQuery('title').text() ); 45 lint.attr( 'tabindex', '-1' ); 46 lint.attr( 'autocomplete', 'off' ); 47 lint.attr( 'style', 'position: absolute; top: -9999px; left: -9999px;' ); 48 clink.parent().parent().append(lint); 49 } 50 51 // Equal Height for Services card inner elements 52 $('body').find('.gtt-services-cards').each(function(wrap){ 53 var maxImg = maxTitle = maxDesc = maxCTA = 0; 54 $(this).find('.elementor-column').each(function(col){ 55 var currentImg = $(this).find('.elementor-image-box-img img').height(); 56 var currentTitle = $(this).find('.elementor-image-box-title').height(); 57 var currentDesc = $(this).find('.elementor-image-box-description').height(); 58 var currentCTA = $(this).find('.elementor-widget-button').height(); 59 if( maxImg < currentImg){ 60 maxImg = currentImg; 61 } 62 if( maxTitle < currentTitle){ 63 maxTitle = currentTitle; 64 } 65 if( maxDesc < currentDesc){ 66 maxDesc = currentDesc; 67 } 68 if( maxCTA < currentCTA){ 69 maxCTA = currentCTA; 70 } 71 }); 72 $(this).find('.elementor-column').each(function(e){ 73 $(this).find('.elementor-image-box-img img').height(maxImg); 74 $(this).find('.elementor-image-box-img').width('auto'); 75 if ( $(window).width() > 768 ) { 76 $(this).find('.elementor-image-box-title').height(maxTitle); 77 $(this).find('.elementor-image-box-description').height(maxDesc); 78 $(this).find('.elementor-widget-button').height(maxCTA); 79 } 80 }); 81 } ); 82 83 84 /* TOGGLING NESTED ul */ 85 jQuery(".gtt-sort-field .gtt-dropdown .gtt-default-option").click(function() { 86 jQuery(".gtt-sort-field .gtt-dropdown ul").toggle(); 87 }); 88 /* SELECT OPTIONS AND HIDE OPTION AFTER SELECTION */ 89 jQuery(".gtt-sort-field .gtt-dropdown ul li").click(function() { 90 var text = jQuery(this).text(); 91 jQuery(".gtt-sort-field .gtt-dropdown .gtt-default-option").text( text ); 92 jQuery(".gtt-sort-field .gtt-dropdown ul").hide(); 93 }); 94 jQuery(".gtt-sort-field .gtt-dropdown ul li input[type=radio][name=sortby]").on('change', function() { 95 var pageid = jQuery(this).attr('data-id'); 96 location.href = jQuery(pageid).attr('href'); 97 }); 98 /* HIDE OPTIONS IF CLICKED ANYWHERE ELSE ON PAGE */ 99 jQuery(document).bind('click', function(e) { 100 var $clicked = jQuery(e.target); 101 if (! $clicked.parents().hasClass("gtt-dropdown")) 102 jQuery(".gtt-sort-field .gtt-dropdown ul").hide(); 103 }); 104 /* GET PARAMETER FROM URL AND MAKE CHECKED RADIO */ 105 const gttparams = new URL(location.href).searchParams; 106 if(typeof(gttparams.get('order')) !== "undefined") { 107 if (gttparams.get('order')!==null) { 108 var dataid = gttparams.get('order').toUpperCase(); 109 var data_title = ''; 110 111 if(dataid == 'OLDEST'){ 112 113 jQuery("input[value='Oldest']").each(function( index ) { 114 jQuery(this).prop('checked', true); 115 jQuery(this).addClass('checked'); 116 }); 117 //jQuery("input[value='Oldest']").prop('checked', true); 118 data_title = jQuery("input[value='Oldest']").eq( 1 ).attr("data-title"); 119 } 120 else if(dataid == 'NEWEST'){ 121 122 jQuery("input[value='Newest']").each(function( index ) { 123 jQuery(this).prop('checked', true); 124 jQuery(this).addClass('checked'); 125 }); 126 127 data_title = jQuery("input[value='Newest']").eq( 1 ).attr("data-title"); 128 } 129 jQuery('.gtt-sort-field .gtt-dropdown .gtt-default-option').text( data_title ); 130 }else{ 131 jQuery('.gtt-sort-field .gtt-dropdown #newest').prop('checked', true); 132 jQuery('.gtt-sort-field .gtt-dropdown #newest').addClass('checked'); 133 } 134 } 135 else{ 136 jQuery('.gtt-sort-field .gtt-dropdown #newest').prop('checked', true); 137 jQuery('.gtt-sort-field .gtt-dropdown #newest').addClass('checked'); 138 } 139 140 141 /*search filter customized */ 142 jQuery('input[name="_sf_custom_sort_order"]').on("change", 143 function(){ 144 var current_value = this.value; 145 jQuery("input[name='_sf_sort_order[]']:checked").removeAttr("checked"); 146 //jQuery("input[name='_sf_sort_order[]'][value='" + current_value + "']").attr("checked", "checked"); 147 jQuery("input[name='_sf_sort_order[]'][value='" + current_value + "']").prop( "checked", true ); 148 jQuery("input[name='_sf_sort_order[]']").trigger("change"); 149 }); 150 151
152 /* search filter toggle */ 153 jQuery(document).on("click",".searchandfilter ul li h4", function () { 154 155 jQuery(this).toggleClass('collapse'); 156 jQuery(this).next().slideToggle(); 157 }); 158 159 160 jQuery(".searchandfilter ul li h4").slice(1).slice(1).each(function(argument) { 161 jQuery(this).next().slideToggle(); 162 }); 163 164 165 /* SIDEBAR TOGGLES */ 166 jQuery(".gtt-filter-open-btn a").on("click", function (e) { 167 e.preventDefault(); 168 jQuery(".gtt-sidebar-filters").addClass("gtt-sidebar-opened"); 169 jQuery("body").addClass("filter-opened"); 170 }); 171 jQuery(".gtt-filter-close-btn a").on("click", function (e) { 172 e.preventDefault(); 173 jQuery(".gtt-sidebar-filters").removeClass("gtt-sidebar-opened"); 174 jQuery("body").removeClass("filter-opened"); 175 }); 176 jQuery(document).on("click", function (e) { 177 if (jQuery(e.target).closest(".gtt-sidebar-opened").length === 0 && jQuery(e.target).closest(".gtt-filter-open-btn a").length === 0) { 178 jQuery(".gtt-sidebar-filters").removeClass("gtt-sidebar-opened"); 179 jQuery("body").removeClass("filter-opened"); 180 } 181 }); 182 183 184 /* SET DATA LAYER */ 185 if(typeof gtt_tracking_fields !== 'undefined' && typeof gtt_tracking_fields.page_type_text_website_form_id !== 'undefined' && gtt_tracking_fields.page_type_text_website_form_id !== ""){ 186 jQuery("body").prepend(gtt_tracking_fields.page_type_text_website_form_id); 187 } 188 if(typeof gtt_tracking_fields !== 'undefined' && typeof gtt_tracking_fields.acronym !== 'undefined' && gtt_tracking_fields.acronym !== ""){ 189 jQuery("body").prepend(gtt_tracking_fields.acronym); 190 } 191 if(typeof gtt_tracking_fields !== 'undefined' && typeof gtt_tracking_fields.content_type !== 'undefined' && gtt_tracking_fields.content_type !== ""){ 192 jQuery("body").prepend(gtt_tracking_fields.content_type); 193 } 194 195 //Lazy Load images fix for Ajax Load 196 $( document ).ajaxComplete(function( event, xhr, settings ) { 197 if(settings.url.indexOf("/?sf_data=results") <= 1 ){ 198 return; 199 } 200 $('.jetpack-lazy-image').each(function() { 201 e = $(this); 202 // if (!(e instanceof HTMLImageElement)) return; 203 const i = e.data("lazy-srcset"), 204 o = e.data("lazy-sizes"); 205 e.removeAttr("data-lazy-srcset"), e.removeAttr("data-lazy-sizes"), e.removeAttr("data-lazy-src"), e.addClass("jetpack-lazy-image--handled"), e.data("lazy-loaded", 1), o && e.attr("sizes", o), i ? e.attr("srcset", i) : e.removeAttr("srcset"), e.attr("loading", "eager"); 206 }); 207 }); 208 209 /* Disable Single Page of Awards Analysts */ 210 if(jQuery(".post-type-archive-awards-analysts .archive_list .elementor-post__thumbnail__link").length>0){ 211 jQuery(".post-type-archive-awards-analysts .archive_list .elementor-post__thumbnail__link").removeAttr("href"); 212 } 213 if(jQuery(".post-type-archive-awards-analysts .archive_list .elementor-post__title a").length>0){ 214 jQuery(".post-type-archive-awards-analysts .archive_list .elementor-post__title a").removeAttr("href"); 215 } 216 217 /* Target on lets talk form section */ 218 jQuery(document).on("click","a[href='#lets-talk-section']",function(e) { 219 e.preventDefault(); 220 jQuery("body, html").animate({ scrollTop: jQuery('#letstalk').offset().top - 100 }, 1000); 221 }); 222 jQuery(document).on("click","a[href='#letstalk']",function(e) { 223 e.preventDefault(); 224 jQuery("body, html").animate({ scrollTop: jQuery('#letstalk').offset().top - 100 }, 1000); 225 }); 226 jQuery(document).on("click","#gtt-lets-talk-btn",function(e) { 227 e.preventDefault(); 228 jQuery("body, html").animate({ scrollTop: jQuery('#letstalk').offset().top - 100 }, 1000); 229 }); 230}); 231 232//Marketo MSQL form feature to submit the form when the form is hidden because it was already submitted before 233document.addEventListener('DOMContentLoaded', function() { 234 const form = document.querySelector('form.mktoForm'); 235 if(form){ 236 const inputs = form.querySelectorAll('input'); 237 const downloadButton = document.getElementById('downloadButton'); 238 239 // Function to save input values to localStorage 240 function saveInputValues() {
241 inputs.forEach(input => { 242 localStorage.setItem(input.name, input.value); 243 }); 244 } 245 246 // Function to load input values from localStorage 247 function loadInputValues() { 248 inputs.forEach(input => { 249 if (localStorage.getItem(input.name)) { 250 input.value = localStorage.getItem(input.name); 251 } 252 }); 253 } 254 255 // Load input values when the page is loaded 256 loadInputValues(); 257 258 // Save input values when the form is submitted 259 form.addEventListener('submit', function(event) { 260 saveInputValues(); 261 }); 262 263 // Submit the form when the download button is clicked 264 downloadButton.addEventListener('click', function(event) { 265 event.preventDefault(); 266 267 //Load input values again before submission 268 loadInputValues(); 269 270 const submitButton = document.querySelector('div.mktoButtonRow > span > button'); 271 272 if (submitButton) { 273 submitButton.click(); 274 } 275 }); 276 } 277});
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.