PageSourceSearch

https://baysidemedicalpharmacy.ca/wp-content/plugins/medicare/bt_elements.js?ver=6.1.14

js baysidemedicalpharmacy.ca collected 2026-10-04 02:32:39 UTC 9,312 bytes, 308 lines download raw bytes

1(function( $ ) {
2	window.btGetNavHTML = function( count ) {
3		var html = '<div class="btAnimNavHolder"><ul class="btAnimNav">';
4		html += '<li class="btAnimNavPrev">';
5		for ( var i = 0; i < count; i++ ) {
6			html += '<li class="btAnimNavDot" data-count="' + i + '">';
7		}
8		html += '<li class="btAnimNavNext">';
9		html += '</ul></div>';
10		
11		return html;
12	}
13
14	/* Animate elements */
15
16	function btAnimateElements() {
17		var $elems = $( '.btCounter:not(.animated), .btProgressBar:not(.animated)' );
18		// classic animations
19		$elems.each(function() {
20			$elm = $( this );
21			if ( 
22			( $elm.isOnScreen() && ! $( 'body' ).hasClass( 'impress-enabled' ) ) ||
23			( $elm.isOnScreen() && $( 'body' ).hasClass( 'impress-enabled' ) && $elm.closest( '.boldSection' ).hasClass( 'active' ) )
24			) {
25				$elm.addClass( 'animated' );
26				if ( $elm.hasClass( 'btCounter' ) ) {
27					btAnimateCounter( $elm );
28				}
29				if ( $elm.hasClass( 'btProgressBar' ) ) {
30					btAnimateProgress( $elm );
31				}
32			}
33		});
34		$( '.slick-slider .slick-slide:not(.slick-active) .animate' ).removeClass( 'animated' );
35	}
36	
37	function btAnimateCounter( elm ) {
38		var number_length = elm.data( 'digit-length' );
39		for ( var i = parseInt( number_length ); i > 0; i-- ) {
40			var digit = elm.children( '.p' + i ).data( 'digit' );
41			for ( var j = 0; j <= parseInt( digit ); j++ ) {
42				elm.children( '.p' + i ).children( '.n' + j ).css( 'transform', 'translateY(-' + parseInt( digit ) * elm.height() + 'px)' );
43			}
44			
45		}
46		return false;
47	}
48	
49	function btAnimateCounterReset( elm ) {
50		var number_length = elm.data( 'digit-length' );
51		for ( var i = parseInt( number_length ); i > 0; i-- ) {
52			var digit = elm.children( '.p' + i ).data( 'digit' );
53			for ( var j = 0; j <= parseInt( digit ); j++ ) {
54				elm.children( '.p' + i ).children( '.n' + j ).css( 'transform', 'translateY(0px)' );
55			}
56			
57		}
58		return false;
59	}	
60	
61	// countdown timer helpers
62	
63	var bt_bb_countdown = function( elem, selector, i, arr, arr_prev ) {
64		if ( arr[ i ] !== arr_prev[ i ] || elem.find( selector ).children().eq( 0 ).html( ) == '' ) {
65			elem.find( selector ).children().addClass( 'countdown_anim' );
66			elem.find( selector ).children().eq( 0 ).html( arr[ i ] );
67			elem.find( selector ).children().eq( 1 ).html( arr_prev[ i ] );
68			setTimeout(function() {
69				elem.find( selector ).children().eq( 1 ).html( elem.find( selector ).children().eq( 0 ).html() );
70				elem.find( selector ).children().removeClass( 'countdown_anim' );
71			}, 300 );
72		}
73	}
74	
75	var bt_bb_countdown_output = function( elem ) {
76		
77		s = elem.data( 'init-seconds' );
78		
79		var delta = s;
80		
81		var days = Math.floor( delta / 86400 );
82		delta -= days * 86400;
83
84		var hours = Math.floor( delta / 3600 ) % 24;
85		delta -= hours * 3600;
86
87		var minutes = Math.floor( delta / 60 ) % 60;
88		delta -= minutes * 60;
89
90		var seconds = delta;
91		
92		if ( hours < 10 ) {
93			hours = '0' + hours;
94		}
95		
96		if ( minutes < 10 ) {
97			minutes = '0' + minutes;
98		}
99
100		if ( seconds < 10 ) {
101			seconds = '0' + seconds;
102		}
103		
104		seconds_arr_prev = seconds.toString().split( '' );
105		minutes_arr_prev = minutes.toString().split( '' );
106		hours_arr_prev = hours.toString().split( '' );		
107		
108		s = s - 1;
109		if ( s < 0 ) {
110			s = 0;
111		}
112		
113		var delta = s;
114		
115		var days = Math.floor( delta / 86400 );
116		delta -= days * 86400;
117
118		var hours = Math.floor( delta / 3600 ) % 24;
119		delta -= hours * 3600;
120
121		var minutes = Math.floor( delta / 60 ) % 60;
122		delta -= minutes * 60;
123
124		var seconds = delta;
125		
126		if ( hours < 10 ) {
127			hours = '0' + hours;
128		}
129		
130		if ( minutes < 10 ) {
131			minutes = '0' + minutes;
132		}
133
134		if ( seconds < 10 ) {
135			seconds = '0' + seconds;
136		}
137		
138		seconds_arr = seconds.toString().split( '' );
139		minutes_arr = minutes.toString().split( '' );
140		hours_arr = hours.toString().split( '' );
141		
142		for ( var i = 0; i <= 1; i++ ) {
143			bt_bb_countdown( elem, '.seconds .n' + i, i, seconds_arr, seconds_arr_prev );
144			bt_bb_countdown( elem, '.minutes .n' + i, i, minutes_arr, minutes_arr_prev );
145			bt_bb_countdown( elem, '.hours .n' + i, i, hours_arr, hours_arr_prev );
146		}
147		
148		var days_prev = 0;
149		
150		if ( days != days_prev ) {
151			days_arr = days.toString().split( '' );
152			
153			var days_html = '';
154			for ( var i = 0; i < days_arr.length; i++ ) {
155				days_html += '<span>' + days_arr[ i ] + '</span>';
156			}
157
158			elem.find( '.days' ).html( days_html + '<span class="days_text"><span>' + elem.find( '.days' ).data( 'text' ) + '</span></span>' );
159		}
160		
161		days_prev = days;
162
163		elem.data( 'init-seconds', s );		
164
165	}
166
167	function btAnimateProgress( elm ) {
168		elm.find( '.btProgressAnim' ).css( 'transition-delay', Math.round( Math.random() * 250 ) + 'ms' );
169		elm.find( '.btProgressAnim' ).css( 'transform', 'translateX(-' + ( 100 - elm.find( '.btProgressAnim' ).data( 'percentage' ) ) + '%)' );
170		return false;
171	}
172	
173	function btAnimateProgressReset( elm ) {
174		elm.find( '.btProgressAnim' ).css( 'transition-delay', Math.round( Math.random() * 250 ) + 'ms' );
175		elm.find( '.btProgressAnim' ).css( 'transform', 'translateX(-100%)' );
176		return false;
177	}	
178	
179	$( window ).on( 'btload', function() {
180		if ( ! $( 'body' ).hasClass( 'btPageTransitions' ) ) {
181			btAnimateElements();
182			$( window ).scroll(function(){
183				btAnimateElements();
184			});
185		}
186	});
187	
188	$( window ).on( 'bt_section_animation_end', function( e, el ) {
189		$( 'span.headline u, span.headline b, span.headline i' ).addClass( 'animate' );
190		var $elems = $( el ).find( '.btCounter, .btProgressBar, span.headline u, span.headline b, span.headline i' );
191		// classic animations
192		$elems.each(function() {
193			$elm = $( this );
194			$elm.addClass( 'animated' );
195			if ( $elm.hasClass( 'btCounter' ) ) {
196				btAnimateCounter( $elm );
197			}
198			if ( $elm.hasClass( 'btProgressBar' ) ) {
199				btAnimateProgress( $elm );
200			}
201		});
202	});
203	
204	$( window ).on( 'bt_section_animation_out', function( e, el ) {
205		var $elems = $( el ).find( '.btCounter, .btProgressBar, span.headline u, span.headline b, span.headline i' );
206		// classic animations
207		$elems.each(function() {
208			$elm = $( this );
209			$elm.removeClass( 'animated' );
210			if ( $elm.hasClass( 'btCounter' ) ) {
211				btAnimateCounterReset( $elm );
212			}
213			if ( $elm.hasClass( 'btProgressBar' ) ) {
214				btAnimateProgressReset( $elm );
215			}
216		});
217	});	
218	
219	/* Accordions and tabs */
220
221	$( document ).ready(function () {
222		
223		/* slick slider */
224		$( '.slick-slider' ).slick();
225		$( '.slick-slider .slick-prev, .slick-slider .slick-next' ).click(function() {
226			$( this ).closest( '.slick-slider' ).slick( 'slickPause' );
227		});
228		
229		/* bt_bb_elements.js resets animated class */
230		$( '.slick-slider' ).on('beforeChange', function(event, slick, currentSlide, nextSlide){
231		  $( this ).find( '.slick-slide .animated' ).removeClass( 'animated' );
232		  $( this ).find( '.slick-slide[data-slick-index='+nextSlide+'] .animate' ).addClass( 'animated' );
233		});
234		
235		/* Countdown */
236		
237		$( '.btCountdownHolder' ).each(function() {
238
239			var cd = $( this );
240			var s = cd.data( 'init-seconds' );
241
242			bt_bb_countdown_output( cd );
243
244			setInterval(function() {
245				bt_bb_countdown_output( cd );
246			}, 1000 );
247		});	
248		
249		/* Accordions */
250
251		$( '.tabsVertical .tabAccordionContent' ).hide();
252		
253		$( '.tabsVertical .tabAccordionTitle' ).click(function() {
254			if ( $( this ).hasClass( 'on' ) ) {
255				$( this ).removeClass( 'on' ).next().slideUp( 250 );
256			} else {
257				$( this ).closest( '.tabsVertical' ).find( '.tabAccordionTitle' ).removeClass( 'on' );
258				$( this ).closest( '.tabsVertical' ).find( '.tabAccordionContent' ).delay( 250 ).slideUp( 250 );
259				$( this ).addClass( 'on' ).next().slideDown( 250 );
260			}
261		});
262		
263		$( '.tabsVertical' ).each(function() {
264			var open_first = $( this ).data( 'open-first' );
265			if ( open_first == 'yes' ) {
266				$( this ).find( '.tabAccordionTitle' ).first().click();
267			}
268		});
269
270		/* Tabs */
271		
272		$( '.tabsHorizontal ul.tabsHeader li' ).click(function() {
273			$(this).siblings().removeClass( 'on' );
274			$( this ).addClass( 'on' );
275			$( this ).parent().parent().find( '.tabPanes .tabPane' ).removeClass( 'on' );
276			$( this ).parent().parent().find( '.tabPanes .tabPane' ).eq( $(this).index() ).addClass( 'on' );
277		});
278
279		$( '.tabsHorizontal ul.tabsHeader' ).each(function(){
280			$( this ).find( 'li' ).first().click();
281		});
282
283		/* Dropdown */
284
285		$( '.btDropdownSelect' ).fancySelect({forceiOS: true}).on( 'change.fs', function( e ) {
286			var url = $( this ).parent().find( '.options .selected' ).data( 'raw-value' );
287			if ( url != '' ) window.location = url;
288		});
289
290		// Wrap inline row
291		$( '.btIconImageRow > div' ).wrap( '<div class="btIconImageCell"></div>' );
292		$.each( $( '.btIconImageRow' ), function() {
293			$( this ).addClass( 'btCells-' + $( this ).children( 'div' ).length );
294		});
295		
296		/* Before/After Image */
297		if($(".bt_bb_before_after_image-container")[0]){
298			$(".bt_bb_before_after_image-container").twentytwenty({
299				/*before_label: 'January 2017', // Set a custom before label
300    after_label: 'March 2017', // Set a custom after label*/
301  });
302		}
303		
304		
305	});
306
307
308})( jQuery );

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.