Commit 850b6507 authored by Thomas Löffler's avatar Thomas Löffler

Adds schema items to detail view

parent b8aae07c
Pipeline #2300 passed with stages
in 1 minute and 30 seconds
......@@ -5,10 +5,13 @@
<dt>
<f:translate key="author" />
</dt>
<dd>{extension.lastVersion.author.name}</dd>
<dd itemprop="creator" itemtype="http://schema.org/Person">
<span itemprop="name">{extension.lastVersion.author.name}</span>
</dd>
</f:if>
<dt>Last update</dt>
<dd>
<span hidden itemprop="dateCreated"><f:format.date format="c">@{extension.lastVersion.uploadDate}</f:format.date></span>
<f:format.date format="%d. %b %Y">@{extension.lastVersion.uploadDate}</f:format.date>
</dd>
<dt>
......@@ -26,7 +29,7 @@
<dt>
<f:translate key="category" />
</dt>
<dd>
<dd itemprop="applicationSubCategory">
<f:if condition="{extension.lastVersion.emCategory}">
<f:then>
<f:translate key="category_{extension.lastVersion.emCategory}" />
......
<html xmlns:terfe2="http://typo3.org/ns/T3o/TerFe2/ViewHelpers" xmlns:tl="http://typo3.org/ns/T3o/T3olayout/ViewHelpers">
<html xmlns:terfe2="http://typo3.org/ns/T3o/TerFe2/ViewHelpers" xmlns:tl="http://typo3.org/ns/T3o/T3olayout/ViewHelpers" xmlns:f="http://www.w3.org/1999/html">
<f:layout name="Default" />
......@@ -19,7 +19,9 @@
<h4>Owner of this extension</h4>
<p>
<strong>Name:</strong> {owner.name}<br>
<strong>Email:</strong> <f:link.email email="{owner.email}">{owner.email}</f:link.email><br>
<strong>Email:</strong>
<f:link.email email="{owner.email}">{owner.email}</f:link.email>
<br>
<strong>Username:</strong> {owner.username}
</p>
</div>
......@@ -36,80 +38,88 @@
</div>
</f:if>
<div class="row mt-3 align-items-center">
<div class="col-md-9">
<header>
<h1>
<terfe2:extensionIcon version="{extension.lastVersion}" alt="{extension.lastVersion.title}" class="ter-ext-icon" />
{extension.lastVersion.title}
<small class="text-muted">
<br />{extension.extKey} /
<span class="ter-ext-state-{extension.lastVersion.state}">{extension.lastVersion.state}</span>
</small>
</h1>
</header>
</div>
<div class="col-md-3">
<f:if condition="{extension.lastVersion.reviewState} != -1">
<f:link.action class="btn btn-primary btn-lg pull-right" controller="Extension" action="download" arguments="{extension : extension, versionString : extension.lastVersion.versionString, format : 'zip'}">
<strong>Download {extension.lastVersion.versionString}</strong>
</f:link.action>
</f:if>
<div itemscope itemtype="http://schema.org/SoftwareApplication">
<div class="row mt-3 align-items-center">
<div class="col-md-9">
<header>
<h1>
<terfe2:extensionIcon version="{extension.lastVersion}" alt="{extension.lastVersion.title}" class="ter-ext-icon" />
<span itemprop="alternateName">{extension.lastVersion.title}</span>
<small class="text-muted">
<br /><span itemprop="name">{extension.extKey}</span> /
<span class="ter-ext-state-{extension.lastVersion.state}">{extension.lastVersion.state}</span>
</small>
</h1>
</header>
</div>
<div class="col-md-3">
<f:if condition="{extension.lastVersion.reviewState} != -1">
<f:link.action class="btn btn-primary btn-lg pull-right" controller="Extension" action="download" arguments="{extension : extension, versionString : extension.lastVersion.versionString, format : 'zip'}">
<strong>Download <span itemprop="softwareVersion">{extension.lastVersion.versionString}</span></strong>
</f:link.action>
</f:if>
</div>
</div>
</div>
<div hidden itemprop="applicationCategory">TYPO3 Extension</div>
<div hidden itemprop="applicationSuite">TYPO3</div>
<div hidden itemprop="downloadUrl"><f:uri.action action="download" absolute="1" controller="Extension" arguments="{extension: extension}" /></div>
<div hidden itemprop="fileFormat">application/zip</div>
<div class="row mb-3">
<div class="col-md-8">
<p>{extension.lastVersion.description}</p>
<h3>
<f:render partial="VersionSupportForTypo3" arguments="{version: extension.lastVersion}" />
</h3>
<f:if condition="{extension.tags}">
<h3>Tags</h3>
<p class="tags">
<f:for each="{extension.tags}" as="tag">
<f:link.page class="btn btn-info mb-1" pageUid="{settings.pages.searchResultsPid}" additionalParams="{tx_solr: {filter: {0: 'tags:{tag.title}'}}}"><strong>#{tag.title}</strong></f:link.page>
</f:for>
</p>
</f:if>
<h3>
<f:translate key="last_upload_comment" />
</h3>
<p>
<f:format.nl2br>{extension.lastVersion.uploadComment}</f:format.nl2br>
</p>
<f:if condition="{versionHistory->f:count()} >= 1}">
<div class="row mb-3">
<div class="col-md-8">
<p itemprop="description">{extension.lastVersion.description}</p>
<h3>
<f:render partial="VersionSupportForTypo3" arguments="{version: extension.lastVersion}" />
</h3>
<f:if condition="{extension.tags}">
<h3>Tags</h3>
<p class="tags">
<f:for each="{extension.tags}" as="tag">
<f:link.page class="btn btn-info mb-1" pageUid="{settings.pages.searchResultsPid}" additionalParams="{tx_solr: {filter: {0: 'tags:{tag.title}'}}}">
<strong>#{tag.title}</strong>
</f:link.page>
</f:for>
</p>
<div hidden itemprop="keywords"><f:for each="{extension.tags}" as="tag" iteration="it">{tag.title}<f:if condition="{it.isLast}"><f:else>,</f:else></f:if></f:for></div>
</f:if>
<h3>
<f:translate key="downloads_by_version" />
<f:translate key="last_upload_comment" />
</h3>
<script type="text/javascript">
var versionChartData = {extension.downloadsByVersionsAsJson -> f:format.raw()};
</script>
<div id="versionChart">
<p itemprop="releaseNotes">
<f:format.nl2br>{extension.lastVersion.uploadComment}</f:format.nl2br>
</p>
<f:if condition="{versionHistory->f:count()} >= 1}">
<h3>
<f:translate key="downloads_by_version" />
</h3>
<script type="text/javascript">
var versionChartData = {extension.downloadsByVersionsAsJson -> f:format.raw()};
</script>
<div id="versionChart">
</div>
</f:if>
</div>
<div class="col-md-4">
<div class="alert alert-info">
<f:render partial="ExtensionSingleInfo" arguments="{extension:extension, settings:settings, owner:owner, flattrUrl:flattrUrl, documentationLink:documentationLink, qualityLinkNotBroken:qualityLinkNotBroken, urlToQualityServer:urlToQualityServer}" />
</div>
</f:if>
</div>
<div class="col-md-4">
<div class="alert alert-info">
<f:render partial="ExtensionSingleInfo" arguments="{extension:extension, settings:settings, owner:owner, flattrUrl:flattrUrl, documentationLink:documentationLink, qualityLinkNotBroken:qualityLinkNotBroken, urlToQualityServer:urlToQualityServer}" />
</div>
</div>
</div>
<f:render partial="InstallationHowTo" arguments="{_all}" />
<f:render partial="InstallationHowTo" arguments="{_all}" />
<f:if condition="{versionHistory->f:count()} >= 1">
<h3>
<f:translate key="version_history" />
</h3>
<div class="ter-ext-single-versionhistory ter-toggle-hide">
<f:render partial="ExtensionUploadHistoryList" arguments="{versionHistory: extension.reverseVersionsByVersionNumber, extension: extension}" />
</div>
</f:if>
<div class="socialshareprivacy"></div>
<f:if condition="{versionHistory->f:count()} >= 1">
<h3>
<f:translate key="version_history" />
</h3>
<div class="ter-ext-single-versionhistory ter-toggle-hide">
<f:render partial="ExtensionUploadHistoryList" arguments="{versionHistory: extension.reverseVersionsByVersionNumber, extension: extension}" />
</div>
</f:if>
<div class="socialshareprivacy"></div>
</div>
<f:link.page pageUid="1" class="btn btn-success mb-3">
<strong>
<f:translate key="back_to_extension_list" />
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment