An error occurred while processing the template.
The following has evaluated to null or missing: ==> themeDisplay.request.getParameter("value") [in template "44658#44704#3933776" at line 228, column 22] ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign parameter = themeDisplay.requ... [in template "44658#44704#3933776" at line 228, column 1] ----
1<style>
2.comp-custom-tab {
3 width: 100%;
4 display: -webkit-box;
5 display: -ms-flexbox;
6 display: flex;
7 -webkit-box-align: center;
8 -ms-flex-align: center;
9 align-items: center;
10 -webkit-box-orient: vertical;
11 -webkit-box-direction: normal;
12 -ms-flex-direction: column;
13 flex-direction: column;
14}
15@media (max-width: 1199px) {
16 .comp-custom-tab {
17 padding: 0 23px;
18 }
19}
20.comp-custom-tab__block {
21 width: 1023px;
22 border-radius: 16px;
23 border: 1px solid #DBDBDB;
24 background-position: bottom;
25 background-size: 100% 2px;
26 background-repeat: no-repeat;
27 background-image: -webkit-gradient(linear, left top, right top, from(#389FDF), to(#2EB68F));
28 background-image: linear-gradient(to right, #389FDF, #2EB68F);
29 border-bottom: 2px solid #31AEA8;
30 padding: 40px 40px 36px;
31}
32@media (max-width: 1199px) {
33 .comp-custom-tab__block {
34 width: auto;
35 padding: 26px 30px 18px;
36 }
37}
38.comp-custom-tab__presentation-text-zone {
39 display: -webkit-box;
40 display: -ms-flexbox;
41 display: flex;
42 width: 100%;
43 -webkit-box-orient: vertical;
44 -webkit-box-direction: normal;
45 -ms-flex-direction: column;
46 flex-direction: column;
47 gap: 15px;
48 -webkit-box-align: start;
49 -ms-flex-align: start;
50 align-items: start;
51}
52@media (max-width: 1199px) {
53 .comp-custom-tab__presentation-text-zone {
54 -webkit-box-align: center;
55 -ms-flex-align: center;
56 align-items: center;
57 }
58}
59.comp-custom-tab__presentation-title {
60 margin: 0 !important;
61 font-size: 32px !important;
62 line-height: 35px !important;
63 color: #002E58;
64}
65@media (max-width: 700px) {
66 .comp-custom-tab__presentation-title {
67 font-size: 24px !important;
68 }
69}
70.comp-custom-tab__presentation-txt {
71 margin: 0 !important;
72}
73.comp-custom-tab__tab-options-zone {
74 padding: 44px 0 40px;
75 display: -ms-grid;
76 display: grid;
77 -ms-grid-columns: (1fr)[4];
78 grid-template-columns: repeat(4, 1fr);
79}
80.comp-custom-tab__tab-options-zone__three {
81 -ms-grid-columns: (1fr)[3];
82 grid-template-columns: repeat(3, 1fr);
83}
84.comp-custom-tab__tab-options-zone__two {
85 -ms-grid-columns: (1fr)[2];
86 grid-template-columns: repeat(2, 1fr);
87}
88.comp-custom-tab__tab-options-zone__one {
89 -ms-grid-columns: (1fr)[1];
90 grid-template-columns: repeat(1, 1fr);
91}
92@media (max-width: 1199px) {
93 .comp-custom-tab__tab-options-zone {
94 -ms-grid-columns: 1fr 10px 1fr;
95 grid-template-columns: repeat(2, 1fr);
96 gap: 10px;
97 }
98}
99@media (max-width: 420px) {
100 .comp-custom-tab__tab-options-zone {
101 gap: 3px;
102 }
103}
104.comp-custom-tab__tab-button {
105 all: unset;
106 cursor: pointer;
107 display: -webkit-box;
108 display: -ms-flexbox;
109 display: flex;
110 -webkit-box-orient: vertical;
111 -webkit-box-direction: normal;
112 -ms-flex-direction: column;
113 flex-direction: column;
114 -webkit-box-align: center;
115 -ms-flex-align: center;
116 align-items: center;
117 -webkit-box-pack: center;
118 -ms-flex-pack: center;
119 justify-content: center;
120 width: auto;
121 height: 90px;
122 font-size: 14px;
123 gap: 14px;
124 border-radius: 5px;
125 background-color: transparent;
126 position: relative;
127}
128.comp-custom-tab__tab-button--active {
129 background-color: #E5FAFF;
130 color: #0071CE;
131 font-weight: bold;
132}
133@media (max-width: 1199px) {
134 .comp-custom-tab__tab-button {
135 -webkit-box-sizing: border-box;
136 box-sizing: border-box;
137 height: 50px;
138 width: auto;
139 -webkit-box-orient: horizontal;
140 -webkit-box-direction: normal;
141 -ms-flex-direction: row;
142 flex-direction: row;
143 gap: 10px;
144 -webkit-box-pack: start;
145 -ms-flex-pack: start;
146 justify-content: start;
147 padding: 7px;
148 border: 1px solid #E5FAFF;
149 }
150}
151.comp-custom-tab__tab-button:hover {
152 border: 2px solid #E5FAFF;
153}
154.comp-custom-tab__tab-button:focus {
155 border: 1px solid #0071CE;
156}
157.comp-custom-tab__tab-button:active {
158 border: none;
159}
160@media (min-width: 1199px) {
161 .comp-custom-tab__tab-button:not(:last-child)::after {
162 content: "";
163 position: absolute;
164 right: -10px;
165 top: 50%;
166 -webkit-transform: translateY(-50%);
167 transform: translateY(-50%);
168 width: 1px;
169 height: 100%;
170 background-color: #7FB7E6;
171 }
172}
173.comp-custom-tab__tab-option-icon {
174 width: 46px;
175 height: 45px;
176 -o-object-fit: contain;
177 object-fit: contain;
178}
179@media (max-width: 1199px) {
180 .comp-custom-tab__tab-option-icon {
181 width: 30px;
182 height: 38px;
183 }
184}
185.comp-custom-tab__option {
186 display: none;
187 width: 944px;
188 height: 460px;
189 overflow: hidden;
190 border-radius: 8px;
191 -webkit-box-orient: vertical;
192 -webkit-box-direction: normal;
193 -ms-flex-direction: column;
194 flex-direction: column;
195 -webkit-box-align: center;
196 -ms-flex-align: center;
197 align-items: center;
198 -webkit-box-pack: start;
199 -ms-flex-pack: start;
200 justify-content: start;
201}
202.comp-custom-tab__option--active {
203 display: -webkit-box;
204 display: -ms-flexbox;
205 display: flex;
206}
207@media (max-width: 1199px) {
208 .comp-custom-tab__option {
209 width: 100%;
210 height: auto;
211 aspect-ratio: 16/9;
212 }
213}
214@media (max-width: 700px) {
215 .comp-custom-tab__option {
216 aspect-ratio: 1.1666;
217 height: auto;
218 }
219}
220.comp-custom-tab__option iframe {
221 width: 100%;
222 height: 100%;
223}
224
225
226</style>
227
228<#assign parameter = themeDisplay.request.getParameter("value")>
229<#assign activeButton = "comp-custom-tab__tab-button--active" />
230<#assign activeOption = "comp-custom-tab__option--active" />
231<#assign classMP = "" />
232<#assign classMP2 = "" />
233<#assign classOV = "" />
234<#assign classOV2 = "" />
235<#assign classAPP = "" />
236<#assign classAPP2 = "" />
237<#assign classKC = "" />
238<#assign classKC2 = "" />
239
240<#if parameter == "MP">
241 <#assign classMP = activeButton />
242 <#assign classMP2 = activeOption/>
243<#elseif parameter == "OV">
244 <#assign classOV = activeButton />
245 <#assign classOV2 = activeOption />
246<#elseif parameter == "APP">
247 <#assign classAPP = activeButton />
248 <#assign classAPP2 = activeOption />
249<#elseif parameter == "KC">
250 <#assign classKC = activeButton />
251 <#assign classKC2 = activeOption />
252</#if>
253
254
255<div class="comp-custom-tab">
256 <div class="comp-custom-tab__block">
257 <div class="comp-custom-tab__presentation-text-zone">
258 <h2 class="comp-custom-tab__presentation-title">
259 ${titleFunction.getData()}
260 </h2>
261 <p class="comp-custom-tab__presentation-txt">
262 ${description.getData()}
263 </p>
264 </div>
265 <div class="comp-custom-tab__tab-options-zone">
266 <#if getterUtil.getBoolean(elementMariaPaula.isEnableMariaPaula.getData())>
267 <button class="comp-custom-tab__tab-button ${classMP}" role="tab" aria-selected="false" aria-controls="tab-option-1" id="tab-1"
268 onClick=updateUrlParameter('value','MP')>
269 <img class="comp-custom-tab__tab-option-icon" src="${imageMariaPaula.getData()}" alt="" loading="lazy">
270 <span class="comp-custom-tab__tab-option-txt">
271 Asistente Maria Paula
272 </span>
273 </button>
274 </#if>
275 <#if getterUtil.getBoolean(elementOficinaVirtual.isEnableOficinaVirtual.getData())>
276 <button class="comp-custom-tab__tab-button ${classOV}" role="tab" aria-selected="false" aria-controls="tab-option-2" id="tab-2"
277 onClick=updateUrlParameter('value','OV')>
278 <img class="comp-custom-tab__tab-option-icon" src="${ImageOficinaVirtual.getData()}" alt="" loading="lazy">
279 <span class="comp-custom-tab__tab-option-txt">
280 Oficina Virtual
281 </span>
282 </button>
283 </#if>
284 <#if getterUtil.getBoolean(elementApp.isEnableAPP.getData())>
285 <button class="comp-custom-tab__tab-button ${classAPP}" role="tab" aria-selected="false" aria-controls="tab-option-3" id="tab-3"
286 onClick=updateUrlParameter('value','APP')>
287 <img class="comp-custom-tab__tab-option-icon" src="${imageAPP.getData()}" alt="" loading="lazy">
288 <span class="comp-custom-tab__tab-option-txt">
289 App
290 </span>
291 </button>
292 </#if>
293 <#if getterUtil.getBoolean(elementKiosko.isEnableKiosko.getData())>
294 <button class="comp-custom-tab__tab-button ${classKC}" role="tab" aria-selected="false" aria-controls="tab-option-4" id="tab-4"
295 onClick=updateUrlParameter('value','KC')>
296 <img class="comp-custom-tab__tab-option-icon" src="${imageKiosko.getData()}" alt="" loading="lazy">
297 <span class="comp-custom-tab__tab-option-txt">
298 Kioskos
299 </span>
300 </button>
301 </#if>
302 </div>
303 <div class="comp-custom-tab__option ${classMP2}" id="tab-option-1" role="tabpanel" aria-labelledby="tab-1">
304 <iframe src="${elementMariaPaula.enableVideoTutorialMP.urlIframeMariaPaula.getData()}" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
305 </div>
306 <div class="comp-custom-tab__option ${classOV2}" id="tab-option-2" role="tabpanel" aria-labelledby="tab-2">
307 <iframe src="${elementOficinaVirtual.enableVideoTutorialOF.urlIframeOficinaVirtual.getData()}" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
308 </div>
309 <div class="comp-custom-tab__option ${classAPP2}" id="tab-option-3" role="tabpanel" aria-labelledby="tab-3">
310 <iframe src="${elementApp.enableVideoTutorialAPP.urlIframeAPP.getData()}" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
311 </div>
312 <div class="comp-custom-tab__option ${classKC2}" id="tab-option-4" role="tabpanel" aria-labelledby="tab-4">
313 <iframe src="${elementKiosko.enableVideoTutorialKC.urlIframeKioscos.getData()}" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
314 </div>
315 </div>
316</div>
317
318
319<div id="ctnMP" class="container" style="display:none;">
320 <#if getterUtil.getBoolean(elementMariaPaula.enableCarrouselMP.getData())>
321
322 <#assign pkContent = elementMariaPaula.enableCarrouselMP.idCarrouselContentMP.getData()?eval>
323 <#assign pkClass = pkContent.classPK>
324 <#assign pk_Id = pkClass?number>
325
326 <#assign articleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
327 <#assign journalContent = serviceLocator.findService("com.liferay.journal.util.JournalContent")>
328 <#assign article = articleLocalService.getLatestArticle(pk_Id)>
329 <#assign articleId = article.getArticleId()>
330 <#assign groupId = article.getGroupId()>
331
332 ${journalContent.getContent(groupId, articleId, "", locale, themeDisplay)}
333 </#if>
334
335 <#if getterUtil.getBoolean(elementMariaPaula.enableRelationshipMP.getData())>
336
337 <#assign pkContent = elementMariaPaula.enableRelationshipMP.idTutorialsRelationshipMP.getData()?eval>
338 <#assign pkClass = pkContent.classPK>
339 <#assign pk_Id = pkClass?number>
340
341 <#assign articleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
342 <#assign journalContent = serviceLocator.findService("com.liferay.journal.util.JournalContent")>
343 <#assign article = articleLocalService.getLatestArticle(pk_Id)>
344 <#assign articleId = article.getArticleId()>
345 <#assign groupId = article.getGroupId()>
346
347 ${journalContent.getContent(groupId, articleId, "", locale, themeDisplay)}
348 </#if>
349</div>
350
351
352<div id="ctnOV" class="container" style="display:none;">
353
354 <#if getterUtil.getBoolean(elementOficinaVirtual.enableCarrouselOF.getData())>
355
356 <#assign pkContent = elementOficinaVirtual.enableCarrouselOF.idCarrouselContentOF.getData()?eval>
357 <#assign pkClass = pkContent.classPK>
358 <#assign pk_Id = pkClass?number>
359
360 <#assign articleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
361 <#assign journalContent = serviceLocator.findService("com.liferay.journal.util.JournalContent")>
362 <#assign article = articleLocalService.getLatestArticle(pk_Id)>
363 <#assign articleId = article.getArticleId()>
364 <#assign groupId = article.getGroupId()>
365
366 ${journalContent.getContent(groupId, articleId, "", locale, themeDisplay)}
367 </#if>
368
369 <#if getterUtil.getBoolean(elementOficinaVirtual.enableRelationshipOF.getData())>
370 <#assign pkContent = elementOficinaVirtual.enableRelationshipOF.idTutorialsRelationshipOF.getData()?eval>
371 <#assign pkClass = pkContent.classPK>
372 <#assign pk_Id = pkClass?number>
373
374 <#assign articleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
375 <#assign journalContent = serviceLocator.findService("com.liferay.journal.util.JournalContent")>
376 <#assign article = articleLocalService.getLatestArticle(pk_Id)>
377 <#assign articleId = article.getArticleId()>
378 <#assign groupId = article.getGroupId()>
379
380 ${journalContent.getContent(groupId, articleId, "", locale, themeDisplay)}
381 </#if>
382</div>
383
384
385<div id="ctnAPP" class="container" style="display:none;">
386 <#if getterUtil.getBoolean(elementApp.enableCarrouselAPP.getData())>
387
388 <#assign pkContent = elementApp.enableCarrouselAPP.idCarrouselContentAPP.getData()?eval>
389 <#assign pkClass = pkContent.classPK>
390 <#assign pk_Id = pkClass?number>
391
392 <#assign articleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
393 <#assign journalContent = serviceLocator.findService("com.liferay.journal.util.JournalContent")>
394 <#assign article = articleLocalService.getLatestArticle(pk_Id)>
395 <#assign articleId = article.getArticleId()>
396 <#assign groupId = article.getGroupId()>
397
398 ${journalContent.getContent(groupId, articleId, "", locale, themeDisplay)}
399 </#if>
400
401 <#if getterUtil.getBoolean(elementApp.enableRelationshipAPP.getData())>
402 <#assign pkContent = elementApp.enableRelationshipAPP.idTutorialsRelationshipAPP.getData()?eval>
403 <#assign pkClass = pkContent.classPK>
404 <#assign pk_Id = pkClass?number>
405
406 <#assign articleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
407 <#assign journalContent = serviceLocator.findService("com.liferay.journal.util.JournalContent")>
408 <#assign article = articleLocalService.getLatestArticle(pk_Id)>
409 <#assign articleId = article.getArticleId()>
410 <#assign groupId = article.getGroupId()>
411
412 ${journalContent.getContent(groupId, articleId, "", locale, themeDisplay)}
413 </#if>
414</div>
415
416
417<div id="ctnKC" class="container" style="display:none;">
418 <#if getterUtil.getBoolean(elementKiosko.enableCarrouselKC.getData())>
419 <#assign pkContent = elementKiosko.enableCarrouselKC.idCarrouselContentKC.getData()?eval>
420 <#assign pkClass = pkContent.classPK>
421 <#assign pk_Id = pkClass?number>
422
423 <#assign articleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
424 <#assign journalContent = serviceLocator.findService("com.liferay.journal.util.JournalContent")>
425 <#assign article = articleLocalService.getLatestArticle(pk_Id)>
426 <#assign articleId = article.getArticleId()>
427 <#assign groupId = article.getGroupId()>
428
429 ${journalContent.getContent(groupId, articleId, "", locale, themeDisplay)}
430 </#if>
431
432 <#if getterUtil.getBoolean(elementKiosko.enableRelationshipKC.getData())>
433 <#assign pkContent = elementKiosko.enableRelationshipKC.idTutorialsRelationshipKC.getData()?eval>
434 <#assign pkClass = pkContent.classPK>
435 <#assign pk_Id = pkClass?number>
436
437 <#assign articleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
438 <#assign journalContent = serviceLocator.findService("com.liferay.journal.util.JournalContent")>
439 <#assign article = articleLocalService.getLatestArticle(pk_Id)>
440 <#assign articleId = article.getArticleId()>
441 <#assign groupId = article.getGroupId()>
442
443 ${journalContent.getContent(groupId, articleId, "", locale, themeDisplay)}
444 </#if>
445</div>
446
447
448<script>
449
450//funcion que actualiza el parametro en la Url
451 function updateUrlParameter(param, value) {
452 const url = new URL(window.location.href);
453 url.searchParams.set(param, value);
454 window.history.pushState({}, '', url.toString());
455
456 updateContainers(value);
457 }
458
459//funcion que habilita y deshabilita los Contenidos segun el parametro
460 function updateContainers(value) {
461
462 const containers = document.querySelectorAll('.container');
463 containers.forEach(container => {
464 container.style.display = 'none';
465 });
466
467 if (value) {
468 var id = "ctn"+value;
469 const containerId = id;
470 const container = document.getElementById(containerId);
471 if (container) {
472 container.style.display = 'block';
473 }
474 }
475 }
476
477//Funcion que captura el parametro en la primera carga de pagina
478 function getParameterByName(name) {
479 var url = window.location.href;
480 name = name.replace(/[\[\]]/g, '\\$&');
481 var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
482 results = regex.exec(url);
483 if (!results) return null;
484 if (!results[2]) return '';
485 return decodeURIComponent(results[2].replace(/\+/g, ' '));
486 }
487
488 var valor = getParameterByName("value");
489 var tab1 = $('.comp-custom-tab #tab-1');
490 var tab2 = $('.comp-custom-tab #tab-2');
491 var tab3 = $('.comp-custom-tab #tab-3');
492 var tab4 = $('.comp-custom-tab #tab-4');
493
494//Funcion que realiza click en cada tab para la primera Carga
495 setTimeout(function() {
496 switch (valor) {
497 case "MP":
498 tab1.trigger('click');
499 break;
500 case "OV":
501 tab2.trigger('click');
502 break;
503 case "APP":
504 tab3.trigger('click');
505 break;
506 case "KC":
507 tab4.trigger('click');
508 break;
509 default:
510 tab1.trigger('click');
511 }
512 }, 0);
513
514
515 $(document).ready(function () {
516
517 var tabButtonsOnCustomTab = $('.comp-custom-tab .comp-custom-tab__block .comp-custom-tab__tab-options-zone .comp-custom-tab__tab-button');
518
519 var tabOptionsOnCustomTab = $('.comp-custom-tab .comp-custom-tab__block .comp-custom-tab__option');
520
521 var tabButtonsGridTemplateConf = "";
522
523 if(tabButtonsOnCustomTab.length == 3){
524 tabButtonsGridTemplateConf = "__three";
525 }
526
527 if(tabButtonsOnCustomTab.length == 2){
528 tabButtonsGridTemplateConf = "__two";
529 }
530
531 if(tabButtonsOnCustomTab.length == 1){
532 tabButtonsGridTemplateConf = "__one";
533 }
534
535 if(tabButtonsGridTemplateConf != ""){
536
537 tabButtonsOnCustomTab.closest(".comp-custom-tab__tab-options-zone").addClass('comp-custom-tab__tab-options-zone' + tabButtonsGridTemplateConf);
538
539 }
540
541
542
543 tabButtonsOnCustomTab.on('click', function() {
544
545 var targetTab = $(this).attr("aria-controls");
546
547 var isTargetAlreadySelected = $(this).attr("aria-selected");
548
549 if(isTargetAlreadySelected != 'true'){
550
551 tabButtonsOnCustomTab.each(function() {
552
553 var thisButton = $(this);
554
555 var thisButtonTarget = thisButton.attr("aria-controls");
556
557 if(targetTab != thisButtonTarget){
558
559 thisButton.attr("aria-selected", "false");
560 thisButton.removeClass('comp-custom-tab__tab-button--active');
561 }
562
563 if(targetTab == thisButtonTarget){
564 thisButton.attr("aria-selected", "true");
565 thisButton.addClass('comp-custom-tab__tab-button--active');
566 }
567 });
568
569 tabOptionsOnCustomTab.each(function() {
570
571 var tabOptionElement = $(this);
572 var tabOptionId = tabOptionElement.attr("id");
573
574 if(tabOptionId != targetTab){
575
576 tabOptionElement.fadeOut(0);
577 tabOptionElement.removeClass("comp-custom-tab__option--active");
578 }
579 });
580
581 $('#'+targetTab).fadeIn(300);
582 $('#'+targetTab).addClass('comp-custom-tab__option--active');
583
584 }
585
586 });
587
588 });
589
590 /////////////////////
591
592document.addEventListener("DOMContentLoaded", (event) => {
593
594 var carouselElements = $('.cards-img-txt-btn-carousel .cards-img-txt-btn-carousel__container .owl-carousel');
595
596 for(var i=0; i < carouselElements.length; i++){
597 var carouselElementsItem = $(carouselElements[i]);
598
599 carouselElementsItem.attr('id', 'cards-img-txt-btn-carousel-Id-'+i);
600
601 }
602
603
604 for(var i=0; i < carouselElements.length; i++){
605 var getCarouselElement = $('#cards-img-txt-btn-carousel-Id-'+i);
606
607
608 loadCarrouselComplete(getCarouselElement);
609 }
610
611 });
612
613 function loadCarrouselComplete(elementoPadre){
614
615 var originalElementsList = elementoPadre.children(".cards-img-txt-btn-carousel__card").get();
616
617
618 if ($(window).width() < 1200) {
619
620 createAndLoadCardGroups(originalElementsList, elementoPadre);
621
622 dispatchCardsImgTxtBntCarouselOneByOne(elementoPadre);
623 }
624
625 if ($(window).width() >= 1200) {
626
627 elementoPadre.append($(originalElementsList));
628 dispatchCardsImgTxtBntCarouselThreeByThree(elementoPadre);
629 }
630
631
632
633 $(window).resize(function () {
634
635 console.log('valores originales: ', originalElementsList);
636
637
638 elementoPadre.trigger('destroy.owl.carousel').removeClass('owl-loaded').find('.owl-stage-outer').children().unwrap();
639
640 elementoPadre.empty();
641
642 if ($(window).width() < 1200) {
643
644 createAndLoadCardGroups(originalElementsList, elementoPadre);
645
646 setTimeout(() => {
647 dispatchCardsImgTxtBntCarouselOneByOne(elementoPadre);
648 }, 0);
649 }
650
651 if ($(window).width() >= 1200) {
652
653 elementoPadre.append($(originalElementsList));
654
655 setTimeout(() => {
656 dispatchCardsImgTxtBntCarouselThreeByThree(elementoPadre);
657 }, 0);
658 }
659
660
661 });
662
663 function createAndLoadCardGroups(originalCards, carouselContainer){
664 var group = $("<div class='cards-img-txt-btn-carousel__card-group'></div>");
665
666 originalCards.forEach(function(card, index) {
667 group.append($(card));
668
669 if ((index + 1) % 3 === 0 || index === originalCards.length - 1) {
670 carouselContainer.append($(group));
671 group = $("<div class='cards-img-txt-btn-carousel__card-group'></div>");
672 }
673 });
674 }
675
676 function dispatchCardsImgTxtBntCarouselThreeByThree(){
677
678 elementoPadre.owlCarousel({
679
680 margin: 12,
681 nav:true,
682 navText : ['<div class="cards-img-txt-btn-carousel__back-next-arrow-zone"><i class="material-icons">arrow_back_ios_new</i></div>','<div class="cards-img-txt-btn-carousel__back-next-arrow-zone"><i class="material-icons">arrow_forward_ios</i></div>'],
683 dots: true,
684 items: 3,
685 });
686
687 var cardsImgTxtBtnCarouselStage = elementoPadre.find('.owl-stage');
688
689 var stageHeight = cardsImgTxtBtnCarouselStage.outerHeight();
690
691 cardsImgTxtBtnCarouselStage.css('height', (stageHeight + 10) + 'px');
692
693 var dotsZone = elementoPadre.find('.owl-dots');
694 var dotZoneWith = dotsZone.outerWidth();
695
696 dotsZone.css('left', 'calc(50% - '+(dotZoneWith / 2)+'px)');
697
698 }
699
700 function dispatchCardsImgTxtBntCarouselOneByOne(){
701
702 elementoPadre.owlCarousel({
703
704 margin: 12,
705 nav:true,
706 navText : ['<div class="cards-img-txt-btn-carousel__back-next-arrow-zone"><i class="material-icons">arrow_back_ios_new</i></div>','<div class="cards-img-txt-btn-carousel__back-next-arrow-zone"><i class="material-icons">arrow_forward_ios</i></div>'],
707 dots: true,
708 items: 1,
709 });
710
711 var cardsImgTxtBtnCarouselStage = elementoPadre.find('.owl-stage');
712
713 var stageHeight = cardsImgTxtBtnCarouselStage.outerHeight();
714
715 cardsImgTxtBtnCarouselStage.css('height', (stageHeight + 10) + 'px');
716
717 var dotsZone = elementoPadre.find('.owl-dots');
718 var dotZoneWith = dotsZone.outerWidth();
719
720 dotsZone.css('left', 'calc(50% - '+(dotZoneWith / 2)+'px)');
721
722 }
723 }
724
725
726</script>