Giovanni Bressiani Pedroso
Giovanni Bressiani Pedroso
Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing: ==> Numrico12424755 [in template "34764#34807#null" at line 18, column 23] ---- 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 (Numrico12424755.getData()) != "0... [in template "34764#34807#null" at line 18, column 17] ----
1<#assign UserLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")>
2
3<#assign nomeDoUsuario = "" >
4<#assign emailDoUsuario = "" >
5<#assign telDoUsuario = "" >
6<#assign linkedinDoUsuario = "" >
7<#assign instagramDoUsuario = "" >
8<#assign cidadeinDoUsuario = "" >
9<#assign estadoDoUsuario = "" >
10<#assign paisDoUsuario = "" >
11
12<#if (_CUSTOM_FIELD_user.getData())??>
13 <#assign userId = _CUSTOM_FIELD_user.getData() >
14 <#assign usuario = UserLocalService.fetchUser(userId?number)!"" >
15 <#assign statusLogin = 0 />
16
17 <#if (usuario)??>
18 <#if (Numrico12424755.getData()) != "0" || statusLogin == 1>
19 <#assign nomeDoUsuario = usuario.getFullName()!"" >
20 </#if>
21
22 <#if (Numrico04827109.getData()) != "0" || statusLogin == 1>
23 <#assign emailDoUsuario = usuario.getEmailAddress()!"" >
24 </#if>
25 </#if>
26
27</#if>
28
29<#assign
30 EXIBIR = "1"
31 site = ""
32 instagram = (CampoDeTexto80034719.getData() != "0" )?string(Text28208517.getData()!"","")
33 linkedin = (CampoDeTexto27238437.getData() != "0" )?string(Text63396047.getData()!"","")
34 facebook = ""
35>
36
37<#if CampoDeTexto61603113.getData() != "0" >
38 <#assign telDoUsuario = CampoDeTexto61603113.getData()!"" >
39</#if>
40
41
42<#if CampoDeTexto27238437.getData() != "0" >
43 <#assign linkedinDoUsuario = Text63396047.getData()!"" >
44</#if>
45
46
47<#if (CampoDeTexto80034719.getData()) != "0" >
48 <#assign instagramDoUsuario = Text28208517.getData()!"" >
49</#if>
50
51<#if (CampoDeTexto80602799.getData()) != "0" >
52 <#assign cidadeinDoUsuario = Text74198597.getData()!"" >
53</#if>
54
55
56<#if (CampoDeTexto47855707.getData()) != "0" >
57 <#assign estadoDoUsuario = Text44010961.getData()!"" >
58</#if>
59
60<#if (CampoDeTexto10910128.getData()) != "0">
61 <#assign paisDoUsuario = Text60583910.getData()!"" >
62</#if>
63
64<div class="bioec_profile-sidebar">
65 <div>
66
67
68 <div id="profilePic">
69
70 <#assign exibirImagem = false>
71
72 <#if CampoDeTexto92229541.getData()?trim != "0">
73 <#if (CampoDeTexto73180976.getData())?? && CampoDeTexto73180976.getData() != "" && CampoDeTexto73180976.getData() != "null">
74 <#assign exibirImagem = true>
75 </#if>
76 </#if>
77
78 <#if exibirImagem>
79 <div class="profilePic_Frame">
80 <img src="${CampoDeTexto73180976.getData()}" />
81 </div>
82 <#else>
83 <img src='data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCIgdmlld0JveD0iMCAwIDEyMCAxMjAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxjaXJjbGUgY3g9IjYwIiBjeT0iNjAiIHI9IjYwIiBmaWxsPSIjNTk1QTVGIi8+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xXzQzODcpIj4KPHBhdGggZD0iTTYwIDY0LjVDNzEuMTc5NyA2NC41IDgwLjI1IDU1LjQyOTcgODAuMjUgNDQuMjVDODAuMjUgMzMuMDcwMyA3MS4xNzk3IDI0IDYwIDI0QzQ4LjgyMDMgMjQgMzkuNzUgMzMuMDcwMyAzOS43NSA0NC4yNUMzOS43NSA1NS40Mjk3IDQ4LjgyMDMgNjQuNSA2MCA2NC41Wk03OCA2OUg3MC4yNTE2QzY3LjEyOTcgNzAuNDM0NCA2My42NTYyIDcxLjI1IDYwIDcxLjI1QzU2LjM0MzggNzEuMjUgNTIuODg0NCA3MC40MzQ0IDQ5Ljc0ODQgNjlINDJDMzIuMDU3OCA2OSAyNCA3Ny4wNTc4IDI0IDg3Vjg5LjI1QzI0IDkyLjk3NjYgMjcuMDIzNCA5NiAzMC43NSA5Nkg4OS4yNUM5Mi45NzY2IDk2IDk2IDkyLjk3NjYgOTYgODkuMjVWODdDOTYgNzcuMDU3OCA4Ny45NDIyIDY5IDc4IDY5WiIgZmlsbD0id2hpdGUiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xXzQzODciPgo8cmVjdCB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyNCAyNCkiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K'/>
84 </#if>
85
86 </div>
87
88 <div id="profileInfo">
89 <#if nomeDoUsuario != "">
90 <div id="profileInfo_nome" class="profileInfo_campo">
91 <h5>Nome completo</h5>
92 <p>${nomeDoUsuario}</p>
93 </div>
94 </#if>
95
96 <#if emailDoUsuario != "">
97 <div id="profileInfo_email" class="profileInfo_campo profile_field">
98 <h5>E-mail</h5>
99 <p>${emailDoUsuario}</p>
100 </div>
101 </#if>
102
103 <#if telDoUsuario != "" && telDoUsuario != "null">
104 <div id="profileInfo_tel" class="profileInfo_campo profile_field">
105 <h5>Telefone</h5>
106 <p>${telDoUsuario?string?replace(".", "")}</p>
107 </div>
108 </#if>
109
110 <#if cidadeinDoUsuario != "">
111 <div id="profileInfo_cidade" class="profileInfo_campo profile_field">
112 <h5>Cidade</h5>
113 <p>${cidadeinDoUsuario} </p>
114 </div>
115 </#if>
116
117 <#if estadoDoUsuario != "">
118 <div id="profileInfo_estado" class="profileInfo_campo profile_field">
119 <h5>Estado</h5>
120 <p>${estadoDoUsuario}</p>
121 </div>
122 </#if>
123
124 <#if paisDoUsuario != "">
125 <div id="profileInfo_pais" class="profileInfo_campo profile_field">
126 <h5>País</h5>
127 <p>${paisDoUsuario}</p>
128 </div>
129 </#if>
130
131 </div>
132
133 <div class="bioec_org_info_social_container">
134 <#if site != "">
135 <a href="${site}" target="_blank" rel="noopener noreferrer">
136 <i class="fa-solid fa-laptop"></i>
137 </a>
138 </#if>
139
140 <#if instagram != "">
141 <a href="${instagram}" target="_blank" rel="noopener noreferrer">
142 <i class="fa-brands fa-instagram"></i>
143 </a>
144 </#if>
145
146 <#if linkedin != "">
147 <a href="${linkedin}" target="_blank" rel="noopener noreferrer">
148 <i class="fa-brands fa-linkedin-in"></i>
149 </a>
150 </#if>
151
152 <#if facebook != "">
153 <a href="${facebook}" target="_blank" rel="noopener noreferrer">
154 <i class="fa-brands fa-facebook"></i>
155 </a>
156 </#if>
157
158 </div>
159
160
161 </div>
162</div>
163
164<script>
165 function adicionarTagDeUser(){
166 <#if userId??>
167 if(!window.location.search.includes("tag=user")) {
168 window.location.search = window.location.search + "&tag=user-${userId}"
169 }
170 </#if>
171 }
172</script>
173
174<style>
175 .bioec_profile-sidebar {
176 padding: 40px 24px 80px 0px;
177 height: 100%;
178 background-color: #E8ECEF;
179}
180
181.bioec_profile-sidebar > div{
182 display: flex;
183 flex-direction: column;
184 gap: 40px;
185}
186
187.bioec_profile-sidebar #profilePic{
188 display: flex;
189 justify-content: center;
190 width: 120px;
191 height: 120px;
192 margin: auto;
193}
194
195.bioec_profile-sidebar .profilePic_Frame{
196border-radius: 100%;
197 width: 100%;
198 height: 100%;
199 overflow: hidden;
200}
201
202.bioec_profile-sidebar #profileInfo{
203display: flex;
204flex-direction: column;
205gap: 24px;
206}
207
208.bioec_profile-sidebar .profileInfo_campo{
209border-bottom: 1px solid #BEBEBE;
210
211}
212
213.bioec_profile-sidebar .profileInfo_campo h5{
214color: #5B5C61;
215font-weight: 700;
216 margin-bottom: 8px;
217}
218
219.bioec_profile-sidebar .profileInfo_campo p{
220margin-bottom: 4px;
221line-height: 24px;
222min-height: 24px;
223color: #5B5C61;
224}
225
226.bioec_org_info_social_container {
227 display: flex;
228 flex-direction: row;
229 align-items: center;
230 justify-content: center;
231 margin: 40px 0;
232}
233
234.bioec_org_info_social_container a {
235 font-size: 35px;
236 color: #5B5C61;
237 margin: 0 15px;
238}
239
240.bioec_profile-sidebar #editProfile{
241 display: none;
242}
243
244@media (max-width: 760px) {
245
246 .bioec_profile-sidebar{
247 padding: 40px 24px 80px;
248 }
249
250 .bioec_profile-sidebar #editProfile{
251 display: flex;
252 justify-content: flex-end;
253 width: 100%;
254 }
255}
256
257.profilePic_Frame {
258 width: 120px;
259 height: 120px;
260}
261
262.profilePic_Frame>img{
263 border-radius: 50%;
264 width: 100%;
265 height: 100%;
266 object-fit: cover;
267}
268</style>
Sobre drop zone
Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing: ==> user.getExpandoBridge().getAttribute("journal-article") [in template "34764#34807#null" at line 13, column 21] ---- 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: articleId = user.getExpandoBridge().g... [in template "34764#34807#null" at line 13, column 9] ----
1<#assign
2 UserLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")
3 JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")
4/>
5
6<#assign
7showSetores = false
8showTemas = false
9>
10
11<#assign
12 user = UserLocalService.getUserById(_CUSTOM_FIELD_user.getData()?number)
13 articleId = user.getExpandoBridge().getAttribute("journal-article")
14 journalArticle = JournalArticleLocalService.getArticle(themeDisplay.getLayout().getGroupId(),articleId)
15 articleXml = journalArticle.getDocument().getRootElement()
16
17 setores = articleXml.selectNodes("dynamic-element[@name='CampoDeTexto87399736']")
18 temas = articleXml.selectNodes("dynamic-element[@name='CampoDeTexto26318525']")
19/>
20
21<#if (CampoDeTexto87399736.getData())?? && CampoDeTexto48913778.getData() != "0" >
22<#assign showSetores = true>
23</#if>
24
25<#if setores?size == 1 && setores[0].getStringValue()?trim == "" >
26<#assign showSetores = false>
27</#if>
28
29<#if (CampoDeTexto26318525.getData())?? && CampoDeTexto69455401.getData() != "0" >
30 <#assign showTemas = true>
31</#if>
32
33<#if temas?size == 1 && temas[0].getStringValue()?trim == "" >
34 <#assign showTemas = false>
35</#if>
36
37<#if CampoDeTexto27402695.getData() != "0">
38 <div class="bioec_perfil-sobre-mim">
39 <label>Sobre você</label>
40 <div class="bioec_perfil-sobre-mim-container">
41 <#if CopyOfText22799390.getData()?? && CopyOfText22799390.getData() != "" >
42 ${CopyOfText22799390.getData()}
43 <#else>
44 <div class="bioec_perfil-sobre-mim-vazio">
45 Nenhuma descrição foi adicionada neste perfil ainda
46 </div>
47 </#if>
48 </div>
49 </div>
50</#if>
51
52
53<#if showSetores || showTemas>
54<div class="bioec_org-principal-container">
55 <div class="row">
56 <div class="col-md-6">
57 <#if showSetores>
58 <h3>Setor(es) de atuação</h3>
59 <ul>
60
61 <#list setores as setoresAtuacao>
62 <li>${setoresAtuacao.getStringValue()}</li>
63 </#list>
64
65 </ul>
66 </#if>
67
68 <#if showTemas>
69 <h3>Tema(s) de interesse</h3>
70 <ul>
71
72 <#list temas as temasAtuacao>
73 <li>${temasAtuacao.getStringValue()}</li>
74 </#list>
75
76
77 </ul>
78 </#if>
79
80 </div>
81 </div>
82</div>
83</#if>
84
85
86<style>
87.bioec_perfil-sobre-mim label {
88 color: var(--black-2);
89 font-weight: 700;
90 margin-bottom: 10px;
91 font-size: 20px;
92 line-height: 30px;
93}
94
95.bioec_perfil-sobre-mim .bioec_perfil-sobre-mim-container {
96 font-size: 16px;
97 border: 1px solid var(--gray-1);
98 padding: 24px;
99}
100
101 .bioec_perfil-sobre-mim .bioec_perfil-sobre-mim-vazio {
102 color: var(--black-2);
103 font-size: 16px;
104 text-align: center;
105 font-weight: 700;
106}
107
108 .bioec_org-principal-container {
109 font-size: 16px;
110 border: 1px solid var(--gray-1);
111 padding: 24px;
112 color: var(--black-1);
113}
114
115 .bioec_org-principal-container h3 {
116 font-size: 20px;
117 line-height: 20px;
118 margin-bottom: 8px;
119}
120
121 .bioec_org-principal-container .bioec_org-principal-campo {
122 margin-bottom: 24px;
123 border-bottom: 1px solid var(--gray-1);
124 line-height: 30px;
125 font-size: 16px;
126}
127</style>
Organizações drop zone
Um erro ocorreu enquanto processava o modelo.
Can't compare values of these types. Allowed comparisons are between two numbers, two strings, two dates, or two booleans. Left hand operand is a string (wrapper: f.t.SimpleScalar). Right hand operand is a number (wrapper: f.t.SimpleNumber). The blamed expression: ==> articleId != 0 [in template "34764#34807#null" at line 16, column 53] ---- FTL stack trace ("~" means nesting-related): - Failed at: #if articleId?? && articleId != 0 && ... [in template "34764#34807#null" at line 16, column 33] ----
1<#assign
2 JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")
3 UserLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")
4>
5
6<#assign
7 userId = _CUSTOM_FIELD_user.getData()?number
8 user = UserLocalService.getUser(userId)
9 userOrgs = user.getOrganizations()
10/>
11
12<div class="bioec_orgs-list">
13 <#if userOrgs?has_content>
14 <#list userOrgs as entry>
15 <#assign articleId = entry.getExpandoBridge().getAttribute("journal-article")!"0" />
16 <#if articleId?? && articleId != 0 && articleId?string != "0" >
17 <#assign journalArticle = JournalArticleLocalService.getArticle(334507, articleId?string) />
18
19 <#assign
20 url = themeDisplay.getURLPortal() + "/w/" + journalArticle.getUrlTitle() + "?tag=organization-${entry.getPrimaryKey()}"
21 articleXml = journalArticle.getDocument().getRootElement()
22 >
23
24 <#if articleXml??>
25 <#assign
26 tipo = articleXml.selectSingleNode("dynamic-element[@name='Text77560090']").getStringValue()!""
27
28 cidade = articleXml.selectSingleNode("dynamic-element[@name='Text74198597']").getStringValue()!""
29 estado = articleXml.selectSingleNode("dynamic-element[@name='Text44010961']").getStringValue()!""
30 pais = articleXml.selectSingleNode("dynamic-element[@name='Text60583910']").getStringValue()!""
31 localizacao = cidade?trim + "," + estado + "-" + pais
32
33 setores = articleXml.selectNodes("dynamic-element[@name='Text40807358']")
34
35 selo = articleXml.selectSingleNode("dynamic-element[@name='SeleoMltipla53056287']").getStringValue()!""
36 selo = selo?replace("\n\t\t", "")
37 selo = selo?replace("\n\t", "")
38
39 site = articleXml.selectSingleNode("dynamic-element[@name='Text98857063']").getStringValue()!""
40 site = site?replace("\n\t\t", "")
41 site = site?replace("\n\t", "")
42 instagram = ""
43 facebook = ""
44 linkedin = articleXml.selectSingleNode("dynamic-element[@name='Text63396047']").getStringValue()!""
45 linkedin = linkedin?replace("\n\t\t", "")
46 linkedin = linkedin?replace("\n\t", "")
47 orgId = journalArticle.getExpandoBridge().getAttribute("organization")
48 nome = entry.getName()!""
49 >
50
51 <div class="bioec_orgs-list-item">
52 <div class="bioec_orgs-list-item-l2">
53 <div class="bioec_orgs-list-item-l2-top">
54 <div>
55 <h3 class="mb-3">${nome}</h3>
56 </div>
57 <div class="bioec_orgs-list-item-social-container">
58 <#if site != "">
59 <a href="${site}" target="_blank" rel="noopener noreferrer">
60 <i class="fa-solid fa-laptop"></i>
61 </a>
62 </#if>
63 <#if instagram != "">
64 <a href="${instagram}" target="_blank" rel="noopener noreferrer">
65 <i class="fa-brands fa-instagram"></i>
66 </a>
67 </#if>
68 <#if linkedin != "">
69 <a href="${linkedin}" target="_blank" rel="noopener noreferrer">
70 <i class="fa-brands fa-linkedin-in"></i>
71 </a>
72 </#if>
73 <#if facebook != "">
74 <a href="${facebook}" target="_blank" rel="noopener noreferrer">
75 <i class="fa-brands fa-facebook"></i>
76 </a>
77 </#if>
78 </div>
79 </div>
80
81 <div class="row">
82 <div class="col-6">
83 <h3>Tipo de Organização</h3>
84 <p>${tipo}</p>
85 </div>
86 <div class="col-6">
87 <h3>Localização</h3>
88 <p>${localizacao}</p>
89 </div>
90 </div>
91
92 <div class="terceiralinha">
93 <div class="setores">
94 <h3>Setores de Atuação</h3>
95 <p>
96
97 <#list setores as setor>
98 ${setor.getStringValue()?trim + ";"}
99 </#list>
100
101 </p>
102 </div>
103 <#if selo != "" && selo != "null" && selo != "false">
104 <div class="seloEmbrapii">
105 <img width="160px" src="" alt="">
106 </div>
107 </#if>
108 </div>
109
110 </div>
111
112 <div class="bioec_orgs-list-item-l3">
113 <a href="${url}">Ver mais detalhes</a>
114 </div>
115 </div>
116 </#if>
117 </#if>
118 </#list>
119 <#else>
120 <div class="bioec_orgs-list-header-empty">
121 Nenhuma organização foi cadastrada neste perfil ainda
122 </div>
123 </#if>
124</div>
125
126<style>
127.bioec_orgs-list-header-empty {
128 color: #5B5C61;
129 text-align: center;
130 padding: 40px 20px;
131 font-weight: 700;
132 font-size: 16px;
133}
134
135.bioec_orgs-list-item {
136 border: 1px solid #BEBEBE;
137 margin-bottom: 24px;
138}
139
140.bioec_orgs-list-item h3 {
141 color: #5B5C61;
142 font-size: 20px;
143 line-height: 30px;
144 font-weight: 700;
145 margin: 0;
146}
147
148.terceiralinha {
149 display: flex;
150}
151
152.terceiralinha .setores {
153 flex: 1;
154}
155
156@media (max-width: 768px){
157 .terceiralinha {
158 flex-direction: column;
159 }
160}
161
162.bioec_orgs-list-item p {
163 color: #5B5C61;
164}
165
166.bioec_orgs-list-item-l1{
167 background: #E8ECEF;
168 padding: 12px 24px;
169 display: flex;
170 justify-content: flex-start;
171
172}
173
174.bioec_orgs-list-item-l1 h4 {
175 font-weight: 400;
176 font-size: 25px;
177 color: #5B5C61;
178 margin: 0;
179}
180
181.bioec_orgs-list-item-l2 {
182 padding: 24px;
183 gap: 24px;
184}
185
186.bioec_orgs-list-item-l2-top {
187 display: flex;
188 justify-content: space-between;
189}
190
191
192.bioec_orgs-list-item-l3 {
193 background: #E8ECEF;
194 color: #5B5C61;
195 padding: 8px 0px;
196 display: flex;
197 justify-content: center;
198}
199
200.bioec_orgs-list-item-l3 a {
201 color: #5B5C61;
202 font-weight: 700;
203 font-size: 16px;
204 line-height: 150%;
205 text-decoration: underline;
206 text-underline-offset: 3px;
207 transition: 250ms;
208 margin: 0 12px;
209}
210
211.bioec_orgs-list-item-social-container a {
212 color: #5B5C61;
213 text-decoration: none;
214 margin-left: 20px;
215 font-size: 20px;
216}
217
218.bioec_orgs-list-header-empty {
219 color: #5B5C61;
220 text-align: center;
221 padding: 40px 20px;
222 font-weight: 700;
223 font-size: 16px;
224 border: 1px solid #BEBEBE;
225}
226
227</style>
Demandas drop zone
Ofertas drop zone
Publicações drop zone