1(function(init){ 2 3 var $ = jQuery; 4 5 // array that holds all init functions 6 var all_block_rerun_functions = []; 7 8 // method used in block js files 9 init.block = function(block_selector,block_init_func) { 10 // debug output 11 // console.log("Block: "+block_selector); 12 // turn the init function into a rerun function 13 var block_rerun_function = function(root_obj) { 14 // get objects below the root that match selector 15 var selected_objs = $(root_obj).filter(block_selector).add( $(root_obj).find(block_selector) ); 16 // run init function on all seleced objects 17 $(selected_objs).each(function(block_index,block_obj){ 18 // if this block has been inited, skip 19 if ( $(block_obj).data('inited')) return; 20 // add tpl path data 21 var tpl_selector = block_selector.replace('.','').replace('\\\/','/'); 22 $(block_obj).data('tpl',tpl_selector); 23 // run init function - pass $, block_obj, block_index 24 block_init_func($,block_obj,block_index); 25 // set inited to true 26 $(block_obj).data('inited',true); 27 // debug output 28 // console.log("Inited: "+block_selector); 29 }); 30 } 31 // add newly created rerun function to the list of all rerun functions for later use 32 all_block_rerun_functions.push( block_rerun_function ); 33 // ask $ to run this rerun function on HTML for the first time once page is ready 34 $(function(){ block_rerun_function("html"); }) 35 36 } 37 38 // method used on blocks injected asyncronously 39 init.async = function(root_obj) { 40 // debug output 41 // console.log("Async Init..."); 42 // loop through all rerun functions and run them on the root obj 43 for(index in all_block_rerun_functions) { 44 // get block rerun function 45 block_rerun_function = all_block_rerun_functions[index]; 46 // run this function on the provided root object 47 block_rerun_function(root_obj); 48 } 49 } 50 51})(window.init = {}); 52; 53var MTIProjectId='0ea9c285-4095-472b-bc40-edc3449d29fd'; 54jQuery(function() { 55 var mtiTracking = document.createElement('script'); 56 mtiTracking.type='text/javascript'; 57 mtiTracking.async='true'; 58 mtiTracking.src=('https:'==document.location.protocol?'https:':'http:')+'//fast.fonts.com/t/trackingCode.js'; 59 (document.getElementsByTagName('head')[0]||document.getElementsByTagName('body')[0]).appendChild( mtiTracking ); 60}); 61; 62window.amex_support_enabled = true; 63; 64; 65; 66jQuery(function () { 67 //mobile navigation 68 var jQuerytoggleButton = jQuery('.block--home-navbar .nav-hamburger'), 69 jQuerymenuWrap = jQuery(' .block--home-navbar .container-wrap'), 70 jQueryscroll = jQuery(".wrapper--central"); 71 72 jQuerytoggleButton.on('click', function(){ 73 jQuery(this).toggleClass('button-open'); 74 jQuerymenuWrap.toggleClass('menu-show'); 75 }); 76 77 //desktop navigation 78 jQuery(".block--home-navbar .container-link-menu").on('click keypress', function(ev) { 79 var is_key_press = (ev.type=='keypress'); 80 if (is_key_press) { 81 let keycode = (event.keyCode ? event.keyCode : event.which); 82 let is_enter_key = (keycode==13); 83 if (!is_enter_key) return; 84 ev.preventDefault(); 85 } 86 jQuery(".block--home-navbar .menu-overlay").show(); 87 jQuery(".block--home-navbar .menu-contents").slideDown(400).addClass("menu-open"); 88 if (is_key_press) jQuery(".block--home-navbar .close-menu").focus(); 89 }); 90 jQuery(".container-dropdown .close-menu, .container-dropdown .menu-overlay").on('click keypress', function(ev) { 91 var is_key_press = (ev.type=='keypress'); 92 if (is_key_press) { 93 let keycode = (event.keyCode ? event.keyCode : event.which); 94 let is_enter_key = (keycode==13); 95 if (!is_enter_key) return; 96 ev.preventDefault(); 97 } 98 jQuery(".block--home-navbar .menu-overlay").hide(); 99 jQuery(".block--home-navbar .menu-contents").slideUp(400).removeClass("menu-open"); 100 if (is_key_press) jQuery(".block--home-navbar .container-link-menu").focus(); 101 }); 102 103 104 jQuery('.block--home-navbar .container-link-menu').on('click', function(ev){ 105 ev.preventDefault(); 106 jQuery(this).next('.dropdown').toggle(); 107 }); 108 109 function update_donate_bar() { 110 var distanceFromTop = jQuery(document).scrollTop(); 111 if (distanceFromTop >= jQuery('.block--home-navbar .nav-bar-menu-container').height()) 112 { 113 jQuery('.block--home-navbar #donate-bar').fadeIn(400).addClass('fixed'); 114 } 115 else 116 { 117 jQuery('.block--home-navbar #donate-bar').fadeOut(0).removeClass('fixed'); 118 } 119 if(distanceFromTop >= 10) { 120 jQuery('.block--home-navbar nav').addClass('scrolling'); 121 } else { 122 jQuery('.block--home-navbar nav.scrolling').removeClass('scrolling'); 123 } 124 } 125 126 //donate bar 127 jQuery(window).scroll(function() { 128 update_donate_bar(); 129 }); 130 update_donate_bar(); 131 132}); 133; 134; 135jQuery(function($){ 136 137 $('.block--home-signup-donate--signup form').bind('success',function(){ 138 139 window.location = $('.block--home-signup-donate--signup .js-donate-link').data('link'); 140 141 }); 142 143}); 144; 145; 146jQuery(function() { 147
148 // append in-progress animation div to body 149 jQuery('<div class="in-progress-animation"><div class="in-progress-animation-inner"></div>').appendTo('body'); 150 // form validate and track 151 jQuery('.asset--standard-form form').each(function(index, obj) { 152 153 jQuery(obj).bind('submit', function() { 154 // validate form 155 var form = this; 156 var valid = validate_form(form); 157 if (!valid) { 158 jQuery(form).trigger('validate-error', [form]); 159 return false; 160 } 161 // show progress animation 162 jQuery('.in-progress-animation').show(); 163 jQuery(form).find('.submit-text').addClass('fade'); 164 jQuery(form).find('.process-overlay').show(); 165 jQuery(form).find('.submit-button').prop('disabled', true); 166 // postalcode cookie 167 var postalcode = jQuery(form).find('[name=postalcode]').val(); 168 if (postalcode) 169 if (visitor) 170 if (visitor.save_postalcode) { visitor.save_postalcode(postalcode); } 171 // email cookie 172 var email = jQuery(form).find('[name=email]').val(); 173 if (email) 174 if (visitor) 175 if (visitor.save_email) { visitor.save_email(email); } 176 // ajax submit form 177 ajax_submit_form(form, 178 function(dataobj) { 179 // trigger success 180 jQuery(form).trigger('success', [dataobj]); 181 }, 182 function(dataobj) { 183 console.log(dataobj); 184 // hide progress animation
185 jQuery('.in-progress-animation').slideUp(100); 186 jQuery(form).find('.submit-text').removeClass('fade'); 187 jQuery(form).find('.process-overlay').fadeOut(1500); 188 jQuery(form).find('.submit-button').prop('disabled', false); 189 } 190 ); 191 // return false 192 return false; 193 }); 194 195 }); 196 197 // # 198 // # helpers 199 // # 200 201 function ajax_submit_form(form, success, complete) { 202 var data = $(form).serialize() + '&json=1'; 203 var action = $(form).attr('action'); 204 //console.log("Submitting to " + action); 205 //console.log(data); 206 jQuery.ajax({ 207 'type': 'POST', 208 'url': action, 209 'data': data, 210 'success': function(data) { 211 var successflag = false; 212 // try parsing json 213 try { 214 //console.log("Got response, parsing json"); 215 var dataobj = jQuery.parseJSON(data); 216 //console.log(dataobj); 217 successflag = dataobj.success; 218 } 219 // catch json parsing error 220 catch (e) { 221 console.log("JSON parse error: " + data); 222 alert(data); 223 } 224 // log success flag 225 //console.log("Success: "+successflag); 226 // on success run success function 227 if (successflag) { success(dataobj); } 228 // 229 if (complete) complete(dataobj); 230 // on error alert data 231 else { alert(data); } 232 } 233 }); 234 } 235 236});; 237jQuery(function($){ 238 239 $('.block--home-signup-donate--donate .donate-amounts .donate-btn').bind('click',function(ev){ 240 $('.block--home-signup-donate--donate .donate-amounts .donate-btn').removeClass('selected'); 241 $(this).addClass('selected'); 242 ev.preventDefault(); 243 }); 244 $('.block--home-signup-donate--donate .donate-button .donate-btn').bind('click',function(ev){ 245 var ask = $('.block--home-signup-donate--donate .donate-amounts .donate-btn.selected').data('ask'); 246 var donate_link = $(this).attr('href'); 247 donate_link += (donate_link.indexOf('?') == -1) ? '?' : '&'; 248 donate_link += 'ask='+ask; 249 window.location = donate_link; 250 ev.preventDefault(); 251 }); 252 253}); 254;
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.