Skip to content
Snippets Groups Projects
event-listing.vtl 4.7 KiB
Newer Older
Brad's avatar
Brad committed
##---------------------------------------
##- set todays date to show date ranges -
##---------------------------------------
#set($today = $date.format('yMMdd',$date))

##---------------------------------------
##- sets future date --------------------
##---------------------------------------
	## Get a java Calendar
	#set($x = $date.calendar)
	## Add 1 year (hours=int code 1)
	$x.add(1,1)
	## format future date
	#set($future = $date.format('yMMdd',$x))

## --------------------------------------------------
## SETTING THE DEFAULT NUMBER OF RESULTS ------------
## --------------------------------------------------
#if (!$UtilMethods.isSet($numberOfResults))
  #set($numberOfResults = 20)
#end

## --------------------------------------------------
## SETTING THE SORT ORDER ---------------------------
## --------------------------------------------------
#set ($sortBy = "calendarEvent.startDate asc")

## --------------------------------------------------
## SETTING RELATIONSHIP FILTERS ---------------------
## --------------------------------------------------
#if($UtilMethods.isSet($organization))
	#set($organizationRel = '+Organization-Event:')
	#set($organizationID = $organization)
#end
#if($UtilMethods.isSet($targetPlace))
	#set($targetPlaceRel = '+Target-Place:')
	#set($targetPlaceID = $targetPlace)
#end
#if($UtilMethods.isSet($eventLocation))
	#set($eventLocationRel = '+Location-Event:')
	#set($eventLocationID = $eventLocation)
#end
#if($UtilMethods.isSet($dataset))
	#set($datasetRel = '+Dataset-calendarEvent:')
	#set($datasetID = $dataset)
#end

#if($pagination.contains('true'))
	## SETTING ITEMS PER PAGE
	#if ($UtilMethods.isSet($itemsPerPage))
		#set($itemsPerPage = $webapi.parseInt($itemsPerPage))
	#else
		#set($itemsPerPage = 20)
	#end

	## GETTING PAGE NUMBER
	#if($UtilMethods.isSet($request.getParameter('page')))
		#set($page = $webapi.parseInt($request.getParameter('page')))
	#else
		#set($page = 1)
	#end

	#set($eventListing = $dotcontent.pullPerPage("
		+contentType:calendarEvent 
Brad's avatar
Brad committed
		$!{organizationRel}$!{organizationID}
		$!{targetPlaceRel}$!{targetPlaceID}
		$!{eventLocationRel}$!{eventLocationID}
		$!{datasetRel}$!{datasetID}
		+calendarEvent.endDate:[${today}* TO $!{future}*]
Brad's avatar
Brad committed
		",$!{page}, $!{itemsPerPage},"$!{sortBy}"
	))
Brad's avatar
Brad committed
#else
	#set($eventListing = $dotcontent.pull("
		+contentType:calendarEvent 
Brad's avatar
Brad committed
		$!{organizationRel}$!{organizationID}
		$!{targetPlaceRel}$!{targetPlaceID}
		$!{eventLocationRel}$!{eventLocationID}
		$!{datasetRel}$!{datasetID}
		+calendarEvent.endDate:[${today}* TO $!{future}*]
Brad's avatar
Brad committed
		", $!{numberOfResults},"$!{sortBy}"
	))
Brad's avatar
Brad committed
#end

<section itemscope itemtype="http://schema.org/Event">
	#if($UtilMethods.isSet($widgetHeadline))
		#if (!$UtilMethods.isSet($headlineType))
			#set ($headlineType = '1')
		#end
		<h$!{headlineType} itemprop="name">$!{widgetHeadline}</h$!{headlineType}>
	#end

	#if($eventListing.size() > 0)
		<ul class="events-list">
			#foreach($event in $eventListing)
				<li class="events-item">
					#editContentlet($event.inode)
					#if($UtilMethods.isSet(${event.image}))
						<a class="" href="${event.urlTitle}">
							<img class="" src="/contentAsset/image/$!{event.image.identifier}/fileAsset/filter/Resize/resize_w/150" alt="$event.title">
						</a>
					#end					
					#if($UtilMethods.isSet($headlineType))
						##if headline is set this adds 1 from it
						#set($nameFontSize = $math.add($!{headlineType}, 1).intValue())
					#else
						#set($nameFontSize = '2')
					#end
					<h$!{nameFontSize}><a href="${event.urlTitle}" itemprop="name">$event.title</a></h$!{nameFontSize}>
					#if($UtilMethods.isSet($event.startDate) || $UtilMethods.isSet($event.place))
						<p class="date">
							#if($UtilMethods.isSet($event.startDate))
								$date.format('MMMM dd, y', $event.startDate) 
								#if($UtilMethods.isSet($event.endDate))
									 &ndash; $date.format('MMMM dd, y', $event.endDate)
								#end
							#end
							#if($UtilMethods.isSet($event.place))
								<br>$event.place
							#end
						</p>
					#end
					#if($UtilMethods.isSet($event.summary))
						<p>$event.summary</p>
					#end
				</li>
			#end
		</ul>
		#if($pagination.contains('true') && $eventListing.totalPages > 1)
			<ul class="pagination">
				#if($eventListing.previousPage)
					<li><a href="$!{VTLSERVLET_URI}?page=$!{math.sub($page, 1)}">&laquo;</a></li>
				#end
				#foreach($i in [1..$eventListing.totalPages])
					<li #if($page == $velocityCount)class="active"#end><a href="$!{VTLSERVLET_URI}?page=${velocityCount}">$velocityCount</a></li>
				#end
				#if($eventListing.nextPage)
					<li><a href="$!{VTLSERVLET_URI}?page=$!{math.add($page, 1)}">&raquo;</a></li>
				#end
			</ul>
		  #end
	#else
		<p>There are no events at this time</p>
	#end
</section>