Rehabilitación de vivienda en El Cabanyal
El arquitecto David Estal es el responsable de la rehabilitación de esta vivienda tradicional de la zona de El Cabanyal, en Valencia, donde combinó el respeto por el pasado con soluciones decorativas y estructurales innovadoras hechas con madera técnica.
APLICACIÓN: Entreplanta, escaleras y barandas
PRODUCTO: Superpan Tech P6
- Valencia
- 2019
- David Estal

Tablero estructural en forjado, huellas de escalera y cerramiento de barandilla.

Tablero estructural en forjado, huellas de escalera y cerramiento de barandilla.

Tablero estructural en forjado, huellas de escalera y cerramiento de barandilla.
The following has evaluated to null or missing: ==> item.getLocalizations()[locale] [in template "20097#20123#37328" at line 21, column 34] ---- Tip: It's the final [] step that caused this error, not those before it. ---- 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 title = item.getLocalizations... [in template "20097#20123#37328" at line 21, column 17] ----
1<#assign articleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
2<section class="finsa-carrusel-soporte">
3 <div class=" finsa-carrusel-soporte__carrusel owl-carousel owl-theme">
4 <#if soporte?has_content && soporte.getSiblings()?has_content>
5 <#assign decoByCode = decorativoDataHolder.getDecorativosByCode()>
6 <#assign transByCode = transformadosDataHolder.getTransformadosByCode()>
7 <#assign soporteByCode = techDataHolder.getSoportesByCode()>
8
9 <#list soporte.getSiblings() as cur_soporte>
10 <#assign code = cur_soporte.getData()?lower_case>
11
12 <#assign item = "">
13 <#if decoByCode[code]?has_content>
14 <#assign item = decoByCode[code]>
15 <#assign title = item.getLocalizations()[locale].getNombre()>
16 <#elseif transByCode[code]?has_content>
17 <#assign item = transByCode[code]>
18 <#assign title = item.getLocalizations()[locale].getNombre()>
19 <#elseif soporteByCode[code]?has_content>
20 <#assign item = soporteByCode[code]>
21 <#assign title = item.getLocalizations()[locale].getWebName()>
22 </#if>
23
24 <#if item?has_content>
25 <div class="finsa-carrusel-soporte__item item">
26 <img class="finsa-carrusel-soporte-img" src="${item.getBinarios().getImagenDecorativoBase()!"#"}" alt="">
27 <h3 class="finsa-carrusel-soporte-title">
28 ${title}
29 </h3>
30 <div class="finsa-carrusel-soporte-button-wrapper">
31 <a href="/${(themeDisplay.getLocale().toString()?split('_')[0])}/fp/${item.getLocalizations()[locale].getFriendlyURL()!""}" class="finsa-button finsa-button--dark">
32 ${languageUtil.get(locale, "view-product")}
33 </a>
34 </div>
35 </div>
36 </#if>
37 </#list>
38 </#if>
39
40
41 </div>
42</section>
43<script>
44 if (!$(".page-editor")[0]){
45 item = $('.finsa-carrusel-soporte__item')
46 $(item).css("cursor", "pointer")
47 $(item).on("click", function (e) {
48 link = $(this).find('a').attr('href')
49 window.location = link;
50 });
51 }
52</script>