Titans vs. Laramie County
| There was a problem with a Velocity script | |
| Page | sports/msoc/2016-17/photos/0002/photo-gallery-template |
| Error | Invocation of method 'getTaggedPlayers' in class com.prestosports.render.storage.database.DatabasePage threw exception java.lang.NullPointerException at lj2n3blex8ebyibssports/msoc/2016-17/photos/0002/photo-gallery-template[line 123, column 92] |
| Page source: |
1: ## ADD COMPONENT STYLESHEET
2: #set ($stylesheetUrl = "https://theme-assets.prestosports.com/theme-assets/generic/assets/css/photo-gallery.css")
3: $website.addCss($stylesheetUrl)
4:
5: #set ($fromHeadlines = false)
6: #if ($request.getParameter("from_headlines") == true)
7: #set ($fromHeadlines = true)
8: #end
9:
10:
11: $website.include("options")
12: #set ($options = $request.getAttribute("options"))
13:
14: #***********************************************
15: # MACROS
16: # *********************************************#
17: #macro (capitalize $name)
18: $name.substring(0,1).toUpperCase()$name.substring(1).toLowerCase()
19: #end
20:
21: #macro (printTitle)
22: #set ($pageTitle = "Photo Gallery")
23: #if ($page.title.trim().length() > 0)
24: #set ($pageTitle = $page.title.trim())
25: #end
26:
27: #if ($fromHeadlines || !$website.isIncluded())
28: #if($request.getAttribute("pageTitle").length() > 0)
29: #set ($pageTitle = $request.getAttribute("pageTitle"))
30: #else
31: #set ($pageTitle = "")
32: #end
33: #if ($page.title.length() > 0)
34: #set ($pageTitle = $!page.title)
35: #end
36: $!request.setAttribute("page-inc-header-title", $pageTitle)
37: $!request.setAttribute("page-inc-header-page", $page)
38: $!request.setAttribute("page-inc-header-heading-class", "page-title")
39: $website.includeAgain("page-inc-header")
40: #if($pageTitle.trim().length() == 0)
41: #set ($pageTitle = "#capitalize($page.name.trim())")
42: #end
43: $!request.setAttribute("pageTitle", "${pageTitle}")
44:
45: #if ($body.length() > 150)
46: $!request.setAttribute("pageDescription", "$body.substring(1, 150) ...")
47: #else
48: $!request.setAttribute("pageDescription", "$body")
49: #end
50: #end
51: #end
52:
53: #macro (printLeadIn)
54: #if($page.leadIn.length() > 0 && ($fromHeadlines || !$website.isIncluded()))
55: <h2 class="page-sub-title fs-5">$page.leadIn</h2>
56: #end
57: #end
58:
59: #macro (printThumbnail)
60: ## Do not use this until it is fully tested.
61: ## Thubmnails attached are designed to be used as thumbnails for gallery grids
62: ## and are not desigend to show case as a hero photo on gallery's themselves.
63: ## per Devin
64: #set ($thumbSrc = "$!{page.thumbnailURL}")
65: #set ($thumbAlt = "$!page.title")
66: #if ($page.thumbnailPage.altText.length() > 0)
67: #set ($thumbAlt = "$page.thumbnailPage.altText")
68: #end
69: #if($thumbSrc.length() > 0 )
70: <picture alt="$thumbAlt">
71: <source media="(min-width:1200px)" srcset="${thumbSrc}?max_width=1920">
72: <source media="(min-width:992px)" srcset="${thumbSrc}?max_width=1200">
73: <source media="(min-width:576px)" srcset="${thumbSrc}?max_width=992">
74: <source media="(min-width:0px)" srcset="${thumbSrc}?max_width=576">
75: <img class="img-fluid mx-auto" src="${thumbSrc}?max_width=1920" alt="${thumbAlt}"/>
76: </picture>
77: #end
78: #end
79:
80: <div class="page-content photo-gallery-content" data-page-url="$page.url">
81:
82: <div class="photo-gallery-template-heading d-flex flex-column w-100 justify-content-center align-items-stretch gap-2 mb-3">
83: #printTitle()
84: #printLeadIn()
85: </div>
86:
87: <div class="photo-gallery-template-content">
88:
89: #if ($page.contentType.equals("loki/headlines") && $headlines.size() > 0)
90:
91: #set ($instance = 0)
92: #if ($request.getAttribute("photoGalleryInstance"))
93: #set ($instance = $request.getAttribute("photoGalleryInstance"))
94: #end
95: #set ($instance = $tool.math.add($instance, 1))
96: $!request.setAttribute("photoGalleryInstance", $instance)
97: #set ($id = "photo-gallery${instance}")
98:
99: #if ($request.getParameter("id"))
100: #set ($id = $formatter.escapeXml($request.getParameter("id")))
101: #end
102:
103: <div id="${id}" class="gallery loadMore grid" itemscope itemtype="http://schema.org/ImageGallery" data-module="theme-module/cssloader" data-stylesheet-url="$stylesheetUrl">
104: #foreach ($photo in $headlines)
105:
106: #set ($storeURL = "")
107: #set ($storeURL = $website.storeURL($photo))
108: #set ($imgAlt = "${page.title} image ${velocityCount}")
109: #if ($photo.altText.length() > 0)
110: #set ($imgAlt = $photo.altText)
111: #elseif( $photo.title.length() > 0 )
112: #set ($imgAlt = $photo.title)
113: #end
114:
115: <figure class="block thumbnail grid-item" itemprop="associatedMedia" itemscope itemtype="http://schema.org/ImageObject">
116: <div class="gal-wrapper">
117: <a href="$photo.url" data-thumb="${photo.url}?max_width=500" data-caption="$photo.title" data-width="1200" data-height="900" itemprop="contentUrl">
118: <img itemprop="thumbnail" src="/info/images/spacer.gif" alt="$imgAlt" class="masgal">
119: </a>
120: #if ($storeURL.length() > 0)
121: <button data-url="$storeURL" class="buynow-link btn btn-primary" title="View this item in photo store." aria-label="open this item in photo store">Buy Now</button>
122: #end
123: #if ($options.get("photo_gallery_hide_photo_tags") != "true" && $photo.taggedPlayers.size() > 0)
124: <ul class="tag-list clearfix">
125: #foreach ($playerBio in $photo.taggedPlayers)
126: <li><a href="$playerBio.url?view=photos" aria-label="$playerBio.firstName $playerBio.lastName: full bio">$playerBio.firstName $playerBio.lastName</a></li>
127: #end
128: </ul>
129: #end
130:
131: #if( $photo.title.length() > 0 )
132: <figcaption class="figure-caption small image-caption-overlay clamp-2">$photo.title</figcaption>
133: #end
134:
135: #if( $formatter.formatDate($photo.date, "MMM dd, yyyy").length() > 0 )
136: <span class="photo-date small">$formatter.formatDate($photo.date, "MMM dd, yyyy")</span>
137: #end
138:
139: </div>
140:
141: </figure>
142: #end
143: </div>
144:
145: $request.setAttribute("icl-photoGallery-scripts", true)
146:
147: #if ($request.getParameter("ajax") == true)
148: $website.decorate("")
149: #end
150:
151: #else ## contentType is not headlines or size equals 0
152:
153: <div>No photos featured in this gallery</div>
154:
155: #end
156: </div>
157: </div>
158:
159: <div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">
160: <div class="pswp__bg"></div>
161: <div class="pswp__scroll-wrap">
162: <div class="pswp__container">
163: <div class="pswp__item"></div>
164: <div class="pswp__item"></div>
165: <div class="pswp__item"></div>
166: </div>
167: <div class="pswp__ui pswp__ui--hidden">
168: <div class="pswp__top-bar">
169: <div class="pswp__counter"></div>
170: <button class="pswp__button pswp__button--close" title="Close (Esc)"></button>
171: <button class="pswp__button pswp__button--share" title="Share"></button>
172: <button class="pswp__button pswp__button--fs" title="Toggle full screen"></button>
173: <button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button>
174: <div class="pswp__preloader">
175: <div class="pswp__preloader__icn">
176: <div class="pswp__preloader__cut">
177: <div class="pswp__preloader__donut"></div>
178: </div>
179: </div>
180: </div>
181: </div>
182: <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap">
183: <div class="pswp__share-tooltip"></div>
184: </div>
185: <button class="pswp__button pswp__button--arrow--left" title="Previous (arrow left)">
186: </button>
187: <button class="pswp__button pswp__button--arrow--right" title="Next (arrow right)">
188: </button>
189: <div class="pswp__caption">
190: <div class="pswp__caption__center text-center"></div>
191: </div>
192: </div>
193: </div>
194: </div>
|
