PageSourceSearch

https://centauriweb.hu/en/wp-content/plugins/hootkit/assets/miscmods.js?ver=3.0.6

js centauriweb.hu collected 2026-09-25 00:30:38 UTC 5,827 bytes, 129 lines download raw bytes

1jQuery(document).ready(function($) {
2	"use strict";
3
4	if( 'undefined' == typeof hootData )
5		window.hootData = {};
6
7	/****** WC Carticon ******/
8
9	if( 'undefined' == typeof hootData.carticonrefresh || 'enable' == hootData.carticonrefresh ) {
10		// $( document.body ).on( 'wc_fragment_refresh updated_wc_div', function() {});
11		$( document.body ).on( 'added_to_cart removed_from_cart', function( event, fragments, cart_hash ) {
12			// e.preventDefault();
13			var $carticons = $('.carticon-widget'),
14				$cartitems = $carticons.find('.carticon-cartitems'),
15				$cartvalue = $carticons.find('.carticon-cartvalue'),
16				nonce      = $carticons.attr('data-nonce');
17			jQuery.ajax({
18				type : "post",
19				dataType : "json",
20				url : hootkitMiscmodsData.ajaxurl,
21				data : {action: 'hk_carticon_refresh', nonce: nonce},
22				beforeSend: function() {
23					$carticons.addClass('hk-refreshing');
24				},
25				success: function(response) {
26					$carticons.removeClass('hk-refreshing');
27					if ( response.hasitems == 'yes' ) {
28						$carticons.removeClass('announce-nomsg');
29						$cartitems.removeClass('no-cartitems').html(response.items);
30						$cartvalue.removeClass('no-cartvalue').html(response.cartvalue);
31					} else {
32						$carticons.addClass('announce-nomsg');
33						$cartitems.addClass('no-cartitems').html('');
34						$cartvalue.addClass('no-cartvalue').html('');
35					}
36				}
37			});
38		});
39	}
40
41	/****** WC Fly Cart ******/
42	if( 'undefined' == typeof hootData.flycart || 'enable' == hootData.flycart ) {
43		var $html = $('html');
44		if ( $('#wpadminbar').length ) $html.addClass('has-adminbar');
45		$( '.flycart-toggle' ).click( function(event) {
46			event.preventDefault();
47			var $flycartToggle = $(this),
48				$flycart = $flycartToggle.parent(),
49				$flycartPanel = $flycartToggle.siblings('.flycart-panel'),
50				isLeft = $flycart.is('.flycart-left');
51			$flycartToggle.toggleClass( 'active' );
52			$html.toggleClass( 'flycart-open' );
53			if( $flycartToggle.is('.active') ) {
54				if ( isLeft ) {
55					$flycartPanel.show().css( 'left', '-' + $flycartPanel.outerWidth() + 'px' ).animate( {left:0}, 300 );
56					$flycartToggle.animate( { left: $flycartPanel.width() + 'px' }, 300 );
57				} else {
58					$flycartPanel.show().css( 'right', '-' + $flycartPanel.outerWidth() + 'px' ).animate( {right:0}, 300 );
59					$flycartToggle.animate( { right: $flycartPanel.width() + 'px' }, 300 );
60				}
61			} else {
62				if ( isLeft ) {
63					$flycartPanel.animate( { left: '-' + $flycartPanel.outerWidth() + 'px' }, 300, function(){ $flycartPanel.hide(); } );
64					$flycartToggle.animate( { left: '0' }, 300 );
65				} else {
66					$flycartPanel.animate( { right: '-' + $flycartPanel.outerWidth() + 'px' }, 300, function(){ $flycartPanel.hide(); } );
67					$flycartToggle.animate( { right: '0' }, 300 );
68				}
69			}
70		});
71		$('body').click(function (e) {
72			if ( $html.is('.flycart-open') && !$(e.target).is( '.fly-cart *, .fly-cart' ) ) {
73				$( '.flycart-toggle.active' ).click();
74			}
75		});
76
77		var $flycart = $('#fly-cart'),
78			flycarttimeout = 1000;
79		if( 'undefined' != typeof hootData && 'undefined' != typeof hootData.flycarttimeout )
80			flycarttimeout = hootData.flycarttimeout;
81		if ( $flycart.is('.flycart-showonadd') ) {
82			$( document.body ).on( 'added_to_cart removed_from_cart', function( event, fragments, cart_hash ) {
83				$( '.flycart-toggle:not(.active)' ).click();
84				setTimeout(function() { $( '.flycart-toggle.active' ).click(); }, 1500);
85			});
86		}
87	}
88	/****** WC Fly Cart - Modal Focus : @todo ******/
89
90	/****** Timer ******/
91
92	if( 'undefined' == typeof hootData.timer || 'enable' == hootData.timer ) {
93		$('.hootkit-timer').each(function(){
94			var $self = $(this),
95				selfData = $self.data();
96			if ( 'undefined' == typeof selfData.diff ) return; // customizer view
97			var timeCounter = setInterval(function() {
98					var display = '';
99					if ( selfData.diff < 0 ) {
100						clearInterval(timeCounter);
101						display += '<span class="timer-expired">' + selfData.expiredlabel + '</span>';
102						// console.log( 'expired' );
103					} else {
104						// error due to 30/31 days: eg end date 1m3d vs 1y1m3d from now => use JS Date class
105						// var years = Math.floor( selfData.diff / ( 60 * 60 * 24 * 365 ) ); 
106						// var months =  Math.floor( ( selfData.diff % ( 60 * 60 * 24 * 365 ) ) / ( 60 * 60 * 24 * 31 ) );
107						// var days =    Math.floor( ( selfData.diff % ( 60 * 60 * 24 * 31  ) ) / ( 60 * 60 * 24 ) );
108						var days    = Math.floor( selfData.diff / ( 60 * 60 * 24 ) );
109						var hours   = Math.floor( ( selfData.diff % ( 60 * 60 * 24       ) ) / ( 60 * 60 ) );
110						var minutes = Math.floor( ( selfData.diff % ( 60 * 60            ) ) / ( 60      ) );
111						var seconds = Math.floor( ( selfData.diff % ( 60                 ) )               );
112						// if ( years == 1 ) display += years + ' ' + selfData.yearlabel + ' ';
113						// if ( years > 1 ) display += years + ' ' + selfData.yearslabel + ' ';
114						// if ( months == 1 ) display += months + ' ' + selfData.monthlabel + ' ';
115						// if ( months > 1 ) display += months + ' ' + selfData.monthslabel + ' ';
116						if ( days == 1 ) display += '<span class="days-count">' + days + '</span> <span class="days-label">' + selfData.daylabel  + '</span> ';
117						if ( days > 1 ) display  += '<span class="days-count">' + days + '</span> <span class="days-label">' + selfData.dayslabel + '</span> ';
118						display += '<span class="hours-count">
118'   + ( "0" + hours ).slice(-2)   + '</span>';
119						display += '<span class="minutes-count">' + ( "0" + minutes ).slice(-2) + '</span>';
120						display += '<span class="seconds-count">' + ( "0" + seconds ).slice(-2) + '</span>' ;
121						// console.log( selfData.diff+' '+years+' '+ months+' '+days+' '+hours+' '+minutes+' '+seconds );
122					}
123					$self.html( display );
124					selfData.diff = selfData.diff - 1;
125				}, 1000);
126		});
127	}
128
129});

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.