Skip to content
Snippets Groups Projects
Commit 66a1f357 authored by Philipp Nowinski's avatar Philipp Nowinski
Browse files

[FEATURE] bootstrap compatible templates

parent 2fb59264
No related branches found
No related tags found
No related merge requests found
......@@ -7,45 +7,43 @@
<body>
<!-- ###PAGE_BROWSER### begin -->
<!--TYPO3SEARCH_end-->
<ul class="tx-pagebrowse">
<!-- ###ACTIVE_PREV### begin -->
<li class="tx-pagebrowse-prev"><a href="###PREV_LINK###">###TEXT_PREV###</a></li>
<!-- ###ACTIVE_PREV### end -->
<nav>
<ul class="pagination">
<!-- ###ACTIVE_PREV### begin -->
<li class="tx-pagebrowse-prev"><a href="###PREV_LINK###" aria-label="Previous">&laquo;</a></li>
<!-- ###ACTIVE_PREV### end -->
<!-- ###INACTIVE_PREV### begin -->
<li class="tx-pagebrowse-prev">###TEXT_PREV###</li>
<!-- ###INACTIVE_PREV### end -->
<!-- ###INACTIVE_PREV### begin -->
<li class="tx-pagebrowse-prev disabled"><a aria-label="Previous"><span aria-hidden="true">&laquo;</a></li>
<!-- ###INACTIVE_PREV### end -->
<!-- ###PAGES### begin -->
<li class="tx-pagebrowse-pages">
<ol>
<!-- ###LESS_PAGES### begin -->
<li>...</li>
<!-- ###LESS_PAGES### end -->
<!-- ###PAGE### begin -->
<li class="tx-pagebrowse-page"><a href="###LINK###">###NUMBER_DISPLAY###</a></li>
<!-- ###PAGE### end -->
<!-- ###CURRENT### begin -->
<li class="tx-pagebrowse-current">###NUMBER_DISPLAY###</li>
<!-- ###CURRENT### end -->
<!-- ###MORE_PAGES### begin -->
<li>...</li>
<!-- ###MORE_PAGES### end -->
</ol>
</li>
<!-- ###PAGES### end -->
<!-- ###PAGES### begin -->
<!-- ###LESS_PAGES### begin -->
<li>...</li>
<!-- ###LESS_PAGES### end -->
<!-- ###PAGE### begin -->
<li class="tx-pagebrowse-page"><a href="###LINK###">###NUMBER_DISPLAY###</a></li>
<!-- ###PAGE### end -->
<!-- ###CURRENT### begin -->
<li class="tx-pagebrowse-current active"><a href="#">###NUMBER_DISPLAY### <span class="sr-only">(current)</span></a></li>
<!-- ###CURRENT### end -->
<!-- ###MORE_PAGES### begin -->
<li>...</li>
<!-- ###MORE_PAGES### end -->
<!-- ###PAGES### end -->
<!-- ###ACTIVE_NEXT### begin -->
<li class="tx-pagebrowse-next"><a href="###NEXT_LINK###">###TEXT_NEXT###</a></li>
<!-- ###ACTIVE_NEXT### end -->
<!-- ###ACTIVE_NEXT### begin -->
<li class="tx-pagebrowse-next"><a href="###NEXT_LINK###" aria-label="Next">&raquo;</a></li>
<!-- ###ACTIVE_NEXT### end -->
<!-- ###INACTIVE_NEXT### begin -->
<li class="tx-pagebrowse-next">###TEXT_NEXT###</li>
<!-- ###INACTIVE_NEXT### end -->
<!-- ###INACTIVE_NEXT### begin -->
<li class="tx-pagebrowse-next disabled"><a aria-label="Next"><span aria-hidden="true">&raquo;</a><</li>
<!-- ###INACTIVE_NEXT### end -->
</ul>
</ul>
</nav>
<!--TYPO3SEARCH_begin-->
<!-- ###PAGE_BROWSER### end -->
</body>
</html>
\ No newline at end of file
</html>
......@@ -20,56 +20,42 @@
</f:comment>
<f:alias map="{singleViewUri: '{f:uri.page(pageUid: \'{newsMetaData.news.uid}\')}'}">
<f:if condition="{newsMetaData.teaserImageObject}">
<div class="tx-sgnews-teaser-image">
<a href="{singleViewUri}">
<f:image image="{newsMetaData.teaserImageObject}" alt="" />
</a>
</div>
</f:if>
<div class="tx-sgnews-teaser-inner">
<a href="{singleViewUri}" class="tx-sgnews-teaser-title">
{headerTag -> f:format.raw()}
{newsMetaData.news.subtitleWithFallbackToTitle}
{closingHeaderTag -> f:format.raw()}
</a>
<a href="{singleViewUri}" class="tx-sgnews-teaser-description">
<f:format.html>{newsMetaData.news.description}</f:format.html>
</a>
<a href="{singleViewUri}">
<div class="tx-sgnews-teaser-image tx-sgnews-teaser-image-stretched" style="background-image: url({f:uri.image(image: '{newsMetaData.teaserImageObject}')});"></div>
<div class="tx-sgnews-teaser-inner">
<div class="tx-sgnews-teaser-title">
{headerTag -> f:format.raw()}
{newsMetaData.news.subtitleWithFallbackToTitle}
{closingHeaderTag -> f:format.raw()}
</div>
<div class="tx-sgnews-teaser-description">
<f:format.html>{newsMetaData.news.description}</f:format.html>
</div>
<div class="tx-sgnews-moreLink">
<a href="{singleViewUri}">
<f:translate key="frontend.teaser.readMore" />
</a>
</div>
<div class="tx-sgnews-teaser-meta">
<span class="author">
<f:if condition="{newsMetaData.news.authorFrontendUser}">
<f:then>
<a href="{singleViewUri}">{newsMetaData.news.authorFrontendUser.name}</a>
{newsMetaData.news.authorFrontendUser.name}
</f:then>
<f:else>
<a href="{singleViewUri}">{newsMetaData.news.author}</a>
{newsMetaData.news.author}
</f:else>
</f:if>
</span>
<span class="date">
<a href="{singleViewUri}">
<f:format.date format="%d. %B %Y">{newsMetaData.news.lastUpdated}</f:format.date>
</a>
<f:format.date format="%d. %B %Y">{newsMetaData.news.lastUpdated}</f:format.date>
</span>
<f:if condition="{showCategory}">
<span class="category">
<a href="{singleViewUri}">
{newsMetaData.category.subtitleWithFallbackToTitle}
</a>
{newsMetaData.category.subtitleWithFallbackToTitle}
</span>
</f:if>
</div>
</div>
</a>
</f:alias>
{namespace sg=SGalinski\SgNews\ViewHelpers}
<f:comment xmlns:f="http://www.w3.org/1999/html">
<!--
Usage Example:
<f:render partial="Teaser" arguments="{
newsMetaData: newsMetaData,
headerTag: '<h3>',
closingHeaderTag: '</h3>',
showCategory: 1
}" />
newsMetaData -> news element
headerTag -> hierarchy type of the header tag
showCategory -> defines if the category may be shown
Use <f:debug>{_all}</f:debug> to see all parameters and fields.
-->
</f:comment>
<f:alias map="{singleViewUri: '{f:uri.page(pageUid: \'{newsMetaData.news.uid}\')}'}">
<a href="{singleViewUri}" title="{newsMetaData.news.subtitleWithFallbackToTitle}">
<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>
<span class="date">
<f:format.date format="%d. %B %Y">{newsMetaData.news.lastUpdated}</f:format.date>
</span>
<span class="category">
<a href="{f:uri.page(pageUid: '{newsMetaData.category.uid}')}">
{newsMetaData.category.subtitleWithFallbackToTitle}
</a>
</span>
</div>
</div>
</div>
</div>
</div>
</a>
</f:alias>
<f:layout name="Default" />
<f:section name="main">
<f:for each="{newsMetaData}" as="newsMetaDataEntry">
<div class="tx-sgnews-latest">
<f:render partial="Teaser" arguments="{
newsMetaData: newsMetaDataEntry,
headerTag: '<h3>',
closingHeaderTag: '</h3>',
showCategory: 1
}" />
<div id="carousel-latest-news" class="carousel slide carousel-stretch" data-ride="carousel" data-interval="0">
<f:if condition="{newsMetaData -> f:count()} > 1">
<ol class="carousel-indicators">
<f:for each="{newsMetaData}" as="newsMetaDataEntry" iteration="iterator">
<li data-target="#carousel-latest-news" data-slide-to="{iterator.index}" class="{f:if(condition: '{iterator.isFirst}', then: 'active')}"></li>
</f:for>
</ol>
</f:if>
<div class="carousel-inner" role="listbox">
<f:for each="{newsMetaData}" as="newsMetaDataEntry" iteration="iterator">
<div class="item {f:if(condition: '{iterator.isFirst}', then: 'active')}">
<f:render partial="TeaserOverview" arguments="{
newsMetaData: newsMetaDataEntry,
headerTag: '<h3>',
closingHeaderTag: '</h3>',
showCategory: 1
}" />
</div>
</f:for>
</div>
</f:for>
<f:if condition="{newsMetaData -> f:count()} > 1">
<a class="left carousel-control" href="#carousel-latest-news" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#carousel-latest-news" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</f:if>
</div>
</f:section>
......@@ -3,31 +3,53 @@
{namespace sg=SGalinski\SgNews\ViewHelpers}
<f:section name="main">
<f:if condition="{highlightedNewsMetaData}">
<div class="tx-sgnews-latest">
<f:render partial="Teaser" arguments="{
newsMetaData: highlightedNewsMetaData,
headerTag: '<h2>',
closingHeaderTag: '</h2>',
showCategory: 0
}" />
</div>
</f:if>
<f:if condition="{newsMetaData}">
<ul class="tx-sgnews-list">
<f:for each="{newsMetaData}" as="newsMetaDataEntry">
<li>
<f:render partial="Teaser" arguments="{
newsMetaData: newsMetaDataEntry,
headerTag: '<h2>',
closingHeaderTag: '</h2>',
showCategory: 0
}" />
</li>
</f:for>
</ul>
<div class="intro-section">
<section class="content dark-bg ">
<div class="container">
<div id="c1266" class="default-content-element">
<div class="ce-textpic ce-left ce-above">
<div class="ce-bodytext">
<div class="spacer-60"></div>
<h2 style="text-align: center" class="tx-sgnews-category-title">{category.subtitleWithFallbackToTitle}</h2>
<div class="spacer-60"></div>
</div>
</div>
</div>
</div>
</section>
</div>
<div class="spacer-30"></div>
<f:if condition="{highlightedNewsMetaData}">
<section class="content light-bg ">
<div class="container tx-sgnews-categories">
<ul class="tx-sgnews-list row">
<f:if condition="{highlightedNewsMetaData}">
<li class="col-md-4 col-sm-6 col-xs-12 sgnews-list-item-latest">
<f:render partial="Teaser" arguments="{
newsMetaData: highlightedNewsMetaData,
headerTag: '<h2>',
closingHeaderTag: '</h2>',
showCategory: 0
}" />
</li>
</f:if>
<f:for each="{newsMetaData}" as="newsMetaDataEntry">
<li class="col-md-4 col-sm-6 col-xs-12">
<f:render partial="Teaser" arguments="{
newsMetaData: newsMetaDataEntry,
headerTag: '<h2>',
closingHeaderTag: '</h2>',
showCategory: 0
}" />
</li>
</f:for>
</ul>
<sg:pageBrowser numberOfPages="{numberOfPages}" />
<sg:pageBrowser numberOfPages="{numberOfPages}" />
</div>
</section>
</f:if>
</f:section>
\ No newline at end of file
</f:section>
......@@ -3,45 +3,47 @@
{namespace sg=SGalinski\SgNews\ViewHelpers}
<f:section name="main">
<f:if condition="{highlightedNewsMetaData}">
<div class="tx-sgnews-latest">
<f:render partial="Teaser" arguments="{
newsMetaData: highlightedNewsMetaData,
headerTag: '<h2>',
closingHeaderTag: '</h2>',
showCategory: 1
}" />
</div>
</f:if>
<f:if condition="{newsByCategory}">
<ul class="tx-sgnews-categories">
<f:for each="{newsByCategory}" as="dataByCategory">
<li class="tx-sgnews-category">
<a class="category-{dataByCategory.category.uid}" href="{f:uri.page(pageUid: '{dataByCategory.category.uid}')}">
{dataByCategory.category.subtitleWithFallbackToTitle}
</a>
<div class="tx-sgnews-categories">
<div class="tx-sgnews-categories-tabmenu-outer tabs-menu">
<a class="tabs-menu-button" href="#">Kategorie <span></span></a>
<ul class="tx-sgnews-list">
<f:for each="{dataByCategory.newsMetaData}" as="newsMetaDataEntry">
<li>
<f:render partial="Teaser" arguments="{
newsMetaData: newsMetaDataEntry,
headerTag: '<h2>',
closingHeaderTag: '</h2>',
showCategory: 0
}" />
</li>
</f:for>
</ul>
<ul class="tx-sgnews-categories-tabmenu tabs-menu-list nav nav-tabs">
<f:for each="{newsByCategory}" as="dataByCategory">
<li class="tx-sgnews-category">
<a class="category-{dataByCategory.category.uid}" data-tab="tx-sgnews-categories-tabcontent{dataByCategory.category.uid}" href="#tx-sgnews-categories-tabcontent{dataByCategory.category.uid}">
{dataByCategory.category.subtitleWithFallbackToTitle}
</a>
</li>
</f:for>
</ul>
</div>
<div class="tx-sgnews-moreLink">
<a class="category-{dataByCategory.category.uid}" href="{f:uri.page(pageUid: '{dataByCategory.category.uid}')}">
<f:translate key="frontend.overview.showAllEntries" />
</a>
<div class="tx-sgnews-categories-tabcontents tabs-contents">
<f:for each="{newsByCategory}" as="dataByCategory">
<div class="tx-sgnews-categories-tabcontent" id="tx-sgnews-categories-tabcontent{dataByCategory.category.uid}">
<h4 class="tx-sgnews-tab-title">{dataByCategory.category.title}</h4>
<ul class="tx-sgnews-list row">
<f:for each="{dataByCategory.newsMetaData}" as="newsMetaDataEntry">
<li class="col-md-4 col-sm-6 col-xs-12">
<f:render partial="Teaser" arguments="{
newsMetaData: newsMetaDataEntry,
headerTag: '<h2>',
closingHeaderTag: '</h2>',
showCategory: 0
}" />
</li>
</f:for>
</ul>
<div class="text-center">
<a class="btn btn-md btn-success category-{dataByCategory.category.uid}" href="{f:uri.page(pageUid: '{dataByCategory.category.uid}')}">
<f:translate key="frontend.overview.showAllEntries" />
</a>
</div>
</div>
</li>
</f:for>
</ul>
</f:for>
</div>
</div>
</f:if>
</f:section>
\ No newline at end of file
</f:section>
<f:layout name="Default" />
{namespace sg=SGalinski\SgNews\ViewHelpers}
<f:section name="main">
<div class="tx-sgnews-overview">
<ul class="tx-sgnews-list row">
<f:for each="{dataByCategory.newsMetaData}" as="newsMetaDataEntry">
<li class="col-md-4 col-sm-6 col-xs-12">
<f:render partial="Teaser" arguments="{
newsMetaData: newsMetaDataEntry,
headerTag: '<h2>',
closingHeaderTag: '</h2>',
showCategory: 1
}" />
</li>
</f:for>
</ul>
</div>
<sg:pageBrowser numberOfPages="{numberOfPages}" />
</f:section>
......@@ -4,116 +4,138 @@
{namespace rx=Reelworx\RxShariff\ViewHelper}
<f:section name="main">
<div class="tx-sgnews-single">
<div class="tx-sgnews-teaser">
<f:if condition="{newsMetaData.imageObject}">
<div class="tx-sgnews-single-image">
<f:image image="{newsMetaData.imageObject}" alt="" />
</div>
</f:if>
<div class="tx-sgnews-teaser-inner">
<div class="tx-sgnews-teaser-title">
<h1>{newsMetaData.news.subtitleWithFallbackToTitle}</h1>
</div>
<div class="tx-sgnews-teaser-meta">
<span class="author">
<f:if condition="{newsMetaData.news.authorFrontendUser}">
<f:then>
<f:if condition="{newsMetaData.news.authorFrontendUser.www}">
<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:link.page pageUid="{newsMetaData.news.authorFrontendUser.www}">
{newsMetaData.news.authorFrontendUser.name}
</f:link.page>
<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.authorFrontendUser.name}
{newsMetaData.news.author}
</f:else>
</f:if>
</f:then>
<f:else>
{newsMetaData.news.author}
</f:else>
</f:if>
</span>
</span>
<span class="date">
<f:format.date format="%d. %B %Y">{newsMetaData.news.lastUpdated}</f:format.date>
</span>
<span class="date">
<f:format.date format="%d. %B %Y">{newsMetaData.news.lastUpdated}</f:format.date>
</span>
<span class="category">
{newsMetaData.category.subtitleWithFallbackToTitle}
</span>
<span class="category">
<a href="{f:uri.page(pageUid: '{newsMetaData.category.uid}')}">
{newsMetaData.category.subtitleWithFallbackToTitle}
</a>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="tx-sgnews-single-container">
<f:if condition="{newsMetaData.news.relatedNews}">
<div class="tx-sgnews-single-relatedNews">
<h2>
<f:translate key="frontend.singleview.relatedArticles" />
</h2>
</section>
<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>
<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.pwCommentsGetCountWithLabel")}</a>
<span>//</span>
<f:translate key="frontend.singleview.readingTime" />
<strong>
<sg:getReadingTime content="{content}" />
</strong>
</p>
<f:alias map="{content: '{f:cObject(typoscriptObjectPath: \'lib.mainContent\')}'}">
<div class="tx-sgnews-single-content">
<p>
<a href="#comments">{f:cObject(typoscriptObjectPath: "lib.pwCommentsGetCountWithLabel")}</a>
<span>//</span>
<f:translate key="frontend.singleview.readingTime" />
<strong>
<sg:getReadingTime content="{content}" />
</strong>
</p>
{content -> f:format.raw()}
</div>
</f:alias>
{content -> f:format.raw()}
</div>
</f:alias>
<hr>
<rx:shariff services="facebook,twitter,googleplus,whatsapp" enableBackend="true" />
</div>
</div>
<rx:shariff services="facebook,twitter,googleplus,whatsapp" enableBackend="true" />
<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="tx-sgnews-footer-browser-previous">
<f:translate key="frontend.singleview.previousArticle" />
</a>
</f:if>
<f:if condition="{newsMetaData.news.relatedNews}">
<div class="tx-sgnews-single-related">
<h3>
<f:translate key="frontend.singleview.relatedArticles" />
</h3>
<f:if condition="{nextNews}">
<a href="{f:uri.page(pageUid: '{nextNews.uid}')}" class="tx-sgnews-footer-browser-next">
<f:translate key="frontend.singleview.nextArticle" />
</a>
</f:if>
<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>
</div>
</sg:extendedIf>
</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>
<div class="tx-sgnews-single-comments">
<div class="tx-sgnews-comments-inner">
<f:cObject typoscriptObjectPath="lib.pwCommentsIndex" />
<hr>
<div class="tx-sgnews-single-comment-form">
<f:flashMessages renderMode="div" />
<f:cObject typoscriptObjectPath="lib.pwCommentsNew" />
<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>
</div>
</div>
</section>
<section class="content light-bg">
<div class="container">
<div class="tx-sgnews-single-comments">
<div class="tx-sgnews-comments-inner">
<f:cObject typoscriptObjectPath="lib.pwCommentsIndex" />
<hr>
<div class="tx-sgnews-single-comment-form">
<f:flashMessages renderMode="div" />
<f:cObject typoscriptObjectPath="lib.pwCommentsNew" />
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</f:section>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment