[TYPO3-core] RFC #16408: Support for Custom Navigation Components

Jeff Segars jsegars at alumni.rice.edu
Wed Nov 17 14:33:16 CET 2010


On 11/17/10 7:28 AM, Stefan Galinski wrote:
> Jeff Segars wrote:
>
>> On 11/15/10 3:33 PM, Stefan Galinski wrote:
>>> Problem:
>>> Currently there is no way to integrate custom navigation components that
>>> are not based on an iframe.
>>>
>>> Solution:
>>> I implemented a solution that is based on a simple registering for each
>>> backend module and an expected directory layout. The components are
>>> loaded on demand to improve the overall performance. It's directly bound
>>> to the new module menu and is always used as a first option.
>>> a
>>> Example:
>>> 1. Register an navigation component
>>>
>>> t3lib_extMgm::addNavigationComponent('tools_txpagetreeM1',
>>> 'typo3-pagetree', array(
>>>       TYPO3.Components.PageTree'
>>> ));
>>>
>>> Parameter 1: Module name
>>> Parameter 2: Name of the navigation component
>>> Parameter 3: ExtDirect Providers
>>>
>>> 2. Create the directory layout
>>>
>>> - myExt
>>>     |- components
>>>        |- pagetree
>>>           |- css
>>>           |- javascript
>>>
>>> All files inside the css and javascript folders are automatically loaded
>>> together with the TYPO3 backend. The component name must not contain the
>>> prefix "typo3-".
>>>
>>> I will add this documentation to the pending documentation page after the
>>> commit.
>>>
>>> How to Test:
>>> Use the attached test extension inside the bugtracker to evaluate the new
>>> functionality. Also the latest developements of the pagetree are already
>>> based on this implementation.
>>>
>>
>> It looks like the patch removes the TYPO3.backend.loadModule() method
>> because of its dependency on the NavigationContainer.  Is there some
>> different way to load a particular module now?
>>
>> Thanks,
>> Jeff
>
> Hi Jeff,
>
> This method wasn't needed anymore since the rewrite of the module menu.
> Steffen just forgot to remove that code. The new method to load a module
> with the designated content url is located in the module menu itself.
> Example:
>
> TYPO3.ModuleMenu.App.showModule("web_layout", "id=8")
>

Perfect.  Thanks for the hint!


More information about the TYPO3-team-core mailing list