[TYPO3-core] RFC #11224: Special menu directory only renders 1st level if special.value is a mount point

Xavier Perseguers typo3 at perseguers.ch
Sat May 30 15:19:31 CEST 2009


Hi,

This is a SVN patch request with step-by-step explanation on how-to 
reproduce.

Type: Bugfix

Bugtracker reference:
http://bugs.typo3.org/view.php?id=11224

Branches:
trunk (previous may certainly apply too)

Problem:
Create a directory menu with special.value being a mount point 
(Substitute Mount Point (this page) with Mounted page is not set). E.g.,

lib.menu = HMENU
lib.menu.special = directory
lib.menu.special.value = 6

lib.menu.1 = TMENU
lib.menu.1 {
     expAll = 0
     # standard configuration for NO, CUR, ...
}
lib.menu.2 < lib.menu.1
lib.menu.3 < lib.menu.2

1st level is shown but once an entry from 1st level become active, 2nd 
level (and of course 3rd level will never be shown).



Solution:
Make sure to "slide-down" mount point information (_MP_PARAM) to 
children record in the rootline otherwise isNext() method will never 
return TRUE and submenus won't be generated.



Additional information:
Patch contains variable substitution from existing code in the part that 
was modified in order to make the block of code more readable.



How-to reproduce:
Set-up your environment with e.g.,

root
|-- [1] page1
| `-- [2] page1.1
| `-- [3] page1.1.1
|
|-- [4] page2
| `-- [5] page2.1
|
|-- [6] pageMP (--> 7)
|
`-- [7] sysfolder
     |-- [8] page3
     | `-- [9] page3.1
     | `-- [10] page3.1.1
     |
     `-- [11] page4

Create your menu with TS from this bug's description and let

lib.menu.special.value = 1

You see a menu with

page1
page2

Once you activate page1, you see next level:

page1
   page1.1
page2

and same behaviour with page2 active or page1.1 active. Every active 
page lets you see its children.

Now change entry point:

lib.menu.special.value = 6

You get a menu

page3
page4

But when you activate page3, you don't see page3.1

Now apply patch and test again. Normal menu (page1, page2) still works, 
menu with mount point now shows

page3
   page3.1
page4

When page3 is active and shows

page3
   page3.1
     page3.1.1
page4

when page3.1 is active.

-- 
Xavier Perseguers
http://xavier.perseguers.ch/en

One contribution a day keeps the fork away
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 11224.diff
Url: http://lists.netfielders.de/pipermail/typo3-team-core/attachments/20090530/fae27d80/attachment.txt 


More information about the TYPO3-team-core mailing list