PageSourceSearch

https://pacellicatholicschools.com/wp-content/plugins/powerpack-elements/assets/js/pp-bg-effects.js?ver=1.0.0

js pacellicatholicschools.com collected 2026-10-01 23:56:19 UTC 12,636 bytes, 345 lines download raw bytes

1(function ($) {
2    "use strict";
3
4    var BgHandler = function ($scope, $) {
5
6		if ( ! $scope.hasClass( 'pp-bg-effects-yes' ) ) {
7			return;
8		}
9
10		var bg_row_elem    = elementorFrontend.isEditMode() ? $scope.find('.pp-background-wrapper') : $scope,
11			section_id     = $scope.data('id'),
12			animation_type = bg_row_elem.data('animation-type'),
13			style          = '',
14			hideMaxWidth   = bg_row_elem.data('hide-max-width'),
15			hideMinWidth   = bg_row_elem.data('hide-min-width'),
16			winWidth       = $( window ).width(),
17			canvas_opacity = 1;
18
19		var prepend_content  = function( canvas_opacity ) {
20			if ( ! elementorFrontend.isEditMode() ) {
21				var style   = ' style="opacity: ' + canvas_opacity + ';"';
22				var content = $( '<div class="pp-background-wrapper" id="pp-background-' + section_id + '"' + style + '></div>' );
23				content.insertBefore( bg_row_elem.find('.elementor-container') );
24			} else {
25				if ( 'particles' !== animation_type || 'nasa' !== animation_type || 'bubble' !== animation_type || 'snow' !== animation_type || 'custom' !== animation_type ) {
26					bg_row_elem.css('opacity', canvas_opacity);
27				}
28			}
29		}
30		var animation_birds  = function() {
31			var	birdBgColor       = bg_row_elem.data( 'bird-bg-color' ),
32				birdColor1        = bg_row_elem.data( 'bird-color-1' ),
33				birdColor2        = bg_row_elem.data( 'bird-color-2' ),
34				birdColorMode     = bg_row_elem.data( 'bird-color-mode' ),
35				birdQuantity      = bg_row_elem.data( 'bird-quantity' ),
36				birdSize          = bg_row_elem.data( 'bird-size' ),
37				birdWingSpan      = bg_row_elem.data( 'bird-wing-span' ),
38				birdSpeedLimit    = bg_row_elem.data( 'bird-speed-limit' ),
39				birdSeparation    = bg_row_elem.data( 'bird-separation' ),
40				birdAlignment     = bg_row_elem.data( 'bird-alignment' ),
41				birdCohesion      = bg_row_elem.data( 'bird-cohesion' );
42
43			VANTA.BIRDS({
44				el: '#pp-background-' + section_id,
45				backgroundColor: new THREE.Color( parseInt ( birdBgColor ) ),
46				color1: new THREE.Color( parseInt ( birdColor1 ) ),
47				color2: new THREE.Color( parseInt ( birdColor2 ) ),
48				colorMode: birdColorMode,
49				quantity: birdQuantity,
50				birdSize: birdSize,
51				wingSpan: birdWingSpan,
52				speedLimit: birdSpeedLimit,
53				separation: birdSeparation,
54				alignment: birdAlignment,
55				cohesion: birdCohesion,
56			});
57		}
58		var animation_fog    = function() {
59			var	fogHighLightColor = bg_row_elem.data( 'fog-highlight-color' ),
60				fogMidtoneColor   = bg_row_elem.data( 'fog-midtone-color' ),
61				fogLowlightColor  = bg_row_elem.data( 'fog-lowlight-color' ),
62				fogBaseColor      = bg_row_elem.data( 'fog-base-color' ),
63				fogBlurFactor     = bg_row_elem.data( 'fog-blur-factor' ),
64				fogZoom           = bg_row_elem.data( 'fog-zoom' ),
65				fogSpeed          = bg_row_elem.data( 'fog-speed' );
66
67			VANTA.FOG({
68				el: '#pp-background-' + section_id,
69				highlightColor: new THREE.Color( parseInt ( fogHighLightColor ) ),
70				midtoneColor: new THREE.Color( parseInt ( fogMidtoneColor ) ),
71				lowlightColor: new THREE.Color( parseInt ( fogLowlightColor ) ),
72				baseColor: new THREE.Color( parseInt ( fogBaseColor ) ),
73				blurFactor: fogBlurFactor,
74				zoom: fogZoom,
75				speed: fogSpeed,
76			});
77		}
78		var animation_waves  = function() {
79			var	wavesColor = bg_row_elem.data( 'waves-color' ),
80				wavesShininess = bg_row_elem.data( 'waves-shininess' ),
81				wavesHeight = bg_row_elem.data( 'waves-height' ),
82				wavesZoom = bg_row_elem.data( 'waves-zoom' ),
83				wavesSpeed = bg_row_elem.data( 'waves-speed' );
84
85			VANTA.WAVES({
86				el: '#pp-background-' + section_id,
87				shininess: wavesShininess,
88				color: new THREE.Color( parseInt ( wavesColor ) ),
89				waveHeight: wavesHeight,
90				zoom: wavesZoom,
91				waveSpeed: wavesSpeed,
92			});	
93		}
94		var animation_net    = function() {
95			var netColor       = bg_row_elem.data( 'net-color' ),
96				netBgColor     = bg_row_elem.data( 'net-bg-color' ),
97				netPoints      = bg_row_elem.data( 'net-points' ),
98				netMaxDistance = bg_row_elem.data( 'net-max-distance' ),
99				netSpacing     = bg_row_elem.data( 'net-spacing' ),
100				netShowDot     = bg_row_elem.data( 'net-show-dot' );
101
102			VANTA.NET({
103				el: '#pp-background-' + section_id,
104				color: new THREE.Color( parseInt ( netColor ) ),
105				backgroundColor: new THREE.Color( parseInt ( netBgColor ) ),
106				points: netPoints,
107				maxDistance: netMaxDistance,
108				spacing: netSpacing,
109				showDots: netShowDot,
110			});
111		}
112		var animation_dots   = function() {
113			var dotsColor1  = bg_row_elem.data( 'dots-color-1' ),
114				dotsColor2  = bg_row_elem.data( 'dots-color-2' ),
115				dotsBgColor = bg_row_elem.data( 'dots-bg-color' ),
116				dotsSize    = bg_row_elem.data( 'dots-size' ),
117				dotsSpacing = bg_row_elem.data( 'dots-spacing' );
118
119			VANTA.DOTS({
120				el: '#pp-background-' + section_id,
121				color: new THREE.Color( parseInt ( dotsColor1 ) ),
122				color2: new THREE.Color( parseInt ( dotsColor2 ) ),
123				backgroundColor: new THREE.Color( parseInt ( dotsBgColor ) ),
124				size: dotsSize,
125				spacing: dotsSpacing,
126			});	
127		}
128
129		var animation_custom = function() {
130			var part_custom_code = bg_row_elem.data( 'custom-code' );
131			if ( '' !== part_custom_code ) {
132				particlesJS( 'pp-background-' + section_id, part_custom_code );
133			}
134		}
135		var animation_all_particles = function() {
136			var partColor         = ( '' !== bg_row_elem.data( 'part-color' ) ) ? bg_row_elem.data( 'part-color' ) : '#ffffff',
137				part_opacity      = bg_row_elem.data( 'part-opacity' ),
138				part_rand_opacity = bg_row_elem.data( 'rand-opacity' ),
139				part_quantity     = bg_row_elem.data( 'quantity' ),
140				part_size         = bg_row_elem.data( 'part-size' ),
141				part_speed        = bg_row_elem.data( 'part-speed' ),
142				part_direction    = bg_row_elem.data( 'part-direction' ),
143				part_hover_effect = bg_row_elem.data( 'hover-effect' ),
144				part_hover_size   = bg_row_elem.data( 'hover-size' );
145
146			if ( 'particles' === animation_type ) {
147				var lineLinked 		= true,
148					partShapeType	= 'circle',
149					partMoveRand 	= false,
150					partSizeRandom	= true,
151					lineColor       = ( '' !== bg_row_elem.data( 'line-color' ) ) ? bg_row_elem.data( 'line-color' ) : '#ffffff',
152					partQuantity    = ( '' !== part_quantity ) ? part_quantity : 80,
153					partOpacity     = ( '' !== part_opacity ) ? part_opacity : 0.5,
154					partRandOpacity = ( '' !== part_rand_opacity ) ? part_rand_opacity : false,
155					partDirection   = ( '' !== part_direction ) ? part_direction : 'none',
156					partSpeed       = ( '' !== part_speed ) ? part_speed : 3,
157					partSize        = ( '' !== part_size ) ? part_size : 3,
158					showHoverEffect	= ( 'noeffect' === part_hover_effect ) ? false : true,
159					partHoverEffect	= ( 'none' !== part_hover_effect ) ? part_hover_effect : 'repulse',
160					partHoverSize	= ( '' !== part_hover_size ) ? part_hover_size : 0;
161			}
162			if ( 'nasa' === animation_type ) {
163				var lineLinked		= false,
164					partShapeType 	= 'star',
165					partMoveRand 	= true,
166					partSizeRandom	= true,
167					partQuantity    = ( '' !== part_quantity ) ? part_quantity : 110,
168					partOpacity     = ( '' !== part_opacity ) ? part_opacity : 1,
169					partRandOpacity = ( '' !== part_rand_opacity ) ? part_rand_opacity : true,
170					partDirection   = ( '' !== part_direction ) ? part_direction : 'none',
171					partSpeed       = ( '' !== part_speed ) ? part_speed : 1,
172					partSize        = ( '' !== part_size ) ? part_size : 3,
173					showHoverEffect	= ( 'noeffect' === part_hover_effect ) ? false : true,
174					partHoverEffect	= ( 'none' !== part_hover_effect ) ? part_hover_effect : 'bubble',
175					lineColor       = ( 'grab' === part_hover_effect && '' !== bg_row_elem.data( 'line-h-color' ) ) ? bg_row_elem.data( 'line-h-color' ) : '#ffffff',
176					partHoverSize	= ( '' !== part_hover_size ) ? part_hover_size : 0;
177			}
178			if ( 'bubble' === animation_type ) {
179				var lineLinked		= false,
180					partShapeType	= 'circle',
181					partMoveRand 	= true,
182					partSizeRandom 	= false,
183					partQuantity    = ( '' !== part_quantity ) ? part_quantity : 6,
184					partOpacity     = ( '' !== part_opacity ) ? part_opacity : 0.6,
185					partRandOpacity = ( '' !== part_rand_opacity ) ? part_rand_opacity : false,
186					partDirection   = ( '' !== part_direction ) ? part_direction : 'none',
187					partSpeed       = ( '' !== part_speed ) ? part_speed : 10,
188					partSize        = ( '' !== part_size ) ? part_size : 160,
189					showHoverEffect	= ( 'noeffect' === part_hover_effect ) ? false : true,
190					partHoverEffect	= ( 'none' !== part_hover_effect ) ? part_hover_effect : 'none',
191					lineColor       = ( 'grab' === part_hover_effect && '' !== bg_row_elem.data( 'line-h-color' ) ) ? bg_row_elem.data( 'line-h-color' ) : '#ffffff',
192					partHoverSize	= ( '' !== part_hover_size ) ? part_hover_size : 0;
193			}
194			if ( 'snow' === animation_type ) {
195				var lineLinked		= false,
196					partShapeType	= 'circle',
197					partMoveRand 	= false,
198					partSizeRandom	= true,
199					partQuantity    = ( '' !== part_quantity ) ? part_quantity : 300,
200					partOpacity     = ( '' !== part_opacity ) ? part_opacity : 0.5,
201					partRandOpacity = ( '' !== part_rand_opacity ) ? part_rand_opacity : true,
202					partDirection   = ( '' !== part_direction ) ? part_direction : 'bottom',
203					partSpeed       = ( '' !== part_speed ) ? part_speed : 5,
204					partSpeed       = ( '' !== part_speed ) ? part_speed : 5,
205					partSize        = ( '' !== part_size ) ? part_size : 10,
206					showHoverEffect	= ( 'noeffect' === part_hover_effect ) ? false : true,
207					partHoverEffect	= ( 'none' !== part_hover_effect ) ? part_hover_effect : 'bubble',
208					lineColor       = ( 'grab' === part_hover_effect && '' !== bg_row_elem.data( 'line-h-color' ) ) ? bg_row_elem.data( 'line-h-color' ) : '#ffffff',
209					partHoverSize	= ( '' !== part_hover_size ) ? part_hover_size : 4;
210			}
211
212			var particlesData = {
213				"particles": {
214					"number": {
215						"value": partQuantity,
216						"density": {
217							"enable": true,
218							"value_area": 800
219						}
220					},
221					"color": {
222						"value": partColor,
223					},
224					"shape": {
225						"type": partShapeType,
226						"stroke": {
227							"width": 0,
228							"color": "#000000"
229						},
230						"polygon": {
231							"nb_sides": 5
232						},
233						"image": {
234							"src": "",
235							"width": 0,
236							"height": 0
237						}
238					},
239					"opacity": {
240						"value": partOpacity,
241						"random": partRandOpacity,
242						"anim": {
243							"enable": true,
244							"speed": 1,
245							"opacity_min": 0.1,
246							"sync": false
247						}
248					},
249					"size": {
250						"value": partSize,
251						"random": partSizeRandom,
252						"anim": {
253							"enable": false,
254							"speed": 40,
255							"size_min": 0.1,
256							"sync": false
257						}
258					},
259					"line_linked": {
260						"enable": lineLinked,
261						"distance": 150,
262						"color": lineColor,
263						"opacity": 0.4,
264						"width": 1,
265					},
266					"move": {
267						"enable": true,
268						"speed": partSpeed,
269						"direction": partDirection,
270						"random": partMoveRand,
271						"straight": false,
272						"out_mode": "out",
273						"bounce": false,
274						"attract": {
275							"enable": false,
276							"rotateX": 600,
277							"rotateY": 1200
278						}
279					}
280				},
281				"interactivity": {
282					"detect_on": "canvas",
283					"events": {
284						"onhover": {
285							"enable": showHoverEffect,
286							"mode": partHoverEffect,
287						},
288						"onclick": {
289							"enable": true,
290							"mode": "repulse"
291						},
292						"resize": true
293					},
294					"modes": {
295						"grab": {
296							"distance": 400,
297							"line_linked": {
298							"opacity": 0.5
299							}
300						},
301						"bubble": {
302							"distance": 400,
303							"size": partHoverSize,
304							"duration": 0.3,
305							"opacity": 1,
306							"speed": 3
307						},
308						"repulse": {
309							"distance": 200,
310							"duration": 0.4
311						},
312						"push": {
313							"particles_nb": 4
314						},
315						"remove": {
316							"particles_nb": 2
317						}
318					}
319				},
320				"retina_detect": true
321			}
322			particlesJS( 'pp-background-' + section_id, particlesData );
323		}
324		setTimeout(function(){
325			if ( winWidth > hideMaxWidth || winWidth < hideMinWidth || 'none' == hideMaxWidth ) {
326				if ( 'particles' === animation_type || 'nasa' === animation_type || 'bubble' === animation_type || 'snow' === animation_type ) {
327					var canvas_opacity = '';
328					prepend_content( canvas_opacity );
329					animation_all_particles();
330				} else {
331					var canvas_opacity = bg_row_elem.data( 'canvas-opacity' );
332
333					prepend_content( canvas_opacity );
334					eval( 'animation_' + animation_type )();
335				}
336			}
337		}, 500);
338
339    };
340
341    $( window ).on('elementor/frontend/init', function () {
342		elementorFrontend.hooks.addAction('frontend/element_ready/global', BgHandler);
343    });
344    
345}(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.