Ruta de navegación
Pagas tus cuentas en Sencillito
Aviso mensaje mantencion
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> request.getParameter("convenioId") [in template "61606#61645#1703808" at line 2, column 11]
----
Tip: If the failing expression is known to 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: valor = request.getParameter("conveni... [in template "61606#61645#1703808" at line 2, column 3]
----
1<#assign
2 valor = request.getParameter("convenioId")
3 instanceId = portletDisplay.getInstanceId()
4/>
5
6<script>
7// Creamos un objeto para almacenar los datos de alerta específicos de esta instancia
8window['alertData_${instanceId}'] = {
9 isLimitedAlert: false,
10 fechaHoraInicioAlerta: '',
11 fechaHoraFinAlerta: ''
12};
13</script>
14
15<#if Convenio.getSiblings()?has_content>
16 <#list Convenio.getSiblings() as cur_Convenio>
17 <#if valor == cur_Convenio.getData()>
18 <#if getterUtil.getBoolean(cur_Convenio.MostrarPorTiempoLimitado.getData())>
19 <script>
20 var alertData = window['alertData_${instanceId}'];
21 alertData.isLimitedAlert = true;
22 alertData.fechaHoraInicioAlerta = new Date('${cur_Convenio.FechaYHoraInicio.getData()}');
23 alertData.fechaHoraFinAlerta = new Date('${cur_Convenio.FechaYHoraFin.getData()}');
24 console.info('isLimitedAlert', alertData.isLimitedAlert);
25 </script>
26 </#if>
27 <div class="d-none" data-convenio-alert="${instanceId}">
28 <div class="igt-max-w-max igt-bg-blue-100 igt-mb-4 igt-text-blue-900 igt-text-sm igt-p-4 igt-rounded-xl igt-flex igt-gap-2">
29 <span>
30 <@clay["icon"] symbol="info-panel-open" />
31 </span>
32 ${cur_Convenio.Parrafo.getData()}
33 </div>
34 </div>
35 </#if>
36 </#list>
37</#if>
38
39<script>
40
41(() => {
42 Liferay.on('allPortletsReady', function() {
43 const container = document.querySelector('section.ppt-categorias');
44 const alerts = Array.from(document.querySelectorAll('[data-convenio-alert]'));
45 const alert = document.querySelector('[data-convenio-alert=${instanceId}]');
46 const alertData = window['alertData_${instanceId}'];
47
48 if (container) {
49 if (alert != null) {
50 const indice = alerts.findIndex(a => a === alert);
51 if (indice == 0) {
52 container.insertBefore(alert, container.firstChild);
53 } else {
54 container.append(alert);
55 }
56 }
57 }
58
59 if (alert && alert != null) {
60 const fechaHoraActualAlerta = new Date();
61 console.info('isLimitedAlert', alertData.isLimitedAlert);
62 if (alertData.isLimitedAlert) {
63 console.info('Alert ok');
64 console.info('Hora actual: ', fechaHoraActualAlerta);
65 console.info('Hora inicio mensaje: ', alertData.fechaHoraInicioAlerta);
66 console.info('Hora fin mensaje: ', alertData.fechaHoraFinAlerta);
67 if (fechaHoraActualAlerta >= alertData.fechaHoraInicioAlerta && fechaHoraActualAlerta <= alertData.fechaHoraFinAlerta) {
68 alert.classList.remove("d-none");
69 } else {
70 alert.classList.add("d-none");
71 }
72 } else {
73 alert.classList.remove("d-none");
74 }
75 }
76 });
77})();
78
79</script>
80
81<style>
82 .igt-bg-blue-100 {
83 background-color: #e0e8fa;
84 }
85
86 .igt-text-blue-900 {
87 color: #4c5a99;
88 }
89
90 .igt-text-sm {
91 font-size: 0.875rem;
92 line-height: 1.25rem;
93 }
94
95 .igt-p-4 {
96 padding: 1rem;
97 }
98
99 .igt-rounded-xl {
100 border-radius: 0.75rem;
101 }
102
103 .igt-flex {
104 display: flex;
105 }
106
107 .igt-gap-2 {
108 gap: 0.5rem;
109 }
110
111 .igt-mb-4 {
112 margin-bottom: 1rem;
113 }
114
115 .igt-max-w-max {
116 max-width: max-content;
117 }
118</style>
Aviso mensaje mantencion
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> request.getParameter("convenioId") [in template "61606#61645#1703808" at line 2, column 11]
----
Tip: If the failing expression is known to 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: valor = request.getParameter("conveni... [in template "61606#61645#1703808" at line 2, column 3]
----
1<#assign
2 valor = request.getParameter("convenioId")
3 instanceId = portletDisplay.getInstanceId()
4/>
5
6<script>
7// Creamos un objeto para almacenar los datos de alerta específicos de esta instancia
8window['alertData_${instanceId}'] = {
9 isLimitedAlert: false,
10 fechaHoraInicioAlerta: '',
11 fechaHoraFinAlerta: ''
12};
13</script>
14
15<#if Convenio.getSiblings()?has_content>
16 <#list Convenio.getSiblings() as cur_Convenio>
17 <#if valor == cur_Convenio.getData()>
18 <#if getterUtil.getBoolean(cur_Convenio.MostrarPorTiempoLimitado.getData())>
19 <script>
20 var alertData = window['alertData_${instanceId}'];
21 alertData.isLimitedAlert = true;
22 alertData.fechaHoraInicioAlerta = new Date('${cur_Convenio.FechaYHoraInicio.getData()}');
23 alertData.fechaHoraFinAlerta = new Date('${cur_Convenio.FechaYHoraFin.getData()}');
24 console.info('isLimitedAlert', alertData.isLimitedAlert);
25 </script>
26 </#if>
27 <div class="d-none" data-convenio-alert="${instanceId}">
28 <div class="igt-max-w-max igt-bg-blue-100 igt-mb-4 igt-text-blue-900 igt-text-sm igt-p-4 igt-rounded-xl igt-flex igt-gap-2">
29 <span>
30 <@clay["icon"] symbol="info-panel-open" />
31 </span>
32 ${cur_Convenio.Parrafo.getData()}
33 </div>
34 </div>
35 </#if>
36 </#list>
37</#if>
38
39<script>
40
41(() => {
42 Liferay.on('allPortletsReady', function() {
43 const container = document.querySelector('section.ppt-categorias');
44 const alerts = Array.from(document.querySelectorAll('[data-convenio-alert]'));
45 const alert = document.querySelector('[data-convenio-alert=${instanceId}]');
46 const alertData = window['alertData_${instanceId}'];
47
48 if (container) {
49 if (alert != null) {
50 const indice = alerts.findIndex(a => a === alert);
51 if (indice == 0) {
52 container.insertBefore(alert, container.firstChild);
53 } else {
54 container.append(alert);
55 }
56 }
57 }
58
59 if (alert && alert != null) {
60 const fechaHoraActualAlerta = new Date();
61 console.info('isLimitedAlert', alertData.isLimitedAlert);
62 if (alertData.isLimitedAlert) {
63 console.info('Alert ok');
64 console.info('Hora actual: ', fechaHoraActualAlerta);
65 console.info('Hora inicio mensaje: ', alertData.fechaHoraInicioAlerta);
66 console.info('Hora fin mensaje: ', alertData.fechaHoraFinAlerta);
67 if (fechaHoraActualAlerta >= alertData.fechaHoraInicioAlerta && fechaHoraActualAlerta <= alertData.fechaHoraFinAlerta) {
68 alert.classList.remove("d-none");
69 } else {
70 alert.classList.add("d-none");
71 }
72 } else {
73 alert.classList.remove("d-none");
74 }
75 }
76 });
77})();
78
79</script>
80
81<style>
82 .igt-bg-blue-100 {
83 background-color: #e0e8fa;
84 }
85
86 .igt-text-blue-900 {
87 color: #4c5a99;
88 }
89
90 .igt-text-sm {
91 font-size: 0.875rem;
92 line-height: 1.25rem;
93 }
94
95 .igt-p-4 {
96 padding: 1rem;
97 }
98
99 .igt-rounded-xl {
100 border-radius: 0.75rem;
101 }
102
103 .igt-flex {
104 display: flex;
105 }
106
107 .igt-gap-2 {
108 gap: 0.5rem;
109 }
110
111 .igt-mb-4 {
112 margin-bottom: 1rem;
113 }
114
115 .igt-max-w-max {
116 max-width: max-content;
117 }
118</style>
Aviso mensaje mantencion
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> request.getParameter("convenioId") [in template "61606#61645#24572907" at line 29, column 11]
----
Tip: If the failing expression is known to 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: valor = request.getParameter("conveni... [in template "61606#61645#24572907" at line 29, column 3]
----
1<style>
2
3:root {
4 --igt-font-family: "sencillito-proxima-nova", sans-serif;
5}
6
7 .igt-font-weight-700 {
8 font-weight: 700;
9 }
10
11 .igt-alert-info {
12 background:#CCDBFF;
13 }
14
15 .igt-alert-info p {
16 font-family: var(--igt-font-family);
17 color: #283a86
18 }
19 .igt-w-max-content {
20 width: max-content;
21 }
22</style>
23
24
25
26
27
28<#assign
29 valor = request.getParameter("convenioId")
30 instanceId = portletDisplay.getInstanceId()
31/>
32
33<script>
34// Creamos un objeto para almacenar los datos de alerta específicos de esta instancia
35window['alertData_${instanceId}'] = {
36 isLimitedAlert: false,
37 fechaHoraInicioAlerta: '',
38 fechaHoraFinAlerta: ''
39};
40</script>
41
42<#if Convenio.getSiblings()?has_content>
43 <#list Convenio.getSiblings() as cur_Convenio>
44 <#if valor == cur_Convenio.getData()>
45 <#if getterUtil.getBoolean(cur_Convenio.MostrarPorTiempoLimitado.getData())>
46 <script>
47 var alertData = window['alertData_${instanceId}'];
48 alertData.isLimitedAlert = true;
49 alertData.fechaHoraInicioAlerta = new Date('${cur_Convenio.FechaYHoraInicio.getData()}');
50 alertData.fechaHoraFinAlerta = new Date('${cur_Convenio.FechaYHoraFin.getData()}');
51 console.info('isLimitedAlert', alertData.isLimitedAlert);
52 </script>
53 </#if>
54 <div data-convenio-alert="${instanceId}" class="alert alert-primary mw-100 igt-w-max-content igt-alert-info igt-alert-info-mensaje d-none" role="alert">
55 ${cur_Convenio.Parrafo.getData()}
56 </div>
57 </#if>
58 </#list>
59</#if>
60
61<script>
62
63(() => {
64 Liferay.on('allPortletsReady', function() {
65 const container = document.querySelector('section.ppt-categorias');
66 const alerts = Array.from(document.querySelectorAll('[data-convenio-alert]'));
67 const alert = document.querySelector('[data-convenio-alert=${instanceId}]');
68 const alertData = window['alertData_${instanceId}'];
69
70 if (container) {
71 if (alert != null) {
72 const indice = alerts.findIndex(a => a === alert);
73 if (indice == 0) {
74 container.insertBefore(alert, container.firstChild);
75 } else {
76 container.append(alert);
77 }
78 }
79 }
80
81 if (alert && alert != null) {
82 const fechaHoraActualAlerta = new Date();
83 if (alertData.isLimitedAlert) {
84 if (fechaHoraActualAlerta >= alertData.fechaHoraInicioAlerta && fechaHoraActualAlerta <= alertData.fechaHoraFinAlerta) {
85 alert.classList.remove("d-none");
86 } else {
87 alert.classList.add("d-none");
88 }
89 } else {
90 alert.classList.add("d-none");
91 }
92 }
93 });
94})();
95
96</script>
Aviso mensaje mantencion
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> request.getParameter("convenioId") [in template "61606#61645#24572907" at line 29, column 11]
----
Tip: If the failing expression is known to 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: valor = request.getParameter("conveni... [in template "61606#61645#24572907" at line 29, column 3]
----
1<style>
2
3:root {
4 --igt-font-family: "sencillito-proxima-nova", sans-serif;
5}
6
7 .igt-font-weight-700 {
8 font-weight: 700;
9 }
10
11 .igt-alert-info {
12 background:#CCDBFF;
13 }
14
15 .igt-alert-info p {
16 font-family: var(--igt-font-family);
17 color: #283a86
18 }
19 .igt-w-max-content {
20 width: max-content;
21 }
22</style>
23
24
25
26
27
28<#assign
29 valor = request.getParameter("convenioId")
30 instanceId = portletDisplay.getInstanceId()
31/>
32
33<script>
34// Creamos un objeto para almacenar los datos de alerta específicos de esta instancia
35window['alertData_${instanceId}'] = {
36 isLimitedAlert: false,
37 fechaHoraInicioAlerta: '',
38 fechaHoraFinAlerta: ''
39};
40</script>
41
42<#if Convenio.getSiblings()?has_content>
43 <#list Convenio.getSiblings() as cur_Convenio>
44 <#if valor == cur_Convenio.getData()>
45 <#if getterUtil.getBoolean(cur_Convenio.MostrarPorTiempoLimitado.getData())>
46 <script>
47 var alertData = window['alertData_${instanceId}'];
48 alertData.isLimitedAlert = true;
49 alertData.fechaHoraInicioAlerta = new Date('${cur_Convenio.FechaYHoraInicio.getData()}');
50 alertData.fechaHoraFinAlerta = new Date('${cur_Convenio.FechaYHoraFin.getData()}');
51 console.info('isLimitedAlert', alertData.isLimitedAlert);
52 </script>
53 </#if>
54 <div data-convenio-alert="${instanceId}" class="alert alert-primary mw-100 igt-w-max-content igt-alert-info igt-alert-info-mensaje d-none" role="alert">
55 ${cur_Convenio.Parrafo.getData()}
56 </div>
57 </#if>
58 </#list>
59</#if>
60
61<script>
62
63(() => {
64 Liferay.on('allPortletsReady', function() {
65 const container = document.querySelector('section.ppt-categorias');
66 const alerts = Array.from(document.querySelectorAll('[data-convenio-alert]'));
67 const alert = document.querySelector('[data-convenio-alert=${instanceId}]');
68 const alertData = window['alertData_${instanceId}'];
69
70 if (container) {
71 if (alert != null) {
72 const indice = alerts.findIndex(a => a === alert);
73 if (indice == 0) {
74 container.insertBefore(alert, container.firstChild);
75 } else {
76 container.append(alert);
77 }
78 }
79 }
80
81 if (alert && alert != null) {
82 const fechaHoraActualAlerta = new Date();
83 if (alertData.isLimitedAlert) {
84 if (fechaHoraActualAlerta >= alertData.fechaHoraInicioAlerta && fechaHoraActualAlerta <= alertData.fechaHoraFinAlerta) {
85 alert.classList.remove("d-none");
86 } else {
87 alert.classList.add("d-none");
88 }
89 } else {
90 alert.classList.add("d-none");
91 }
92 }
93 });
94})();
95
96</script>