Absolutamente CHANEL - Livro - Editora Senac São Paulo
Absolutamente CHANEL
CHANEL é uma das marcas de luxo mais icônicas do mundo, conhecida por sua inovação que transformou a moda feminina. Seus produtos, como joias refinadas, o perfume nº 5 e a bolsa 2.55, continuam a surpreender e mantém a elegância em desfiles extraordinários pelo mundo.
Absolutamente CHANEL
CHANEL é uma das marcas de luxo mais icônicas do mundo, conhecida por sua inovação que transformou a moda feminina. Seus produtos, como joias refinadas, o perfume nº 5 e a bolsa 2.55, continuam a surpreender e mantém a elegância em desfiles extraordinários pelo mundo.
Quantidade em
estoque:
2656
-
Boleto Bancário
Parcela única, à vista
-
Pix
Parcela única, à vista
-
Cartão de Crédito
Parcelado em até
com cartão Mastercard, Visa ou Elo.
Absolutamente CHANEL
Não sabe seu CEP? Consulte aqui
-
Cartão de Crédito
'
Parcelamento em até 3 vezes sem juros com Mastercard, Visa ou Elo.
-
Cartão de Crédito
Parcelado em até
com cartão Mastercard, Visa ou Elo.
Ficha Técnica:
ISBN: 9788539647804
Edição: 1.a EDIÇÃO
Área: Moda
Número de páginas: 130
Idioma: Português
Data de lançamento: 07/10/2024
Tamanho: 26 x 30,3
Editora(s): SENAC SÃO PAULO
CHANEL é uma das marcas de luxo mais famosas do mundo, mas continua sendo a mais misteriosa de todas. De Paris e da rue Cambon, ela será sempre Gabrielle, uma mulher que revolucionou a elegância feminina. Desenvolta, insolente e impaciente, essa criadora levou o despojamento ao auge do luxo. Sua marca audaciosa e imprevisível, continua a surpreender com seus desfiles extraordinários, o mítico perfume nº 5, a bolsa 2.55, uma joalheria extremamente refinada e à preocupação de estar sempre na vanguarda da inovação. Por meio de ilustrações e fac-símiles, esta publicação do Senac São Paulo apresenta ao público brasileiro a história da marca, desde os anos sob o comando de Gabrielle Chanel, passando pela marcante contribuição de Karl Lagerfeld, até a atual direção criativa de Virginie Viard, em um convite irresistível para adentrar o universo único e envolvente da Maison CHANEL.
27445-sku
-
CHANEL é uma das marcas de luxo mais famosas do mundo, mas continua sendo a mais misteriosa de todas. De Paris e da rue Cambon, ela será sempre Gabrielle, uma mulher que revolucionou a elegância feminina. Desenvolta, insolente e impaciente, essa criadora levou o despojamento ao auge do luxo. Sua marca audaciosa e imprevisível, continua a surpreender com seus desfiles extraordinários, o mítico perfume nº 5, a bolsa 2.55, uma joalheria extremamente refinada e à preocupação de estar sempre na vanguarda da inovação. Por meio de ilustrações e fac-símiles, esta publicação do Senac São Paulo apresenta ao público brasileiro a história da marca, desde os anos sob o comando de Gabrielle Chanel, passando pela marcante contribuição de Karl Lagerfeld, até a atual direção criativa de Virginie Viard, em um convite irresistível para adentrar o universo único e envolvente da Maison CHANEL.
Ficha Técnica:
ISBN: 9788539647804
Edição: 1.a EDIÇÃO
Área: Moda
Número de páginas: 130
Idioma: Português
Data de lançamento: 07/10/2024
Tamanho: 26 x 30,3
Editora(s): SENAC SÃO PAULO
Em breve entraremos em contato!
|
The following has evaluated to null or missing: ==> media.getTitle() [in template "20102#20129#43698964" at line 24, column 64] ---- 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 media.getURL()?has_content && med... [in template "20102#20129#43698964" at line 24, column 29] ----
1<#setting locale="pt_BR">
2
3<#assign assetentry = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
4<#assign assetCategoryRel = serviceLocator.findService("com.liferay.asset.entry.rel.service.AssetEntryAssetCategoryRelLocalService") />
5<#assign assetCategory = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
6<#assign contentHelper = serviceLocator.findService("com.liferay.commerce.product.content.util.CPContentHelper") />
7<#assign CPDefinitionHelper = serviceLocator.findService("com.liferay.commerce.product.util.CPDefinitionHelper") />
8<#assign friendlyURLEntryLocalService = serviceLocator.findService("com.liferay.friendly.url.service.FriendlyURLEntryLocalService")>
9
10<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")>
11<#assign warehouseService = serviceLocator.findService("com.liferay.commerce.inventory.service.CommerceInventoryWarehouseItemLocalService") />
12<#assign companyId = userLocalService.getUser(themeDisplay.getUserId()).getCompanyId() />
13<#assign productService = serviceLocator.findService("br.senac.sp.editora.services.service.ProductService") />
14
15<div class="slider4">
16 <#if entries?has_content>
17 <#list entries as curCPCatalogEntry>
18 <#if curCPCatalogEntry?counter < 12>
19 <#assign friendlyURL = CPDefinitionHelper.getFriendlyURL(curCPCatalogEntry.getCPDefinitionId(),themeDisplay)>
20 <div class="imgContainerEspecialCarrossel4">
21 <a href="${friendlyURL}">
22 <#assign cpMedia = contentHelper.getImages(curCPCatalogEntry.getCPDefinitionId(), themeDisplay) />
23 <#list cpMedia as media>
24 <#if media.getURL()?has_content && media.getTitle()?contains("small")>
25 <img src="${media.getURL()}"/>
26 <#break>
27 </#if>
28 </#list>
29 </a>
30 <div class="informacoesProdutoCarrossel4">
31 <a href="${friendlyURL}">
32 <div class="infoSuperiores">
33 <div class="tituloEspecialCarrossel4">
34 ${curCPCatalogEntry.name?truncate(60, '...')}
35 </div>
36 <div class="autorEspecialCarrossel4">
37 <#list contentHelper.getCategorizedCPDefinitionSpecificationOptionValues(curCPCatalogEntry.getCPDefinitionId(),43620166) as specs>
38 <#if specs.CPSpecificationOptionId == 43594743>
39 <#assign autor = specs.getValueCurrentValue() />
40 ${autor?truncate(45, '...')}
41 <#break>
42 </#if>
43 </#list>
44 </div>
45 </div>
46 </a>
47 <div class="valorCarrossel4">
48 <@liferay_commerce_ui["price"]
49 CPCatalogEntry=curCPCatalogEntry
50 />
51 </div>
52 <div class="espiarCarrossel4">
53 <#if productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() ) >
54 <span class="comprarCarrossel4" data-sku="${curCPCatalogEntry.CPSkus[0].getSku()}">
55 <#assign PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] />
56 <#assign id = "add-to-cart" + PortalUtil.generateRandomKey(request, "add-to-cart") + "" + curCPCatalogEntry.CPSkus[0].getSku() />
57
58 <#list curCPCatalogEntry.getCPSkus() as skus>
59 <@liferay_commerce_ui["add-to-cart"]
60 CPInstanceId=skus.getCPInstanceId()
61 id=id
62 />
63 </#list>
64
65
66
67 </span>
68 <#else>
69 <span class="comprarCarrossel4">
70 <button class="btnIndisponivelEspecialCarrossel4" disabled>Livro Indisponível</button>
71 </span>
72 </#if>
73 </div>
74 </div>
75 </div>
76 <#elseif curCPCatalogEntry?counter == 12>
77 <!-- Ver Mais -->
78 <div class="customCart">
79 <#assign asset = assetentry.getEntry('com.liferay.commerce.product.model.CPDefinition',entries[0].getCPDefinitionId())/>
80 <#assign relateds = assetCategoryRel.getAssetEntryAssetCategoryRelsByAssetEntryId(asset.getEntryId())/>
81 <#if (currentURL?contains("catalogo?"))>
82 <#assign category = assetCategory.getAssetCategory(relateds[0].assetCategoryId)/>
83 <#else>
84 <#if relateds?has_content>
85 <#assign category = assetCategory.getAssetCategory(relateds[1].assetCategoryId)/>
86 </#if>
87 </#if>
88
89 <#if category?has_content>
90 <!-- classId de Category -->
91 <#assign friendlyURL = friendlyURLEntryLocalService.getMainFriendlyURLEntry(20013, category.categoryId)>
92 <#else>
93 <#assign friendlyURL = "">
94 </#if>
95 <div class="verMaisCard">
96 <div class="verMaisCardContent">
97 <i class="fas fa-books fa-2x"></i>
98 <div>
99 <div class="background-left2"><i class="fas fa-circle circulo auxCirc" aria-hidden="true"></i> </div>
100 </div>
101 <span class="text">Quer mais livros dessa área?</span>
102 <span class="ancora">
103 <#if friendlyURL?has_content>
104 <#assign categoryUrl = themeDisplay.getURLPortal() + '/categoria/' + friendlyURL.getUrlTitle(locale)/>
105 <a class="ancora-aux" href="${categoryUrl}">Confira todos</a></a>
106 </#if>
107 <!-- -->
108 <#assign entryName = entry.name?lower_case>
109 <#assign entryNameFormatted = entryName?replace(' ', '-')>
110 </span>
111 <div>
112 <div class="background-right2"> <i class="fas fa-circle circulo auxCirc" aria-hidden="true"></i></div>
113 </div>
114 </div>
115 </div>
116 </div>
117 <#break>
118 </#if>
119 </#list>
120 </#if>
121</div>
122
123<style>
124
125.comprarCarrossel4 {
126 margin-top: 0px;
127}
128
129.comprarCarrossel4 div.form-group {
130 display: none;
131}
132 .slider4 {
133 display: none;
134 }
135 .informacoesProdutoCarrossel4 span.commerce-discount {
136 display: none;
137 }
138
139 .comprarCarrossel4 .add-to-cart-quantity-marker.active {
140 opacity: 0;
141 display: none;
142 }
143
144 .comprarCarrossel4 form.quantity-selector {
145 display: none;
146 }
147
148 .comprarCarrossel4 .add-to-cart button.btn-add-to-cart{
149 background-color: #5ACC75;
150 border-radius: 4px;
151 width: 206px;
152 padding: 1px;
153 justify-content: center;
154 padding-left: 13%;
155 }
156
157 .comprarCarrossel4 span.price-value-final {
158 color: #D2691E !important;
159 }
160
161 .comprarCarrossel4 .btnIndisponivelEspecialCarrossel4 {
162 margin-top: 0.75rem !important;
163 }
164
165 .comprarCarrossel4 .add-to-cart button.btn-add-to-cart{
166 background-color: #5ACC75 !important;
167 }
168
169 .informacoesProdutoCarrossel4 .product-price {
170 font: normal normal bold 16px/17px Montserrat;
171 }
172
173 .slick-dots {
174 z-index: 2;
175 }
176
177 @media (max-width: 1200px) {
178 .slick-dots {
179 width: 100vw !important;
180 }
181 }
182
183 @media (min-width: 1023px) {
184 .slick-dotted.slick-slider {
185
186 }
187 .slider4 {
188 width: 1093px !important;
189 }
190 }
191
192 @media (max-width: 813px) {
193 .divEspiarCarrossel4 {
194 margin-top: 30px !important;
195 }
196
197
198 .divValorCarrossel4 {
199 margin-top: 15px !important;
200 }
201 }
202
203 @media (max-width: 768px) {
204 .slider2 .next-arrow {
205 right: 18px;
206 }
207
208 .slider2 .prev-arrow {
209 left: 18px;
210 }
211
212 .slider2 .slide-arrow .fa {
213 font-size: 22px;
214 font-weight: 400;
215 }
216
217 .slider4 .valorCarrossel4 {
218 margin-top: 5px;
219 }
220
221 .slider4 .espiarCarrossel4 {
222 position: relative;
223 top: -10px;
224 }
225
226 .valorCarrossel4 .price:not(.compact) .price-value {
227 font: normal 600 18px/17px Montserrat !important;
228 }
229 .valorCarrossel4 {
230 position: relative;
231 z-index: 9999;
232 display: flex;
233 padding-top: 25px;
234 align-items: flex-end;
235 }
236 .valorCarrossel4 .price-value {
237 margin-left: 0!important;
238 }
239 .comprarCarrossel4 .btn-add-to-cart {
240 margin: 0 !important;
241 padding-top: 2px !important;
242 }
243 .comprarCarrossel4 .btn-add-to-cart::before {
244 font-size: 16px;
245 }
246
247 .valorCarrossel4:not(.slider4semextracard .valorCarrossel4) {
248 margin-top: 0!important;
249 padding-top: 0!important;
250 }
251 .slider4 .informacoesProdutoCarrossel4:not(.slider4semextracard) {
252 top: unset;
253 bottom: 4%;
254 }
255
256 }
257
258 @media (max-width: 600px) {
259 .comprarCarrossel4 button.btn.btn-primary {
260 padding-left: 1px;
261 height: 30px;
262 }
263
264 .btn-add-to-cart-inline::before {
265 font-size: 14px;
266 width: 100%;
267 text-align: center;
268 display: block;
269 }
270 }
271
272 .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 {
273 display: flex;
274 align-items: flex-end;
275 }
276
277 .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 .price {
278 order: 1;
279 margin-top: 0!important;
280 margin-right: 2px;
281 }
282
283 .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 .parceladoCarrossel4 {
284 order: 2;
285 }
286
287 .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 .parceladoCarrossel4 + .price {
288 margin-right: 5px;
289 }
290
291 .slider4:not(.slider4semextracard) .informacoesProdutoCarrossel4 > a .divValorCarrossel4 .product-price {
292 order: 3;
293 margin-top: 0;
294 }
295
296 @media (max-width: 414px){
297 .slider4 {
298 width: 100vw !important;
299 /* margin-right: 0; */
300 margin-right: 20px;
301 margin-left: 20px;
302 }
303 }
304</style>
305
306<script>
307 setTimeout(function(){
308 $(document).ready(function() {
309 $('.slider4').slick({
310 arrows: true,
311 slidesToShow: 4,
312 slidesToScroll: 4,
313 dots:true,
314 infinite: false,
315 prevArrow: '<a href="#" class="slide-arrow prev-arrow"><i class="fa fa-chevron-left gray"></i></a>',
316 nextArrow: '<a href="#" class="slide-arrow next-arrow"><i class="fa fa-chevron-right gray"></i></a>',
317 speed: 1000,
318 index: 2,
319 lazyLoad: 'ondemand',
320 focusOnSelect:false,
321 accessibility:false,
322 adaptiveHeight:false,
323 autoplay:false,
324 responsive: [{
325 breakpoint: 1200,
326 settings: {
327 slidesToShow: 4,
328 slidesToScroll: 4,
329 variableWidth: true,
330 infinite: false,
331 centerMode: false,
332 dots:true,
333 arrows: true
334 }
335 }, {
336 breakpoint: 768,
337 settings: {
338 slidesToShow: 1,
339 slidesToScroll: 1,
340 variableWidth: true,
341 infinite: false,
342 centerPadding: 0,
343 centerMode: false,
344 dots:false,
345 arrows: true
346 }
347 }]
348 });
349
350 sendViewItemList([<#list entries as curCPCatalogEntry>${curCPCatalogEntry.getCPDefinitionId()},</#list>])
351 });
352
353 const slider4 = document.getElementsByClassName("slider4");
354 for (let i = 0; i < slider4.length; i++) {
355 slider4[i].style.display ='block';
356 }
357
358 if (typeof promoPrice !== 'undefined') {
359 promoPrice = document.getElementsByClassName("price");
360 }
361 else {
362 promoPrice = document.getElementsByClassName("price");
363 }
364
365 for (let i = 0; i < document.getElementsByClassName("price").length; i++) {
366 let carrossel = document.getElementsByClassName("price");
367 if(carrossel[i].children.length < 5) {
368 if(carrossel[i].children[0])
369 carrossel[i].children[0].innerText = "Por:"
370
371 if(carrossel[i].children[1]) {
372 carrossel[i].children[1].style.color = "#F6921E"
373 carrossel[i].children[1].style.marginLeft = ".5rem"
374 }
375 carrossel[i].style.marginTop = "24px"
376 }
377 else if (carrossel[i].children.length > 7){
378 carrossel[i].children[0].innerHTML = "<del>De:</del>"
379 carrossel[i].children[0].style.color = "#78849e"
380 carrossel[i].children[1].classList.remove("price-value-inactive")
381 let priceBefore = carrossel[i].children[1].innerText
382 carrossel[i].children[1].innerHTML = '<del>'+priceBefore+'</del>'
383 carrossel[i].children[1].style.color = "#78849e"
384
385 carrossel[i].children[2].style.display = "none"
386 carrossel[i].children[3].style.display = "none"
387 carrossel[i].children[4].innerText = "Por:"
388 carrossel[i].children[5].style.display = "none"
389 carrossel[i].children[6].style.display = "none"
390 carrossel[i].children[7].style.color = "#F6921E"
391 carrossel[i].children[7].style.marginLeft = ".5rem"
392 carrossel[i].style.marginTop = "10px"
393 }
394 else {
395 carrossel[i].children[0].innerHTML = "<del>De:</del>"
396 carrossel[i].children[0].style.color = "#78849e"
397 carrossel[i].children[1].classList.remove("price-value-inactive")
398 let priceBefore = carrossel[i].children[1].innerText
399 carrossel[i].children[1].innerHTML = '<del>'+priceBefore+'</del>'
400 carrossel[i].children[1].style.color = "#78849e"
401 carrossel[i].children[2].style.display = "none"
402 carrossel[i].children[3].style.display = "none"
403 carrossel[i].children[4].innerText = "Por:"
404 carrossel[i].children[5].style.color = "#F6921E"
405 carrossel[i].children[5].style.marginLeft = ".5rem"
406 carrossel[i].style.marginTop = "10px"
407 }
408 }
409 }, 1500);
410
411
412
413</script>
The following has evaluated to null or missing: ==> media.getTitle() [in template "20102#20129#43699000" at line 20, column 64] ---- 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 media.getURL()?has_content && med... [in template "20102#20129#43699000" at line 20, column 29] ----
1<#setting locale="pt_BR">
2
3<#assign commerceOrderLocalService = serviceLocator.findService("com.liferay.commerce.service.CommerceOrderLocalService")>
4<#assign contentHelper = serviceLocator.findService("com.liferay.commerce.product.content.util.CPContentHelper") />
5<#assign definitionHelper = serviceLocator.findService("com.liferay.commerce.product.util.CPDefinitionHelper") />
6<#assign productService = serviceLocator.findService("br.senac.sp.editora.services.service.ProductService") />
7<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")>
8<#assign warehouseService = serviceLocator.findService("com.liferay.commerce.inventory.service.CommerceInventoryWarehouseItemLocalService") />
9<#assign companyId = userLocalService.getUser(themeDisplay.getUserId()).getCompanyId() />
10
11<div class="slider4 slider4semextracard">
12 <#if entries?has_content>
13 <#list entries as curCPCatalogEntry>
14 <#assign cpSku = curCPCatalogEntry.CPSkus[0] >
15 <#if productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() )>
16 <div class="imgContainerEspecialCarrossel4">
17 <a onclick="cardProductClick(this)" href="${definitionHelper.getFriendlyURL(curCPCatalogEntry.getCPDefinitionId(),themeDisplay)}" data-definition="${curCPCatalogEntry.getCPDefinitionId()}">
18 <#assign cpMedia = contentHelper.getImages(curCPCatalogEntry.getCPDefinitionId(), themeDisplay) />
19 <#list cpMedia as media>
20 <#if media.getURL()?has_content && media.getTitle()?contains("small")>
21 <img src="" data-lazy="${media.getURL()}"/>
22 <#break>
23 </#if>
24 </#list>
25 <div class="informacoesProdutoCarrossel4">
26 <div class="infoSuperiores">
27 <div class="tituloEspecialCarrossel4">
28 ${curCPCatalogEntry.name?truncate(60, '...')}
29 </div>
30 <div class="autorEspecialCarrossel4">
31 <#if contentHelper?has_content >
32 <#list contentHelper.getCategorizedCPDefinitionSpecificationOptionValues(curCPCatalogEntry.getCPDefinitionId(),43620166) as specs>
33 <#if specs.CPSpecificationOptionId == 43594743>
34 ${specs.getValueCurrentValue()?truncate(45, '...')}
35 <#break>
36 </#if>
37 </#list>
38 </#if>
39 </div>
40 </div>
41 </div>
42 </a>
43 <div class="valorCarrossel4" data-definition="${curCPCatalogEntry.getCPDefinitionId()}">
44 <@liferay_commerce_ui["price"]
45 CPCatalogEntry=curCPCatalogEntry
46 />
47 </div>
48 <div class="divEspiarCarrossel4">
49 <#if productService.isAvailable( curCPCatalogEntry.getCPDefinitionId() ) && warehouseService.getStockQuantity(companyId,cpSku.getSku()) gt 0 >
50 <span class="comprarCarrossel4" data-sku="${cpSku.getSku()}">
51 <#assign PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] />
52 <#assign id = "add-to-cart" + PortalUtil.generateRandomKey(request, "add-to-cart") + "" + cpSku.getSku() />
53 <@liferay_commerce_ui["add-to-cart"]
54 CPInstanceId=cpSku.getCPInstanceId()
55 id=id
56 />
57 </span>
58 <#else>
59 <span class="comprarCarrossel4">
60 <button class="btnIndisponivelEspecialCarrossel4" href="javascript:void(0)" disabled>Livro Indisponível</button>
61 </span>
62 </#if>
63 </div>
64 </div>
65 </#if>
66 </#list>
67 </#if>
68</div>
69
70<style>
71 .comprarCarrossel4 div.form-group {
72 display: none;
73 }
74 .comprarCarrossel4 .add-to-cart-quantity-marker.active {
75 opacity: 0;
76 display: none;
77 }
78
79 .comprarCarrossel4 form.quantity-selector {
80 display: none;
81 }
82
83 .comprarCarrossel4 button.btn.btn-primary {
84 background-color: #5ACC75;
85 border-radius: 4px;
86 width: 206px;
87 padding: 1px;
88 justify-content: center;
89 padding-left: 13%;
90 margin-top: 0.75rem !important;
91 }
92
93
94 .customCart{
95 opacity: 1 !important;
96 filter: none !important;
97 height: 405 !important;
98 width: 246 !important;
99 }
100
101 @media (max-width: 768px) {
102 .slider4.slider4semextracard .next-arrow {
103 right: unset;
104 left: calc(100vw - 94px);
105 z-index: 10;
106 }
107
108 .slider4.slider4semextracard .prev-arrow {
109 left: 18px;
110 z-index: 10;
111 }
112
113 .slider4.slider4semextracard .slick-list {
114 z-index: 8;
115 }
116
117 .slider4.slider4semextracard .slide-arrow .fa {
118 font-size: 22px;
119 font-weight: 400;
120 }
121
122 .divEspiarCarrossel4 {
123 margin-top: 19px !important;
124 }
125
126 .slider4semextracard .valorCarrossel4,
127 .slider4semextracard .divEspiarCarrossel4 {
128 position: absolute !important;
129 }
130
131 .slider4semextracard .valorCarrossel4 {
132 bottom: 50px;
133 left: 20px;
134 }
135
136 .slider4semextracard .divEspiarCarrossel4 {
137 bottom: 10px;
138 right: 20px;
139 }
140
141 .slider4semextracard .valorCarrossel4 .price-value {
142 font: normal 600 18px/17px Montserrat !important;
143 margin-left: 0!important;
144 }
145 .slider4semextracard .comprarCarrossel4 .btn-add-to-cart {
146 margin: 0 !important;
147 padding-top: 2px !important;
148 }
149 .comprarCarrossel4 .btn-add-to-cart::before {
150 font-size: 16px;
151 }
152 }
153
154 @media (max-width: 600px) {
155 .comprarCarrossel4 button.btn.btn-primary.btn-lg.btn-add-to-cart.btn-add-to-cart-inline {
156 padding-left: 1px;
157 height: 30px;
158 }
159
160 .btn-add-to-cart-inline::before {
161 font-size: 14px;
162 width: 100%;
163 text-align: center;
164 display: block;
165 }
166 }
167
168 .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a {
169 display: flex;
170 align-items: flex-end;
171 }
172
173 .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .product-promo-price {
174 order: 1;
175 margin-top: 0!important;
176 margin-right: 2px;
177 }
178
179 .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .divValorCarrossel4 {
180 order: 2;
181 }
182
183 .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .divValorCarrossel4 + .product-promo-price {
184 margin-right: 5px;
185 }
186
187 .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .product-price {
188 order: 3;
189 margin-top: 0;
190 }
191
192 .slider4semextracard .valorCarrossel4,
193 .slider4semextracard .divEspiarCarrossel4 {
194 position: relative;
195 z-index: 9999;
196 }
197
198 @media (min-width: 769px) {
199 .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .product-price,
200 .slider4.slider4semextracard .informacoesProdutoCarrossel4 > a .product-promo-price {
201 line-height: 17px;
202 }
203
204 .slider4semextracard .valorCarrossel4 {
205 top: 100px;
206 left: 20px;
207 }
208
209 .slider4semextracard .divEspiarCarrossel4 {
210 top: 90px;
211 right: 20px;
212 }
213 }
214
215 .tituloEspecialCarrossel4 {
216 display: -webkit-box;
217 -webkit-line-clamp: 3;
218 -webkit-box-orient: vertical;
219 overflow: hidden;
220 }
221
222 .informacoesSuperioresCarrossel4 {
223 height: 72px;
224 }
225
226 @media (max-width: 414px){
227 .slider4 {
228 width: 100vw !important;
229 /* margin-right: 0; */
230 margin-right: 20px;
231 margin-left: 20px;
232 }
233 }
234
235 @media (min-width: 769px) and (max-width: 820px) {
236 .slider4semextracard .valorCarrossel4,
237 .slider4semextracard .divEspiarCarrossel4 {
238 position: absolute;
239 }
240
241 .slider4semextracard .valorCarrossel4 {
242 top: initial !important;
243 bottom: 50px;
244 }
245
246 .slider4semextracard .divEspiarCarrossel4 {
247 top: 315px;
248 }
249 }
250
251 @media (max-width: 1200px) {
252 .slick-dots {
253 width: 100vw !important;
254 }
255 }
256
257</style>
258
259<script
260 src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.js"
261 integrity="sha512-XtmMtDEcNz2j7ekrtHvOVR4iwwaD6o/FUJe6+Zq+HgcCsk3kj4uSQQR8weQ2QVj1o0Pk6PwYLohm206ZzNfubg=="
262 crossorigin="anonymous"
263 referrerpolicy="no-referrer"
264 ></script>
265
266<script type="text/javascript">
267
268 var tituloSlider = setInterval(function() {
269 if ($('.slider4').length >= 1) {
270 $(`
271 <div class="background-right titulo-slider4"><a href="\rita-lobo">Livros que você pode gostar </a><i class="fas fa-circle circulo-laranja" aria-hidden="true"></i></div>
272 `).insertBefore('.slider4:has(.imgContainerEspecialCarrossel4)');
273 clearInterval(tituloSlider);
274 }
275 }, 50);
276
277 setTimeout(function(){
278 $(document).ready(function() {
279 $('.slider4').slick({
280 arrows: true,
281 slidesToShow: 4,
282 slidesToScroll: 4,
283 dots:true,
284 infinite: false,
285 lazyLoad: 'ondemand',
286 prevArrow: '<a href="#" class="slide-arrow prev-arrow"><i class="fa fa-chevron-left gray"></i></a>',
287 nextArrow: '<a href="#" class="slide-arrow next-arrow"><i class="fa fa-chevron-right gray"></i></a>',
288 speed: 1000,
289 index: 1,
290 focusOnSelect:false,
291 accessibility:false,
292 adaptiveHeight:false,
293 autoplay:false,
294 responsive: [{
295 breakpoint: 1200,
296 settings: {
297 slidesToShow: 4,
298 slidesToScroll: 4,
299 variableWidth: true,
300 infinite: false,
301 centerMode: false,
302 dots:true,
303 arrows: true
304 }
305 }, {
306 breakpoint: 768,
307 settings: {
308 slidesToShow: 1,
309 slidesToScroll: 1,
310 variableWidth: true,
311 infinite: false,
312 centerPadding: 0,
313 centerMode: false,
314 dots:false,
315 arrows: false
316 }
317 }]
318 });
319
320 sendViewItemList([<#list entries as curCPCatalogEntry>${curCPCatalogEntry.getCPDefinitionId()},</#list>])
321
322 });
323
324 if (typeof promoPrice !== 'undefined') {
325 promoPrice = document.getElementsByClassName("price");
326 }
327 else {
328 promoPrice = document.getElementsByClassName("price");
329 }
330
331 for (let i = 0; i < document.getElementsByClassName("price").length; i++) {
332 let carrossel = document.getElementsByClassName("price");
333
334 if(carrossel[i].children.length < 5) {
335 if (carrossel[i].children[0]) {
336 carrossel[i].children[0].innerText = "Por:"
337 }
338 if (carrossel[i].children[1]) {
339 carrossel[i].children[1].style.color = "#D2691E"
340 carrossel[i].children[1].style.marginLeft = ".5rem"
341 }
342
343 carrossel[i].style.marginTop = "24px"
344 }
345 else if (carrossel[i].children.length > 7){
346 if (carrossel[i].children[0]) {
347 carrossel[i].children[0].innerHTML = "<del>De:</del>"
348 carrossel[i].children[0].style.color = "#78849e"
349 }
350
351 if (carrossel[i].children[1]) {
352 carrossel[i].children[1].classList.remove("price-value-inactive")
353 let priceBefore = carrossel[i].children[1].innerText
354 carrossel[i].children[1].innerHTML = '<del>'+priceBefore+'</del>'
355 carrossel[i].children[1].style.color = "#78849e"
356 }
357
358 carrossel[i].children[2].style.display = "none"
359 carrossel[i].children[3].style.display = "none"
360 carrossel[i].children[4].innerText = "Por:"
361 carrossel[i].children[5].style.display = "none"
362 carrossel[i].children[6].style.display = "none"
363 carrossel[i].children[7].style.color = "#D2691E"
364 carrossel[i].children[7].style.marginLeft = ".5rem"
365 carrossel[i].style.marginTop = "10px"
366 }
367 else {
368 if (carrossel[i].children[0]) {
369 carrossel[i].children[0].innerHTML = "<del>De:</del>"
370 carrossel[i].children[0].style.color = "#78849e"
371 }
372 if (carrossel[i].children[1]) {
373 carrossel[i].children[1].classList.remove("price-value-inactive")
374 let priceBefore = carrossel[i].children[1].innerText
375 carrossel[i].children[1].innerHTML = '<del>'+priceBefore+'</del>'
376 carrossel[i].children[1].style.color = "#78849e"
377 }
378
379 carrossel[i].children[2].style.display = "none"
380 carrossel[i].children[3].style.display = "none"
381 carrossel[i].children[4].innerText = "Por:"
382 carrossel[i].children[5].style.color = "#D2691E"
383 carrossel[i].children[5].style.marginLeft = ".5rem"
384 carrossel[i].style.marginTop = "10px"
385 }
386 }
387
388 const slider4 = document.getElementsByClassName("slider4");
389
390 for (let i = 0; i < slider4.length; i++) {
391 slider4[i].style.display ='block';
392 }
393
394 $('.slider4.slider4semextracard').on('afterChange', function(event, slick, currentSlide) {
395 if (slick.$slides.length - 1 == currentSlide) {
396 $('.slider4.slider4semextracard .next-arrow').css('display', 'none');
397 }
398 else {
399 $('.slider4.slider4semextracard .next-arrow').css('display', 'flex');
400 }
401
402 if (0 == currentSlide) {
403 $('.slider4.slider4semextracard .prev-arrow').css('display', 'none');
404 }
405 else {
406 $('.slider4.slider4semextracard .prev-arrow').css('display', 'flex');
407 }
408 });
409
410 if (typeof promoPrice !== 'undefined') {
411 let promoPrice = document.getElementsByClassName("product-promo-price");
412 }
413 else{
414 promoPrice = document.getElementsByClassName("product-promo-price");
415 }
416
417 if(promoPrice.length > 0){
418 const productPrice = document.getElementsByClassName(".price-value-final");
419 for (let i = 0; i < productPrice.length; i++) {
420 $(productPrice[i]).attr('data-content','Por: ');
421 }
422 }else{
423 const valorCarrossel4 = document.getElementsByClassName("valorCarrossel4");
424 for (let i = 0; i < valorCarrossel4.length; i++) {
425 valorCarrossel4[i].style.marginTop='25px';
426 // valorCarrossel4[i].style.marginBottom='17px';
427 }
428 }
429
430 }, 2000);
431
432</script>