Add Add-To-Basket button again and cleanup Fluid
This commit is contained in:
parent
b561a0e737
commit
b12d76221a
|
@ -84,9 +84,6 @@ class BasketController extends AbstractController
|
|||
*/
|
||||
public function basketAction()
|
||||
{
|
||||
$this->requestData = GeneralUtility::_GPmerged('tx_dlf');
|
||||
unset($this->requestData['__referrer'], $this->requestData['__trustedProperties']);
|
||||
|
||||
$basket = $this->getBasketData();
|
||||
|
||||
// action remove from basket
|
||||
|
|
|
@ -78,6 +78,7 @@
|
|||
</settings.getTitle>
|
||||
<settings.basketButton>
|
||||
<TCEforms>
|
||||
<onChange>reload</onChange>
|
||||
<exclude>1</exclude>
|
||||
<label>LLL:EXT:dlf/Resources/Private/Language/locallang_be.xlf:flexform.showBasketButton</label>
|
||||
<config>
|
||||
|
@ -88,6 +89,7 @@
|
|||
</settings.basketButton>
|
||||
<settings.targetBasket>
|
||||
<TCEforms>
|
||||
<displayCond>FIELD:settings.basketButton:REQ:true</displayCond>
|
||||
<exclude>1</exclude>
|
||||
<label>LLL:EXT:dlf/Resources/Private/Language/locallang_be.xlf:flexform.targetBasket</label>
|
||||
<config>
|
||||
|
@ -96,7 +98,7 @@
|
|||
<allowed>pages</allowed>
|
||||
<size>1</size>
|
||||
<maxitems>1</maxitems>
|
||||
<minitems>0</minitems>
|
||||
<minitems>1</minitems>
|
||||
</config>
|
||||
</TCEforms>
|
||||
</settings.targetBasket>
|
||||
|
|
|
@ -26,3 +26,10 @@ F-1-4 Facet Search
|
|||
|
||||
F-1-5 Search In Document
|
||||
------------------------
|
||||
|
||||
|
||||
F-10 Basket
|
||||
==========
|
||||
|
||||
In the ListView it is possible to place an "Add-To-Basket" button. The list entry will be put in a basket.
|
||||
The basket itself must be configures on the same or a separate page.
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
<f:comment>
|
||||
<!--
|
||||
* (c) Kitodo. Key to digital objects e.V. <contact@kitodo.org>
|
||||
*
|
||||
* This file is part of the Kitodo and TYPO3 projects.
|
||||
*
|
||||
* @license GNU General Public License version 3 or later.
|
||||
* For the full copyright and license information, please read the
|
||||
* LICENSE.txt file that was distributed with this source code.
|
||||
-->
|
||||
</f:comment>
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
|
||||
xmlns:kitodo="http://typo3.org/ns/Kitodo/Dlf/ViewHelpers"
|
||||
data-namespace-typo3-fluid="true">
|
||||
|
||||
<f:if condition="{settings.basketButton} && {settings.targetBasket}">
|
||||
<div>
|
||||
<f:link.action pageUid="{settings.targetBasket}"
|
||||
action="add"
|
||||
controller="Basket"
|
||||
additionalParams="{'tx_dlf[id]':result.uid, 'tx_dlf[startpage]':result.page, 'tx_dlf[addToBasket]':'list'}">
|
||||
<f:translate key="AddToBasket"/>
|
||||
</f:link.action>
|
||||
</div>
|
||||
</f:if>
|
||||
|
||||
</html>
|
|
@ -1,81 +0,0 @@
|
|||
<f:comment>
|
||||
<!--
|
||||
* (c) Kitodo. Key to digital objects e.V. <contact@kitodo.org>
|
||||
*
|
||||
* This file is part of the Kitodo and TYPO3 projects.
|
||||
*
|
||||
* @license GNU General Public License version 3 or later.
|
||||
* For the full copyright and license information, please read the
|
||||
* LICENSE.txt file that was distributed with this source code.
|
||||
-->
|
||||
</f:comment>
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
|
||||
xmlns:kitodo="http://typo3.org/ns/Kitodo/Dlf/ViewHelpers"
|
||||
data-namespace-typo3-fluid="true">
|
||||
|
||||
<f:debug>{_all}</f:debug>
|
||||
|
||||
<f:for each="{documentList}" key="entryIndex" as="entry" iteration="docIterator">
|
||||
<f:variable name="currentPage" value="{widgetPage.currentPage - 1}" />
|
||||
<f:variable name="pageOffset" value="{settings.limit * currentPage}" />
|
||||
<f:variable name="allDocuments" value="{documents->f:count()}" />
|
||||
<f:variable name="numDocuments" value="{pageOffset + settings.limit}" />
|
||||
|
||||
<li value="{settings.limit * pageOffset + docIterator.index}">
|
||||
<div class="tx-dlf-listview-thumbnail">
|
||||
<img alt="{metadataList.{entryIndex}.thumbnail.alt}" src="{metadataList.{entryIndex}.thumbnail.src}" />
|
||||
</div>
|
||||
|
||||
<dl>
|
||||
<f:for each="{metadataList.{entryIndex}.metadata}" key="indexName" as="field">
|
||||
<stdWrap wrap="{field.wrap}">
|
||||
<kitodo:stdWrap wrap="{field.label.wrap}">{field.label.value}</kitodo:stdWrap>
|
||||
<f:for each="{field.values}" as="value">
|
||||
<stdWrap wrap="{value.wrap}">
|
||||
<f:if condition="{indexName} == 'title'">
|
||||
<f:then>
|
||||
<f:if condition="{logicalPage}">
|
||||
<f:then>
|
||||
<f:variable name="params" value="{
|
||||
'tx_dlf[id]':entry.uid,
|
||||
'tx_dlf[page]':entry.page,
|
||||
'tx_dlf[logicalPage]':logicalPage}" />
|
||||
</f:then>
|
||||
<f:else>
|
||||
<f:variable name="params" value="{
|
||||
'tx_dlf[id]':entry.uid,
|
||||
'tx_dlf[page]':entry.page}" />
|
||||
</f:else>
|
||||
</f:if>
|
||||
|
||||
<f:link.page pageUid="{settings.targetPid}"
|
||||
additionalParams="{params}">
|
||||
{value.value}
|
||||
</f:link.page>
|
||||
</f:then>
|
||||
<f:else>
|
||||
{value.value}
|
||||
</f:else>
|
||||
</f:if>
|
||||
</stdWrap>
|
||||
</f:for>
|
||||
</stdWrap>
|
||||
</f:for>
|
||||
</dl>
|
||||
|
||||
<div class="tx-dlf-listview-preview">{entry.preview}</div>
|
||||
|
||||
<ol>
|
||||
<f:render partial="ListView/SubEntries" arguments="{_all}" />
|
||||
</ol>
|
||||
|
||||
<div>
|
||||
<f:if condition="{settings.basketButton} && {settings.targetBasket}">
|
||||
<f:link.page pageUid="{settings.targetBasket}"
|
||||
additionalParams="{'tx_dlf[id]':entry.uid, 'tx_dlf[startpage]':entry.page, 'tx_dlf[addToBasket]':'list', 'tx_dlf_basket[action]':'add', 'tx_dlf_basket[controller]':'Basket'}">
|
||||
<f:translate key="AddToBasket"/>
|
||||
</f:link.page>
|
||||
</f:if>
|
||||
</div>
|
||||
</li>
|
||||
</f:for>
|
|
@ -58,6 +58,9 @@
|
|||
</dd>
|
||||
</dl>
|
||||
</f:link.page>
|
||||
|
||||
<f:render partial="Basket/AddToBasket" arguments="{result: document}" />
|
||||
|
||||
<f:if condition="{document.children} || {document.searchResults}">
|
||||
<button class="tx-dlf-morevolumes" title="{f:translate(key='listview.moredetails.toggle')}"><f:translate key='listview.moredetails.toggle' /></button>
|
||||
</f:if>
|
||||
|
@ -110,6 +113,9 @@
|
|||
</dd>
|
||||
</dl>
|
||||
</f:link.page>
|
||||
|
||||
<f:render partial="Basket/AddToBasket" arguments="{result: child}" />
|
||||
|
||||
</li>
|
||||
</f:else>
|
||||
</f:if>
|
||||
|
@ -121,48 +127,51 @@
|
|||
<ol class="tx-dlf-volume">
|
||||
<f:for each="{document.searchResults}" as="result" iteration="resultIterator">
|
||||
<li value="{resultIterator.cycle}" class="pageresult">
|
||||
<f:link.page
|
||||
pageUid="{settings.targetPidPageView}"
|
||||
additionalParams="{tx_dlf:{page:'{result.page}', double:'0', id:'{document.uid}', pagegrid:'0', highlight_word: '{result.highlight_word}'}}"
|
||||
class=""
|
||||
title="{f:if(condition:'{result.title}', then:'{result.title}', else:'[{document.title}]')}, Seite {result.page}">
|
||||
<div class="tx-dlf-listview-thumbnail">
|
||||
<f:if condition="{result.thumbnail}">
|
||||
<img src="{result.thumbnail}" alt="Vorschaubild von {f:if(condition:'{result.title}', then:'{result.title}', else:'[{document.title}]')}" />
|
||||
</f:if>
|
||||
</div>
|
||||
<dl>
|
||||
<f:if condition="{result.title}">
|
||||
<f:then>
|
||||
<dt class="tx-dlf-title"><f:translate key='LLL:EXT:dlf/Resources/Private/Language/locallang_metadata.xlf:metadata.title' /></dt>
|
||||
<dd class="tx-dlf-title">{result.title}</dd>
|
||||
</f:then>
|
||||
</f:if>
|
||||
<f:if condition="{result.structure} != 'page'">
|
||||
<dt class="tx-dlf-type"><f:translate key='LLL:EXT:dlf/Resources/Private/Language/locallang_metadata.xlf:metadata.type' /></dt>
|
||||
<dd class="tx-dlf-type">
|
||||
<f:translate key='LLL:EXT:dlf/Resources/Private/Language/locallang_structure.xlf:structure.{result.structure}' />
|
||||
</dd>
|
||||
</f:if>
|
||||
<dt class="tx-dlf-page"><f:translate key='LLL:EXT:dlf/Resources/Private/Language/locallang_structure.xlf:structure.page' /></dt>
|
||||
<dd class="tx-dlf-page">{result.page}</dd>
|
||||
<f:for each="{listedMetadata}" as="metadata">
|
||||
<f:if condition="{result.metadata.{metadata.indexName}.0} && {metadata.indexName} != 'type' && {metadata.indexName} != 'title'">
|
||||
<dt class="tx-dlf-metadata-{metadata.indexName}">{metadata.label}</dt>
|
||||
<f:for each="{result.metadata.{metadata.indexName}}" as="metadataentry">
|
||||
<dd class="tx-dlf-metadata-{metadata.indexName}">
|
||||
{metadataentry}
|
||||
</dd>
|
||||
</f:for>
|
||||
<f:link.page
|
||||
pageUid="{settings.targetPidPageView}"
|
||||
additionalParams="{tx_dlf:{page:'{result.page}', double:'0', id:'{document.uid}', pagegrid:'0', highlight_word: '{result.highlight_word}'}}"
|
||||
class=""
|
||||
title="{f:if(condition:'{result.title}', then:'{result.title}', else:'[{document.title}]')}, Seite {result.page}">
|
||||
<div class="tx-dlf-listview-thumbnail">
|
||||
<f:if condition="{result.thumbnail}">
|
||||
<img src="{result.thumbnail}" alt="Vorschaubild von {f:if(condition:'{result.title}', then:'{result.title}', else:'[{document.title}]')}" />
|
||||
</f:if>
|
||||
</f:for>
|
||||
</dl>
|
||||
<div class="tx-dlf-listview-preview">
|
||||
<f:if condition="{result.snippet}">
|
||||
<p class="textsnippet">[...] <f:format.raw>{result.snippet}</f:format.raw> [...]</p>
|
||||
</f:if>
|
||||
</div>
|
||||
</f:link.page>
|
||||
</div>
|
||||
<dl>
|
||||
<f:if condition="{result.title}">
|
||||
<f:then>
|
||||
<dt class="tx-dlf-title"><f:translate key='LLL:EXT:dlf/Resources/Private/Language/locallang_metadata.xlf:metadata.title' /></dt>
|
||||
<dd class="tx-dlf-title">{result.title}</dd>
|
||||
</f:then>
|
||||
</f:if>
|
||||
<f:if condition="{result.structure} != 'page'">
|
||||
<dt class="tx-dlf-type"><f:translate key='LLL:EXT:dlf/Resources/Private/Language/locallang_metadata.xlf:metadata.type' /></dt>
|
||||
<dd class="tx-dlf-type">
|
||||
<f:translate key='LLL:EXT:dlf/Resources/Private/Language/locallang_structure.xlf:structure.{result.structure}' />
|
||||
</dd>
|
||||
</f:if>
|
||||
<dt class="tx-dlf-page"><f:translate key='LLL:EXT:dlf/Resources/Private/Language/locallang_structure.xlf:structure.page' /></dt>
|
||||
<dd class="tx-dlf-page">{result.page}</dd>
|
||||
<f:for each="{listedMetadata}" as="metadata">
|
||||
<f:if condition="{result.metadata.{metadata.indexName}.0} && {metadata.indexName} != 'type' && {metadata.indexName} != 'title'">
|
||||
<dt class="tx-dlf-metadata-{metadata.indexName}">{metadata.label}</dt>
|
||||
<f:for each="{result.metadata.{metadata.indexName}}" as="metadataentry">
|
||||
<dd class="tx-dlf-metadata-{metadata.indexName}">
|
||||
{metadataentry}
|
||||
</dd>
|
||||
</f:for>
|
||||
</f:if>
|
||||
</f:for>
|
||||
</dl>
|
||||
<div class="tx-dlf-listview-preview">
|
||||
<f:if condition="{result.snippet}">
|
||||
<p class="textsnippet">[...] <f:format.raw>{result.snippet}</f:format.raw> [...]</p>
|
||||
</f:if>
|
||||
</div>
|
||||
</f:link.page>
|
||||
|
||||
<f:render partial="Basket/AddToBasket" arguments="{result: {uid:document.uid, page: result.page}}" />
|
||||
|
||||
</li>
|
||||
</f:for>
|
||||
</ol>
|
||||
|
@ -170,6 +179,7 @@
|
|||
</li>
|
||||
</f:for>
|
||||
</ol>
|
||||
|
||||
</f:widget.paginate>
|
||||
|
||||
</html>
|
||||
|
|
|
@ -1,72 +0,0 @@
|
|||
<f:comment>
|
||||
<!--
|
||||
* (c) Kitodo. Key to digital objects e.V. <contact@kitodo.org>
|
||||
*
|
||||
* This file is part of the Kitodo and TYPO3 projects.
|
||||
*
|
||||
* @license GNU General Public License version 3 or later.
|
||||
* For the full copyright and license information, please read the
|
||||
* LICENSE.txt file that was distributed with this source code.
|
||||
-->
|
||||
</f:comment>
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
|
||||
xmlns:kitodo="http://typo3.org/ns/Kitodo/Dlf/ViewHelpers"
|
||||
data-namespace-typo3-fluid="true">
|
||||
|
||||
<f:debug>{_all}</f:debug>
|
||||
<f:for each="{entry.subparts}" key="subentryIndex" as="subentry">
|
||||
<li>
|
||||
<div class="tx-dlf-listview-thumbnail">
|
||||
<img alt="{metadataList.{entryIndex}.subparts.{subentryIndex}.thumbnail.alt}"
|
||||
src="{metadataList.{entryIndex}.subparts.{subentryIndex}.thumbnail.src}}" />
|
||||
</div>
|
||||
<dl>
|
||||
<f:for each="{metadataList.{entryIndex}.subparts.{subentryIndex}.metadata}" key="subentryIndexName" as="subentryField">
|
||||
<kitodo:stdWrap wrap="{subentryField.wrap}">
|
||||
<kitodo:stdWrap wrap="{subentryField.label.wrap}">{subentryField.label.value}</kitodo:stdWrap>
|
||||
<f:for each="{subentryField.values}" as="value">
|
||||
<kitodo:stdWrap wrap="{value.wrap}">
|
||||
<f:if condition="{subentryIndexName} == 'title'">
|
||||
<f:then>
|
||||
<f:if condition="{logicalPage}">
|
||||
<f:then>
|
||||
<f:variable name="params" value="{
|
||||
'tx_dlf[id]':subentry.uid,
|
||||
'tx_dlf[page]':subentry.page,
|
||||
'tx_dlf[highlight_word]':highlightWord
|
||||
'tx_dlf[logicalPage]':logicalPage}" />
|
||||
</f:then>
|
||||
<f:else>
|
||||
<f:variable name="params" value="{
|
||||
'tx_dlf[id]':subentry.uid,
|
||||
'tx_dlf[page]':subentry.page,
|
||||
'tx_dlf[highlight_word]':highlightWord}" />
|
||||
</f:else>
|
||||
</f:if>
|
||||
|
||||
<f:link.page pageUid="{settings.targetPid}"
|
||||
additionalParams="{params}"
|
||||
noCacheHash = "{f:if(condition:'{documentList.metadata.searchString}', then: 'false', else: 'true')}">
|
||||
{value.value}
|
||||
</f:link.page>
|
||||
</f:then>
|
||||
<f:else>
|
||||
{value.value}
|
||||
</f:else>
|
||||
</f:if>
|
||||
</kitodo:stdWrap>
|
||||
</f:for>
|
||||
</kitodo:stdWrap>
|
||||
</f:for>
|
||||
</dl>
|
||||
<div class="tx-dlf-listview-preview">{subentry.preview}</div>
|
||||
</li>
|
||||
<div>
|
||||
<f:if condition="{settings.basketButton} && {settings.targetBasket}">
|
||||
<f:link.page pageUid="{settings.targetBasket}"
|
||||
additionalParams="{'tx_dlf[id]':entry.uid, 'tx_dlf[startpage]':subentry.page, 'tx_dlf[endpage]':subentry.page, 'tx_dlf[logId]':subentry.sid, 'tx_dlf[addToBasket]':'subentry', 'tx_dlf_basket[action]':'add', 'tx_dlf_basket[controller]':'Basket'}">
|
||||
<f:translate key="AddToBasket"/>
|
||||
</f:link.page>
|
||||
</f:if>
|
||||
</div>
|
||||
</f:for>
|
Loading…
Reference in New Issue