Task #57717

Rewriting of links to a another PluginView is broken if calling PluginView queried by TS

Added by Carsten Bleicker over 1 year ago. Updated over 1 year ago.

Status:Closed Start date:2014-04-07
Priority:Must have Due date:
Assigned To:Bastian Waidelich % Done:

0%

Category:TypoScript
Target version:-

Description

Hi,
having a PluginView "SimpleBasket" wich calls BasketController::simpleAction().
Another PluginView "ExtendedBasket" calls BasketController::indexAction().

BasketController->simpleAction() should be available on any page. so i query its pluginView by ts and push it into the page.

so i do:
page = Page {
parts{
simpleBasket = PIPEU.Site:SimpleBasket{
node = ${q(site).find('simplebasket').children('main').filter('[instanceof TYPO3.Neos:PluginView]').first()}
}
}
}

page template: {parts.simpleBasket->f:format->raw()} {content.main->f:format.raw()}

The template of BasketController->simpleAction:
<p>You have currently X items in your <f:link.action action="index">basket</f:link.action></p>

Viewing the frontendpage wich holds the pluginView of simpleBasket (basket/simplebasket.html) i have the pluginView twice on the page wich is correct.
1. the existing as node coming from children('main')
2. the second one added by {parts.simpleBasket->f:format.raw()}

The link action of the template produces two different links:

#1 - the node version: basket.html?--pipeu_site-basket[%40package]=pipeu.site
So this is the link to the page with the pluginView for BasketController::indexAction(). Correct!

#2 - the ts version: basket/simplebasket.html?--typo3_neos_nodetypes-page[%40package]=pipeu.site
This is always a link to the current page. Just switching simpleBasket ts from simpleAction to indexAction.

Why does the same PluginView produces different links?

Carsten

Bildschirmfoto_2014-04-07_um_15.41.40.png (187.7 kB) Carsten Bleicker, 2014-04-07 15:42

History

#1 Updated by Bastian Waidelich over 1 year ago

  • Project changed from Base Distribution to TYPO3.Neos
  • Assigned To set to Bastian Waidelich

#2 Updated by Bastian Waidelich over 1 year ago

  • Category set to TypoScript
  • Status changed from New to Closed

This should be fixed with a correct FlowQuery like

node = ${q(site).find('simplebasket/main').children('[instanceof Your.Package:BasketPlugin]').get(0)} 

see news://lists.typo3.org:119/

Feel free to comment or re-open

Also available in: Atom PDF