An error occurred while processing the template.
The following has evaluated to null or missing:
==> componentImage?eval  [in template "20097#20123#1729582" at line 619, column 67]

----
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 jsonComponentImg = componentI...  [in template "20097#20123#1729582" at line 619, column 41]
----
1<style> 
2	.tbc-box { 
3    padding: 20px 10px; 
4    margin: 0 0 20px; 
5    border: 1px solid #eaeaea; 
6    background: #fbfbfb; 
7    border-radius: 12px; 
8
9	 
10	.blog-detail .blog-detail-html h3 a {color: var(--primary);} 
11	 
12	.common-antibiotic .hero-details .article-title { 
13		font-size: 26px; 
14		color: var(--dark); 
15		font-weight: 600; 
16		margin-bottom: 27px; 
17
18 
19	.common-antibiotic .hero-details .read-content { 
20		height: 74px; 
21
22 
23	.common-antibiotic .common-link { 
24		margin-top: 27px; 
25
26 
27	.blog-detail .container-small { 
28		max-width: 970px; 
29		margin: 0 auto; 
30
31 
32	.blog-detail h3 { 
33		font-size: 24px; 
34		line-height: 30px; 
35		margin-bottom: 24px; 
36		font-weight: 600; 
37
38 
39	.blog-detail h2 { 
40		font-size: 32px; 
41		font-weight: 400; 
42		font-family: "Quantum Rise", sans-serif; 
43		line-height: 1.2; 
44
45 
46	.blog-detail p { 
47		color: var(--grey); 
48		margin-bottom: 24px; 
49
50 
51	.blog-detail .blogdm-banner { 
52		border-radius: 16px; 
53		background: #F0F1F5; 
54		display: inline-block; 
55		vertical-align: top; 
56		width: 100%; 
57		text-align: center; 
58
59 
60	.blog-detail .tocwrap { 
61		background: #F0F1F5; 
62		vertical-align: top; 
63		width: 100%; 
64		border-radius: 8px; 
65
66 
67	.blog-detail .tocwrap .btn { 
68		width: 100%; 
69		display: inline-block; 
70		vertical-align: top; 
71		text-align: left; 
72		font-size: 24px; 
73		font-weight: 600; 
74		line-height: normal; 
75		padding: 25px 30px; 
76		position: relative; 
77
78 
79	.blog-detail .tocwrap .btn::before, 
80	.blog-detail .tocwrap .btn::after { 
81		content: ""; 
82		display: block; 
83		width: 21px; 
84		height: 3px; 
85		background: var(--primary); 
86		position: absolute; 
87		top: 50%; 
88		transform: translateY(-50%); 
89		right: 40px; 
90		transition: all .5s ease; 
91
92 
93	.blog-detail .tocwrap .btn::after { 
94		width: 3px; 
95		height: 21px; 
96		top: 50%; 
97		transform: translateY(-50%); 
98		right: 49px; 
99
100 
101	.blog-detail .tocwrap .btn[aria-expanded=true]::after { 
102		transform: translateY(-50%) rotate(90deg); 
103		visibility: hidden; 
104
105 
106	.blog-detail .tocwrap ul { 
107		margin: 0; 
108		padding: 0 30px 10px; 
109
110 
111	.blog-detail .tocwrap ul li { 
112		margin: 0 0 14px 0; 
113		padding: 0; 
114		list-style: none; 
115
116 
117	.blog-detail .tocwrap ul li a { 
118		color: #E31837; 
119		font-size: 16px; 
120		font-weight: 500; 
121		position: relative; 
122		padding: 0 0 0 20px; 
123
124 
125	.blog-detail .tocwrap ul li a::before { 
126		width: 7px; 
127		height: 7px; 
128		background: #252835; 
129		border-radius: 100%; 
130		position: absolute; 
131		left: 0; 
132		top: 6px; 
133		content: ""; 
134
135 
136	.blog-detail .tocwrap ol { 
137		padding: 0; 
138
139 
140	.blog-detail .tocwrap ol li { 
141		margin: 0; 
142		padding: 0 0 0 19px; 
143		display: block; 
144		counter-increment: ol-counter; 
145		font-weight: 600; 
146
147 
148	.blog-detail .tocwrap ol li:before { 
149		content: counter(ol-counter) ". "; 
150
151 
152	.blog-detail .tocwrap ol li a { 
153		padding: 0; 
154		list-style: none; 
155
156 
157	.blog-detail .tocwrap ol li a:before { 
158		display: none; 
159
160 
161  .blog-detail .videowrap { 
162    border-radius: 30px; 
163    overflow: hidden; 
164    max-width: 780px; 
165    margin: 0 auto; 
166    font-size: 0; 
167
168  .blog-detail .videowrap iframe { 
169    width: 100% !important; 
170
171 
172	.blog-detail .relatedlinks { 
173		display: inline-block; 
174		width: 100%; 
175
176 
177	.blog-detail .relatedlinks ul { 
178		margin: 0; 
179		padding: 0; 
180
181 
182	.blog-detail .relatedlinks ul li { 
183		width: 50%; 
184		margin: 0 0 18px 0; 
185		padding: 0; 
186		list-style: none; 
187		float: left; 
188
189 
190	.blog-detail .relatedlinks ul li a { 
191		color: #E31837; 
192		font-size: 16px; 
193		font-weight: 500; 
194		position: relative; 
195		padding: 0 0 0 20px; 
196
197 
198	.blog-detail .relatedlinks ul li a::before { 
199		width: 7px; 
200		height: 7px; 
201		background: #252835; 
202		border-radius: 100%; 
203		position: absolute; 
204		left: 0; 
205		top: 6px; 
206		content: ""; 
207
208 
209	.blog-detail .post-informational .greybox { 
210		background: #F0F1F5; 
211		display: inline-block; 
212		width: 100%; 
213		vertical-align: top; 
214		border-radius: 8px; 
215		padding: 30px 30px 15px 30px; 
216
217 
218	.blog-detail .post-informational ul { 
219		margin: 0; 
220		padding: 0; 
221
222 
223	.blog-detail .post-informational ul li { 
224		margin: 0 0 15px 0; 
225		padding: 0; 
226		list-style: none; 
227
228 
229	.blog-detail .post-informational ul li a { 
230		color: #E31837; 
231		font-size: 16px; 
232		font-weight: 500; 
233		position: relative; 
234		padding: 0 0 0 20px; 
235
236 
237	.blog-detail .post-informational ul li a::before { 
238		width: 7px; 
239		height: 7px; 
240		background: #252835; 
241		border-radius: 100%; 
242		position: absolute; 
243		left: 0; 
244		top: 6px; 
245		content: ""; 
246
247 
248	.blog-detail .blog-share { 
249		display: inline-block; 
250		width: 100%; 
251		vertical-align: top; 
252		font-size: 20px; 
253
254 
255	.blog-detail .blog-share .left { 
256		display: inline-flex; 
257		align-items: center; 
258		float: left; 
259		margin: 5px 0; 
260
261 
262	.blog-detail .blog-share .left img { 
263		width: 17px; 
264		margin-right: 5px; 
265
266 
267	.blog-detail .blog-share .right { 
268		display: inline-flex; 
269		align-items: center; 
270		float: right; 
271		margin: 5px 0; 
272
273 
274	.blog-detail .blog-share .right ul { 
275		margin: 0; 
276		padding: 0; 
277
278 
279	.blog-detail .blog-share .right ul li { 
280		margin: 0 0 0 15px; 
281		padding: 0; 
282		list-style: none; 
283		display: inline-block; 
284
285 
286	.blog-detail .authbio { 
287		display: inline-block; 
288		vertical-align: top; 
289		width: 100%; 
290
291 
292	.blog-detail .authbio p { 
293		margin: 15px 0 0 0; 
294
295 
296	.latest-post-wrap { 
297		display: inline-block; 
298		width: 100%; 
299		vertical-align: top; 
300
301 
302	.latest-post-wrap h2 { 
303		font-weight: 600; 
304		margin-bottom: 30px; 
305
306 
307	.latest-post-wrap .latest-post { 
308		display: flex; 
309		flex-wrap: wrap; 
310		gap: 2px; 
311
312 
313	.latest-post-wrap .latest-post .post { 
314		margin-bottom: 15px; 
315		max-width: 232px; 
316
317 
318	.latest-post-wrap .latest-post .post .postcontent { 
319		padding: 16px; 
320		display: inline-block; 
321		width: 100%; 
322		vertical-align: top; 
323
324 
325	.latest-post-wrap .latest-post .posttitle { 
326		font-size: 16px; 
327		font-weight: 600; 
328		line-height: 24px; 
329		margin-bottom: 2px; 
330
331 
332	.latest-post-wrap .latest-post .posttitle a { 
333		color: var(--dark); 
334		display: inline-block; 
335		vertical-align: top; 
336
337 
338	.latest-post-wrap .latest-post p { 
339		font-size: 14px; 
340		line-height: 21px; 
341		margin-bottom: 8px; 
342
343 
344	@media screen and (max-width:767px) { 
345		.blog-detail .videowrap {border-radius: 16px;} 
346		 
347		.blog-detail .relatedlinks ul li { 
348			width: 100%; 
349
350 
351		.blog-detail .blog-share .right { 
352			float: left; 
353
354 
355		.latest-post-wrap .latest-post .post { 
356			max-width: 49.8%; 
357
358
359 
360	@media screen and (max-width:767px) { 
361		.latest-post-wrap .latest-post .post { 
362			max-width: 100%; 
363
364 
365		.blog-detail .tocwrap .btn { 
366			font-size: 21px; 
367
368		 
369		.blog-detail .videowrap { 
370		    position: relative; 
371    padding-bottom: 56.25%; 
372
373		.blog-detail .videowrap iframe { 
374		   position: absolute; 
375    height: 100% !important; 
376    left: 0; 
377
378		 
379
380 
381	.heroBannerMobileShow { 
382		display: none; 
383
384 
385	@media screen and (max-width:767px) { 
386		.heroBannerMobileShow { 
387			display: block; 
388
389 
390		.heroBannerMobileHide { 
391			display: none; 
392
393
394	 
395	 
396	 
397	/* Read More */ 
398 
399.hidden-text { 
400  overflow: hidden; 
401
402 
403</style> 
404 
405<#assign journalArticleLocalService=serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") 
406	journalArticleResourceLocalService=serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService") 
407	assetEntryLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") 
408	dlFileEntryLocalService=serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") /> 
409 
410<#assign currentUrl=themeDisplay.getURLCurrent() queryString="" /> 
411 
412<#if request.getParameter('blogName')??> 
413	<#assign queryString=request.getParameter('blogName') /> 
414</#if> 
415 
416<#if queryString?length gt 1> 
417	<#assign groupId=themeDisplay.getScopeGroupId() /> 
418 
419		<#assign article=journalArticleLocalService.fetchArticleByUrlTitle(groupId, queryString) 
420			docXml=saxReaderUtil.read(article.getContent()) 
421			heading=docXml.valueOf("//dynamic-element[@field-reference='Heading' ]/dynamic-content/text()") 
422			description=docXml.valueOf("//dynamic-element[@field-reference='BlogDescription' ]/dynamic-content/text()") 
423			image=docXml.valueOf("//dynamic-element[@field-reference='RightImage' ]/dynamic-content/text()") /> 
424 
425 
426		<div class="hero-section common-antibiotic mb-80"> 
427			<div class="container"> 
428				<div class="row mx-n1"> 
429					<#if image!="" && image!="{}" && hasNonEmptyProperty(image?eval, "fileEntryId" )> 
430					<div class="col-12 col-md-7 px-1"> 
431						<#else> 
432							<#if request.getParameter('cat')?? && request.getParameter('cat')="healthpedia" > 
433								  <div class="col-12 px-1 text-center">	 
434								<#else> 
435									<div class="col-12 px-1">	 
436							</#if> 
437					</#if> 
438						<div class="hero-details blog-detail-html"> 
439							<h1 class="article-title"> 
440								${heading} 
441							</h1> 
442							<#if image!="" && image!="{}" && hasNonEmptyProperty(image?eval, "fileEntryId" )> 
443 
444								<#assign key=image?eval 
445									imageEntry=dlFileEntryLocalService.getFileEntryByUuidAndGroupId(key.uuid,key.groupId?number) /> 
446 
447								<div class="hero-img heroBannerMobileShow mb-4"> 
448									<img src="/documents/${key.groupId}/${imageEntry.getFolderId()}/${key.title}" 
449										alt="${key.alt}" title="${key.alt}"> 
450								</div> 
451 
452 
453							</#if> 
454							<div class="read-content-block spoiler"> 
455								<div class="hidden-text"> 
456									${description} 
457								</div> 
458							</div> 
459						</div> 
460 
461					</div> 
462					<#if image!="" && image!="{}" && hasNonEmptyProperty(image?eval, "fileEntryId" )> 
463					<div class="col-12 col-md-5 px-1 heroBannerMobileHide"> 
464						 
465							<#assign key=image?eval 
466								imageEntry=dlFileEntryLocalService.getFileEntryByUuidAndGroupId(key.uuid,key.groupId?number) /> 
467 
468							<div class="hero-img text-right"> 
469								<img src="/documents/${key.groupId}/${imageEntry.getFolderId()}/${key.title}" 
470									alt="${key.alt}" title="${key.alt}"> 
471							</div> 
472						 
473					</div> 
474					</#if> 
475				</div> 
476			</div> 
477		</div> 
478 
479 
480		<#assign custom_page_url=themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
481 
482		<#if custom_page_url?contains("blogName=") && custom_page_url?index_of(" blogName=") != -1> 
483			<#assign pageURL = custom_page_url?substring(0,custom_page_url?index_of(" ?blogName=")) /> 
484			<#assign blogName = custom_page_url?substring(custom_page_url?index_of(" blogName=")+9,custom_page_url?index_of(" 
485			&cat")) /> 
486 
487		<#assign custom_page_url=pageURL?replace('-details','') + "/" + blogName /> 
488	</#if> 
489 
490	<script type="application/ld+json"> 
491
492		  "@context": "https://schema.org", 
493		  "@type": "BlogPosting", 
494		  "mainEntityOfPage": { 
495			"@type": "WebPage", 
496			"@id": "${custom_page_url}" 
497		    
498		  }, 
499		  "headline": "${heading}", 
500		  "description": "${description?replace("\"", "'", "r")}", 
501		  	 
502		  <#if image!="" && image!="{}" && hasNonEmptyProperty(image?eval, "fileEntryId")> 
503				  <#assign key=image?eval 
504					  imageEntry=dlFileEntryLocalService.getFileEntryByUuidAndGroupId(key.uuid,key.groupId?number) /> 
505    
506					  "image": "/documents/${key.groupId}/${imageEntry.getFolderId()}/${key.title}", 
507				 
508		  </#if>  
509		  "author": { 
510			"@type": "Person", 
511			"name": "Paybima Team" 
512		  },   
513		  "publisher": { 
514			"@type": "Organization", 
515			"name": "Paybima", 
516			"logo": { 
517			  "@type": "ImageObject", 
518			  "url": "https://uat.paybima.com/documents/778769/1064309/Author-Bio.jpg/72597099-8370-6893-6689-9e59660231ea?t=1715945540428" 
519
520		  }, 
521		  "datePublished": "2022-09-27", 
522		  "dateModified": "2023-03-20" 
523
524		</script> 
525 
526	<div class="blog-detail"> 
527		<!-- Table Of Contents --> 
528		<section class="mb-5"> 
529			<#assign fieldGroup=docXml.selectSingleNode("//dynamic-element[@field-reference='TableOfContent' ]") 
530				title=fieldGroup.valueOf("//dynamic-element[@field-reference='TableOfContentTitle' 
531				]/dynamic-content/text()") /> 
532			<div class="container"> 
533				<div class="container-small tocwrap"> 
534					<#if title !=""> 
535						<div class="row"> 
536							<div class="col-md-12"> 
537								<div class="btn" data-toggle="collapse" href="#toccollapse" aria-expanded="false" 
538									aria-controls="toccollapse">${title}</div> 
539							</div> 
540						</div> 
541					</#if> 
542					<div class="row collapse" id="toccollapse"> 
543						<div class="col-md-12 toc-paybima-blog"> 
544							<ul> 
545								<#list fieldGroup.selectNodes(".//dynamic-element[@field-reference='ContentGroup' ]") as 
546									repeatableGroup> 
547									<#assign 
548										contentName=repeatableGroup.valueOf("./dynamic-element[@field-reference='ContentName' 
549										]/dynamic-content/text()") 
550										contentLink=repeatableGroup.valueOf("./dynamic-element[@field-reference='ContentLink' 
551										]/dynamic-content/text()") /> 
552									<li> 
553										<#assign contentHref=contentLink /> 
554										<#if contentHref==""> 
555											<#assign contentHref='#' +contentName?lower_case?replace(" ", "") /> 
556							  <#else> 
557								<#assign contentHref = '#'+contentHref /> 
558							</#if> 
559							<a href="javascript:void(0);" data-customhref="${contentHref}">${contentName}</a> 
560												<ol> 
561													<#list 
562														repeatableGroup.selectNodes(".//dynamic-element[@field-reference='SubContentGroup' 
563														]") as subRepeatableGroup> 
564														<#assign 
565															subContentName=subRepeatableGroup.valueOf("./dynamic-element[@field-reference='SubContentName' 
566															]/dynamic-content/text()") 
567															subContentLink=subRepeatableGroup.valueOf("./dynamic-element[@field-reference='SubContentLink' 
568															]/dynamic-content/text()")> 
569															<#if subContentName !=""> 
570																<#assign subContentHref=subContentLink /> 
571																<#if subContentHref==""> 
572																	<#assign subContentHref='#' 
573																		+subContentName?lower_case?replace(" ", "") /> 
574									<#else> 
575										 <#assign subContentHref = '#'+subContentHref /> 
576									</#if> 
577									<li><a href="javascript:void(0);" data-customhref="${subContentHref}">${subContentName}</a> 
578									</li> 
579</#if> 
580</#list> 
581</ol> 
582</li> 
583</#list> 
584</ul> 
585</div> 
586</div> 
587</div> 
588</div> 
589</section> 
590 
591 
592<#list docXml.selectNodes("//dynamic-element[@field-reference='MainComponent' ]") as repeatableGroup> 
593	<#assign componentTitle=repeatableGroup.valueOf("./dynamic-element[@field-reference='ComponentTitle' 
594		]/dynamic-content/text()") 
595        componentLink=repeatableGroup.valueOf("./dynamic-element[@field-reference='ComponentLink' 
596		]/dynamic-content/text()") 
597		componentDesc=repeatableGroup.valueOf("./dynamic-element[@field-reference='ComponentDescription' 
598		]/dynamic-content/text()") 
599		componentImage=repeatableGroup.valueOf("./dynamic-element[@field-reference='ComponentImage' 
600		]/dynamic-content/text()")> 
601 
602 
603 
604		<#list repeatableGroup.selectNodes(".//dynamic-element[@field-reference='UpperContent' ]") as upperContents> 
605			<#assign upperContentValue=upperContents.valueOf("./dynamic-content/text()")> 
606 
607				<#if upperContentValue!="" && upperContentValue!="{}"> 
608					<#assign key=upperContentValue?eval 
609						upperContent=journalArticleLocalService.getLatestArticle(key.classPK?number) /> 
610 
611					<@liferay_journal["journal-article"] articleId=upperContent.getArticleId() 
612						ddmTemplateKey=upperContent.getDDMTemplateKey() groupId=upperContent.getGroupId() /> 
613				</#if> 
614		</#list> 
615 
616		<section class="mb-2"> 
617			<div class="container blog-detail-html"> 
618				<#if componentImage?is_string && componentImage !="" && componentImage !="{}"> 
619					<#assign jsonComponentImg=componentImage?eval> 
620						<#if jsonComponentImg?is_hash && jsonComponentImg["groupId"]?exists && 
621							jsonComponentImg["fileEntryId"]?exists> 
622							<#assign 
623								imageEntry=dlFileEntryLocalService.getFileEntryByUuidAndGroupId(jsonComponentImg.uuid,jsonComponentImg.groupId?number) /> 
624							<section class="mb-5"> 
625								<div class="container"> 
626									<div class="blogdm-banner"> 
627										<img src="/documents/${jsonComponentImg.groupId}/${imageEntry.getFolderId()}/${jsonComponentImg.title}" 
628											alt=""> 
629									</div> 
630								</div> 
631							</section> 
632						</#if> 
633				</#if> 
634 
635				<div class="container-small"> 
636					<div class="row"> 
637						<div class="col-md-12"> 
638							<h2 id='${componentLink}'>${componentTitle}</h2> 
639 
640							<p>${componentDesc}</p> 
641 
642							<#assign 
643								componentSubGroup=repeatableGroup.selectSingleNode("./dynamic-element[@field-reference='ComponentSubGroup' 
644								]") 
645								subGroupHeading=componentSubGroup.valueOf("./dynamic-element[@field-reference='SubGroupHeading' 
646								]/dynamic-content/text()") > 
647								<p><strong>${subGroupHeading}</strong></p> 
648 
649								<ol> 
650									<#list 
651										repeatableGroup.selectNodes(".//dynamic-element[@field-reference='SubGroupBlock' 
652										]") as SubGroupBlock> 
653										<#assign 
654											subTitle=SubGroupBlock.valueOf("./dynamic-element[@field-reference='SubTitle' 
655											]/dynamic-content/text()") 
656                                            subTitleLink=SubGroupBlock.valueOf("./dynamic-element[@field-reference='SubTitleLink' 
657											]/dynamic-content/text()") 
658											subDescription=SubGroupBlock.valueOf("./dynamic-element[@field-reference='SubDescription' 
659											]/dynamic-content/text()")> 
660 
661											<#if subTitle !="" && subDescription !=""> 
662												<li id='${subTitleLink}'> 
663													<strong>${subTitle}</strong></li> 
664												${subDescription} 
665											</#if> 
666									</#list> 
667								</ol> 
668						</div> 
669					</div> 
670				</div> 
671			</div> 
672		</section> 
673 
674 
675		<#list repeatableGroup.selectNodes(".//dynamic-element[@field-reference='BottomContent' ]") as bottomContents> 
676			<#assign bottomContentValue=bottomContents.valueOf("./dynamic-content/text()")> 
677 
678				<#if bottomContentValue!="" && bottomContentValue!="{}"> 
679					<#assign key=bottomContentValue?eval 
680						bottomContent=journalArticleLocalService.getLatestArticle(key.classPK?number) /> 
681 
682					<@liferay_journal["journal-article"] articleId=bottomContent.getArticleId() 
683						ddmTemplateKey=bottomContent.getDDMTemplateKey() groupId=bottomContent.getGroupId() /> 
684				</#if> 
685		</#list> 
686</#list> 
687</div> 
688 
689<#assign conclusion=docXml.selectSingleNode("//dynamic-element[@field-reference='Conclusion' ]") 
690	conclusionTitle=conclusion.valueOf("//dynamic-element[@field-reference='ConclusionTitle' ]/dynamic-content/text()") 
691	conclusionBody=conclusion.valueOf("//dynamic-element[@field-reference='ConclusionBody' ]/dynamic-content/text()") /> 
692<section class="container"> 
693	<div class="image-title-banner mb-80"> 
694		<div class="common-title-desc"> 
695			<h3 class="title-three mb-3">${conclusionTitle}</h3> 
696		</div> 
697		<div class="claim-btn-link-gray"> 
698			${conclusionBody} 
699		</div> 
700	</div> 
701</section> 
702 
703 
704 
705<#assign faqSection=docXml.selectSingleNode("//dynamic-element[@field-reference='FAQSection' ]") 
706	sectionTitle=faqSection.valueOf("//dynamic-element[@field-reference='SectionTitle' ]/dynamic-content/text()") /> 
707 
708 
709<script type="application/ld+json"> 
710
711		 "@context": "https://schema.org", 
712		 "@type": "FAQPage", 
713		 "mainEntity": [ 
714		  <#list faqSection.selectNodes(".//dynamic-element[@field-reference='FAQGroup']") as FAQGroups> 
715		  <#assign question=FAQGroups.valueOf("./dynamic-element[@field-reference='Question']/dynamic-content/text()") 
716					answer=FAQGroups.valueOf("./dynamic-element[@field-reference='Answer']/dynamic-content/text()") /> 
717
718			 "@type": "Question", 
719			 "name": "${question}", 
720			 "acceptedAnswer": { 
721				 "@type": "Answer", 
722				 "text": "${answer?replace("\"", "'", "r")}" 
723
724		 }<#if FAQGroups?has_next>,</#if> 
725		 </#list> 
726
727
728  </script> 
729 
730<div class="faq-section mb-80"> 
731	<div class="container"> 
732		<h2 class="common-title"> 
733			${sectionTitle} 
734		</h2> 
735		<div class="faq-details"> 
736			<div class="accordion" id="accordionExample"> 
737				<#list faqSection.selectNodes(".//dynamic-element[@field-reference='FAQGroup' ]") as FAQGroups> 
738					<#assign question=FAQGroups.valueOf("./dynamic-element[@field-reference='Question' 
739						]/dynamic-content/text()") answer=FAQGroups.valueOf("./dynamic-element[@field-reference='Answer' 
740						]/dynamic-content/text()") /> 
741					<div class="card mb-1"> 
742						<#if question != "" && answer != ""> 
743							<div class="card-header" id="headingOne"> 
744								<div class="mb-0"> 
745									<button class="btn btn-link btn-block text-left collapsed" type="button" 
746										data-toggle="collapse" data-target="#collapse${FAQGroups?index}" 
747										aria-expanded="false" aria-controls="collapse${FAQGroups?index}" 
748										onclick="faqInteractionBlog('${question}')"> 
749										${question} 
750									</button> 
751								</div> 
752							</div> 
753						 
754							<div id="collapse${FAQGroups?index}" class="collapse" aria-labelledby="headingOne" 
755								data-parent="#accordionExample"> 
756								<div class="card-body"> 
757									${answer} 
758								</div> 
759							</div> 
760						</#if> 
761					</div> 
762				</#list> 
763			</div> 
764		</div> 
765	</div> 
766</div> 
767 
768<#list docXml.selectNodes(".//dynamic-element[@field-reference='CommonContentSection' ]") as commonContentSection> 
769	<#assign commonContentValue=commonContentSection.valueOf("./dynamic-content/text()")> 
770 
771		<#if commonContentValue!="" && commonContentValue!="{}"> 
772			<#assign key=commonContentValue?eval 
773				commonContent=journalArticleLocalService.getLatestArticle(key.classPK?number) /> 
774 
775			<@liferay_journal["journal-article"] articleId=commonContent.getArticleId() 
776				ddmTemplateKey=commonContent.getDDMTemplateKey() groupId=commonContent.getGroupId() /> 
777		</#if> 
778</#list> 
779	</#if> 
780 
781	<script> 
782		$(document).ready(function () { 
783			if($('#relatedArticlesContent .blog-lists').find('.col-lg-4').length <= 0) { 
784				if($('.related-article-content').find('#relatedArticlesContent').length	> 0) { 
785					$('.related-article-content').hide(); 
786
787
788			 
789			var path = window.location.pathname; 
790			var paths = path.split('/'); 
791			if (paths[3] === "") { 
792				window.location.href = window.location.origin + "/blog"; 
793
794		}); 
795 
796		$('.card:first').each(function () { 
797			var card = $(this); 
798			var button = $(card).find('.card-header button'); 
799			var nextDiv = $(card).find('.card-header').next(); 
800 
801			button.removeClass('collapsed'); 
802 
803			button.attr('aria-expanded', 'true'); 
804 
805			nextDiv.addClass('show'); 
806		}); 
807 
808 
809 
810	</script> 
811	<#function hasNonEmptyProperty jsonObj key> 
812		<#if jsonObj?has_content && jsonObj[key]?exists && jsonObj[key]?has_content> 
813			<#return true> 
814				<#else> 
815					<#return false> 
816		</#if> 
817	</#function> 
818 
819 
820 
821 <script> 
822	  
823	  
824	 function faqInteractionBlog(ctaName) { 
825       window.dataLayer = window.dataLayer || []; 
826       window.dataLayer.push({ 
827           'event': 'faq_interaction', 
828           'cta_name': ctaName, 
829           'page_referrer': document.referrer 
830       }); 
831
832	  
833      $(document).ready(function() { 
834				 $('.blog-detail-html img').each(function() { 
835        var altText = $(this).attr('alt'); 
836        $(this).attr('title', altText); 
837					  
838					 $('.toc-paybima-blog a').click(function(e) { 
839						  
840 
841							$('html, body').animate({ 
842									scrollTop: $($(this).attr('data-customhref')).offset().top - 2 
843							}, 1000); 
844					}); 
845    }); 
846				 
847            readMore($('.spoiler'), 4); 
848				 
849				 $("p").each(function() { 
850        if ($(this).html().trim() === "&nbsp;") { 
851            $(this).hide();  
852
853    }); 
854        }); 
855 
856        function readMore(jObj, lineNum) { 
857            if (isNaN(lineNum)) { 
858                lineNum = 4; 
859
860            var go = new ReadMore(jObj, lineNum); 
861
862 
863        function ReadMore(_jObj, lineNum) { 
864            var READ_MORE_LABEL = 'Read More'; 
865            var HIDE_LABEL = 'Read Less'; 
866 
867            var jObj = _jObj; 
868            var lineHeight = parseInt(jObj.children('.hidden-text').css('line-height'), 10); 
869            var textMinHeight = (lineHeight * lineNum) + 'px'; 
870            var textMaxHeight = jObj.children('.hidden-text')[0].scrollHeight + 'px'; 
871 
872            if (parseInt(textMaxHeight) <= parseInt(textMinHeight)) { 
873                return; // Do not add "Read More" if the content height is less than or equal to the minimum height 
874
875 
876            jObj.children('.hidden-text').css('height', textMinHeight); 
877            jObj.children('.hidden-text').css('transition', 'height .5s'); 
878 
879            jObj.append('<a href="javascript:void(0)" class="read-more common-link  mt-2">' + '<span>' + READ_MORE_LABEL + '</span>' + "<img src='/o/paybima-theme/images/right-angle-arrow.svg'>" +  '</a>'); 
880 
881            jObj.children('.read-more').click(function() { 
882                if (jObj.children('.hidden-text').css('height') === textMinHeight) { 
883                    jObj.children('.hidden-text').css('height', textMaxHeight); 
884                    jObj.children('.read-more span').html(HIDE_LABEL).addClass('active'); 
885                } else { 
886                    jObj.children('.hidden-text').css('height', textMinHeight); 
887                    jObj.children('.read-more span').html(READ_MORE_LABEL).removeClass('active'); 
888
889            }); 
890
891      </script> 

Author Bio

Paybima Team

Paybima is an Indian insurance aggregator on a mission to make insurance simple for people. Paybima is the Digital arm of the already established and trusted Mahindra Insurance Brokers Ltd., a reputed name in the insurance broking industry with 17 years of experience. Paybima promises you the easy-to-access online platform to buy insurance policies, and also extend their unrelented assistance with all your policy related queries and services.

Choose from India’s top insurers

Latest Post

You must safeguard your family’s future, especially if you are the head of the family, and run the family primarily with your income. With life insurance policies, you can keep your family safe and protected even when you’re not around. life insurance can be referred to as a contract between an insurance policyholder and the insurance company. The policyholder agrees to pay the term insurance premium, in exchange for life coverage for a specified term. The funds can be claimed after a set period or after the insured person’s death. The term insurance premium can be paid monthly, quarterly, or yearly. 

See nowSee now

Difference Between ICICI Prudential Life Insurance and HDFC Life Insurance 
The two most sought-after term life insurance companies in India are HDFC Life Insurance and ICICI Prudential Life Insurance. What makes these two companies different from each other are their features, policies, services, and prices. So, let us take a look at how they differ from each other.

See nowSee now

For new parents looking for lucrative child plans, the HDFC Child plan calculator is the most effective tool to consider. If you want to know about the benefits and functioning of the calculator, read on. In this blog, we will discuss the HDFC child plan calculator to let you know how you can use the child life plan calculator and  whether and how the calculator fulfills your requirements.

See nowSee now

Term insurance is for everyone, not just for the earning male members of the family, but for women and the elderly too. Here we talk about what to consider when choosing a term insurance plan for women.
 

See nowSee now

Getting term insurance is extremely important in today’s day and age. However, you also must make a sincere attempt to find an affordable term plan and pay an economical term insurance premium. How do you ensure you have a good plan at the best rate? There are some pointers that you can follow to achieve this. Read on to know more.
 

See nowSee now