Commit 7e278c20 authored by Tomas Norre Mikkelsen's avatar Tomas Norre Mikkelsen
Browse files

Merge branch '227-extend-extension-data-with-schema-tags' into 'develop'

Resolve "Extend extension data with schema tags"

Closes #227

See merge request !225
parents b8aae07c f958d953
Pipeline #2303 passed with stages
in 3 minutes and 10 seconds
...@@ -5,10 +5,13 @@ ...@@ -5,10 +5,13 @@
<dt> <dt>
<f:translate key="author" /> <f:translate key="author" />
</dt> </dt>
<dd>{extension.lastVersion.author.name}</dd> <dd itemprop="creator" itemscope itemtype="http://schema.org/Person">
<span itemprop="name">{extension.lastVersion.author.name}</span>
</dd>
</f:if> </f:if>
<dt>Last update</dt> <dt>Last update</dt>
<dd> <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> <f:format.date format="%d. %b %Y">@{extension.lastVersion.uploadDate}</f:format.date>
</dd> </dd>
<dt> <dt>
...@@ -26,7 +29,7 @@ ...@@ -26,7 +29,7 @@
<dt> <dt>
<f:translate key="category" /> <f:translate key="category" />
</dt> </dt>
<dd> <dd itemprop="applicationSubCategory">
<f:if condition="{extension.lastVersion.emCategory}"> <f:if condition="{extension.lastVersion.emCategory}">
<f:then> <f:then>
<f:translate key="category_{extension.lastVersion.emCategory}" /> <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" /> <f:layout name="Default" />
...@@ -19,7 +19,9 @@ ...@@ -19,7 +19,9 @@
<h4>Owner of this extension</h4> <h4>Owner of this extension</h4>
<p> <p>
<strong>Name:</strong> {owner.name}<br> <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} <strong>Username:</strong> {owner.username}
</p> </p>
</div> </div>
...@@ -36,80 +38,92 @@ ...@@ -36,80 +38,92 @@
</div> </div>
</f:if> </f:if>
<div class="row mt-3 align-items-center"> <div itemscope itemtype="http://schema.org/SoftwareApplication">
<div class="col-md-9"> <div hidden itemprop="applicationCategory">TYPO3 Extension</div>
<header> <div hidden itemprop="applicationSuite">TYPO3</div>
<h1> <div hidden itemprop="downloadUrl">
<terfe2:extensionIcon version="{extension.lastVersion}" alt="{extension.lastVersion.title}" class="ter-ext-icon" /> <f:uri.action action="download" absolute="1" controller="Extension" arguments="{extension: extension}" />
{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>
<div class="col-md-3"> <div hidden itemprop="fileFormat">application/zip</div>
<f:if condition="{extension.lastVersion.reviewState} != -1"> <div hidden itemprop="operatingSystem">Windows,Linux,MacOS</div>
<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> <div class="row mt-3 align-items-center">
</f:link.action> <div class="col-md-9">
</f:if> <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>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-8"> <div class="col-md-8">
<p>{extension.lastVersion.description}</p> <p itemprop="description">{extension.lastVersion.description}</p>
<h3> <h3>
<f:render partial="VersionSupportForTypo3" arguments="{version: extension.lastVersion}" /> <f:render partial="VersionSupportForTypo3" arguments="{version: extension.lastVersion}" />
</h3> </h3>
<f:if condition="{extension.tags}"> <f:if condition="{extension.tags}">
<h3>Tags</h3> <h3>Tags</h3>
<p class="tags"> <p class="tags">
<f:for each="{extension.tags}" as="tag"> <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:link.page class="btn btn-info mb-1" pageUid="{settings.pages.searchResultsPid}" additionalParams="{tx_solr: {filter: {0: 'tags:{tag.title}'}}}">
</f:for> <strong>#{tag.title}</strong>
</p> </f:link.page>
</f:if> </f:for>
<h3> </p>
<f:translate key="last_upload_comment" /> <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>
</h3> </f:if>
<p>
<f:format.nl2br>{extension.lastVersion.uploadComment}</f:format.nl2br>
</p>
<f:if condition="{versionHistory->f:count()} >= 1}">
<h3> <h3>
<f:translate key="downloads_by_version" /> <f:translate key="last_upload_comment" />
</h3> </h3>
<script type="text/javascript"> <p itemprop="releaseNotes">
var versionChartData = {extension.downloadsByVersionsAsJson -> f:format.raw()}; <f:format.nl2br>{extension.lastVersion.uploadComment}</f:format.nl2br>
</script> </p>
<div id="versionChart"> <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> </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> </div>
</div>
<f:render partial="InstallationHowTo" arguments="{_all}" /> <f:render partial="InstallationHowTo" arguments="{_all}" />
<f:if condition="{versionHistory->f:count()} >= 1"> <f:if condition="{versionHistory->f:count()} >= 1">
<h3> <h3>
<f:translate key="version_history" /> <f:translate key="version_history" />
</h3> </h3>
<div class="ter-ext-single-versionhistory ter-toggle-hide"> <div class="ter-ext-single-versionhistory ter-toggle-hide">
<f:render partial="ExtensionUploadHistoryList" arguments="{versionHistory: extension.reverseVersionsByVersionNumber, extension: extension}" /> <f:render partial="ExtensionUploadHistoryList" arguments="{versionHistory: extension.reverseVersionsByVersionNumber, extension: extension}" />
</div> </div>
</f:if> </f:if>
<div class="socialshareprivacy"></div>
<div class="socialshareprivacy"></div>
</div>
<f:link.page pageUid="1" class="btn btn-success mb-3"> <f:link.page pageUid="1" class="btn btn-success mb-3">
<strong> <strong>
<f:translate key="back_to_extension_list" /> <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