[BUGFIX] HMENU rendering uses old tslib_ class names 13/18913/7
authorChristian Kuhn <lolli@schwarzbu.ch>
Thu, 14 Mar 2013 16:39:14 +0000 (17:39 +0100)
committerChristian Kuhn <lolli@schwarzbu.ch>
Sat, 16 Mar 2013 14:22:15 +0000 (15:22 +0100)
commite304a7debd5c1e92ba9fc4bc146416ceb116265b
tree6e1af7085334c5d13b6027084d6b24af0d98472e
parentbd86bd1de9b68ba4e728a995378bebf799bb3311
[BUGFIX] HMENU rendering uses old tslib_ class names

The menu rendering in frontend still instantiates menu classes with
its old tslib_ prefixed names. This is unflexible and a potential
performance issue.

The patch introduces a simple factory instead with a mapping for
existing TypoScript menu types to the implementing classes.
The current variable $menuclasses is obsolete.
Additionally, the naming of three existing classes is adapted to
the correct class names to be in sync with the others.

A method in the factory to register additional menu types will
be added with a second patch.

Change-Id: I3d65258ffe4d30a918705b23349d3facb563c80e
Resolves: #46292
Releases: 6.1, 6.0
Reviewed-on: https://review.typo3.org/18913
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
17 files changed:
typo3/sysext/core/Classes/TypoScript/TemplateService.php
typo3/sysext/core/Migrations/Code/LegacyClassesForIde.php
typo3/sysext/frontend/Classes/ContentObject/HierarchicalMenuContentObject.php
typo3/sysext/frontend/Classes/ContentObject/Menu/AbstractMenuContentObject.php
typo3/sysext/frontend/Classes/ContentObject/Menu/Exception/NoSuchMenuTypeException.php [new file with mode: 0644]
typo3/sysext/frontend/Classes/ContentObject/Menu/GraphicalMenuFoldout.php [deleted file]
typo3/sysext/frontend/Classes/ContentObject/Menu/GraphicalMenuFoldoutContentObject.php [new file with mode: 0644]
typo3/sysext/frontend/Classes/ContentObject/Menu/GraphicalMenuLayers.php [deleted file]
typo3/sysext/frontend/Classes/ContentObject/Menu/GraphicalMenuLayersContentObject.php [new file with mode: 0644]
typo3/sysext/frontend/Classes/ContentObject/Menu/MenuContentObjectFactory.php [new file with mode: 0644]
typo3/sysext/frontend/Classes/ContentObject/Menu/TextMenuLayers.php [deleted file]
typo3/sysext/frontend/Classes/ContentObject/Menu/TextMenuLayersContentObject.php [new file with mode: 0644]
typo3/sysext/frontend/Classes/Exception.php [new file with mode: 0644]
typo3/sysext/frontend/Migrations/Code/ClassAliasMap.php
typo3/sysext/statictemplates/media/scripts/gmenu_foldout.php
typo3/sysext/statictemplates/media/scripts/gmenu_layers.php
typo3/sysext/statictemplates/media/scripts/tmenu_layers.php