Premio del Paesaggio - Osservatorio
?substring(...) argument #2 had invalid value: The index mustn't be greater than the length of the string, 195, but it was 200. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign currentPageFriendlyUrl = curr... [in template "20115#20151#153018" at line 31, column 57] ----
1<#-- Premio Paesaggio Category Navigation ADT -->
2
3<#assign assetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
4
5<#if entries?has_content>
6 <div class="container-ricerca">
7 <h3 class="titolo-ricerca-premio">Ricerca</h3>
8 <div class="container-dropdown-premio">
9 <@liferay_aui.row>
10 <#list entries as entry>
11 <#assign vocabularyId = entry.getVocabularyId() />
12 <@liferay_aui.col width=33>
13 <div class="results-header">
14 <label>${entry.getUnambiguousTitle(entries, themeDisplay.getSiteGroupId(), themeDisplay.getLocale())}</label>
15 </div>
16 <#assign categories = assetCategoryLocalService.getVocabularyRootCategories(entry.getVocabularyId(), -1, -1, null) />
17 <div class="dropdown" style="display: grid;">
18 <#assign textButton = "Seleziona " + entry.getUnambiguousTitle(entries, themeDisplay.getSiteGroupId(), themeDisplay.getLocale()) />
19 <#assign currentPageFriendlyUrl = themeDisplay.getURLCurrent()>
20 <#if currentPageFriendlyUrl?contains('categories') || currentPageFriendlyUrl?contains('p_r_p_categoryId')>
21 <#if currentPageFriendlyUrl?contains('categories')>
22 <#assign splitter = currentPageFriendlyUrl?split("/") >
23 <#assign currentPageFriendlyUrl = splitter?last >
24 <#assign assetCategory = assetCategoryLocalService.getAssetCategory(currentPageFriendlyUrl?number)>
25 <#assign vocabularyIdUrl = assetCategory.getVocabularyId()>
26 <#if vocabularyIdUrl == vocabularyId>
27 <#assign textButton = assetCategory.getTitle(locale) />
28 </#if>
29 <#else>
30 <#if currentPageFriendlyUrl?contains('p_r_p_categoryId')>
31 <#assign currentPageFriendlyUrl = currentPageFriendlyUrl?substring(currentPageFriendlyUrl?index_of("p_r_p_categoryId"), currentPageFriendlyUrl?index_of("p_r_p_categoryId") + 23)?split("=")?last />
32 <#assign assetCategory = assetCategoryLocalService.getAssetCategory(currentPageFriendlyUrl?number)>
33 <#assign vocabularyIdUrl = assetCategory.getVocabularyId()>
34 <#if vocabularyIdUrl == vocabularyId>
35 <#assign textButton = assetCategory.getTitle(locale) />
36 </#if>
37 </#if>
38 </#if>
39 </#if>
40
41 <button class="btn btn-primary dropdown-toggle btn-dropdown-premio" type="button" data-toggle="dropdown">
42 ${textButton}
43 <span class="caret"></span>
44 </button>
45 <ul class="dropdown-menu dropdown-menu-premio">
46 <@displayCategories categories=categories />
47 </ul>
48 </div>
49 </@liferay_aui.col>
50 </#list>
51 </@liferay_aui.row>
52
53
54
55 <#macro displayCategories categories>
56 <#if categories?has_content>
57 <#list categories as category>
58 <#assign categoryURL = renderResponse.createRenderURL() />
59 <#--${categoryURL.setParameter("resetCur", "true")}-->
60 ${categoryURL.setParameter("categoryId", category.getCategoryId()?string)}
61 <li>
62 <a href="${categoryURL}">${category.getName()}</a>
63 </li>
64 <#if serviceLocator??>
65 <#assign assetCategoryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryService") />
66 <#assign childCategories = assetCategoryService.getChildCategories(category.getCategoryId()) />
67 <#if childCategories?size gt 0>
68 <div class="child-list-premio">
69 <@displayCategories categories=childCategories />
70 </div>
71 </#if>
72 </#if>
73 </#list>
74 <#-- OLS VERSION
75 <ul class="categories">
76 <#list categories as category>
77 <li>
78 <#assign categoryURL = renderResponse.createRenderURL() />
79 ${categoryURL.setParameter("resetCur", "true")}
80 ${categoryURL.setParameter("categoryId", category.getCategoryId()?string)}
81 <a href="${categoryURL}">${category.getName()}</a>
82 <#if serviceLocator??>
83 <#assign
84 assetCategoryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryService")
85 childCategories = assetCategoryService.getChildCategories(category.getCategoryId())
86 />
87 <@displayCategories categories=childCategories />
88 </#if>
89 </li>
90 </#list>
91 </ul>-->
92 </#if>
93 </#macro>
94 </div>
95 </div>
96</#if>
97
98<style>
99.container-ricerca {
100 background-color: #ffffff;
101 margin-top: 30px;
102 margin-bottom: 40px;
103 border-top: 3px solid #D38613;
104 padding-left: 15px;
105 padding-right: 15px;
106}
107
108.container-dropdown-premio {
109 padding: 30px 20px;
110}
111
112.titolo-ricerca-premio {
113 color: #D38613;
114 font-weight: bold;
115}
116
117.btn-dropdown-premio,
118.btn-dropdown-premio:hover,
119.btn-dropdown-premio:focus,
120.btn-dropdown-premio:active,
121.btn-dropdown-premio:active:focus {
122 background-color: #ffffff;
123 color: #000000;
124 border: 1px solid #cccccc;
125 text-align: left;
126 display: flex;
127 justify-content: space-between;
128 align-items: center;
129}
130
131.open>.btn-dropdown-premio {
132 background-color: #ffffff !important;
133 color: #000000 !important;
134 border: 1px solid #cccccc !important;
135 text-align: left !important;
136}
137
138.dropdown-menu-premio {
139 width: 100%;
140}
141
142.dropdown-menu-premio li a {
143 color: #000000;
144}
145
146.dropdown-menu-premio>li>a:hover {
147 color: #000000;
148}
149
150.child-list-premio {
151 padding-left: 30px;
152}
153
154.child-list-premio a {
155 color: #000000;
156 font-weight: normal;
157}
158
159@media (max-width: 575.98px) {
160 .container-ricerca {
161 margin-top: 0px;
162 }
163
164 .btn-dropdown-premio {
165 font-size: 1.3rem;
166 }
167}
168
169@media (min-width: 576px) and (max-width: 767.98px) {
170 .container-ricerca {
171 margin-top: 0px;
172 }
173
174 .btn-dropdown-premio {
175 font-size: 1rem;
176 }
177}
178
179@media (min-width: 768px) and (max-width: 991.98px) {
180 .container-ricerca {
181 width: 100%;
182 }
183
184 .btn-dropdown-premio {
185 font-size: 1.3rem;
186 }
187}
188
189@media (min-width: 992px) and (max-width: 1199.98px) {
190 .container-ricerca {
191 width: 100%;
192 }
193
194 .btn-dropdown-premio {
195 font-size: 1.3rem;
196 }
197}
198
199</style>
Progetti
2019
I confini di pietra
Antichi mestieri, corso di formazione per selciatori e costruttori di muretti a secco
Partner Coinvolti : 5
Territori : Massa Carrara , Massa
Temi : Lavoro , Tutela , Formazione , Montagna
2019
Ri-vivere il paesaggio montano
Il Parco dei Monti Rognosi e della Valle del Sovara: dalle risorse culturali e naturali al turismo rurale sostenibile
Partner Coinvolti : 6
Territori : Arezzo , Anghiari
Temi : Turismo , Montagna , Agricoltura , Economia
2019
Firenze Greenway
La creazione di un'infrastruttura verde e sostenibile. Più di 15 chilometri da compiere a piedi o in biciletta
Partner Coinvolti : 4
Territori : Firenze , Firenze
Temi : Turismo , Sostenibilità , Camminare , Natura , Urbanistica
2019
Parco culturale di Camaiano
Un percorso per il recupero della memoria dei luoghi e delle emergenze storiche, architettoniche e geologiche
Partner Coinvolti : 1
Territori : Livorno , Rosignano Marittimo
Temi : Sostenibilità , Tutela , Formazione , Natura , Agricoltura
2019
Pian della Fioba
L'orto botanico apre una finestra sul paesaggio delle Alpi Apuane, tutela la flora e promuove attività didattiche e divulgative
Partner Coinvolti : 1
Territori : Massa Carrara , Massa
Temi : Turismo , Tutela , Formazione , Natura , Montagna