PageSourceSearch

https://www.hpmc.net.au/wp-content/themes/medicare/js/header.misc.js?ver=6.0.17

js hpmc.net.au collected 2026-10-08 02:21:52 UTC 11,611 bytes, 336 lines download raw bytes

1'use strict';
2
3var stickyOffset;
4var stickyEnabled;
5
6(function( $ ) {
7	
8	var verticalMenuScroll = null;
9
10	$( document ).ready(function() {
11		
12		var hasCentralMenu = $( 'body' ).hasClass( 'btMenuCenterEnabled' );
13		var verticalMenuEnabled = $( 'body' ).hasClass( 'btMenuVerticalLeftEnabled' ) || $( 'body' ).hasClass( 'btMenuVerticalRightEnabled' );
14		var belowMenu = $( 'body' ).hasClass( 'btBelowMenu' );
15		var touchDevice = $( 'html' ).hasClass( 'touch' );
16		stickyEnabled = $( 'body' ).hasClass( 'btStickyEnabled' );
17		stickyOffset = 250;
18		var swapHeaderStyle = belowMenu && stickyEnabled && $( '.btAltLogo' ).length > 0; // If alt logo exists we will swap header skin
19		// var skinToSwap = "btDarkSkin" : "btDarkSkin" ? $( 'body' ).hasClass( 'btDarkSkin' );
20		var skinToSwap = $( 'body' ).hasClass( 'btDarkSkin' ) ? "btLightSkin" : "btDarkSkin";
21		$( '.btPageWrap .btAltLogo' ).hide( );
22		$( '.btPageWrap .btMainLogo' ).show( );
23		
24
25		
26		function divide_menu() {
27			if ( ! hasCentralMenu ) return false;
28			var logoWidth = $( '.mainHeader .logo' ).height() * $( '.mainHeader .logo .btMainLogo' ).data( 'hw' );
29			
30			$( '.menuPort nav' ).addClass( 'leftNav' );
31			$( '.menuPort' ).append( '<nav class="rightNav"><ul></ul></nav>' );
32			var halfItems = Math.ceil( $( '.mainHeader nav.leftNav ul>li:not(li li)' ).length * .5 );
33			$( '.mainHeader nav.rightNav > ul' ).append( $( '.mainHeader nav.leftNav > ul > li' ).slice ( halfItems ) );
34			$( '.mainHeader nav.leftNav > ul > li' ).slice ( halfItems ).remove();
35			
36			$( '.mainHeader .logo' ).css( 'transform', 'translateX(' + Math.round(-logoWidth * .5) + 'px)' );
37			$( '.mainHeader nav.leftNav' ).css( 'margin-right', Math.round(logoWidth * .5) + 'px' );
38			$( '.mainHeader nav.rightNav' ).css( 'margin-left', Math.round(logoWidth * .5) + 'px' );
39		}
40
41		function undivide_menu() {
42			if ( ! hasCentralMenu ) return false;
43			$( '.mainHeader nav.leftNav>ul:not(ul ul)' ).append( $( '.mainHeader nav.rightNav ul>li:not(li li)' ) );
44			$( '.mainHeader nav.rightNav' ).remove();
45			$( '.mainHeader .leftNav' ).removeAttr( 'style' );
46			$( '.menuPort nav' ).removeClass( 'leftNav' );
47			$( '.mainHeader .logo' ).removeAttr( 'style' );
48		}
49
50		/* Vertical menu setup */
51
52		function init_menu() {
53			if ( verticalMenuEnabled ) {
54				if ( $( 'body' ).hasClass( 'btMenuVerticalLeftEnabled' )) $( 'body' ).addClass( 'btMenuVerticalLeft btMenuVertical' );
55				if ( $( 'body' ).hasClass( 'btMenuVerticalRightEnabled' )) $( 'body' ).addClass( 'btMenuVerticalRight btMenuVertical' );
56				move_menu_to_vertical();
57			} else {
58				$( 'body' ).removeClass( 'btMenuVerticalLeft btMenuVerticalRight btMenuVertical btMenuVerticalOn' );
59				if ( $( 'body' ).hasClass( 'btMenuLeftEnabledCenter' )) $( 'body' ).addClass( 'btMenuLeft btMenuHorizontal btMenuCenter' );
60				if ( $( 'body' ).hasClass( 'btMenuRightEnabled' )) $( 'body' ).addClass( 'btMenuRight btMenuHorizontal' );
61				if ( $( 'body' ).hasClass( 'btMenuLeftEnabled' )) $( 'body' ).addClass( 'btMenuLeft btMenuHorizontal' );
62				if ( $( 'body' ).hasClass( 'btMenuCenterEnabled' )) $( 'body' ).addClass( 'btMenuCenter btMenuHorizontal' );				
63			}	
64			
65		}
66
67		function move_menu_to_vertical() {
68			$( '.menuPort' ).prependTo( 'body' );
69			$( '.mainHeader .logo' ).clone().prependTo( '.menuPort' );
70			$( '.menuPort' ).prepend( '<div class="btCloseVertical"></div>');
71			$( '.btCloseVertical' ).on( 'click', function() {
72				$( 'body' ).toggleClass( 'btMenuVerticalOn' );
73			});
74			$( '.mainHeader .topBar' ).appendTo( '.menuPort' );
75			$( 'body' ).removeClass( 'btStickyHeaderActive' );
76			if ( ! belowMenu ) $( '.btContentWrap' ).css( 'padding-top', $( '.mainHeader' ).height() +'px');
77			
78			$( 'li.current-menu-ancestor, li.current_menu_item').each(function() {
79				$( this ).find( '.subToggler' ).parent().addClass( 'on' );
80			});
81
82			// Vertical Menu Desktop Scroll
83
84			if ( $( 'body' ).hasClass( 'btMenuVertical' ) && $( 'html' ).hasClass( 'no-touch' ) ) {
85
86				$( '.no-touch .btMenuVertical .menuPort' ).wrapInner( '<div class="menuScrollPort"></div>' );
87				
88				if ( verticalMenuScroll === null ) {
89					verticalMenuScroll = new IScroll( '.no-touch .btMenuVertical .menuPort', {
90						scrollbars: true,
91						mouseWheel: true,
92						click: true,
93						interactiveScrollbars: true,
94						shrinkScrollbars: 'scale',
95						fadeScrollbars: true
96					});
97				}
98			}
99		}
100
101		function reset_menu_to_original() {
102			init_menu();
103			$( '.menuPort .sub-menu' ).removeAttr( 'style' );
104			$( '.menuPort .logo' ).remove();
105			$( '.menuPort .btCloseVertical' ).remove();			
106			$( '.menuPort' ).appendTo( '.menuHolder' );
107			$( '.menuPort .topBar' ).prependTo( '.mainHeader' );
108			$( 'body' ).removeClass( 'btStickyHeaderActive' );
109			divide_menu();
110			if ( ! belowMenu ) $( '.btContentWrap' ).css( 'padding-top', $( '.mainHeader' ).height() +'px');
111			$('.menuPort .menuScrollPort').contents().unwrap();
112			/*if ( typeof verticalMenuScroll !== 'undefined' && verticalMenuScroll !== null ) verticalMenuScroll.destroy();
113			verticalMenuScroll = null;*/
114			$( 'nav li').each(function() {
115				$( this ).find( '.subToggler' ).parent().removeClass( 'on' );
116			});
117		}
118
119		/* activate sticky */
120		
121		window.boldthemes_activate_sticky = function() {
122			var fromTop = $( window ).scrollTop();
123			if ( stickyEnabled ) {
124				if ( fromTop > stickyOffset ) {
125					$( 'body' ).addClass( 'btStickyHeaderActive' );
126					if( swapHeaderStyle ) {
127						$( '.mainHeader' ).removeClass( skinToSwap );
128						$( '.btPageWrap .btAltLogo' ).hide( );
129						$( '.btPageWrap .btMainLogo' ).show( );
130					}
131					setTimeout( function() { $( 'body' ).addClass( 'btStickyHeaderOpen' ) }, 100 );
132				} else {
133					$( 'body' ).removeClass( 'btStickyHeaderOpen btStickyHeaderActive' );
134					if( swapHeaderStyle ) {
135						$( '.mainHeader' ).addClass( skinToSwap );	
136						if ( swapHeaderStyle )	{
137							$( '.btPageWrap .btAltLogo' ).show( );	
138							$( '.btPageWrap .btMainLogo' ).hide( );
139						}
140					}
141				}
142			}
143		}
144
145		/* Wide menu setup btMenuWideDropdown */
146
147		var maxChildItems = 0;
148		$( 'li.btMenuWideDropdown > ul > li > ul' ).each(function( index ) {
149			if ( $( this ).children().length > maxChildItems ) {
150				maxChildItems = $( this ).children().length;
151			}
152		});
153
154		$( 'li.btMenuWideDropdown > ul > li > ul' ).each(function( index ) {
155			if ( $( this ).children().length < maxChildItems ) {
156				for ( var i = 0; i <= maxChildItems - $( this ).children().length; i++ ) {
157					$( this ).append( '<li class="btEmptyElement"><a>&nbsp;</a></li>' );
158				} 
159			}
160		});
161
162		/* Show hide menu */
163
164		$( '.btHorizontalMenuTrigger' ).click(function (){
165			$( '.menuHolder' ).toggleClass( 'btShowMenu' );
166			return false;
167		});
168
169		/* responsive menu toggler */
170
171		$( '.btVerticalMenuTrigger' ).click(function() {
172			$( 'body' ).toggleClass( 'btMenuVerticalOn' );
173		});
174
175		/* Top tools search */
176		
177		/*$('.btTopBox .btSearchInner').prependTo('body').addClass( 'btFromTopBox' );*/
178
179		$( '.btSearch .btIco, .btSearchInnerClose' ).click(function (){
180			$( 'body' ).toggleClass( 'btTopToolsSearchOpen' );
181			return false;
182		});
183
184		/* Top bar toggler */
185
186		$('.infoToggler').click(function(){
187			$(this).toggleClass('on').next().slideToggle(250);
188		});
189
190		/* Vertical menu setup */
191		
192		init_menu();
193		setTimeout( function() { $( '.menuPort' ).css( 'visibility', 'visible' ); }, 500 );
194
195		/* Load enquire */
196
197		// turn on responsive menu for all touch devices
198
199		/*var responsiveResolution = touchDevice ? '5000' : '1199';
200		if ( touchDevice && ! verticalMenuEnabled ) {
201			$( 'body' ).addClass( 'btHideMenu btMenuVerticalEnabled' ).removeClass( 'btMenuGutter' );
202		}*/
203
204		var responsiveResolution = '1023';
205		
206		if ( $( window ).width() > responsiveResolution ) {
207			$( '.topBarInLogoAreaCell' ).show();
208		}
209		
210		Modernizr.load([
211			//first test need for matchMedia polyfill
212			{
213				test: window.matchMedia,
214				nope: window.BoldThemesURI + '/js/media.match.min.js'
215			},
216			//and then load enquire
217			{
218				load : window.BoldThemesURI + '/js/enquire.min.js',
219				complete : function() {
220					//load supersized if NOT mobile.
221					$(function() {
222						enquire.register( 'screen and (max-width:' + responsiveResolution + 'px)', {
223							match: function() {
224								/* Force vertical menu */
225								if ( ! verticalMenuEnabled ) {
226									undivide_menu();
227									$( 'body' ).addClass( 'btMenuVerticalLeft btMenuVertical' ).removeClass( 'btMenuLeft btMenuCenter btMenuRight btMenuHorizontal btMenuVerticalRight' );
228									move_menu_to_vertical();
229								}
230							},
231							unmatch: function () {
232								if ( ! verticalMenuEnabled ) {
233									reset_menu_to_original();
234								}
235							}
236						})
237						enquire.register( 'screen and (max-width: 992px)', {
238							match: function() {
239
240								// Pack Header Info
241								// $('.topBarInLogoArea').prepend('<span class="infoToggler"></span>');
242								$('.topBarInLogoAreaCell').hide();
243
244							},
245							unmatch: function () {
246
247								// Unpack Header Info
248								// $('.infoToggler').unbind('click').remove();
249								$('.topBarInLogoAreaCell').show();
250							}
251						})
252						enquire.register( 'screen and (max-width: 620px)', {
253							match: function() {
254
255								// Set avatar in mediabox
256								$('.wPhoto .articleSideGutter').each(function(){
257									$(this).parents('.boldCell').find('.btMediaBox').append(this);
258								});
259
260							},
261							unmatch: function () {
262
263								// Unset avatar from mediabox
264								$('.wPhoto .articleSideGutter').each(function(){
265									$(this).parents('.boldCell').find('.btArticleListBody').before(this);
266								});
267
268							}
269						})
270					});
271				}
272			}
273		]);
274		
275
276		/* menu split */
277		if ( hasCentralMenu ) divide_menu();
278
279		// move content bellow menu
280
281		if ( ! belowMenu ) {
282			$( '.btContentWrap' ).css( 'padding-top', $( '.mainHeader' ).height() + 'px' );
283			$( window ).resize(function() {
284				undivide_menu();
285				divide_menu();
286				$( '.btContentWrap' ).css( 'padding-top', $( '.mainHeader' ).height() + 'px' );
287			});
288			$( window ).scroll(function() {
289				$( '.btContentWrap' ).css( 'padding-top', $( '.mainHeader' ).height() + 'px' );
290			});			
291		} else {
292			if ( swapHeaderStyle ) {
293				$( '.mainHeader' ).addClass( skinToSwap );
294				$( '.btPageWrap .btAltLogo' ).show( );	
295				$( '.btPageWrap .btMainLogo' ).hide( );
296			}
297		}
298		
299		/* responsive menu sub togglers */
300		$( '.menuPort ul ul' ).parent().prepend( '<div class="subToggler"></div>');
301
302		$( '.menuPort ul li' ).on( 'mouseover mouseout', function (e) {
303			if ( $( 'body' ).hasClass( 'btMenuVertical' ) || $( 'html' ).hasClass( 'touch' ) ) {
304				return false;
305			}
306			e.preventDefault();
307			$( this ).siblings().removeClass( 'on' );
308			$( this ).toggleClass( 'on' );
309		});
310
311		$( 'div.subToggler' ).on( 'click', function( e ) {
312			var parent = $( this ).parent();
313			parent.siblings().removeClass( 'on' );
314			parent.toggleClass( 'on' );
315			if ( $( 'body' ).hasClass( 'btMenuVertical' ) ) {
316				parent.find( 'ul' ).first().slideToggle( 200 );
317				setTimeout(function () {
318					if ( verticalMenuScroll !== null ) {
319						verticalMenuScroll.refresh();
320					}
321				}, 280 );
322			}
323		});
324
325	});
326	
327	$( window ).on( 'load', function() {	
328		
329		boldthemes_activate_sticky();
330		$( window ).scroll(function() {
331			boldthemes_activate_sticky();
332		});
333
334	});
335
336})( 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.