PageSourceSearch

https://www.atlanticoline.pt/wp-content/themes/zi-theme/js/homeslides.js

js atlanticoline.pt collected 2026-10-02 06:21:50 UTC 3,667 bytes, 171 lines download raw bytes

1document.addEventListener('DOMContentLoaded', function() {
2		const slides = document.querySelectorAll('#hslide .glide__slide')
3
4		if (slides.length > 1) {
5			const glide = new Glide('#hslide', {
6							type: 'carousel',
7							autoplay: 4000,
8							hoverpause: true,
9							perView: 1,
10							animationDuration: 800,
11							gap: 0
12							});
13
14							loadNavSlides(glide,'.homeSlide')
15
16		} else {
17			document.querySelector('.controls-row').style.display='none';
18			document.querySelector('#hslide').classList.add('single-slide');
19		}
20
21		const slidesNoticias = document.querySelectorAll('#noticiasSlide .glide__slide')
22		
23		if (slidesNoticias.length > 1) {
24			const noticiasGlide=new Glide('#noticiasSlide', {
25				type: 'carousel',
26				autoplay: 4000,
27				hoverpause: true,
28				animationDuration: 800,
29				gap: 24,
30				perView: 3,
31				breakpoints: {
32					800: {
33						perView: 1
34					}
35				}
36				
37			})
38
39			loadNavSlides(noticiasGlide,'.sectionNoticias')
40
41		} else {
42			const noticiasS=document.querySelector('#noticiasSlide')
43			if(noticiasS)
44				noticiasS.classList.add('single-slide')
45		}
46
47
48		const opinioesSlide = document.querySelectorAll('#opinioesSlide .glide__slide')
49		
50		if (opinioesSlide.length > 1) {
51			let opiniaoGlide=new Glide('#opinioesSlide', {
52				type: 'carousel',
53				autoplay: 4000,
54				hoverpause: true,
55				animationDuration: 800,
56				gap: 24,
57				perView: 3,
58				breakpoints: {
59					800: {
60						perView: 1.2
61					}
62				}
63			})
64
65			loadNavSlides(opiniaoGlide,'.sectionOpinioes')
66			
67
68		} else {
69			const opinioesS=document.querySelector('#opinioesSlide')
70			if(opinioesS)
71				opinioesS.classList.add('single-slide')
72
73			
74		}
75
76
77		const dicasSlide = document.querySelectorAll('#dicasSlide .glide__slide')
78		
79		if (dicasSlide.length > 1) {
80			let dicasSlide=new Glide('#dicasSlide', {
81				type: 'carousel',
82				autoplay: 4000,
83				hoverpause: true,
84				animationDuration: 800,
85				gap: 24,
86				perView: 4.8,
87				breakpoints: {
88				
89					940: {
90						perView: 3
91					},
92					800: {
93						perView: 1.2
94					}
95				}
96			})
97			
98			loadNavSlides(dicasSlide,'.dicasSection')
99
100		} else {
101			const dicasSlide=document.querySelector('#dicasSlide')
102			if(dicasSlide)
103				dicasSlide.classList.add('single-slide')
104
105			
106		}
107
108
109
110
111
112		const slidesTarifas = document.querySelectorAll('#tarifasSlide .glide__slide')
113		
114		if (slidesTarifas.length > 1) {
115			const tarifasGlide=new Glide('#tarifasSlide', {
116				type: 'carousel',
117				autoplay: 4000,
118				hoverpause: true,
119				animationDuration: 800,
120				gap: 24,
121				perView: 3,
122				breakpoints: {
123					1360: {
124						perView: 2
125					},
126					1024: {
127						perView: 1
128					}
129				}
130			})
131
132			loadNavSlides(tarifasGlide,'.sectionTarifas')
133			
134
135		} else {
136			const tarifasS=document.querySelector('#tarifasSlide')
137			if(tarifasS)
138				tarifasS.classList.add('single-slide')
139			
140		}
141		
142		if(document.getElementById("closeTerminal"))
143			document.getElementById("closeTerminal").addEventListener("click", closeTerminal);
144		
145	});
146    
147
148
149	function loadNavSlides(glide, elem){
150
151		const progressFill = document.querySelector(elem +' .glide__progress-fill');
152
153		function updateProgress(index) {
154				const slides = document.querySelectorAll(elem +' .glide__slide:not(.glide__slide--clone)').length;
155				const percent = ((index + 1) / slides) * 100; 
156				progressFill.style.width = percent + '%';
157		}
158
159		
160		glide.on('mount.after', () => {
161		updateProgress(glide.index);
162		});
163
164		
165		glide.on('run', () => {
166		updateProgress(glide.index);
167		});
168
169		glide.mount();
170
171	}

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.