Skip to content
Snippets Groups Projects
SingleView.html 6.23 KiB
Newer Older
Stefan Galinski's avatar
Stefan Galinski committed
<f:layout name="Default" />

{namespace sg=SGalinski\SgNews\ViewHelpers}
{namespace rx=Reelworx\RxShariff\ViewHelper}

<f:section name="main">
	<f:if condition="{settings.publisher}">

		<f:if condition="{settings.publisherLogo}">
			<f:alias map="{leftBrace: '{', rightBrace: '}'}">
				<script type="application/ld+json">
						{leftBrace}
							"@context": "http://schema.org/",
							"@type": "NewsArticle",
							"author": "{newsMetaData.news.author}",
							"publisher": {leftBrace}
								"@type": "Organization",
								"name": "{settings.publisher}",
								"logo":   {leftBrace}
									"@type": "ImageObject",
									"url": "{settings.publisherLogo}"
								 {rightBrace}
							{rightBrace},
							"image": "<f:uri.image absolute="TRUE" image="{newsMetaData.imageObject}" />",
							"headline": "{newsMetaData.news.navTitle}",
							"description": "{newsMetaData.news.description}",
							"dateCreated": "<f:format.date format="Y-m-d">{newsMetaData.news.creationDate}</f:format.date>",
							"datePublished": "<f:format.date format="Y-m-d">{newsMetaData.news.creationDate}</f:format.date>",
							"dateModified": "<f:format.date format="Y-m-d">{newsMetaData.news.lastUpdated}</f:format.date>"
						{rightBrace}
				</script>
			</f:alias>
		</f:if>

	</f:if>
	<div class="intro-section">
		<section class="dark-bg">
			<div class="tx-sgnews-single-header {f:if(condition: newsMetaData.imageObject, then: 'tx-sgnews-single-header-image')}">
				<f:if condition="{newsMetaData.imageObject}">
					<div class="tx-sgnews-single-image">
						<f:image image="{newsMetaData.imageObject}" alt="" />
					</div>
				</f:if>
				<div class="tx-sgnews-single-header-content">
					<div class="tx-sgnews-teaser-title">
						<h1>{newsMetaData.news.subtitleWithFallbackToTitle}</h1>
					</div>
					<div class="tx-sgnews-teaser">
						<div class="tx-sgnews-teaser-inner">
							<div class="tx-sgnews-teaser-meta">
								<span class="author">
									<f:if condition="{newsMetaData.news.authorFrontendUser}">
										<f:then>
											<f:if condition="{newsMetaData.news.authorFrontendUser.www}">
												<f:then>
													<f:link.page pageUid="{newsMetaData.news.authorFrontendUser.www}">
														{newsMetaData.news.authorFrontendUser.name}
													</f:link.page>
												</f:then>
												<f:else>
													{newsMetaData.news.authorFrontendUser.name}
												</f:else>
											</f:if>
										</f:then>
										<f:else>
											{newsMetaData.news.author}
										</f:else>
									</f:if>
								</span>
								<f:if condition="{newsMetaData.news.location}">
									<span class="location">
										{newsMetaData.news.location}
									</span>
								</f:if>

								<span class="date">
									<f:format.date format="{f:translate(key:'frontend.dateformat')}">{newsMetaData.news.lastUpdated}</f:format.date>
								</span>
Stefan Galinski's avatar
Stefan Galinski committed

								<span class="category">
									<a href="{f:uri.page(pageUid: '{newsMetaData.category.uid}')}">
										{newsMetaData.category.subtitleWithFallbackToTitle}
									</a>
								</span>
								<f:if condition="{newsMetaData.news.tags}">
									<br />
									<span class="tags">
										<f:for each="{newsMetaData.news.tags}" as="tag" iteration="it">
											{tag.title}<f:if condition="{it.isLast}"><f:else>, </f:else></f:if>
										</f:for>
									</span>
								</f:if>
Stefan Galinski's avatar
Stefan Galinski committed
				</div>
			</div>
Stefan Galinski's avatar
Stefan Galinski committed

	</div>
	<section class="content light-bg ">
		<div class="container">
			<div class="tx-sgnews-single">
				<div class="tx-sgnews-single-container">
					<f:alias map="{content: '{f:cObject(typoscriptObjectPath: \'lib.mainContent\')}'}">
						<div class="tx-sgnews-single-content">
							<p>
								<a href="#comments">{f:cObject(typoscriptObjectPath: "lib.sgCommentsGetCountWithLabel")}</a>
								<span>//</span>
								<f:translate key="frontend.singleview.readingTime" />
								<strong>
									<sg:getReadingTime content="{content}" />
								</strong>
							</p>
Stefan Galinski's avatar
Stefan Galinski committed

							{content -> f:format.raw()}
						</div>
					</f:alias>
Stefan Galinski's avatar
Stefan Galinski committed

					<div class="tx-sgnews-meta-bar">
						<rx:shariff services="facebook,twitter,googleplus,whatsapp" enableBackend="true" />
						<div class="tx-sgnews-likes" id="tx-sgnews-likes" data-uid="{newsMetaData.news.uid}">
							<button class="tx-sgnews-like-buton btn btn-sm btn-info">
							<span class="tx-sgnews-number-of-likes">
								<span class="badge"><i class="fa fa-star-o" aria-hidden="true"></i>
									<span class="tx-sgnews-number-of-likes-value">{newsMetaData.news.likes}</span>
								</span>
							</span>
								<f:translate key="frontend.singleview.likeButton" />
							</button>
						</div>
					</div>
Stefan Galinski's avatar
Stefan Galinski committed

					<f:if condition="{newsMetaData.news.relatedNews}">
						<div class="tx-sgnews-single-related">
							<h3>
								<f:translate key="frontend.singleview.relatedArticles" />
							</h3>
Stefan Galinski's avatar
Stefan Galinski committed

							<ul>
								<f:for each="{newsMetaData.news.relatedNews}" as="relatedNewsEntry">
									<li>
										<a href="{f:uri.page(pageUid: '{relatedNewsEntry.uid}')}">
											{relatedNewsEntry.subtitleWithFallbackToTitle}
										</a>
									</li>
								</f:for>
							</ul>
						</div>
					</f:if>
				</div>
Stefan Galinski's avatar
Stefan Galinski committed
			</div>
	</section>

	<section class="content dark-bg">
		<div class="container">
			<div class="tx-sgnews-single-footer">
				<sg:extendedIf condition="{previousNews}" or="{nextNews}">
					<div class="tx-sgnews-single-footer-browser">
						<f:if condition="{previousNews}">
							<a href="{f:uri.page(pageUid: '{previousNews.uid}')}" class="btn btn-md btn-info tx-sgnews-footer-browser-previous">
								<f:translate key="frontend.singleview.previousArticle" />
							</a>
						</f:if>
Stefan Galinski's avatar
Stefan Galinski committed

						<f:if condition="{nextNews}">
							<a href="{f:uri.page(pageUid: '{nextNews.uid}')}" class="btn btn-md btn-info tx-sgnews-footer-browser-next">
								<f:translate key="frontend.singleview.nextArticle" />
							</a>
						</f:if>
					</div>
				</sg:extendedIf>
Stefan Galinski's avatar
Stefan Galinski committed
			</div>
Stefan Galinski's avatar
Stefan Galinski committed

	<section class="content light-bg">
		<div class="container">
			<div class="tx-sgnews-single-comments">
				<div id="comments" class="tx-sgnews-comments-inner">
					<f:cObject typoscriptObjectPath="lib.sgCommentsIndex" />
Stefan Galinski's avatar
Stefan Galinski committed
		</div>