- CHDuero
- Servicio al ciudadano
- Fondos Comunitarios (Periodo 2021-2027)
- Implantación de los planes de emergencia de las presas
Se ha producido un error al procesar la plantilla.
Range start index 0 is out of bounds, because the sliced sequence has only 0 element(s). (Note that indices are 0-based).
The blamed expression:
==> 0..3 [in template "20099#20135#407107" at line 714, column 56]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #list enlaces[0..3] as enlace [in template "20099#20135#407107" at line 714, column 41]
---- 1<style> 2 .asset-content { 3 margin: 0!important; 4 } 5 6 #detalle-chd { 7 height: auto; 8 } 9 10 #detalle-chd *{ 11 box-sizing: border-box; 12 } 13 14 #detalle-chd .detalle-wrapper { 15 position: relative; 16 display: block; 17 margin-bottom: 30px; 18 } 19 20 #detalle-chd .header-detalle { 21 position: relative; 22 background: white; 23 } 24 25 #detalle-chd .header-title { 26 position: relative; 27 border-left: 10px solid #1c7696; 28 padding: 10px 20px; 29 font-size: 2.4rem; 30 font-weight: bold; 31 color: black; 32 margin: 0; 33 word-break: break-word; 34 margin-bottom: 30px; 35 user-select: none; 36 } 37 38 #detalle-chd .rrss-stats-wrapper { 39 display: flex; 40 border-top: 2px solid #1c7696; 41 padding: 10px 5px 0; 42 margin-bottom: 50px; 43 } 44 45 #detalle-chd .rrss-stats-wrapper .social-media-bar { 46 display: grid; 47 grid-template-columns: auto 30px 30px; 48 grid-gap: 10px; 49 align-items: center; 50 } 51 52 #detalle-chd .rrss-stats-wrapper span { 53 color: #1b576d; 54 } 55 56 #detalle-chd .btn-rrss { 57 height: 30px; 58 width: 30px; 59 border-radius: 50%; 60 display: flex; 61 justify-content: center; 62 align-items: center; 63 font-size: 1.1rem; 64 text-decoration: none; 65 color: white; 66 background: #1c7696; 67 } 68 69 #detalle-chd .contenido-detalle { 70 position: relative; 71 display: block; 72 overflow: hidden; 73 width: 100%; 74 background: white; 75 color: black; 76 } 77 78 #detalle-chd .contenido-detalle h1, 79 #detalle-chd .contenido-detalle h2, 80 #detalle-chd .contenido-detalle h3, 81 #detalle-chd .contenido-detalle h4, 82 #detalle-chd .contenido-detalle h5, 83 #detalle-chd .contenido-detalle h6{ 84 font-size: 1.2rem; 85 margin: 35px 0 10px 0; 86 } 87 88 #detalle-chd .contenido-detalle b, 89 #detalle-chd .contenido-detalle strong{ 90 font-weight: 700; 91 } 92 93 #detalle-chd .contenido-detalle a { 94 color: #1c7696; 95 } 96 97 #detalle-chd .img-principal { 98 width: 35%; 99 float: right; 100 padding: 0 0 5px 15px; 101 } 102 103 #detalle-chd .img-principal img { 104 width: 100%; 105 height: 100%; 106 object-fit: cover; 107 } 108 109 #detalle-chd .contenidos-adicionales, 110 #detalle-chd .destacados { 111 width: 100%; 112 height: auto; 113 } 114 115 #detalle-chd .ficheros-asociados, 116 #detalle-chd .imagenes-asociadas, 117 #detalle-chd .destacados { 118 position: relative; 119 margin-bottom: 30px; 120 } 121 122 #detalle-chd .imagenes-header, 123 #detalle-chd .ficheros-header, 124 #detalle-chd .destacados-header { 125 display: flex; 126 background: white; 127 box-sizing: border-box; 128 border-left: 5px solid #1c7696; 129 } 130 131 #detalle-chd .imagenes-header span, 132 #detalle-chd .ficheros-header span, 133 #detalle-chd .destacados-header span { 134 font-size: 1.2em; 135 font-weight: 600; 136 color: #272727; 137 padding: 5px 15px; 138 user-select: none; 139 margin: 0; 140 } 141 142 #detalle-chd .expander-btn { 143 position: absolute; 144 display: flex; 145 justify-content: center; 146 align-items: center; 147 width: 35px; 148 height: 35px; 149 bottom: -5px; 150 right: -5px; 151 background-color: #bbe5f3; 152 color: #1c7696; 153 border-radius: 50%; 154 border-top-right-radius: 0; 155 transform: rotate(-45deg); 156 font-size: 1.3rem; 157 cursor: pointer; 158 } 159 160 #detalle-chd .expander-btn i { 161 transform: rotate(45deg); 162 } 163 164 #detalle-chd .ficheros-asociados ul, 165 #detalle-chd .destacados ul { 166 width: 100%; 167 margin: 0; 168 padding: 0; 169 overflow: hidden; 170 } 171 172 #detalle-chd .ficheros-asociados ul > li { 173 background-color: #f5f5f5; 174 display: block; 175 } 176 177 #detalle-chd .ficheros-asociados ul > li:nth-child(n+6) { 178 display: none; 179 } 180 181 #detalle-chd .ficheros-asociados ul > li:hover { 182 background: #1c7696; 183 } 184 185 #detalle-chd .ficheros-asociados ul > li:hover .enlace-fichero { 186 color: white; 187 } 188 189 #detalle-chd .ficheros-asociados ul > li > .enlace-fichero:focus { 190 background: #1c7696; 191 color: white; 192 } 193 194 #detalle-chd .ficheros-asociados .enlace-fichero, 195 #detalle-chd .destacados .enlace-destacado { 196 display: flex; 197 align-items: baseline; 198 width: 100%; 199 text-decoration: none; 200 padding: 10px; 201 color: #1c7696; 202 word-break: break-word; 203 } 204 205 #detalle-chd .destacados .enlace-destacado { 206 color: white; 207 } 208 209 #detalle-chd .destacados ul > li{ 210 display: block; 211 } 212 213 #detalle-chd .destacados .enlace-destacado:hover, 214 #detalle-chd .destacados .enlace-destacado:focus { 215 opacity: 0.9; 216 } 217 218 #detalle-chd .enlace-fichero span, 219 #detalle-chd .enlace-destacado span{ 220 font-size: 0.9rem; 221 display: block; 222 width: calc(100% - 35px); 223 } 224 225 #detalle-chd .enlace-destacado span{ 226 font-size: 0.95rem; 227 font-weight: 700; 228 } 229 230 #detalle-chd .enlace-fichero .file-icon, 231 #detalle-chd .enlace-destacado .destacado-icon{ 232 display: flex; 233 justify-content: center; 234 padding-right: 10px; 235 width: 35px; 236 } 237 238 #detalle-chd .color-1{ 239 background: #bbe5f3; 240 } 241 242 #detalle-chd .color-2{ 243 background: #1b576d; 244 } 245 246 #detalle-chd .color-3{ 247 background: #a7f5df; 248 } 249 250 #detalle-chd .color-1 span, 251 #detalle-chd .color-3 span{ 252 color: #1b576d; 253 } 254 255 #detalle-chd .color-4{ 256 background: #1c7696; 257 } 258 259 #detalle-chd .contenedor-imagenes{ 260 position: relative; 261 display: grid; 262 grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; 263 grid-auto-rows: 130px; 264 grid-gap: 10px; 265 background-color: #f5f5f5; 266 padding: 10px; 267 } 268 269 #detalle-chd .contenedor-imagenes a{ 270 display: block; 271 } 272 273 /* Establecemos el número de elementos que son visibles por defecto */ 274 #detalle-chd .contenedor-imagenes a:nth-child(n+7) { 275 display: none; 276 } 277 278 #detalle-chd .contenedor-imagenes img{ 279 height: 100%; 280 width: 100%; 281 object-fit: cover; 282 } 283 284 #detalle-chd .contenedor-imagenes img:hover{ 285 transform: scale(1.05); 286 } 287 288 .print-action{ 289 display: none; 290 } 291 292 /*Estilos tablas de datos*/ 293 #detalle-chd .titulo-tabla{ 294 font-weight: bold; 295 text-align: center; 296 margin-bottom: 15px; 297 } 298 299 #detalle-chd table{ 300 width: 100%!important; 301 text-align: center; 302 border-collapse: collapse; 303 border-spacing: 0; 304 overflow-x: auto; 305 /*white-space: nowrap;*/ 306 margin-bottom: 15px; 307 margin-top: 30px; 308 } 309 310 #detalle-chd table caption{ 311 color: #FFF; 312 text-align: center; 313 caption-side: top; 314 font-weight: 700; 315 } 316 317 #detalle-chd table .fas, 318 #detalle-chd table .fab{ 319 margin-right: 5px; 320 } 321 322 #detalle-chd table p{ 323 margin: 0; 324 } 325 326 #detalle-chd tr, 327 #detalle-chd td{ 328 background-color: #f9f9f9; 329 border-bottom: 1px solid #dddddd; 330 border-top: 1px solid #dddddd; 331 border-collapse: collapse; 332 line-height: 2; 333 position: relative; 334 text-align: center; 335 font-size: 0.9rem; 336 } 337 338 #detalle-chd tr:nth-child(odd)>td{ 339 background-color: #fff; 340 } 341 342 #detalle-chd td{ 343 padding: 5px 10px; 344 } 345 346 #detalle-chd th, #detalle-chd caption { 347 border-collapse: collapse; 348 border: 1px solid #1c7696; 349 border-bottom: 1px solid #20667f!important; 350 border-right: 1px solid #20667f!important; 351 line-height: 2; 352 color: white; 353 background-color: #1c7696; 354 position: relative; 355 border-radius: 0; 356 font-weight: bold; 357 padding: 5px 10px; 358 } 359 360 #detalle-chd caption{ 361 background-color: #115f7b; 362 border: 1px solid #115f7b; 363 } 364 365 #detalle-chd thead tr:nth th, #detalle-chd caption{ 366 background-color: #1c7696; 367 border-color: #1c7696; 368 border-bottom: 1px solid #20667f; 369 } 370 371 #detalle-chd tr td:first-of-type{ 372 white-space: initial; 373 } 374 375 #detalle-chd .total-foot, 376 #detalle-chd .total-foot td, 377 #detalle-chd tfoot td { 378 background-color: #20667f!important; 379 border: 1px solid #20667f; 380 color: white; 381 font-weight: 700; 382 } 383 384 #detalle-chd .sticky-wrapper{ 385 position: sticky; 386 position: -webkit-sticky; 387 display: flex; 388 flex-direction: column; 389 top: 70px; 390 } 391 392 #detalle-chd .submenu-nav-wrapper .portlet{ 393 margin: 0; 394 } 395 396 #detalle-chd .item-visible{ 397 display: block!important; 398 } 399 400 #detalle-chd .detalleFicha{ 401 padding-left: 10px; 402 border-left: 3px solid #1c7696; 403 font-weight: 700; 404 margin-bottom: 10px; 405 margin-top: 40px; 406 } 407 408 #detalle-chd .detalleFicha:first-of-type{ 409 margin-top: 0; 410 } 411 412 /*-------------------------- RESPONSIVE --------------------------*/ 413 414 @media screen and (max-width: 767px) and (orientation: portrait){ 415 416 #detalle-chd .header-title{ 417 border-left-width: 8px; 418 padding: 0.5rem 1rem; 419 font-size: 2rem; 420 } 421 422 #detalle-chd .img-principal{ 423 float: none; 424 width: 100%; 425 height: 240px; 426 padding: 0; 427 margin-bottom: 20px; 428 } 429 430 #detalle-chd .img-principal img{ 431 object-position: center; 432 } 433 434 #detalle-chd .contenedor-imagenes{ 435 grid-template-columns: 1fr 1fr; 436 } 437 438 #detalle-chd .contenedor-imagenes a:nth-child(n+3) { 439 display: none; 440 } 441 442 #detalle-chd table{ 443 display: block; 444 } 445 446 #detalle-chd .rrss-stats-wrapper{ 447 flex-direction: column; 448 padding: 10px 0 0; 449 margin-bottom: 20px; 450 } 451 452 #detalle-chd .rrss-stats-wrapper .social-media-bar{ 453 grid-template-columns: 80px 30px 30px; 454 margin-bottom: 15px; 455 } 456 } 457 458 @media screen and (max-width: 767px) and (orientation: landscape){ 459 460 #detalle-chd .header-title{ 461 font-size: 2.2rem; 462 border-left-width: 8px; 463 padding: 0.5rem 1rem; 464 } 465 466 #detalle-chd .contenedor-imagenes{ 467 grid-template-columns: 1fr 1fr 1fr 1fr; 468 grid-auto-rows: 145px; 469 } 470 471 #detalle-chd .contenedor-imagenes a:nth-child(n+5) { 472 display: none; 473 } 474 475 #detalle-chd table{ 476 display: block; 477 } 478 } 479 480 @media screen and (min-width: 768px) and (max-width: 1024px){ 481 482 #detalle-chd .contenedor-imagenes{ 483 grid-template-columns: 1fr 1fr 1fr 1fr; 484 grid-auto-rows: 170px; 485 } 486 487 #detalle-chd .contenedor-imagenes a:nth-child(n+5) { 488 display: none; 489 } 490 } 491 492 /* Intercambiamos la posición del submenu de navegación por el de los ficheros asociados */ 493 @media screen and (max-width: 1199px){ 494 #detalle-chd .sticky-wrapper{ 495 position: static; 496 } 497 498 #detalle-chd .sticky-wrapper .submenu-nav-wrapper{ 499 order: 2; 500 } 501 502 #detalle-chd .sticky-wrapper .contenidos-adicionales{ 503 order: 1; 504 } 505 506 #detalle-chd .sticky-wrapper .destacados{ 507 order: 3; 508 margin-bottom: 0; 509 } 510 } 511 512 @media print{ 513 #detalle-chd .social-media-bar{ 514 display: none; 515 } 516 517 #banner, nav#breadcrumbs, #footer, .taglib-header{ 518 display: none!important; 519 margin: 0px!important; 520 } 521 522 #detalle-chd .contenidos-adicionales{ 523 display: none; 524 } 525 526 #detalle-chd #contenido-detalle a[href]:after{ 527 content: none!important; 528 } 529 530 #detalle-chd #contenido-detalle .img-principal{ 531 width: 150px!important; 532 } 533 } 534 535 /* Adaptación a Internet Explorer */ 536 #detalle-chd .ficheros-asociados .enlace-fichero{ 537 display: -ms-grid; 538 -ms-grid-columns: auto 1fr; 539 } 540 541 #detalle-chd .enlace-fichero .file-icon{ 542 -ms-grid-column: 1; 543 } 544 545 #detalle-chd .enlace-fichero span{ 546 -ms-grid-column: 2; 547 } 548 549 #detalle-chd .rrss-stats-wrapper .social-media-bar{ 550 display: -ms-grid; 551 -ms-grid-columns: auto 10px 30px 10px 30px; 552 } 553 554 #detalle-chd .rrss-stats-wrapper .social-media-bar span{ 555 -ms-grid-column: 1; 556 } 557 558 #detalle-chd .rrss-stats-wrapper .social-media-bar a:nth-of-type(1){ 559 -ms-grid-column: 3; 560 } 561 562 #detalle-chd .rrss-stats-wrapper .social-media-bar a:nth-of-type(2){ 563 -ms-grid-column: 5; 564 } 565 566 #detalle-chd .contenedor-imagenes{ 567 display: -ms-grid; 568 -ms-grid-rows: 130px; 569 -ms-grid-columns: 1fr 1fr 1fr 1fr 1fr 1fr; 570 min-height: 150px; 571 } 572 573 #detalle-chd .contenedor-imagenes a:nth-child(1){ 574 -ms-grid-column: 1; 575 } 576 577 #detalle-chd .contenedor-imagenes a:nth-child(2){ 578 -ms-grid-column: 2; 579 } 580 581 #detalle-chd .contenedor-imagenes a:nth-child(3){ 582 -ms-grid-column: 3; 583 } 584 585 #detalle-chd .contenedor-imagenes a:nth-child(4){ 586 -ms-grid-column: 4; 587 } 588 589 #detalle-chd .contenedor-imagenes a:nth-child(5){ 590 -ms-grid-column: 5; 591 } 592 593 #detalle-chd .contenedor-imagenes a:nth-child(6){ 594 -ms-grid-column: 6; 595 } 596 597 @media screen and (max-width: 767px) and (orientation: portrait){ 598 #detalle-chd .contenedor-imagenes{ 599 -ms-grid-rows: 130px; 600 -ms-grid-columns: 1fr 1fr; 601 } 602 } 603 604 @media screen and (max-width: 767px) and (orientation: landscape){ 605 #detalle-chd .contenedor-imagenes{ 606 -ms-grid-rows: 145px; 607 -ms-grid-columns: 1fr 1fr 1fr 1fr; 608 } 609 } 610 611 @media screen and (min-width: 768px) and (max-width: 1024px){ 612 #detalle-chd .contenedor-imagenes{ 613 -ms-grid-rows: 170px; 614 -ms-grid-columns: 1fr 1fr 1fr 1fr; 615 } 616 } 617 618</style> 619 620<#-- Obtenemos la URL correspondiente --> 621<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext() /> 622<#assign themeDisplay = serviceContext.getThemeDisplay() /> 623<#assign currentURL = themeDisplay.getURLPortal()+themeDisplay.getURLCurrent() /> 624<#assign layout = themeDisplay.getLayout() /> 625<#assign pageId = layout.getPlid() /> 626 627<div class="row"> 628 <div id="detalle-chd" class="container-fluid-1280"> 629 <div class="row"> 630 <div class="col-xl-12 col-md-12"> 631 <div class="row"> 632 <div class="col-xl-9 col-lg-12"> 633 <section> 634 <article class="detalle-wrapper"> 635 <header class="header-detalle"> 636 <h2 class="header-title">${titulo.getData()}</h2> 637 </header> 638 639 <section> 640 <div class="contenido-detalle"> 641 <#if img_principal.getData()!="" > 642 <figure class="img-principal"> 643 <img src="${img_principal.getData()}" alt="${titulo.getData()}" title="${titulo.getData()}"/> 644 </figure> 645 </#if> 646 ${contenido.getData()} 647 </div> 648 <div class="rrss-stats-wrapper"> 649 <div class="social-media-bar"> 650 <span>Compartir: </span> 651 <a href="https://www.facebook.com/sharer/sharer.php?u=${currentURL}" class="btn-rrss" title="Compartir en Facebook" aria-label="Compartir en Facebook" target="_blank"> 652 <i class="fab fa-facebook-f" aria-hidden="true"></i> 653 </a> 654 <a href="https://twitter.com/share?url=${currentURL}&text=${titulo.getData()}" class="btn-rrss" title="Compartir en Twitter" aria-label="Compartir en Twitter" target="_blank"> 655 <i class="fab fa-twitter" aria-hidden="true"></i> 656 </a> 657 </div> 658 </div> 659 </section> 660 661 <section class="contenidos-adicionales"> 662 <#if galeria.getSiblings()?has_content> 663 <#assign imgs = galeria.getSiblings()> 664 <#if (imgs?size >=1)&&(imgs[0].getData()?length>10)> 665 <div class="imagenes-asociadas"> 666 <div class="imagenes-header" tabindex="0"> 667 <span>Galería de imágenes</span> 668 </div> 669 <#assign count = 0> 670 <div class="contenedor-imagenes" aria-label="Galeria de imagenes"> 671 <#list galeria.getSiblings() as cur_imagenes> 672 <#assign count = count + 1> 673 <a href="${cur_imagenes.getData()}" target="_blank" data-group="gallery" class="gallery"> 674 <img src="${cur_imagenes.getData()}" title="${titulo.getData()} - Imagen ${count}" alt="${titulo.getData()} - Imagen ${count}"> 675 </a> 676 </#list> 677 <#-- Por defecto, mostraremos 6 enlaces a imágenes asociadas. Si el número de imágenes es superior incluiremos el botón --> 678 <#if (count > 6) > 679 <div class="expander-btn" aria-expanded="false" role="button" tabindex="0"> 680 <i class="fas fa-chevron-down"></i> 681 <span class="sr-only">Expandir/replegar lista de ficheros asociados.</span> 682 </div> 683 </#if> 684 </div> 685 </div> 686 </#if> 687 </#if> 688 </section> 689 </article> 690 </section> 691 </div> 692 693 <div class="col-xl-3 col-lg-12"> 694 <section class="sticky-wrapper"> 695 <!-- Destacados --> 696 <#assign destacados = getterUtil.getString(themeDisplay.getThemeSetting("Destacados")) /> 697 <#if destacados != "UNSET" && destacados?trim != "" > 698 <#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 699 <#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 700 701 <#assign article = journalArticleLocalService.getLatestArticle(getterUtil.getLong(groupId), destacados, 0) /> 702 <#assign document = saxReaderUtil.read(article.getContent()) /> 703 <#assign enlaces = document.selectNodes("/root/dynamic-element[@name='texto_enlaceFieldSet']") /> 704 705 <nav class="destacados" aria-label="Menú secciones destacadas" role="navigation"> 706 <div class="destacados-header" tabindex="0"> 707 <span>Destacados</span> 708 </div> 709 710 <ul role="tree"> 711 <#assign count = 1 /> 712 <#-- Tomamos unicamente los 4 primeros destacados. --> 713 714 <#list enlaces[0..3] as enlace> 715 <#assign 716 texto = enlace.selectSingleNode("dynamic-element[@name='texto_enlace']/dynamic-content[@language-id='es_ES']").getText() 717 icono = enlace.selectSingleNode("dynamic-element[@name='texto_enlaceFieldSetFieldSet']/dynamic-element[@name='icono']/dynamic-content[@language-id='es_ES']").getText() 718 url = enlace.selectSingleNode("dynamic-element[@name='texto_enlaceFieldSetFieldSet']/dynamic-element[@name='enlace']/dynamic-content[@language-id='es_ES']").getText() 719 layoutID = url?split(",")?last?split(":")?last?replace("\"","")?replace("}","") 720 groupID = url?split(",")?first?split(":")?last?replace("\"","")?replace("{","") 721 pageLayout = layoutLocalService.getLayout(groupID?number, false, layoutID?number) 722 layoutURL = pageLayout.getFriendlyURL() 723 /> 724 725 <li role="treeitem"> 726 <a href="${layoutURL}" class="enlace-destacado color-${count}" aria-label="${texto}"> 727 <span class="destacado-icon ${icono}"></span> 728 <span>${texto}</span> 729 </a> 730 </li> 731 <#assign count = count + 1 /> 732 </#list> 733 734 </ul> 735 </nav> 736 </#if> 737 738 <div class="submenu-nav-wrapper"> 739 <#-- Establecemos las preferencias para la configuración del menú de navegación de los subniveles --> 740 <#-- Obtenemos el valor del theme-setting que define la plantilla que se aplicará al menú, si esta vacia aplicaremos el formato lista. --> 741 <#assign nav_adt_id = getterUtil.getString(themeDisplay.getThemeSetting("AdtMenuNavegacion")) /> 742 <#if (nav_adt_id?trim ="")> 743 <#assign nav_adt_id = "ddmTemplate_LIST-MENU-FTL" /> 744 <#else> 745 <#assign nav_adt_id = "ddmTemplate_"+nav_adt_id /> 746 </#if> 747 <#assign subNavPreferencesMap = { 748 "siteNavigationMenuType": "6", 749 "displayStyle": nav_adt_id?string, 750 "rootMenuItemType": "relative", 751 "rootMenuItemLevel": "2", 752 "displayDepth": "0", 753 "expandedLevels": "auto" 754 }/> 755 756 <#assign myInstanceId = pageId+"_nav_menu" /> 757 758 <@liferay.navigation_menu 759 default_preferences=freeMarkerPortletPreferences.getPreferences(subNavPreferencesMap) 760 instance_id= myInstanceId 761 /> 762 </div> 763 <section class="contenidos-adicionales"> 764 <#if doc_adjuntos.getSiblings()?has_content> 765 <#assign fchs = doc_adjuntos.getSiblings()> 766 <#if (fchs?size >=1)&&(fchs[0].getData()?length>10)> 767 <div class="ficheros-asociados"> 768 <div class="ficheros-header" tabindex="0"> 769 <span>Ficheros asociados</span> 770 </div> 771 <ul aria-label="Ficheros asociados"> 772 <#assign count = 0> 773 <#list doc_adjuntos.getSiblings() as cur_file> 774 <#if cur_file.getData()?trim !=""> 775 <li> 776 777 <#assign decoder = staticUtil["java.net.URLDecoder"]> 778 <#assign array = cur_file.getData()?split('/')> 779 <#assign fileTitle = decoder.decode(array[4], "UTF-8")> 780 781 <a class="enlace-fichero" href="${cur_file.getData()}" aria-label="${fileTitle}" target="_blank"> 782 783 <#-- En funcion de la extension del archivo incluimos el icono que le corresponda --> 784 <#assign tipo_documento = cur_file.getData()> 785 <#if tipo_documento?contains('.pdf')> 786 <i class="file-icon fas fa-file-pdf" aria-hidden="true"></i> 787 <#elseif tipo_documento?contains('.doc')> 788 <i class="file-icon fas fa-file-word" aria-hidden="true"></i> 789 <#elseif tipo_documento?contains('www')> 790 <i class="file-icon fas fa-link" aria-hidden="true"></i> 791 <#elseif tipo_documento?contains('.zip') || tipo_documento?contains('.rar')> 792 <i class="file-icon fas fa-archive" aria-hidden="true"></i> 793 <#else> 794 <i class="file-icon fas fa-file-alt" aria-hidden="true"></i> 795 </#if> 796 797 <span>${fileTitle}</span> 798 799 </a> 800 </li> 801 <#assign count = count + 1 > 802 </#if> 803 </#list> 804 </ul> 805 <#-- Por defecto, mostraremos 5 enlaces a ficheros asociados. Si el número de ficheros es superior incluiremos el botón --> 806 <#if (count > 5) > 807 <div class="expander-btn" aria-expanded="false" role="button" tabindex="0"> 808 <i class="fas fa-chevron-down"></i> 809 <span class="sr-only">Expandir/replegar lista de ficheros asociados.</span> 810 </div> 811 </#if> 812 </div> 813 </#if> 814 </#if> 815 </section> 816 </section> 817 </div> 818 </div> 819 </div> 820 </div> 821 </div> 822</div> 823 824<script> 825 function toggleExpanderBtn(t){ 826 if ($(t).find('i').hasClass("fa-chevron-up")){ 827 $(t).find('i').removeClass('fa-chevron-up'); 828 $(t).siblings('.item-visible').removeClass('item-visible'); 829 $(t).attr('aria-expanded','false'); 830 }else if($(t).find('i').hasClass("fa-chevron-down")){ 831 $(t).find('i').addClass('fa-chevron-up'); 832 $(t).siblings(':hidden').addClass('item-visible'); 833 $(t).attr('aria-expanded','true'); 834 } 835 } 836 837 /* Controlamos la expansion/contracción de los elementos de imagenes/archivos adjuntos */ 838 $('.expander-btn').click(function(){ 839 toggleExpanderBtn(this); 840 }); 841 842 $('.expander-btn').on('keypress', function(e){ 843 if(e.which == 13) { 844 toggleExpanderBtn(this); 845 } 846 }); 847 848 /* Controlamos la posición del sticky-wrapper en funcion de la existencia del menu de control */ 849 if($('#ControlMenu').length){ 850 $('.sticky-wrapper').css('top','128px'); 851 } 852 853 /* Galeria */ 854 $('.gallery').modaal({ 855 type: 'image' 856 }); 857</script>