High Contrast Version
High Contrast Version
Text Size
Text Size
PwC_SIT

Musm_Photo_Gallery_New_POC_details_page

Template ப்ராஸஸிங் செய்யும்போது பிழை ஏற்பட்டது.
The following has evaluated to null or missing:
==> whatsAppLang  [in template "20099#20125#100364097" at line 84, column 105]

----
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: ${whatsAppLang}  [in template "20099#20125#100364097" at line 84, column 103]
----
1<#assign lang=themeDisplay.getLanguageId() /> 
2<#if lang=="en_US"> 
3    <#assign facebookLang="Facebook" /> 
4    <#assign linkedInLang="LinkedIn" /> 
5    <#assign twitterLang="Twitter" /> 
6    <#assign whatsAppLang="WhatsApp" /> 
7    <#elseif lang=="hi_IN"> 
8        <#assign facebookLang="फेसबुक" /> 
9        <#assign linkedInLang="लिंक्डइन" /> 
10        <#assign twitterLang="ट्विटर" /> 
11        <#assign whatsAppLang="व्हॉट्सऐप" /> 
12 
13</#if> 
14 
15<#assign portalURL=themeDisplay.getPortalURL() /> 
16<#assign contentTitle=.vars['reserved-article-title'].data /> 
17<#assign index=0 /> 
18 
19 
20 
21 
22<!-- photo gallery image row--> 
23<div class="photoGallery full-width sec_nav" tabindex="0" id="photo-gallery"> 
24    <div class="container"> 
25        <div class="row"> 
26            <#if (SectionHeading.getData())?? && SectionHeading.getData()!=""> 
27                <div class="col-12"> 
28                    <h2 class="section-heading font-resized"> 
29                        ${SectionHeading.getData()} 
30                    </h2> 
31                </div><!--col -12--> 
32            </#if> 
33        </div> <!--row end--> 
34 
35        <!--start of outer row .musm_photo_gallery_img_row--> 
36        <#if PhotoGalleryImgGrp.getSiblings()?has_content> 
37                <#list PhotoGalleryImgGrp.getSiblings() as cur_photoGalleryImgGroup> 
38        <div class="musm_photo_gallery_img_row"> 
39             <!--Location Heading row--> 
40            <div class="row pg-location-heading_row"> 
41                   <div class="col-12 pg-location-heading"> 
42                            <h2 class="section-sub-heading"> 
43                                    <#if (cur_photoGalleryImgGroup.pgLocationHeading.getData())?? && cur_photoGalleryImgGroup.pgLocationHeading.getData()!=""> 
44                                        ${cur_photoGalleryImgGroup.pgLocationHeading.getData()} 
45                                    </#if> 
46                            </h2> 
47                    </div> 
48            </div> 
49            <!--Location Heading END--> 
50 
51            <!--total no of image--> 
52            <div class="row pg_total_numerofImage"> 
53                <div class="col-12"> 
54                    <#if cur_photoGalleryImgGroup.uploadLcationPhotos.getSiblings()?has_content> 
55                    <#list cur_photoGalleryImgGroup.uploadLcationPhotos.getSiblings() as total_photogalleryImage> 
56                    <#assign total_image = total_photogalleryImage?counter /> 
57                    </#list> 
58                     <p class="total_no_image"> ${total_image} images</p> 
59                    </#if> 
60 
61                </div> 
62            </div> 
63             <!--end total no of image--> 
64             
65            <!--loop of each location image--> 
66             
67            <div class="row each_location_image_row"> 
68                <#list cur_photoGalleryImgGroup.uploadLcationPhotos.getSiblings() as cur_photoGalleryImg> 
69                <#if (cur_photoGalleryImg.photoGalleryImg.getData())?? && cur_photoGalleryImg.photoGalleryImg.getData() !=""> 
70 
71                 
72 
73                <div class="col-6 col-xs-6 col-sm-6 col-lg-3 col-xl-3  img-col"> 
74 
75                    <div class="three-box-each  photo-gallery-box-top"> 
76                        <div class="content-box-top"> 
77                             
78                            <img alt="${cur_photoGalleryImg.photoGalleryImg.getAttribute("alt")}" 
79                                data-fileentryid="$cur_photoGalleryImg.photoGalleryImg.getAttribute("fileEntryId")}" 
80                                src="${cur_photoGalleryImg.photoGalleryImg.getData()}" data-imagebox="gallery" 
81                                data-imagebox-src="${cur_photoGalleryImg.photoGalleryImg.getData()}" 
82                                data-imagebox-caption="<div class='photo-gallery-img-caption'> 
83                                    ${cur_photoGalleryImg.imgCaption.getData()}</div><div class='share-page-link'><span class='clipboard'>Share</span> 
84            <a target='_blank' data-toggle='rbi-tooltip' data-placement='bottom' data-original-title='${whatsAppLang}'  href='https://api.whatsapp.com/send?text=${portalURL}${cur_photoGalleryImg.photoGalleryImg.getData()}' class='whatsapp'><img src='${themeDisplay.getPathThemeRoot()}/images/rbi-main/share-whatsApp.svg' /></a> 
85                            <a target='_blank' data-toggle='rbi-tooltip' data-placement='bottom' data-original-title='${twitterLang}' href='https://twitter.com/intent/tweet?text=${portalURL}${contentTitle}&tw_p=tweetbutton&url=$${cur_photoGalleryImg.photoGalleryImg.getData()}' class='twitter'><img src='${themeDisplay.getPathThemeRoot()}/images/rbi-main/share-twitter.svg' /></a> 
86                            <a target='_blank' data-toggle='rbi-tooltip' data-placement='bottom' data-original-title='${linkedInLang}' href='https://www.linkedin.com/shareArticle?mini=true&url=${portalURL}${cur_photoGalleryImg.photoGalleryImg.getData()}&title=${contentTitle}' class='linkedin'><img src='${themeDisplay.getPathThemeRoot()}/images/rbi-main/share-linkedIn.svg' /></a> 
87                            <a target='_blank' data-toggle='rbi-tooltip' data-placement='bottom' data-original-title='${facebookLang}' href='http://www.facebook.com/sharer.php?u=${portalURL}${cur_photoGalleryImg.photoGalleryImg.getData()}' class='facebook'><img src='${themeDisplay.getPathThemeRoot()}/images/rbi-main/share-facebook.svg' /></a>" /> 
88 
89 
90                        </div> 
91                        <div class="content-box-bottom d-none"> 
92                            <p 
93                                class="section-description ellipsis-line-text two-liner souvenir-tooltip font-resized"> 
94                                ${cur_photoGalleryImg.imgCaption.getData()} 
95                            </p> 
96 
97                        </div> 
98                    </div> 
99                </div> 
100 
101 
102                 
103 
104 
105               </#if>  
106 
107               </#list> 
108            </div> 
109             
110 
111 
112            <!--end of loop of each location image .each_location_image_row--> 
113 
114 
115        </div>   
116       <!--end of outer row .musm_photo_gallery_img_row-->    
117       <#assign index= index+1  /> 
118                </#list> 
119                 
120            </#if> 
121 
122        </div> 
123    </div> 
124    <!-- photo gallery image row--> 
125 
126</div> 
127</div> 
128 
129 
130 
131 
132 
133 
134 
135<link rel="stylesheet" href="${themeDisplay.getPathThemeRoot()}/css/pages/imagebox.min.css"> 
136<script type="text/javascript" src="${themeDisplay.getPathThemeRoot()}/js/imagebox.min.js"></script> 
137<script> 
138    $('.content-box-top img').on('click', function () { 
139        setTimeout(function () { 
140            $('.share-page-link a').tooltip(); 
141            $('.ib-control-right').on('click', function () { 
142                setTimeout(function () { 
143                    $('.share-page-link a').tooltip(); 
144                }, 500); 
145            }); 
146            $('.ib-control-left').on('click', function () { 
147                setTimeout(function () { 
148                    $('.share-page-link a').tooltip(); 
149                }, 500); 
150            }); 
151        }, 500); 
152    }); 
153    imagebox.options({ 
154        info: false, 
155        swipeToChange: true, 
156        swipeToClose: true, 
157        closeEverywhere: true, 
158        keyControls: true, 
159        htmlCaption: true, 
160    }); 
161 
162 
163 
164    function stopMusmPhotoGallery() { 
165        var owl = $('.musm_photo_gallery'); 
166        owl.trigger('destroy.owl.carousel'); 
167        $('.musm_photo_gallery').addClass('on'); 
168
169 
170    function startMusmPhotoGallery() { 
171         
172        $('.musm_photo_gallery').owlCarousel({ 
173            loop: false, 
174            responsiveClass: true, 
175            dotsEach: true, 
176            responsive: { 
177                0: { 
178                    items: 1, 
179                    nav: false, 
180                    dots: true, 
181                    margin: 16, 
182                    stagePadding: 50 
183                }, 
184                600: { 
185                    items: 2, 
186                    nav: false, 
187                    dots: true, 
188                    margin: 30 
189                }, 
190                1000: { 
191                   // items: 4, 
192                    nav: true, 
193                    dots: false, 
194                    loop: false, 
195                    margin: 30, 
196                    mouseDrag: false, 
197                    touchDrag: false 
198
199            }, 
200            onInitialized: addOWlButtonText, 
201            onResized: addOWlButtonText 
202        }); 
203 
204 
205
206 
207 
208 
209    $(window).resize(function () { 
210        // if ($(window).width() > 992) { 
211        //     stopMusmPhotoGallery(); 
212        // } else { 
213        //     startMusmPhotoGallery(); 
214        // } 
215 
216        if ($('.musm_photo_gallery').length > 0) { 
217        if ($(window).width() > 992) { 
218            stopMusmPhotoGallery(); 
219            $('.musm_photo_gallery').removeClass('owl-carousel owl-theme'); 
220            $('.musm_photo_gallery .item').addClass('col-3'); 
221        } else { 
222            $('.musm_photo_gallery').addClass('owl-carousel owl-theme'); 
223            $('.musm_photo_gallery .item').removeClass('col-3'); 
224            startMusmPhotoGallery(); 
225
226
227 
228    }); 
229 
230    $(document).ready(function () { 
231 
232        if ($('.musm_photo_gallery').length > 0) { 
233        if ($(window).width() > 992) { 
234            stopMusmPhotoGallery(); 
235            $('.musm_photo_gallery').removeClass('owl-carousel owl-theme'); 
236            $('.musm_photo_gallery .item').addClass('col-3'); 
237        } else { 
238            $('.musm_photo_gallery').addClass('owl-carousel owl-theme'); 
239            $('.musm_photo_gallery .item').removeClass('col-3'); 
240            startMusmPhotoGallery(); 
241
242
243 
244        var $temp = $("<input>"); 
245        var $url = $(location).attr('href'); 
246        $('.clipboard').on('click', function () { 
247            $("body").append($temp); 
248            $temp.val($url).select(); 
249            document.execCommand("copy"); 
250            $temp.remove(); 
251            $(this).addClass("copied-url"); 
252            setTimeout(function () { 
253                $('.clipboard').removeClass("copied-url"); 
254            }, 2000); 
255        }); 
256 
257        $('.mailSend').on('click', function () { 
258            window.open('mailto:?subject=Tender&amp;body=' + $url); 
259        }); 
260        $('.whatsapp').on('click', function () { 
261            window.open('https://api.whatsapp.com/send?text=' + $url); 
262        }); 
263        $('.twitter').on('click', function () { 
264            window.open('https://twitter.com/share?url=' + $url); 
265        }); 
266        $('.linkedin').on('click', function () { 
267            window.open('https://www.linkedin.com/shareArticle?mini=true&url=' + $url); 
268        }); 
269        $('.facebook').on('click', function () { 
270            window.open('https://www.facebook.com/sharer.php?u=' + $url); 
271        }); 
272        $('.instagram').on('click', function () { 
273            window.open('https://www.instagram.com/?url=' + $url); 
274        }); 
275    }); 
276 
277 
278 
279    // Character Limit 
280 
281 
282    // start tooltip     
283    $(document).on('mouseenter', '.photoGallery .content-box-bottom .section-description', function () { 
284        if (isEllipsisActive($(this)[0])) { 
285            let offset = $(this).offset(); 
286            let height = $(this).height(); 
287            let width = $(this).width(); 
288            let topP = offset.top + 10 + height + "px"; 
289            let rightP = offset.left + width + "px"; 
290            let customtooltip = document.createElement('div'); 
291            customtooltip.classList.add('custom-tooltip'); 
292            let customtooltipArrow = document.createElement('div'); 
293            customtooltipArrow.classList.add('tooltip-arrow-up'); 
294            let customtooltipContent = document.createElement('div'); 
295            customtooltipContent.classList.add('tooltip-content'); 
296            customtooltipContent.textContent = $(this).text().replace(/^\s+|\s+$/gm, ''); 
297            customtooltip.append(customtooltipArrow); 
298            customtooltip.append(customtooltipContent); 
299            customtooltip.style.display = 'block'; 
300            customtooltip.style.right = rightP; 
301            customtooltip.style.top = topP; 
302            customtooltip.style.left = $(this).parent().offset().left + 'px'; 
303            customtooltip.style.width = $(this).parent().outerWidth(true) + 'px'; 
304            customtooltip.style.height = 'max-content'; 
305            $('body').append(customtooltip); 
306
307    }); 
308 
309    $(document).on('mouseleave', '.musm-photoGallery .content-box-bottom .section-description', function () { 
310        $('.custom-tooltip:visible').remove(); 
311    }); 
312    // End tooltip     	 
313 
314 
315 
316 
317    $(document).ready(function () { 
318 
319        // Photo-gallery Popup Arrow Hide Start ----- 
320        $("#photo-gallery .owl-item .item img").on('click', function () { 
321            setTimeout(function () { 
322                const isDisabledLeft = $('.ib-control-left').attr('disabled'); 
323                const isDisabledRight = $('.ib-control-right').attr('disabled'); 
324                if (isDisabledLeft && isDisabledRight) { 
325                    $(".ib-control-left, .ib-control-right").addClass("d-none"); 
326                } else { 
327                    $(".ib-control-left, .ib-control-right").addClass("d-block"); 
328
329            }, 800); 
330        }); 
331        // Photo-gallery Popup Arrow Hide End ----- 
332 
333    }); 
334 
335 
336 
337 
338 
339 
340 
341    $(document).ready(function () { 
342        $(".content-box-bottom").on('click', function () { 
343            $(this).parents('.photo-gallery-box-top').find('.content-box-top img').click(); 
344        }); 
345    }); 
346 
347 
348</script> 
349 
350 
351<style> 
352    .musm_photo_gallery_img_row .rbi-simple-carousel .owl-carousel .owl-nav { 
353        display: none !important; 
354
355 
356    /* .musm_photo_gallery_img_row .owl-stage-outer { 
357        overflow: visible; 
358    } */ 
359 
360    .three-box-each { 
361        margin-bottom: 40px; 
362
363 
364    .photoGallery .total_no_image { 
365    text-align: left; 
366    font-size: var(--fnt_16); 
367    font-family: var(--fontFamily); 
368    font-weight: var(--normal); 
369    letter-spacing: 0px; 
370    color: var(--txt-primary); 
371    opacity: 1; 
372
373 
374 
375    .tooltip { 
376        z-index: 99999; 
377
378 
379    .photoGallery { 
380        padding: 10px 0 55px; 
381        margin-top: 65px; 
382
383 
384    .photoGallery .section-heading { 
385        margin-bottom: 30px; 
386
387 
388    .photoGallery .content-box-bottom { 
389        margin-top: 17px; 
390
391 
392 
393   
394    .photoGallery .content-box-bottom .section-description { 
395        cursor: pointer; 
396
397 
398    .photoGallery .rbi-simple-carousel .owl-carousel .owl-nav { 
399        top: calc(50% - 54px); 
400
401 
402    .photo-gallery-box-top { 
403        border: 0 !important; 
404        text-align: center; 
405
406 
407    .photo-gallery-box-top img { 
408        border-radius: var(--fnt_14) !important; 
409        border: none !important; 
410        overflow: hidden; 
411        object-fit: cover; 
412        object-position: top; 
413
414 
415    .photo-gallery-box-top:hover img { 
416        box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2); 
417
418 
419     
420    #imagebox .ib-content .ib-control div[disabled].d-block { 
421        display: block !important; 
422
423 
424    .share-page-link a { 
425        padding: 5px !important 
426
427 
428    .ib-caption { 
429        width: 500px !important; 
430        margin: 0 auto !important; 
431
432 
433    .ib-control { 
434        max-width: 800px !important; 
435        width: 100% !important; 
436        display: table !important; 
437        margin: 0 auto !important; 
438        position: relative; 
439        top: 50% !important; 
440
441 
442    #imagebox .ib-content .ib-caption { 
443        background: none !important 
444
445 
446    #imagebox .ib-content .ib-caption p { 
447        line-height: var(--global-line-height); 
448        font-size: var(--fnt_18); 
449
450 
451    #imagebox .ib-content .ib-topbar .ib-buttons { 
452        width: 500px; 
453        left: 50%; 
454        transform: translateX(-50%) !important; 
455        text-align: right; 
456
457 
458    #imagebox .ib-content .ib-topbar .ib-buttons .ib-button.ib-close { 
459        margin-left: auto; 
460        margin-right: -13px; 
461
462 
463    #imagebox .ib-content .ib-image-wrapper img.ib-image { 
464        top: 100px !important; 
465        transform: translate(-50%, 0%) !important; 
466        max-width: 100%; 
467        width: 500px; 
468        max-height: calc(100vh - 200px) !important; 
469
470 
471    .ib-topbar { 
472        position: initial !important; 
473
474 
475    #imagebox .ib-content .ib-topbar .ib-buttons .ib-button.ib-close { 
476         
477        background: url("${themeDisplay.getPathThemeRoot()}/images/rbi-main/icon-close-white.svg") !important; 
478        background-repeat: no-repeat !important; 
479    
480
481 
482     
483     
484 
485    .topFixed { 
486        z-index: 2 !important 
487
488 
489    .ib-control-left { 
490        position: absolute !important; 
491        left: 0px !important; 
492        transform: translateY(-50%) !important; 
493        width: var(--fnt_48) !important; 
494        height: var(--fnt_48) !important; 
495        border-radius: var(--fnt_30) !important; 
496        background: var(--white) !important; 
497        border: 2px solid var(--primary-color) !important; 
498        padding: 0px !important; 
499        box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2) !important; 
500        -webkit-box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2) !important; 
501        -moz-box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2) !important; 
502        -ms-box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2) !important; 
503        display: block !important; 
504
505 
506    .ib-control-left:before { 
507        content: "" !important; 
508        background: url("${themeDisplay.getPathThemeRoot()}/images/rbi-main/owl-prev-arrow.svg") !important; 
509        width: 20px !important; 
510        height: 21px !important; 
511        position: absolute !important; 
512        top: 12px !important; 
513        left: 12px !important; 
514
515 
516    .ib-control-right { 
517        position: absolute !important; 
518        right: 0px !important; 
519        transform: translateY(-50%) !important; 
520        width: var(--fnt_48) !important; 
521        height: var(--fnt_48) !important; 
522        border-radius: var(--fnt_30) !important; 
523        background: var(--white) !important; 
524        border: 2px solid var(--primary-color) !important; 
525        padding: 0px !important; 
526        box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2) !important; 
527        -webkit-box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2) !important; 
528        -moz-box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2) !important; 
529        -ms-box-shadow: 0px 3px 10px rgba(1, 33, 80, 0.2) !important; 
530        display: block !important; 
531
532 
533    .ib-control-right:before { 
534        content: "" !important; 
535        background: url("${themeDisplay.getPathThemeRoot()}/images/rbi-main/owl-next-arrow.svg") !important; 
536        width: 20px !important; 
537        height: 21px !important; 
538        position: absolute !important; 
539        top: 12px !important; 
540        left: 12px !important; 
541
542 
543    .ib-control-right:hover, 
544    .ib-control-left:hover { 
545        background: var(--primary-color) !important; 
546        border: 2px solid var(--primary-color) !important; 
547
548 
549    .ib-control-right:hover:before, 
550    .ib-control-left:hover:before { 
551        content: "" !important; 
552        filter: brightness(0) invert(1) !important; 
553
554 
555    .ib-control-right[disabled], 
556    .ib-control-left[disabled] { 
557        filter: grayscale(100%) !important; 
558
559 
560    .ib-control-right[disabled], 
561    .ib-control-left[disabled] { 
562        background: var(--white) !important; 
563        border: 2px solid var(--disabled-owl-button-border) !important; 
564        box-shadow: none !important; 
565
566 
567    .ib-topbar { 
568        bottom: 0; 
569
570 
571    .ib-indexes { 
572        position: absolute; 
573        bottom: 4px; 
574        left: 0; 
575        right: 0; 
576        width: 100%; 
577        text-align: center; 
578        opacity: 1; 
579        z-index: 999999; 
580        color: #fff; 
581
582 
583    .ib-content .ib-topbar .ib-buttons { 
584        position: absolute; 
585        left: 60%; 
586        top: 35px; 
587        display: block !important; 
588
589 
590    .ib-caption { 
591        position: initial !important; 
592
593 
594    .ib-caption .share-page-link { 
595        position: absolute; 
596        top: 50px; 
597        margin-left: -60px !important; 
598
599 
600    .ib-caption p { 
601        position: absolute; 
602        bottom: 10%; 
603        left: 0; 
604        right: 0; 
605        width: 100%; 
606        text-align: center; 
607        opacity: 1; 
608        z-index: 999999; 
609        color: #fff; 
610        max-width: 700px; 
611        margin: 0 auto !important; 
612
613 
614    .ib-content .ib-topbar .ib-buttons .ib-button { 
615        background-color: transparent !important; 
616
617 
618    .owl-carousel .owl-dots.disabled, 
619    .owl-carousel .owl-nav.disabled { 
620        display: none !important 
621
622 
623    @media (max-width : 1440px) { 
624        .photoGallery .rbi-simple-carousel .owl-carousel .owl-nav { 
625            top: calc(50% - 70px); 
626
627
628 
629    @media (max-width : 767px) { 
630        .photoGallery { 
631            padding: 40px 0; 
632            margin-top: 0; 
633
634 
635        .photoGallery .section-heading { 
636            margin-bottom: 20px; 
637
638 
639        .photoGallery .owl-carousel .owl-stage { 
640            padding-left: 0 !important; 
641            padding-right: 0 !important; 
642
643 
644        .ib-caption .share-page-link { 
645            margin-left: -40px !important; 
646
647 
648        #imagebox .ib-content .ib-topbar .ib-buttons { 
649            width: auto; 
650            left: auto; 
651            right: 0; 
652            transform: inherit !important; 
653
654 
655        #imagebox .ib-content .ib-topbar .ib-buttons .ib-button.ib-close { 
656            display: inline-block; 
657            margin-right: 0; 
658
659
660 
661    #photo-gallery.photoGallery .rbi-simple-carousel .owl-carousel .owl-nav { 
662        top: calc(50% - 60px) !important; 
663
664 
665    .tooltip .tooltip-inner { 
666        background: var(--last-update-bg) !important; 
667        color: var(--txt-primary); 
668
669 
670    .tooltip .arrow { 
671        border-bottom: 3px solid var(--last-update-bg) !important; 
672        margin-left: -5px !important; 
673        border-left: 5px solid transparent !important; 
674        border-right: 5px solid transparent !important 
675
676 
677    @media (min-width : 767px) { 
678        #imagebox .ib-content .ib-image-wrapper img.ib-image { 
679            max-width: 500px !important; 
680            height: 400px !important; 
681            top: calc(50% - 200px) !important; 
682
683 
684        .imagebox #imagebox { 
685            display: flex !important; 
686            align-items: center !important; 
687
688 
689        #imagebox .ib-content { 
690            height: 600px !important; 
691
692 
693        .ib-caption .share-page-link { 
694            z-index: 99999 !important; 
695
696 
697        .ib-caption p { 
698            bottom: 6% !important; 
699
700
701</style>