Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> Separador9bxj  [in template "20097#20123#57221788" at line 168, column 38]

----
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: ${Separador9bxj.Textoi99y.getData()}  [in template "20097#20123#57221788" at line 168, column 36]
----
1<style> 
2      /*ESTILOS EL BANNER*/ 
3      .contenedor_fragment_4980007 { 
4        align-items: center; 
5        box-sizing: border-box; 
6        height: 576px; 
7        padding: 35px; 
8        position: relative; 
9        width: 100%; 
10        display: flex; 
11        overflow: hidden; 
12
13    <#if (Imagencaoj.getData())?? && Imagencaoj.getData() != ""> 
14      .contenedor_fragment_4980007::before { 
15        content: ""; 
16        background-image: url("${Imagencaoj.getData()}" ); 
17        background-size: cover; 
18        background-position: center; 
19        position: absolute; 
20        top: 0px; 
21        right: 0px; 
22        bottom: 0px; 
23        left: 0px; 
24
25    </#if> 
26      .fondo_fragment_4980007 { 
27        position: absolute; 
28        top: 0; 
29        left: 0; 
30        width: 100%; 
31        height: 100%; 
32        /* object-fit: cover; */ 
33        z-index: -1; /* Envía la imagen detrás del contenido */ 
34
35 
36      .contenido_fragment_4980007 { 
37        display: flex; 
38        flex-direction: column; 
39        gap: 20px; 
40        max-width: 858px; 
41        position: relative; 
42        z-index: 1; /* Asegura que el contenido esté por encima de la imagen */ 
43
44      .contenido_fragment_4980007 h1 { 
45        margin: 0; 
46        font-size: 64px; 
47
48      .pb_fragment_4980007 { 
49        background-color: transparent; 
50        border: 2px solid #1b1d1f; 
51        border-radius: 5px; 
52        box-shadow: none; 
53        cursor: pointer; 
54        display: inline-block; 
55        font-weight: 700; 
56        line-height: 1.5; 
57        margin-top: 0.5rem; 
58        user-select: none; 
59        vertical-align: middle; 
60        width: fit-content; 
61        padding: 0.8rem 0; 
62
63 
64      .pb_fragment_4980007:hover { 
65        background: #1b1d1f; 
66
67      .pb_fragment_4980007:hover a { 
68        color: white; 
69
70      .pb_fragment_4980007:active { 
71        background: linear-gradient( 
72            0deg, 
73            rgba(0, 0, 0, 0.2) 0%, 
74            rgba(0, 0, 0, 0.2) 100% 
75          ), 
76          #1b1d1f; 
77
78      .pb_fragment_4980007 a { 
79        text-decoration: none; 
80        color: #1b1d1f; 
81        padding: 0.83rem 3rem; 
82
83       
84      /*ESTILOS MODALIDAD*/ 
85      .contenedor_modalidad { 
86        background-color: #222222; 
87        color: white; 
88        padding: 1rem 0.5rem; 
89
90      .contenedor_modalidad > p { 
91        text-align: center; 
92        font-size:32px; 
93        font-weight: bold; 
94        margin:0; 
95
96 
97      /* ESTILOS INFORMACIÓN GENERAL */ 
98      .informacion_general_microcredencial { 
99        display: flex; 
100        flex-wrap: wrap; 
101        gap: 50px 40px; 
102        justify-content: center; 
103        max-width: 1248px; 
104        margin: 6rem auto 0; 
105        width: 100%; 
106
107      .informacion_general_microcredencial div { 
108        box-sizing: border-box; 
109        flex:0 0 210px; 
110        text-align: center; 
111         
112
113      .informacion_general_microcredencial div h4 { 
114        font-size: 16px; 
115        margin: 0; 
116        padding: 0; 
117        margin-top: 10px; 
118
119      .informacion_general_microcredencial div p { 
120        font-size: 16px; 
121        margin: 0; 
122        margin-top: 5px; 
123        padding: 0; 
124
125       
126      @media only screen and (max-width: 768px) { 
127        .contenedor_fragment_4980007 { 
128          justify-content: center; 
129          height: auto; 
130          padding: 100px 16px; 
131
132        .contenido_fragment_4980007 { 
133          align-items: center; 
134
135        .contenido_fragment_4980007 h1 { 
136          text-align: center; 
137          font-size: 48px; 
138
139 
140        .contenedor_modalidad > p { 
141          font-size: 24px; 
142
143
144 
145      @media only screen and (max-width: 600px) { 
146        .contenido_fragment_4980007 h1 { 
147          font-size: 32px; 
148
149        .contenedor_modalidad > p { 
150          font-size: 16px; 
151
152
153    </style> 
154    <#assign TITLE = .vars['reserved-article-title'].data /> 
155    <div class="contenedor_fragment_4980007"> 
156      <div class="contenido_fragment_4980007"> 
157        <h1> 
158          ${TITLE} 
159        </h1> 
160        <button class="pb_fragment_4980007"> 
161          <a class="btn_fragment_4980007" target="_blank" href=""> 
162            Inscripciones abiertas 
163          </a> 
164        </button> 
165      </div> 
166    </div> 
167    <div class="contenedor_modalidad"> 
168      <p class="modalidad_parrafo">${Separador9bxj.Textoi99y.getData()}</p> 
169    </div> 
170    <div class="informacion_general_microcredencial"> 
171      <div class="informacion_micro_item"> 
172        <img src="https://www.uninorte.edu.co/documents/15916181/57078734/reloj-de-pared+1.png/3423ca57-572d-aefb-5f4b-dd99d3b7ba52?t=1726601016681" alt="" /> 
173        <h4>Duración</h4> 
174        <p>72 Horas</p> 
175      </div> 
176        <#assign Separador9bxj_Fechadpsj_Data = getterUtil.getString(Separador9bxj.Fechadpsj.getData())> 
177        <#if validator.isNotNull(Separador9bxj_Fechadpsj_Data)> 
178        	<#assign Separador9bxj_Fechadpsj_DateObj = dateUtil.parseDate("yyyy-MM-dd", Separador9bxj_Fechadpsj_Data, locale)> 
179        	      <div class="informacion_micro_item"> 
180                    <img src="https://www.uninorte.edu.co/documents/15916181/57078734/calendario+%283%29+1.png/50e837b6-7b4b-1a0b-1911-e114c15c5434?t=1726601016276" alt="" /> 
181                    <h4>Fecha de inicio</h4> 
182                    <p>${dateUtil.getDate(Separador9bxj_Fechadpsj_DateObj, "MMMM dd yyyy", locale)}</p> 
183                  </div> 
184        </#if> 
185      <div class="informacion_micro_item"> 
186        <img src="https://www.uninorte.edu.co/documents/15916181/57078734/dinero+1.png/f1345b6d-9e71-64bd-8c58-1e5a4dcacc33?t=1726601016481" alt="" /> 
187        <h4>Inversión</h4> 
188        <p>$3.800.000/Participante</p> 
189      </div> 
190      <div class="informacion_micro_item"> 
191        <img src="https://www.uninorte.edu.co/documents/15916181/57078734/calendario+%282%29+2.png/4e3ff0e4-fb00-b437-e1c6-7f841c8cfa24?t=1726601016041" alt="" /> 
192        <h4>Horario presencial</h4> 
193        <p> 
194          Viernes de 5:30 p.m. a 9:30 p.m. y sábados de 7:30 a.m. a 3:30 p.m. 
195        </p> 
196      </div> 
197      <div class="informacion_micro_item"> 
198        <img src="https://www.uninorte.edu.co/documents/15916181/57078734/soporte-en-linea+1.png/3183d965-8cac-361b-6cb2-40d9dfccdf0e?t=1726601016867" alt="" /> 
199        <h4>Horario remoto</h4> 
200        <p>Martes, Miércoles y Jueves de 6:00 p.m a 9:00 p.m.</p> 
201      </div> 
202</div> 

Una vez completada esta microcredencial, sus créditos podrán ser homologados al momento de ser admitido al programa de posgrado que así lo establezca

*Sujeto a condiciones y requisitos previos*

hola

Contenido

Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> Separadordzk7  [in template "20097#20123#57081094" at line 61, column 6]

----
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: #if Separadordzk7.Textohrwc?has_content  [in template "20097#20123#57081094" at line 61, column 1]
----
1<style> 
2      .contenedor_contenido { 
3        box-sizing: border-box; 
4        display: flex; 
5        flex-wrap: wrap; 
6        gap: 30px 25px; 
7        justify-content: center; 
8        width: 100%; 
9
10      .contenido { 
11        flex: 0 0 290px; 
12
13      .contenido .contenido_contenido { 
14        border-radius: 10px; 
15        background: #fff; 
16        box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3); 
17
18      .contenedor_contenido header { 
19        align-items: center; 
20        background-color: #960a11; 
21        border-top-right-radius: 5px; 
22        border-top-left-radius: 5px; 
23        display: flex; 
24        height: 104px; 
25        padding: 0 40px; 
26        margin: 0; 
27        user-select: none; 
28
29      .contenedor_contenido header h3 { 
30        color: white; 
31        font-size: 16px; 
32        text-align: center; 
33        flex: 1; 
34
35      .contenido_ul { 
36        box-sizing: border-box; 
37        padding: 30px 35px; 
38        display: flex; 
39        align-items: center; 
40
41      .contenedor_contenido .contenido_ul ul { 
42        margin: 0; 
43        list-style: none; 
44        padding: 0; 
45
46      .contenedor_contenido .contenido_ul ul li { 
47        color: #4e4e4e; 
48        user-select: none; 
49        margin-top: 0.3rem; 
50        display: flex; 
51        gap: 5px; 
52
53       .contenedor_contenido ul li::before { 
54        color: #4e4e4e; 
55        content: "• "; 
56
57    </style> 
58 
59<#-- SECCIÓN HTML INICIO --> 
60 
61<#if Separadordzk7.Textohrwc?has_content> 
62<#assign _contenidos = Separadordzk7.Textohrwc>  <#-- create variable _contenidos --> 
63<div class="contenedor_contenido">  
64    <#if _contenidos.getSiblings()?has_content> 
65    	<#list _contenidos.getSiblings() as _contenido> 
66              <div class="contenido"> 
67                <div class="contenido_contenido"> 
68                  <header> 
69                    <h3>${_contenido.getData()}</h3> 
70                  </header> 
71                  <div class="contenido_ul"> 
72                    <#if _contenido.HTMLai34?has_content> 
73                        ${_contenido.HTMLai34.getData()} 
74                    </#if> 
75                  </div> 
76                </div> 
77              </div> 
78    	</#list> 
79    </#if> 
80</div> 
81</#if> 
82 
83<#-- SECCIÓN HTML FIN --> 
84 
85<script> 
86    const contenidoUlArray = document.querySelectorAll(".contenido_ul"); 
87    if (contenidoUlArray.length > 0) { 
88        let maxHeight = 0; 
89        contenidoUlArray.forEach((contUl) => { 
90          if (contUl.clientHeight > maxHeight) { 
91            maxHeight = contUl.clientHeight; 
92
93        }); 
94        const newHeight = maxHeight + "px"; 
95        contenidoUlArray.forEach((contUl) => (contUl.style.height = newHeight)); 
96
97</script> 
¿Tienes dudas?

Más información

Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> Separador9bxj  [in template "20097#20123#57068109" at line 1, column 62]

----
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: #assign Separador9bxj_Fechadpsj_Data ...  [in template "20097#20123#57068109" at line 1, column 1]
----
1<#assign Separador9bxj_Fechadpsj_Data = getterUtil.getString(Separador9bxj.Fechadpsj.getData())> 
2<#if SeccinInformacinAdicionalyklw.InformacinAdicional249k?has_content> 
3<#assign _informacion = SeccinInformacinAdicionalyklw.InformacinAdicional249k> 
4    <style> 
5          .acord_template_un { 
6            display: flex; 
7            flex-direction: column !important; 
8            align-items: center; 
9            border: 0px; 
10            background: white; 
11            width:100%; 
12
13          .boton_Acordeon { 
14            width: 100%; 
15            padding: 18px 0; 
16            font-weight: 500 !important; 
17            margin: 0; 
18            cursor: pointer; 
19            display: flex; 
20            justify-content: space-between; 
21            align-items: center; 
22
23          .boton_Acordeon p { 
24            color: #000; 
25            margin: 0; 
26            padding: 0; 
27            font-size: 1rem; 
28
29          .boton_Acordeon .minus { 
30            width: 0.7rem; 
31            height: 1px; 
32            background: red; 
33
34          .boton_Acordeon .plus { 
35            width: 0.7rem; 
36            height: 1px; 
37            background: red; 
38            transform: rotate(90deg); 
39
40          .acord_template_un .cont_Acordeon_Un { 
41            width: 98%; 
42            background-color: transparent; 
43            max-height: 0; 
44            overflow: hidden; 
45            transition: max-height 0.2s ease-out; 
46
47          .acord_template_un .border_acordeon { 
48            width: 100%; 
49            border-bottom: 1px solid black; 
50
51          .plus_no { 
52            display: none; 
53
54    </style> 
55<#-- SECCIÓN HTML INICIO --> 
56    <div class="acord_template_un"> 
57        <#if _informacion.getSiblings()?has_content> 
58    	    <#list _informacion.getSiblings() as _info> 
59    	          <div class="boton_Acordeon"> 
60                    <p class="boton_Acordeon_texto">${_info.getData()}</p> 
61                    <div class="sign"> 
62                      <div class="minus"></div> 
63                      <div class="plus"></div> 
64                    </div> 
65                  </div> 
66                  <div class="cont_Acordeon_Un"> 
67                    ${_info.ContenidoInformacinAdicional1g0v.getData()} 
68                  </div> 
69                  <div class="border_acordeon"></div> 
70    	    </#list> 
71        </#if> 
72    </div> 
73<#-- SECCIÓN HTML FIN --> 
74    <script> 
75      var btn_ = document.getElementsByClassName("boton_Acordeon"); 
76      var i; 
77      for (i = 0; i < btn_.length; i++) { 
78        btn_[i].addEventListener("click", function () { 
79          const plus = this.querySelector(".plus"); 
80          plus.classList.toggle("plus_no"); 
81          this.classList.toggle("active"); 
82          const cont_Acordeon_Un = this.nextElementSibling; 
83          if (cont_Acordeon_Un.style.maxHeight) { 
84            cont_Acordeon_Un.style.maxHeight = null; 
85          } else { 
86            cont_Acordeon_Un.style.maxHeight = 
87              cont_Acordeon_Un.scrollHeight + "px"; 
88
89        }); 
90
91    </script> 
92</#if> 
Nuestros

Profesores

Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> Profesor  [in template "20097#20123#56860254" at line 49, column 10]

----
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: #if Profesor.getSiblings()?has_content  [in template "20097#20123#56860254" at line 49, column 5]
----
1<style> 
2      .profesor_credenciales { 
3        box-sizing: border-box; 
4        color: white; 
5        display: flex; 
6        flex-wrap: wrap; 
7        gap: 24px; 
8        margin: auto; 
9        margin-top: 3rem; 
10        max-width: 1000px; 
11        padding: 0 24px; 
12
13      .profesor_credencial_img{ 
14          background-color:white; 
15          border-radius:100%; 
16          width:200px; 
17          height:200px; 
18          border-radius:100%; 
19
20      .profesor_credencial_img img{ 
21          border-radius:100%; 
22
23      .profesor_credencial_content { 
24        margin-top: 16px; 
25        flex: 1; 
26
27      .profesor_credencial_content * { 
28        margin: 0; 
29
30      .profesor_credencial_content > h3 { 
31        font-size: 16px; 
32
33      .profesor_credencial_content > h4 { 
34        font-size: 14px; 
35
36      .profesor_credencial_content > p { 
37        margin-top: 1rem; 
38        font-size: 14px; 
39
40       
41      @media only screen and (max-width: 600px) { 
42        .profesor_credenciales { 
43          flex-direction: column; 
44          align-items: center; 
45          text-align: center; 
46
47
48    </style> 
49    <#if Profesor.getSiblings()?has_content> 
50    	<#list Profesor.getSiblings() as cur_Profesor> 
51          <div class="profesor_credenciales"> 
52                <#if (cur_Profesor.Imagen1nz1.getData())?? && cur_Profesor.Imagen1nz1.getData() != ""> 
53                <div class="profesor_credencial_img"> 
54                	<img alt="${cur_Profesor.Imagen1nz1.getAttribute("alt")}" data-fileentryid="${cur_Profesor.Imagen1nz1.getAttribute("fileEntryId")}" src="${cur_Profesor.Imagen1nz1.getData()}" /> 
55                </div> 
56                </#if> 
57            <div class="profesor_credencial_content"> 
58              <h3>${cur_Profesor.getData()}</h3> 
59              <h4>${cur_Profesor.emailProfesor.getData()}</h4> 
60              <p>${cur_Profesor.CajaDeTexto1tlq.getData()} 
61              </p> 
62            </div> 
63          </div> 
64	    </#list> 
65    </#if> 
Descubre lo más reciente

Noticias

Políticas Administrativas

*Todos nuestros programas corresponden a educación no formal que no conducen a título alguno o certificado de aptitud ocupacional

*El Centro de Educación Continuada se reserva el derecho de cancelar un programa o modificar del mismo lo siguiente: la fecha y horarios de realización, el valor de la inversión, los expertos facilitadores propuestos, los contenidos y el lugar donde se ofrecerá. Los programas se realizarán cuando se haya alcanzado un número establecido de participantes matriculados.

*En caso de que un programa se cancele por decisión de la Universidad, a los participantes matriculados que hayan realizado el pago hasta el momento, se les ofrecerá la posibilidad de conservar el pago como saldo a favor para participar en otro programa de Educación Continuada o se les devolverá la totalidad del valor de la matrícula.

*El certificado de asistencia se entrega a los participantes que acrediten mínimo el 80% de asistencia.

Descarga el instructivo de pagos en línea aquí

¿Tienes dudas?

Contáctanos

Patricia Cepeda
Coordinadora de Mercadeo
pcepeda@uninorte.edu.co

cec@uninorte.edu.co
(605) 3509509 Ext. 4223 - 3800 y 4893
Centro de Educación Continuada