PageSourceSearch

https://www.clubcrafted.com/wp-content/plugins/emily-grace-elements/js/emily-grace-elements.js?ver=1

js clubcrafted.com collected 2026-10-03 22:10:14 UTC 9,465 bytes, 270 lines download raw bytes

1/**
2 * This file contains the main JavaScript functionality for the elements plugin.
3 * 
4 * @author Pix & Hue
5 */
6
7jQuery(document).ready(function($) {
8
9	/* -- Initialize Recent Posts Slider -- */
10	emgrace_elements_initialize_bx_slider('#emgrace-content-container .emgrace-side-newsfeed', 'horizontal', 800, 4000, 3);
11
12	/* -- Animate (Show/Hide) Share Icons -- */
13	$('.emgrace-share-icon').bind('click', emgrace_elements_display_share_icons);
14	$('.emgrace-share-close-icon').bind('click', emgrace_elements_hide_share_icons);
15
16	/* -- Initialize Latest Product Slider -- */
17	if($('.emgrace-elementor-products-widget .emgrace-elementor-product-items').length > 0) { 
18		var emgrace_latest_product_slider = $('.emgrace-elementor-products-widget .emgrace-elementor-product-items').bxSlider(emgrace_get_latest_product_settings('.emgrace-elementor-products-widget .emgrace-elementor-product-items'));
19		$(window).resize(function() {
20			emgrace_latest_product_slider.reloadSlider(emgrace_get_latest_product_settings('.emgrace-elementor-products-widget .emgrace-elementor-product-items'));
21		});
22	}	
23
24	/* -- Custom Product Slider (Posts) -- */
25	var emgrace_product_sliders = new Array();
26	$('.emgrace-custom-product-slider .emgrace-product-bxslider').each(function(i, slider) {
27	 	emgrace_product_sliders[i] = $(slider).bxSlider(emgrace_initialize_product_slider('emgrace-custom-product-slider .emgrace-product-bxslider', slider));
28	 });
29
30	$(window).resize(function() {
31		$.each(emgrace_product_sliders, function(i, slider) {
32			slider.reloadSlider(emgrace_initialize_product_slider('.emgrace-custom-product-slider .emgrace-product-bxslider', slider));
33		});
34	});	
35
36	/* -- Elementor Hook - Trigger Animations in Edit Mode -- */
37	if($('body').hasClass('elementor-editor-active')) {
38		elementorFrontend.hooks.addAction( 'frontend/element_ready/widget', function( $scope ) {
39
40			emgrace_elements_initialize_bx_slider('#emgrace-content-container .emgrace-side-newsfeed', 'horizontal', 800, 4000, 3);
41
42			/* -- Custom Product Slider (Posts) -- */
43			var emgrace_product_sliders = new Array();
44			$('.emgrace-custom-product-slider .emgrace-product-bxslider').each(function(i, slider) {
45			 	emgrace_product_sliders[i] = $(slider).bxSlider(emgrace_initialize_product_slider('emgrace-custom-product-slider .emgrace-product-bxslider', slider));
46			 });
47
48			$('.emgrace-share-icon').bind('click', emgrace_elements_display_share_icons);
49			$('.emgrace-share-close-icon').bind('click', emgrace_elements_hide_share_icons);
50
51			if($('.emgrace-elementor-products-widget .emgrace-elementor-product-items').length > 0) { 
52				var emgrace_latest_product_slider = $('.emgrace-elementor-products-widget .emgrace-elementor-product-items').bxSlider(emgrace_get_latest_product_settings('.emgrace-elementor-products-widget .emgrace-elementor-product-items'));
53				$(window).resize(function() {
54					emgrace_latest_product_slider.reloadSlider(emgrace_get_latest_product_settings('.emgrace-elementor-products-widget .emgrace-elementor-product-items'));
55				});
56			}	
57		});
58	}	
59
60	/* -- Single Elementor Posts - Adjust the Facebook Icon -- */
61	if($('body').hasClass('elementor-page') && $('body').hasClass('single-post')) {
62		if(document.getElementById("font-awesome-css") != null) {
63			emgrace_adjust_elementor_posts_facebook_icon();
64		}	
65	}	
66});
67
68var $j = jQuery.noConflict();
69
70/**************************************************
71 * Initialize the BX Slider 
72***************************************************/	
73function emgrace_elements_initialize_bx_slider(className, mode, speed, pause, slideMargin) {
74	
75	"use strict";	
76
77	var one_slide = $j(className).children().length < 2; 
78	var pagers = (!one_slide);
79	var controls = false;
80
81	$j(className).bxSlider({
82		auto: (!one_slide),
83		controls: controls,
84		touchEnabled: (!one_slide),
85		mode: mode, 
86		pager: pagers, 
87		slideMargin: slideMargin, 
88		speed: speed, 
89		pause: pause, 
90	});
91}	
92
93/*************************************
94 * Initialize the BX Slider - Gliders
95**************************************/
96function emgrace_initialize_product_slider(className, slider) {
97	"use strict";
98
99	var affiliate_width = $j(slider).closest('.emgrace-affiliate-section').width();
100	var slider_length = $j(slider).find('.emgrace-custom-product-item').not('.bx-clone').length;
101	var min_max_slides = 3;
102	var slide_width = 95;
103	var slide_margin = 30;
104	
105	if(affiliate_width > 1140) {
106		 slide_width = 110;
107		  min_max_slides = 8;
108		  slide_margin = 40;
109	} else if(affiliate_width > 1020) {
110		 slide_width = 112;
111		 min_max_slides = 6;
112		 slide_margin = 42;
113	}  else if(affiliate_width > 895) {
114		 slide_width = 105;
115		 min_max_slides = 6;
116	} else if(affiliate_width > 780) {
117		 slide_width = 90;
118		 min_max_slides = 6;
119		 slide_margin = 25;
120	} else if(affiliate_width > 705) {
121		slide_width = 93;
122		min_max_slides = 5;
123	} else if(affiliate_width > 670) {
124		slide_width = 85;
125		min_max_slides = 5;
126	}  else if(affiliate_width > 595) {
127		slide_width = 95;
128		min_max_slides = 4;
129	} else if(affiliate_width > 545) {
130		slide_width = 85;
131		min_max_slides = 4;
132		slide_margin = 25;
133	} else if(affiliate_width > 445) {
134		slide_width = 90;
135		min_max_slides = 3;
136	} else if(affiliate_width > 320) {
137		slide_width = 85;
138		min_max_slides = 2;
139	}
140
141	var one_slide = false; 
142	if (slider_length <= min_max_slides) {
143		one_slide = true;
144	}
145	var slider_settings = {
146		auto: (!one_slide),
147		controls: (!one_slide),
148		pager: false,
149		pause: 3000,
150		touchEnabled: (!one_slide),
151		slideMargin: slide_margin,
152		minSlides: min_max_slides,
153		maxSlides: min_max_slides,
154		slideWidth: slide_width,
155		moveSlides: 1,
156		nextText: '<img src="' + emgrace_default_icon + '/images/icons/emgrace_right_arrow.png' + '">',
157		prevText: '<img src="' + emgrace_default_icon + '/images/icons/emgrace_left_arrow.png' + '">',
158	}
159
160	return slider_settings;
161}
162
163/**************************************************
164 * Animate/Show Social Media Share Icons
165***************************************************/
166function emgrace_elements_display_share_icons(event) {
167
168	"use strict";
169
170	event.preventDefault();
171	$j(this).hide();
172	$j(this).next().fadeIn();
173	$j(this).next().next().fadeIn();
174}
175
176/**************************************************
177 * Animate/Hide Social Media Share Icons
178***************************************************/
179function emgrace_elements_hide_share_icons(event) {
180
181	"use strict";
182
183	event.preventDefault();
184	$j(this).hide();
185	$j(this).prev().hide();
186	$j(this).prev().prev().fadeIn();
187}
188
189/***************************************************
190 * Latest Product Scroll - Get Slider Settings
191****************************************************/	
192function emgrace_get_latest_product_settings(className) {
193	
194	"use strict";
195	
196	var window_width = $j(window).width();
197	var min_max_slides = 1, slide_margin = 20, slide_width = 105;
198	
199	if(window_width > 1215) {
200		min_max_slides = 6;
201		slide_margin = 35;
202		slide_width = 110;
203	} else if(window_width > 1075) {
204		min_max_slides = 6;
205		slide_margin = 35;
206	}  else if(window_width > 950) {
207		min_max_slides = 5;
208		slide_margin = 40;
209	}  else if(window_width > 767) {
210		min_max_slides = 4;
211		slide_margin = 30;
212		slide_width = 100;
213	} else if (window_width > 650) {
214		slide_margin = 30;
215		min_max_slides = 3;
216	} else if (window_width > 500) {
217		slide_margin = 30;
218		min_max_slides = 2;
219	} 
220
221	var one_slide = $j(className).children().length < 6;
222
223	var slider_settings = {
224		auto: (!one_slide),
225		controls: (!one_slide),
226		pager: false,
227		pause: 3000,
228		touchEnabled: (!one_slide),
229		slideMargin: slide_margin,
230		minSlides: min_max_slides,
231		maxSlides: min_max_slides,
232		slideWidth: slide_width,
233		moveSlides: 1,
234		nextText: '<img src="' + emgrace_default_icon + '/images/icons/emgrace_right_arrow.png' + '">',
235		prevText: '<img src="' + emgrace_default_icon + '/images/icons/emgrace_left_arrow.png' + '">',
236	}
237
238	return slider_settings;
239}
240
241/*****************************************************
242 * Adjust Facebook Icon on Single Elementor Posts 
243*******************************************************/
244function emgrace_adjust_elementor_posts_facebook_icon()  {
245	"use strict";
246
247	//Site Header - Social Media Share Icons
248	if($j('#emgrace-header').find('.emgrace-social-media-follow-icons .fab.fa-facebook-f')) {
249		var header_social_media_facebook = $j('#emgrace-header').find('.emgrace-social-media-follow-icons .fab.fa-facebook-f');
250		header_social_media_facebook.removeClass('fab fa-facebook-f').addClass('fa fa-facebook');
251	}
252
253	//Single Post Footer - Social Media Share Icons
254	if($j('.emgrace-post-footer').find('.emgrace-single-post-share-buttons .fab fa-facebook-f')) { 
255		var single_social_media_facebook = $j('.emgrace-single-post-share-buttons').find('.emgrace-single-share-icons .fab.fa-facebook-f');
256		single_social_media_facebook.removeClass('fab fa-facebook-f').addClass('fa fa-facebook');
257	}
258
259	//Sidebar - About Me Widget
260	if($j('#emgrace-sidebar').find('.emgrace-about-social-icons .fab fa-facebook-f')) { 
261		var about_me_social_media_facebook = $j('.emgrace-about-social-icons').find('.fab.fa-facebook-f');
262		about_me_social_media_facebook.removeClass('fab fa-facebook-f').addClass('fa fa-facebook');
263	}
264
265	//Footer - Social Media Share Icons
266	if($j('#emgrace-footer').find('.emgrace-social-media-follow-icons .fab fa-facebook-f')) { 
267		var footer_social_media_facebook = $j('#emgrace-footer').find('.emgrace-social-media-follow-icons .fab.fa-facebook-f');
268		footer_social_media_facebook.removeClass('fab fa-facebook-f').addClass('fa fa-facebook');
269	}
270}

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.