Histórico de ofertas de prácticas
Te facilitamos la relación de los procesos de selección de estudiantes cerrados que hemos solicitado para que realicen prácticas formativas en nuestra empresa.
Se ha producido un error al procesar la plantilla.
The string doesn't match the expected date/time/date-time format. The string to parse was: "1215". The expected format was: "HH:mm". The nested reason given follows: Unparseable date: "1215" ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign timeExpDate = timeExp?date["H... [in template "20155#20195#427709" at line 128, column 49] ----
1<#assign groupId = getterUtil.getLong(groupId)>
2<#assign group = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService").getGroup(groupId)>
3<#assign theme_display = request.getAttribute("LIFERAY_SHARED_THEME_DISPLAY")>
4<#assign imagesFolder = theme_display.getPathThemeImages()>
5
6<#if locale == "en_US">
7 <#assign newLocale = "ca_ES">
8<#else>
9 <#assign newLocale = locale>
10</#if>
11
12<#function miliSeconds dateString firstDate>
13 <#assign params = dateString?split(":")>
14
15 <#if params?size == 2>
16 <#assign param1 = params[0]>
17 <#assign param2 = params[1]>
18 <#assign param1 = getterUtil.getLong(param1)*3600000>
19 <#assign param2 = getterUtil.getLong(param2)*60000>
20 <#assign finalMilSec = param1 + param2>
21 <#assign finalMilSecLong = getterUtil.getLong(finalMilSec)>
22 <#assign resultLong = firstDate + finalMilSecLong>
23
24 <#return resultLong>
25 </#if>
26</#function>
27
28<#if entries?has_content>
29 <#if locale != "en_US">
30 <div class="choose-ticket__search-bar">
31 <div class="form__field">
32 <div class="f__text__6_wrapper">
33 <input id="oferta-practicas-search-input" type="text" placeholder="<@liferay.language key="offer.helperSearchHistoric"/>" value=""/>
34 </div>
35 </div>
36 </div>
37 </#if>
38 <#assign today = .now?date>
39
40 <#if locale != "en_US">
41 <ul id="historical-students-offers-ul" class="list list--links list--links-b">
42 </#if>
43 <#assign count = 0>
44 <#foreach curEntry in entries>
45 <#assign renderer = curEntry.getAssetRenderer()>
46 <#assign className = renderer.getClassName()>
47
48 <#assign dataPub = "">
49 <#assign dataExp = "">
50 <#assign isExpired = false>
51
52 <#if className == "com.liferay.journal.model.JournalArticle">
53 <#assign journalArticle = renderer.getArticle()>
54 <#assign journalArticleId = journalArticle.getArticleId()>
55 <#assign document = saxReaderUtil.read(journalArticle.getContent())>
56 <#assign rootElement = document.getRootElement()>
57 <#assign title = "">
58 <#assign titleSel = saxReaderUtil.createXPath("dynamic-element[@name='position']/dynamic-content[@language-id='" + newLocale + "']")>
59 <#assign title = titleSel.selectSingleNode(rootElement).getStringValue()>
60 <#assign numReferencia = "">
61 <#assign numReferenciaSel = saxReaderUtil.createXPath("dynamic-element[@name='reference_number']/dynamic-content[@language-id='" + newLocale + "']")>
62 <#assign numReferencia = numReferenciaSel.selectSingleNode(rootElement).getStringValue()>
63 <#assign referenceSel = saxReaderUtil.createXPath("dynamic-element[@name='reference_text']/dynamic-content[@language-id='" + newLocale + "']")>
64 <#if referenceSel.selectSingleNode(rootElement)?has_content>
65 <#assign reference = referenceSel.selectSingleNode(rootElement).getStringValue()>
66 <#else>
67 <#assign reference = "">
68 </#if>
69 <#assign refNumSel = saxReaderUtil.createXPath("dynamic-element[@name='reference_text']/dynamic-element[@name='reference_number']/dynamic-content[@language-id='" + newLocale + "']")>
70 <#if refNumSel.selectSingleNode(rootElement)?has_content>
71 <#assign refNumber = refNumSel.selectSingleNode(rootElement).getStringValue()>
72 <#else>
73 <#assign refNumber = "">
74 </#if>
75 <#assign sumissionSel = saxReaderUtil.createXPath("dynamic-element[@name='text_submission']/dynamic-content[@language-id='" + newLocale + "']")>
76 <#if sumissionSel.selectSingleNode(rootElement)?has_content>
77 <#assign sumission = sumissionSel.selectSingleNode(rootElement).getStringValue()>
78 <#else>
79 <#assign sumission = "">
80 </#if>
81 <#assign requestDateSel = saxReaderUtil.createXPath("dynamic-element[@name='text_submission']/dynamic-element[@name='request_date']/dynamic-content[@language-id='" + newLocale + "']")>
82 <#if requestDateSel.selectSingleNode(rootElement)?has_content>
83 <#assign requestDate = requestDateSel.selectSingleNode(rootElement).getStringValue()>
84 <#else>
85 <#assign requestDate = "">
86 </#if>
87 <#assign link = renderer.getURLViewInContext(renderRequest, renderResponse, "")>
88 <#assign pubDateSel = saxReaderUtil.createXPath("dynamic-element[@name='pubDate']/dynamic-content[@language-id='" + newLocale + "']")>
89 <#assign dataPub = pubDateSel.selectSingleNode(rootElement).getStringValue()>
90 <#assign expDateSel = saxReaderUtil.createXPath("dynamic-element[@name='expDate']/dynamic-content[@language-id='" + newLocale + "']")>
91 <#assign dataExp = expDateSel.selectSingleNode(rootElement).getStringValue()>
92 <#assign timePubSel = saxReaderUtil.createXPath("dynamic-element[@name='pubTime']/dynamic-content[@language-id='" + newLocale + "']")>
93 <#assign timePub = timePubSel.selectSingleNode(rootElement).getStringValue()>
94 <#assign timeExpSel = saxReaderUtil.createXPath("dynamic-element[@name='expTime']/dynamic-content[@language-id='" + newLocale + "']")>
95 <#assign timeExp = timeExpSel.selectSingleNode(rootElement).getStringValue()>
96
97 <#assign isExpiredSel = saxReaderUtil.createXPath("dynamic-element[@name='isExpired']/dynamic-content[@language-id='" + newLocale + "']")>
98 <#if isExpiredSel.selectSingleNode(rootElement)?has_content>
99 <#assign isExpired = isExpiredSel.selectSingleNode(rootElement).getStringValue()>
100 </#if>
101
102 <#-- Data publicació i expiració -----------------------------------------------
103 -->
104
105 <#if (dataPub?has_content)>
106 <#if timePub?? && timePub?has_content>
107 <#assign timePubDate = timePub?date["HH:mm"]>
108 <#assign timePubFormat = timePubDate?string["HH:mm"]>
109 <#else>
110 <#assign timePubDate = "">
111 <#assign timePubDate = "">
112 </#if>
113 <#attempt>
114 <#assign dataPub = dataPub?date["yyyy-MM-dd"]>
115
116 <#if timePubFormat?has_content && timePubFormat != "">
117 <#assign dataPubMil = miliSeconds(timePubFormat dataPub?long)>
118 <#assign dataPub = dateUtil.newDate(getterUtil.getLong(dataPubMil))>
119 </#if>
120 <#assign dataPubMil = dataPub?long-timeZoneUtil.getTimeZone("Europe/Madrid").getOffset(dataPub?long)>
121 <#recover>
122 </#attempt>
123 </#if>
124
125
126 <#if (dataExp?has_content)>
127 <#if timeExp?? && timeExp?has_content>
128 <#assign timeExpDate = timeExp?date["HH:mm"]>
129 <#assign timeExpFormat = timeExpDate?string["HH:mm"]>
130 <#else>
131 <#assign timeExpDate = "">
132 <#assign timeExpFormat = "">
133 </#if>
134 <#attempt>
135 <#assign dataExp = dataExp?date["yyyy-MM-dd"]>
136
137 <#if timeExpFormat?has_content && timeExpFormat != "">
138 <#assign dataExpMil = miliSeconds(timeExpFormat dataExp?long)>
139 <#assign dataExp = dateUtil.newDate(getterUtil.getLong(dataExpMil))>
140 </#if>
141 <#assign dataExpMil = dataExp?long-timeZoneUtil.getTimeZone("Europe/Madrid").getOffset(dataExp?long)>
142 <#recover>
143 </#attempt>
144 </#if>
145
146
147 <#if dataPub?has_content && dataExp?has_content && (today?long>=dataPubMil) && (today?long>dataExpMil) || getterUtil.getBoolean(isExpired)>
148 <#if title != "">
149 <#assign count = 1>
150
151 <#if locale != "en_US">
152 <li class="list__item oferta-practicas" data-title="${title}" data-fechapub="${dataPubMil}">
153 <a class="list__label" href="${link}">
154 ${numReferencia} - ${title}
155 <#--$dataPub
156 -->
157 </a>
158 <#if reference?has_content>
159 <p>
160 ${reference}: ${refNumber} <#if sumission>- ${sumission}</#if><#if requestDate>: ${requestDate}</#if>
161 </p>
162 </#if>
163 </li>
164 </#if>
165 </#if>
166 </#if>
167 </#if>
168 </#foreach>
169 <#if locale != "en_US">
170 </ul>
171 </#if>
172 <#if locale == "en_US" && count != 0>
173 <div class="content intro">
174 <p>
175 <@liferay.language key="offer.studentHistoric.noRes"/>
176 </p>
177 </div>
178
179 <#elseif count == 0>
180 <div class="content intro">
181 <p>
182 <@liferay.language key="offer.studentHistoric.noResults"/>
183 </p>
184 </div>
185 </#if>
186<#else>
187 <div class="content intro">
188 <p>
189 <@liferay.language key="offer.studentHistoric.noResults"/>
190 </p>
191 </div>
192</#if>
193
194<div class="content intro no-results" style="display:none;">
195 <p>
196 <@liferay.language key="offer.studentHistoric.noResults.js"/>
197 </p>
198
199</div>
200<script type="text/javascript">
201
202 $(document).ready(function(){
203 historicalStudentOffers.init();
204 });
205
206 historicalStudentOffers= {
207 init: function(){
208 if($("li.oferta-practicas").length==0){
209 return;
210 }
211
212 var maxDate = new Date("3000/06/25");
213 var orderList = $("li.oferta-practicas").sort(function(a,b){
214 var date1 = $(a).data("fechapub")==""?maxDate:new Date($(a).data("fechapub"));
215 var date2 = $(b).data("fechapub")==""?maxDate:new Date($(b).data("fechapub"));
216 //console.log($(a).data("fechapub"));
217 //console.log($(b).data("fechapub"));
218 //console.log(date1 + "----" + date2);
219 return date2 - date1;
220 });
221
222
223 var offers = [];
224 var year = null;
225 jQuery.each(orderList,function(index,li){
226 var date = new Date($(li).data("fechapub"));
227 if(year != date.getFullYear()){
228 year = date.getFullYear();
229 offers.push('<li><h2 class="title title--2" data-year-title="' + year + '">' + year + '</h2></li>');
230 }
231 //$(li).data("year",year);
232 li.dataset.year = year;
233 offers.push(li);
234 });
235
236 $("#historical-students-offers-ul").html(offers);
237
238 $('#oferta-practicas-search-input').keyup(function(event){
239 <#--if(event.which == 13)
240--> <#-- {
241--> event.preventDefault();
242 this.search();
243 <#-- }
244--> }.bind(this));
245 },
246 search: function(){
247 $('.no-results').hide();
248 var text = $("#oferta-practicas-search-input").val();
249 if(text==""){
250 $("[data-year-title]").show();
251 $(".oferta-practicas").show();
252 }else{
253 $("[data-year-title]").hide();
254 var found = false;
255 $(".oferta-practicas").each(function(index,item){
256 var title = $(item).data("title");
257 if(title.toUpperCase().includes(text.toUpperCase())){
258 var year = $(item).data("year");
259 $("[data-year-title='" + year + "']").show();
260 $(item).show();
261 found = true;
262 }else{
263 $(item).hide();
264 }
265 });
266 if(!found){
267 var txt = "<@liferay.language key="offer.studentHistoric.noResults.js"/>";
268 txt = txt.replace("@@@@", text);
269 $('.no-results p').html(txt);
270 $('.no-results').show();
271 }
272 }
273 }
274 };
275
276
277 </script>
Cerrar
© OpenStreetMap contributors