PageSourceSearch

https://hooptonic.net/wp-content/plugins/ultimate-faqs/assets/js/ewd-ufaq.js?ver=2.2.5

js hooptonic.net collected 2026-09-24 12:45:24 UTC 17,772 bytes, 549 lines download raw bytes

1var filtering_running = false;
2var wpforms_search_running = 'No';
3
4var ajax_ctrlr = {
5	last_run: new Date(),
6	srch_str: '',
7	schdl_to_run_state: false,
8	schdl_to_run_delay: 250,
9	schdl_to_run_cntr: 0,
10	schdl_to_run_hndl: null,
11	schedule_to_run: function() {
12		ajax_ctrlr.schdl_to_run_cntr++;
13
14		if(ajax_ctrlr.schdl_to_run_cntr % 5 == 0) {
15			ajax_ctrlr.schdl_to_run_delay += 250;
16			ajax_ctrlr.schdl_to_run_reset();
17		}
18
19		if( ! ajax_ctrlr.schdl_to_run_state) {
20			return;
21		}
22
23		let crnt_run = new Date();
24
25		if(crnt_run - ajax_ctrlr.last_run > ajax_ctrlr.schdl_to_run_delay) {
26			ajax_ctrlr.schdl_to_run_state = false;
27			ajax_ctrlr.schdl_to_run_cntr = 0;
28			ajax_ctrlr.last_run = new Date();
29			ewd_ufaq_ajax_reload();
30		}
31	},
32	schdl_to_run_reset: function () {
33		clearInterval(ajax_ctrlr.schdl_to_run_hndl);
34		ajax_ctrlr.schdl_to_run_hndl = setInterval(ajax_ctrlr.schedule_to_run, ajax_ctrlr.schdl_to_run_delay);
35	},
36	run_search_ajax: function( elm ) {
37		ajax_ctrlr.clear_field( elm );
38
39		let srch_str = jQuery(elm).val();
40
41		if( ajax_ctrlr.schdl_to_run_delay > 250 ) {
42			ajax_ctrlr.schdl_to_run_delay = 250;
43			ajax_ctrlr.schdl_to_run_reset();
44		}
45
46		if(srch_str != ajax_ctrlr.srch_str) {
47			ajax_ctrlr.srch_str = srch_str;
48			ajax_ctrlr.schdl_to_run_state = true;
49			ajax_ctrlr.last_run = new Date();
50		}
51	},
52	clear_field: function ( srch_elm ) {
53		let cf = jQuery(srch_elm).parent('.search-field').find('.clear-field').eq(0);
54		if( 0 < jQuery(srch_elm).val().length ) {
55			if( 'hidden' == cf.data('state') ) {
56				cf.data('state', 'visible');
57				cf.removeClass('slide-out').addClass('slide-in');
58			}
59		}
60		else {
61			cf.data('state', 'hidden');
62			cf.removeClass('slide-in').addClass('slide-out');
63		}
64	}
65};
66
67jQuery(function(){ //DOM Ready
68    ufaqSetClickHandlers();
69    UFAQSetAutoCompleteClickHandlers();
70    UFAQSetRatingHandlers();
71    UFAQSetExpandCollapseHandlers();
72    UFAQSetPaginationHandlers();
73
74    UFAQWPFormsHandler();
75});
76
77function ewd_ufaq_run_effect( display, faq_element ) {
78
79    var selected_effect = typeof ewd_ufaq_php_data != 'undefined' ? ewd_ufaq_php_data.reveal_effect : 'none';
80
81    // most effect types need no options passed by default
82    var options = {};
83
84    // some effects have required parameters
85    if ( selected_effect === 'size' ) {
86
87      options = { to: { width: 200, height: 60 } };
88    }
89
90    // run the effect
91    if ( display == 'show' ) { faq_element.find( '.ewd-ufaq-faq-body' ).show( selected_effect, options, 500, ewd_ufaq_toggle_hidden_class( faq_element ) ); }
92	if ( display == 'hide' ) { faq_element.find( '.ewd-ufaq-faq-body' ).hide( selected_effect, options, 500, ewd_ufaq_toggle_hidden_class( faq_element ) ); }
93};
94
95// callback function to bring a hidden box back
96function ewd_ufaq_toggle_hidden_class( faq_element ) {
97
98	setTimeout( function() { faq_element.find( '.ewd-ufaq-faq-body' ).toggleClass( 'ewd-ufaq-hidden' ); }, 500 );
99};
100
101function ufaqSetClickHandlers() {
102
103	jQuery( '.ewd-ufaq-faq-toggle' ).off( 'click' ).on( 'click', function( event ) {
104		
105		jQuery( this ).attr( 'aria-expanded', function ( i, attr ) {
106			return attr == 'true' ? 'false' : 'true'
107		});
108
109		event.preventDefault();
110		
111		faq = jQuery( this ).parent();
112		
113		if ( faq.find( '.ewd-ufaq-faq-body' ).hasClass( 'ewd-ufaq-hidden' ) ) {
114
115			EWD_UFAQ_Reveal_FAQ( faq );
116
117			if ( typeof ewd_ufaq_php_data != 'undefined' && ewd_ufaq_php_data.faq_scroll ) { jQuery('html, body').animate({scrollTop: jQuery(this).offset().top -80}, 100); }
118		}
119		else {
120
121			EWD_UFAQ_Hide_FAQ( faq );
122		}
123	});
124
125	jQuery( '.ewd-ufaq-faq-category-title-toggle' ).off( 'click' ).on( 'click', function() {
126		
127		var category = jQuery( this ).parent();
128		var category_inner = category.find( '.ewd-ufaq-faq-category-inner' );
129		
130		category_inner.toggleClass( 'ewd-ufaq-faq-category-body-hidden' );
131
132		if ( typeof ewd_ufaq_php_data == 'undefined' || ! ewd_ufaq_php_data.category_accordion ) { return; }
133
134		jQuery( '.ewd-ufaq-faq-category-inner' ).each( function( index, object ) {
135			
136			if ( object != category_inner.get( 0 ) ) { jQuery( this ).addClass( 'ewd-ufaq-faq-category-body-hidden' ); }
137		});
138	});
139
140	jQuery( '.ewd-ufaq-back-to-top-link' ).off( 'click' ).on( 'click', function( event ) {
141		event.preventDefault();
142
143		jQuery( 'html, body' ).animate( { scrollTop: jQuery( '#ewd-ufaq-faq-list' ).offset().top -80 }, 100 );
144	});
145
146	jQuery( '.ewd-ufaq-faq-header-link' ).off( 'click' ).on( 'click', function( event ) {
147		event.preventDefault();
148
149		var faq_id = jQuery( this ).data( 'postid' );
150		var faq = jQuery( '#ewd-ufaq-post-' + faq_id ).first();
151
152		if ( faq.find( '.ewd-ufaq-faq-body' ).hasClass( 'ewd-ufaq-hidden' ) ) {
153			
154			EWD_UFAQ_Reveal_FAQ( faq );
155		}
156
157		jQuery( 'html, body' ).animate( { scrollTop: faq.offset().top - 20 }, 100 );
158	});
159}
160
161function UFAQSetAutoCompleteClickHandlers() {
162
163	jQuery( '.ewd-ufaq-text-auto-complete' ).on( 'keyup', function() {
164
165		jQuery( '.ewd-ufaq-text-auto-complete' ).autocomplete({
166
167			source: typeof ewd_ufaq_php_data != 'undefined' ? ewd_ufaq_php_data.question_titles : '',
168			minLength: 3,
169			appendTo: '#ewd-ufaq-jquery-ajax-search',
170			select: function( event, ui ) {
171				jQuery( this ).val( ui.item.value );
172				ewd_ufaq_ajax_reload();
173			}
174		});
175
176		jQuery( '.ewd-ufaq-text-auto-complete' ).autocomplete( 'enable' );
177	}); 
178}
179
180function EWD_UFAQ_Reveal_FAQ( faq_element ) {
181
182	var post_id = faq_element.data( 'post_id' );
183
184	var params = {};
185
186	params.nonce   = typeof ewd_ufaq_php_data != 'undefined' ? ewd_ufaq_php_data.nonce : '';
187	params.post_id = post_id;
188	params.action  = 'ewd_ufaq_record_view';
189
190	var data = jQuery.param( params );
191    jQuery.post(ajaxurl, data, function(response) {});
192
193    faq_element.find( '.ewd-ufaq-post-margin-symbol' ).html( faq_element.find( '.ewd-ufaq-post-margin-symbol' ).html().toUpperCase() );
194
195	faq_element.find( '.ewd-ufaq-faq-excerpt' ).addClass( 'ewd-ufaq-hidden' );
196	
197	if ( typeof ewd_ufaq_php_data != 'undefined' && ewd_ufaq_php_data.reveal_effect != 'none' ) { ewd_ufaq_run_effect( 'show', faq_element ); }
198	else { faq_element.find( '.ewd-ufaq-faq-body' ).removeClass( 'ewd-ufaq-hidden' ); }
199			
200	if ( typeof ewd_ufaq_php_data != 'undefined' && ewd_ufaq_php_data.faq_accordion ) { 
201
202		jQuery( '.ewd-ufaq-faq-div' ).each( function() {
203
204			if ( jQuery( this ).prop( 'id' ) != faq_element.prop( 'id' ) ) {
205
206		  		EWD_UFAQ_Hide_FAQ( jQuery(this) );
207			} 
208			else {
209
210				jQuery( this ).addClass( 'ewd-ufaq-post-active' );
211			}
212		});
213	}
214	else {
215
216		faq_element.addClass( 'ewd-ufaq-post-active' );
217	}
218}
219
220function EWD_UFAQ_Hide_FAQ( faq_element ) {
221
222	var post_id = faq_element.data( 'post_id' );
223
224	faq_element.find( '.ewd-ufaq-faq-excerpt' ).removeClass( 'ewd-ufaq-hidden' );
225
226	if ( typeof ewd_ufaq_php_data != 'undefined' && ewd_ufaq_php_data.reveal_effect != 'none' && ! faq_element.find( '.ewd-ufaq-faq-body' ).hasClass( 'ewd-ufaq-hidden' ) ) { ewd_ufaq_run_effect( 'hide', faq_element ); }
227	else { faq_element.find( '.ewd-ufaq-faq-body' ).addClass( 'ewd-ufaq-hidden' ); }
228
229	faq_element.removeClass( 'ewd-ufaq-post-active' );
230	faq_element.find( '.ewd-ufaq-post-margin-symbol' ).html( faq_element.find( '.ewd-ufaq-post-margin-symbol' ).html().toLowerCase() );
231}
232
233jQuery(document).ready(function() {
234
235	if( 0 < jQuery( '#ewd-ufaq-jquery-ajax-search .ewd-ufaq-text-input' ).eq(0).length ) {
236		ajax_ctrlr.schdl_to_run_hndl = setInterval(ajax_ctrlr.schedule_to_run, ajax_ctrlr.schdl_to_run_delay);
237	}
238
239	jQuery( '#ewd-ufaq-ajax-search-submit' ).click( function() {
240		jQuery( '.ewd-ufaq-bottom' ).data( 'current_page', 1 );
241		let elm = jQuery( '#ewd-ufaq-jquery-ajax-search .ewd-ufaq-text-input' ).eq(0);
242		ajax_ctrlr.run_search_ajax( elm[0] );
243	});
244
245	jQuery( '#ewd-ufaq-jquery-ajax-search' ).on( 'keyup', '.ewd-ufaq-text-input', function() {
246		ajax_ctrlr.run_search_ajax( this );
247	});
248
249	// clear search field
250	jQuery( '#ewd-ufaq-jquery-ajax-search' ).on( 'click', '.clear-field', function() {
251		let elm = jQuery( '#ewd-ufaq-jquery-ajax-search .ewd-ufaq-text-input' ).eq(0);
252		jQuery(elm).val('');
253		ajax_ctrlr.run_search_ajax( elm );
254	});
255
256	jQuery( '.ewd-ufaq-text-input ' ).on( 'search', function() {
257		ajax_ctrlr.run_search_ajax( this );
258	});
259
260	if ( typeof ewd_ufaq_php_data != 'undefined' && ewd_ufaq_php_data.display_faq > 0 ) {
261		
262		var faq = jQuery( '.ewd-ufaq-faq-div[data-post_id="' + ewd_ufaq_php_data.display_faq + '"]' );
263
264		faq.parent().removeClass( 'ewd-ufaq-hidden' );
265
266		EWD_UFAQ_Reveal_FAQ( faq );
267
268		jQuery('html, body').animate({scrollTop: faq.offset().top -80}, 100);
269	}
270});
271
272var request_count = 0;
273function ewd_ufaq_ajax_reload( pagination, append_results, search_string ) {
274
275	filtering_running = true;
276
277    var search_string = search_string ? search_string : jQuery( '.ewd-ufaq-text-input' ).val();
278    var include_cat = jQuery( '#ewd-ufaq-include-category' ).val();
279    var exclude_cat = jQuery( '#ewd-ufaq-exclude-category' ).val();
280    var orderby = jQuery( '#ewd-ufaq-orderby' ).val();
281    var order = jQuery( '#ewd-ufaq-order' ).val();
282    var post_count = jQuery( '#ewd-ufaq-post-count' ).val();
283    var current_url = jQuery( '#ewd-ufaq-current-url' ).val();
284    var show_on_load = jQuery( '#ewd-ufaq-show-on-load' ).val();
285
286    if ( search_string == undefined ) { search_string = ''; }
287
288    if ( pagination == 'Yes' ) {
289
290    	var faqs_only = 'Yes';
291    	var faq_page = jQuery( '.ewd-ufaq-bottom' ).data( 'current_page' );
292    }
293    else {
294
295    	var retrieving_results = typeof ewd_ufaq_php_data != 'undefined' ? ewd_ufaq_php_data.retrieving_results : 'Retrieving Results';
296
297    	jQuery( '.ewd-ufaq-faqs' ).html( '<h3>' + retrieving_results + '</h3>' );
298
299    	var faqs_only = 'No';
300    	var faq_page = 0;
301    	jQuery( '.ewd-ufaq-bottom' ).remove();
302    }
303
304    request_count = request_count + 1;
305
306    if ( jQuery( '.ewd-ufaq-text-input' ).length && 'yes' != show_on_load.toLocaleLowerCase() && search_string.length == 0 ) {
307    	jQuery('.ewd-ufaq-faqs').html('');
308    	return;
309    }
310
311    var params = {};
312
313    params.search_string    = search_string;
314    params.include_category = include_cat;
315    params.exclude_category = exclude_cat;
316    params.orderby = orderby;
317    params.order   = order;
318    params.post_count    = post_count;
319    params.request_count = request_count;
320    params.current_url   = current_url;
321    params.faqs_only = faqs_only;
322    params.faq_page  = faq_page;
323    params.show_on_load = show_on_load;
324    params.action = 'ewd_ufaq_search';
325    params.nonce  = typeof ewd_ufaq_php_data != 'undefined' ? ewd_ufaq_php_data.nonce : '';
326
327    var data = jQuery.param( params );
328
329    jQuery.post( ajaxurl, data, function( response ) {
330		
331		if ( response.data.request_count == request_count ) {
332
333			if ( append_results == 'Yes' ) {
334				jQuery( '.ewd-ufaq-faqs' ).append( response.data.output );
335			}
336			else {
337				jQuery( '.ewd-ufaq-faqs' ).html( response.data.output );
338				if( '' != response.data.pagination ) {
339					jQuery('.ewd-ufaq-faq-list .ewd-ufaq-bottom').remove();
340					jQuery('.ewd-ufaq-faq-list').append(response.data.pagination);
341				}
342			}
343
344			jQuery( '.ewd-ufaq-bottom' ).data( 'max_page', response.data.max_page );
345
346			jQuery( '.ewd-ufaq-expand-all' ).removeClass( 'ewd-ufaq-hidden' );
347			jQuery( '.ewd-ufaq-collapse-all' ).addClass( 'ewd-ufaq-hidden' );
348
349       		ufaqSetClickHandlers();
350       		UFAQSetRatingHandlers();
351       		UFAQSetPaginationHandlers();
352       		UFAQUpdatePaginationButtons();
353       		UFAQSetExpandCollapseHandlers();
354
355       		filtering_running = false;
356       	}
357    });
358}
359
360function UFAQSetRatingHandlers() {
361
362	jQuery( '.ewd-ufaq-rating-button' ).off( 'click' ).on( 'click', function() {
363		
364		var faq_id = jQuery( this ).data( 'faq_id' );
365		jQuery( '*[data-faq_id="' + faq_id + '"]' ).off( 'click' );
366
367		var current_count = jQuery( this ).find( 'span' ).html();
368		current_count++;
369		jQuery( this ).find( 'span' ).html( current_count );
370
371		if ( jQuery( this ).hasClass( 'ewd-ufaq-up-vote' ) ) { vote_type = 'up'; }
372		else { vote_type = 'down'; }
373
374		var params = {};
375
376		params.action = 'ewd_ufaq_update_rating'
377		params.nonce  = typeof ewd_ufaq_php_data != 'undefined' ? ewd_ufaq_php_data.nonce : '';
378		params.faq_id = faq_id;
379		params.vote_type = vote_type;
380
381		var data = jQuery.param( params );
382		jQuery.post( ajaxurl, data );
383	});
384}
385
386function UFAQSetExpandCollapseHandlers() {
387
388	jQuery('.ewd-ufaq-expand-all').off('click').on('click', function() {
389		
390		var accordion_setting = typeof ewd_ufaq_php_data != 'undefined' ? ewd_ufaq_php_data.faq_accordion : false;
391		ewd_ufaq_php_data.faq_accordion = false; // turn FAQ accordion off while expanding all
392
393		jQuery( '.ewd-ufaq-faq-toggle' ).each( function() {
394
395			var faq = jQuery(this).parent();
396
397			jQuery(this).attr('aria-expanded', 'true');
398
399			EWD_UFAQ_Reveal_FAQ( faq );
400		});
401
402		if ( typeof ewd_ufaq_php_data != 'undefined' ) { ewd_ufaq_php_data.faq_accordion = accordion_setting; } //reset FAQ accordion setting 
403
404		jQuery('.ewd-ufaq-faq-category-inner').removeClass('ewd-ufaq-faq-category-body-hidden');
405		jQuery('.ewd-ufaq-collapse-all').removeClass('ewd-ufaq-hidden');
406		jQuery('.ewd-ufaq-expand-all').addClass('ewd-ufaq-hidden');
407	});
408
409	jQuery('.ewd-ufaq-collapse-all').off('click').on('click', function() {
410
411		jQuery('.ewd-ufaq-faq-toggle').each(function() {
412
413			var faq = jQuery(this).parent();
414
415			jQuery(this).attr('aria-expanded', 'false');
416
417			EWD_UFAQ_Hide_FAQ( faq );
418		});
419
420		if ( jQuery( '.ewd-ufaq-faq-category-title-toggle' ).length ) { jQuery( '.ewd-ufaq-faq-category-inner' ).addClass( 'ewd-ufaq-faq-category-body-hidden' );}
421
422		jQuery('.ewd-ufaq-expand-all').removeClass('ewd-ufaq-hidden');
423		jQuery('.ewd-ufaq-collapse-all').addClass('ewd-ufaq-hidden');
424	});
425}
426
427function UFAQSetPaginationHandlers() {
428
429	jQuery('.ewd-ufaq-previous-faqs').off( 'click' ).on('click', function() {
430
431		var current_page = jQuery( '.ewd-ufaq-bottom' ).data( 'current_page' );
432
433		jQuery( '.ewd-ufaq-bottom' ).data( 'current_page', Math.max( current_page - 1, 0 ) );
434		jQuery( '.ewd-ufaq-max-faqs-not-reached' ).remove();
435
436		ewd_ufaq_ajax_reload( 'Yes', 'No' );
437	});
438
439	jQuery('.ewd-ufaq-next-faqs').off( 'click' ).on('click', function() {
440
441		var current_page = jQuery( '.ewd-ufaq-bottom' ).data( 'current_page' );
442
443		jQuery( '.ewd-ufaq-bottom' ).data( 'current_page', current_page + 1 );
444		jQuery( '.ewd-ufaq-max-faqs-not-reached' ).remove();
445
446		ewd_ufaq_ajax_reload( 'Yes', 'No' );
447	});
448
449	jQuery( '.ewd-ufaq-load-more' ).off( 'click' ).on( 'click', function() {
450
451		var current_page = jQuery( '.ewd-ufaq-bottom' ).data( 'current_page' );
452
453		jQuery( '.ewd-ufaq-bottom' ).data( 'current_page', current_page + 1 );
454		jQuery( '.ewd-ufaq-max-faqs-not-reached' ).remove();
455
456		ewd_ufaq_ajax_reload( 'Yes', 'Yes' );
457	});
458
459	if ( jQuery( '.ewd-ufaq-pagination-infinite_scroll' ).length ) {
460
461		jQuery( window ).scroll( function() {
462
463			var infinite_pos = jQuery( '.ewd-ufaq-pagination-infinite_scroll').position();
464
465			if ( infinite_pos != undefined && jQuery( '.ewd-ufaq-bottom' ).data( 'current_page' ) != jQuery( '.ewd-ufaq-bottom' ).data( 'max_page' ) ) {
466
467				if  ( ( jQuery( window ).height() + jQuery( window ).scrollTop() > infinite_pos.top ) && filtering_running == false ) {
468
469					jQuery( '.ewd-ufaq-bottom' ).data( 'current_page', jQuery( '.ewd-ufaq-bottom' ).data( 'current_page' ) + 1 );
470
471					ewd_ufaq_ajax_reload( 'Yes', 'Yes' );
472				}
473			}
474		});
475	}
476}
477
478function UFAQUpdatePaginationButtons() {
479
480	jQuery('.ewd-ufaq-bottom').first().appendTo('.ewd-ufaq-faq-list');
481
482	if ( jQuery( '.ewd-ufaq-bottom' ).data( 'current_page' ) < jQuery( '.ewd-ufaq-bottom' ).data( 'max_page' ) ) {
483
484		jQuery( '.ewd-ufaq-load-more, .ewd-ufaq-next-faqs' ).removeClass( 'ewd-ufaq-hidden' );
485	}
486	else { jQuery( '.ewd-ufaq-load-more, .ewd-ufaq-next-faqs' ).addClass( 'ewd-ufaq-hidden' ); }
487
488	if ( jQuery( '.ewd-ufaq-bottom' ).data( 'current_page' ) <= 1 ) {
489
490		jQuery( '.ewd-ufaq-previous-faqs' ).addClass( 'ewd-ufaq-hidden' );
491	}
492	else { jQuery( '.ewd-ufaq-previous-faqs' ).removeClass( 'ewd-ufaq-hidden' ); }
493}
494
495function UFAQWPFormsHandler() {
496	
497	if ( typeof wpforms_integration === 'undefined' || wpforms_integration === null ) { return; }
498
499	if ( wpforms_integration.ufaq_enabled == 'disabled' ) { return; }
500
501	var target_field = wpforms_integration.ufaq_selected_field;
502
503	jQuery( '#wpforms-' + wpforms_integration.form_id + '-field_' + wpforms_integration.ufaq_selected_field ).on( 'keyup', function() {
504
505		var search_string = jQuery( this ).val();
506
507		if ( search_string.length >= wpforms_integration.ufaq_minimum_characters ) {
508
509			jQuery( '.ewd-ufaq-wpforms-faq-results' ).removeClass( 'ewd-ufaq-hidden' );
510			jQuery( '.ewd-ufaq-wpforms-label' ).removeClass( 'ewd-ufaq-hidden' );
511
512			ewd_ufaq_ajax_reload( 'No', 'No', search_string );
513		}
514		else if ( ! filtering_running ) {
515
516			jQuery( '.ewd-ufaq-faqs' ).html( ' ' );
517			jQuery( '.ewd-ufaq-wpforms-faq-results' ).addClass( 'ewd-ufaq-hidden' );
518			jQuery( '.ewd-ufaq-wpforms-label' ).addClass( 'ewd-ufaq-hidden' );
519		}
520
521	});
522}
523
524/*jQuery(document).ready(function() {
525  jQuery('a[href*=#]:not([href=#])').click(function() {
526  	var post_id = jQuery(this).attr("data-postid"); 
527    var selectedIDString = 'ewd-ufaq-body-'+post_id;
528    
529    if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
530      var target = jQuery(this.hash);
531      target = target.length ? target : jQuery('[name=' + this.hash.slice(1) +']');
532      if (target.length) {
533
534    jQuery('html,body').on("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove", function(){
535       jQuery('html,body').stop();
536    });
537		
538		if (jQuery('#'+selectedIDString).hasClass("ewd-ufaq-hidden")) {
539			EWD_UFAQ_Reveal_FAQ(post_id, selectedIDString);
540		}
541
542        jQuery('html,body').animate({
543          scrollTop: target.offset().top
544        }, 1000);
545        //return false;
546      }
547    }
548  });
549});*/

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.