AbstractMenuContentObject uses DefaultJavaScriptAssetTrait
Generating navigation/menus from TypoScript
The HMENU content object uses this (or more precisely one of the extension classes). Among others the class generates an array of menu items. Thereafter functions from the subclasses are called. The class is always used through extension classes like TextMenuContentObject.
Table of Contents
Constants
- customItemStates = [ // IFSUB is TRUE if there exist submenu items to the current item 'IFSUB', 'ACT', // ACTIFSUB is TRUE if there exist submenu items to the current item and the current item is active 'ACTIFSUB', // CUR is TRUE if the current page equals the item here! 'CUR', // CURIFSUB is TRUE if there exist submenu items to the current item and the current page equals the item here! 'CURIFSUB', 'USR', 'SPC', 'USERDEF1', 'USERDEF2', ]
Properties
- $parent_cObj : ContentObjectRenderer
- Loaded with the parent cObj-object when a new HMENU is made
- $alternativeMenuTempArray : array<string|int, mixed>
- Can be set to contain menu item arrays for sub-levels.
- $alwaysActivePIDlist : array<string|int, int>
- $conf : array<string|int, mixed>
- HMENU configuration
- $defaultFrontendJavaScriptFile : string
- $entryLevel : int
- 0 = rootFolder
- $excludedDoktypes : array<string|int, int>
- Doktypes that define which should not be included in a menu
- $hash : string
- $I : array<string|int, mixed>
- $id : int
- The base page-id of the menu.
- $mconf : array<string|int, mixed>
- xMENU configuration (TMENU etc)
- $menuArr : array<string|int, array<string|int, mixed>>
- The array of menuItems which is built
- $menuNumber : int
- tells you which menu number this is. This is important when getting data from the setup
- $MP_array : array<string|int, string>
- accumulation of mount point data
- $nextActive : string
- Holds the page uid of the NEXT page in the root line from the page pointed to by entryLevel; Used to expand the menu automatically if in a certain root line.
- $parentMenuArr : array<string|int, mixed>
- $parentMenuArrItemKey : int|null
- Array key of the parentMenuItem in the parentMenuArr, if this menu is a subMenu.
- $request : ServerRequestInterface|null
- $result : array<string|int, mixed>
- $rL_uidRegister : array<string|int, mixed>
- Is filled with an array of page uid numbers + RL parameters which are in the current root line (used to evaluate whether a menu item is in active state)
- $sys_page : PageRepository
- $tmpl : TemplateService
- $WMcObj : ContentObjectRenderer
- $WMmenuItems : int
- $WMresult : string
- $WMsubmenuObjSuffixes : array<string|int, array<string|int, mixed>>
Methods
- filterMenuPages() : bool
- Checks if a page is OK to include in the final menu item array. Pages can be excluded if the doktype is wrong, if they are hidden in navigation, have a uid in the list of banned uids etc.
- generate() : mixed
- Generates the the menu data.
- getParentContentObject() : ContentObjectRenderer
- Returns the parent content object
- getParentMenuArr() : array<string|int, mixed>
- Get the parentMenuArr, if this is subMenu.
- getParentMenuItem() : array<string|int, mixed>|null
- Get the parentMenuItem from the parentMenuArr, if this is a subMenu
- getSysPage() : PageRepository
- Returns the sys_page object
- makeMenu() : mixed
- Creates the menu in the internal variables, ready for output.
- setParentMenu() : mixed
- Set the parentMenuArr and key to provide the parentMenu information to the subMenu, special fur IProcFunc and itemArrayProcFunc user functions.
- start() : bool
- The initialization of the object. This just sets some internal variables.
- writeMenu() : string
- accessKey() : array<string|int, mixed>
- Creates an access-key for a TMENU menu item based on the menu item titles first letter
- addDefaultFrontendJavaScript() : void
- determineOriginalShortcutPage() : array<string|int, mixed>
- Determines original shortcut destination in page overlays.
- getBannedUids() : array<string|int, mixed>
- Returns an array of banned UIDs (from excludeUidList)
- getCache() : FrontendInterface
- getCurrentLanguageAspect() : LanguageAspect
- getCurrentSite() : Site
- Returns the currently configured "site" if a site is configured (= resolved) in the current request.
- getDoktypeExcludeWhere() : string
- Returns where clause part to exclude 'not in menu' pages
- getMPvar() : string
- Return MPvar string for entry $key in ->menuArr
- getPageTitle() : string
- Returns the title for the navigation
- getRuntimeCache() : FrontendInterface
- getTimeTracker() : TimeTracker
- getTypoScriptFrontendController() : TypoScriptFrontendController
- hasParentMenuArr() : bool
- Check if there is a valid parentMenuArr.
- hasParentMenuItem() : mixed
- Check if the the parentMenuItem exists
- hasParentMenuItemKey() : mixed
- Check if we have a parentMenuArrItemKey
- isActive() : bool
- Returns TRUE if the given page is active (in the current rootline)
- isCurrent() : bool
- Returns TRUE if the page is the CURRENT page (equals $this->getTypoScriptFrontendController()->id)
- isItemState() : bool
- Used by processItemStates() to evaluate if a menu item (identified by $key) is in a certain state.
- isNext() : bool
- Returns TRUE if the page with UID $uid is the NEXT page in root line (which means a submenu should be drawn)
- isSubMenu() : bool
- Returns TRUE if there is a submenu with items for the page id, $uid Used by the item states "IFSUB", "ACTIFSUB" and "CURIFSUB" to check if there is a submenu
- link() : array<string|int, mixed>
- Creates the URL, target and data-window-* attributes for the menu item link. Returns them in an array as key/value pairs for <A>-tag attributes This function doesn't care about the url, because if we let the url be redirected, it will be logged in the stat!!!
- menuTypoLink() : array<string|int, mixed>
- Calls typolink to create menu item links.
- prepareMenuItems() : array<string|int, mixed>
- Main function for retrieving menu items based on the menu type (special or sectionIndex or "normal")
- prepareMenuItemsForBrowseMenu() : array<string|int, mixed>
- Fetches all menuitems if special = browse is set
- prepareMenuItemsForDirectoryMenu() : array<string|int, mixed>
- Fetches all menuitems if special = directory is set
- prepareMenuItemsForKeywordsMenu() : array<string|int, mixed>
- Fetches all menuitems if special = keywords is set
- prepareMenuItemsForLanguageMenu() : array<string|int, mixed>
- Fetches all menuitems if special = language is set
- prepareMenuItemsForListMenu() : array<string|int, mixed>
- Fetches all menuitems if special = list is set
- prepareMenuItemsForRootlineMenu() : array<string|int, mixed>
- Fetches all menuitems if special = rootline is set
- prepareMenuItemsForUpdatedMenu() : array<string|int, mixed>
- Fetches all menuitems if special = updated is set
- prepareMenuItemsForUserSpecificMenu() : array<string|int, mixed>
- Fetches all menuitems if special = userfunction is set
- processItemStates() : array<string|int, mixed>
- Generating the per-menu-item configuration arrays based on the settings for item states (NO, ACT, CUR etc) set in ->mconf (config for the current menu object) Basically it will produce an individual array for each menu item based on the item states.
- removeInaccessiblePages() : array<string|int, mixed>
- Gets an array of page rows and removes all, which are not accessible
- sectionIndex() : array<string|int, mixed>
- Generates a list of content objects with sectionIndex enabled available on a specific page
- setATagParts() : mixed
- Creates the <A> tag parts for the current item (in $this->I, [A1] and [A2]) based on other information in this array (like $this->I['linkHREF'])
- shallExportDefaultFrontendJavaScript() : bool
- shallRemoveDefaultFrontendJavaScript() : bool
- subMenu() : string
- Creates a submenu level to the current level - if configured for.
- userProcess() : mixed
- Calls a user function for processing of internal data.
Constants
customItemStates
protected
mixed
customItemStates
= [
// IFSUB is TRUE if there exist submenu items to the current item
'IFSUB',
'ACT',
// ACTIFSUB is TRUE if there exist submenu items to the current item and the current item is active
'ACTIFSUB',
// CUR is TRUE if the current page equals the item here!
'CUR',
// CURIFSUB is TRUE if there exist submenu items to the current item and the current page equals the item here!
'CURIFSUB',
'USR',
'SPC',
'USERDEF1',
'USERDEF2',
]
Properties
$parent_cObj
Loaded with the parent cObj-object when a new HMENU is made
public
ContentObjectRenderer
$parent_cObj
$alternativeMenuTempArray
Can be set to contain menu item arrays for sub-levels.
protected
array<string|int, mixed>
$alternativeMenuTempArray
= []
$alwaysActivePIDlist
protected
array<string|int, int>
$alwaysActivePIDlist
= []
$conf
HMENU configuration
protected
array<string|int, mixed>
$conf
= []
$defaultFrontendJavaScriptFile
protected
string
$defaultFrontendJavaScriptFile
= 'EXT:frontend/Resources/Public/JavaScript/default_frontend.js'
$entryLevel
0 = rootFolder
protected
int
$entryLevel
= 0
$excludedDoktypes
Doktypes that define which should not be included in a menu
protected
array<string|int, int>
$excludedDoktypes
= [\TYPO3\CMS\Core\Domain\Repository\PageRepository::DOKTYPE_BE_USER_SECTION, \TYPO3\CMS\Core\Domain\Repository\PageRepository::DOKTYPE_SYSFOLDER]
$hash
protected
string
$hash
$I
protected
array<string|int, mixed>
$I
$id
The base page-id of the menu.
protected
int
$id
$mconf
xMENU configuration (TMENU etc)
protected
array<string|int, mixed>
$mconf
= []
$menuArr
The array of menuItems which is built
protected
array<string|int, array<string|int, mixed>>
$menuArr
$menuNumber
tells you which menu number this is. This is important when getting data from the setup
protected
int
$menuNumber
= 1
$MP_array
accumulation of mount point data
protected
array<string|int, string>
$MP_array
= []
$nextActive
Holds the page uid of the NEXT page in the root line from the page pointed to by entryLevel; Used to expand the menu automatically if in a certain root line.
protected
string
$nextActive
$parentMenuArr
protected
array<string|int, mixed>
$parentMenuArr
$parentMenuArrItemKey
Array key of the parentMenuItem in the parentMenuArr, if this menu is a subMenu.
protected
int|null
$parentMenuArrItemKey
$request
protected
ServerRequestInterface|null
$request
= null
$result
protected
array<string|int, mixed>
$result
= []
$rL_uidRegister
Is filled with an array of page uid numbers + RL parameters which are in the current root line (used to evaluate whether a menu item is in active state)
protected
array<string|int, mixed>
$rL_uidRegister
$sys_page
protected
PageRepository
$sys_page
$tmpl
protected
TemplateService
$tmpl
$WMcObj
protected
ContentObjectRenderer
$WMcObj
$WMmenuItems
protected
int
$WMmenuItems
$WMresult
protected
string
$WMresult
$WMsubmenuObjSuffixes
protected
array<string|int, array<string|int, mixed>>
$WMsubmenuObjSuffixes
Methods
filterMenuPages()
Checks if a page is OK to include in the final menu item array. Pages can be excluded if the doktype is wrong, if they are hidden in navigation, have a uid in the list of banned uids etc.
public
filterMenuPages(array<string|int, mixed> &$data, array<string|int, mixed> $banUidArray, bool $isSpacerPage) : bool
Parameters
- $data : array<string|int, mixed>
-
Array of menu items
- $banUidArray : array<string|int, mixed>
-
Array of page uids which are to be excluded
- $isSpacerPage : bool
-
If set, then the page is a spacer.
Tags
Return values
bool —Returns TRUE if the page can be safely included.
generate()
Generates the the menu data.
public
generate() : mixed
Subclasses should overwrite this method.
getParentContentObject()
Returns the parent content object
public
getParentContentObject() : ContentObjectRenderer
Return values
ContentObjectRenderergetParentMenuArr()
Get the parentMenuArr, if this is subMenu.
public
getParentMenuArr() : array<string|int, mixed>
Return values
array<string|int, mixed>getParentMenuItem()
Get the parentMenuItem from the parentMenuArr, if this is a subMenu
public
getParentMenuItem() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|nullgetSysPage()
Returns the sys_page object
public
getSysPage() : PageRepository
Return values
PageRepositorymakeMenu()
Creates the menu in the internal variables, ready for output.
public
makeMenu() : mixed
Basically this will read the page records needed and fill in the internal $this->menuArr Based on a hash of this array and some other variables the $this->result variable will be loaded either from cache OR by calling the generate() method of the class to create the menu for real.
setParentMenu()
Set the parentMenuArr and key to provide the parentMenu information to the subMenu, special fur IProcFunc and itemArrayProcFunc user functions.
public
setParentMenu(array<string|int, mixed> $menuArr, int $menuItemKey) : mixed
Parameters
- $menuArr : array<string|int, mixed>
- $menuItemKey : int
start()
The initialization of the object. This just sets some internal variables.
public
start(TemplateService $tmpl, PageRepository $sys_page, int|string $id, array<string|int, mixed> $conf, int $menuNumber[, string $objSuffix = '' ][, ServerRequestInterface|null $request = null ]) : bool
Parameters
- $tmpl : TemplateService
-
The $this->getTypoScriptFrontendController()->tmpl object
- $sys_page : PageRepository
-
The $this->getTypoScriptFrontendController()->sys_page object
- $id : int|string
-
A starting point page id. This should probably be blank since the 'entryLevel' value will be used then.
- $conf : array<string|int, mixed>
-
The TypoScript configuration for the HMENU cObject
- $menuNumber : int
-
Menu number; 1,2,3. Should probably be 1
- $objSuffix : string = ''
-
Submenu Object suffix. This offers submenus a way to use alternative configuration for specific positions in the menu; By default "1 = TMENU" would use "1." for the TMENU configuration, but if this string is set to eg. "a" then "1a." would be used for configuration instead (while "1 = " is still used for the overall object definition of "TMENU")
- $request : ServerRequestInterface|null = null
Tags
Return values
bool —Returns TRUE on success
writeMenu()
public
writeMenu() : string
Return values
string —The HTML for the menu
accessKey()
Creates an access-key for a TMENU menu item based on the menu item titles first letter
protected
accessKey(string $title) : array<string|int, mixed>
Parameters
- $title : string
-
Menu item title.
Return values
array<string|int, mixed> —Returns an array with keys "code" ("accesskey" attribute for the img-tag) and "alt" (text-addition to the "alt" attribute) if an access key was defined. Otherwise array was empty
addDefaultFrontendJavaScript()
protected
addDefaultFrontendJavaScript() : void
determineOriginalShortcutPage()
Determines original shortcut destination in page overlays.
protected
determineOriginalShortcutPage(array<string|int, mixed> $page) : array<string|int, mixed>
Since the pages records used for menu rendering are overlaid by default, the original 'shortcut' value is lost, if a translation did not define one.
Parameters
- $page : array<string|int, mixed>
Return values
array<string|int, mixed>getBannedUids()
Returns an array of banned UIDs (from excludeUidList)
protected
getBannedUids() : array<string|int, mixed>
Return values
array<string|int, mixed> —Array of banned UIDs
getCache()
protected
getCache() : FrontendInterface
Return values
FrontendInterfacegetCurrentLanguageAspect()
protected
getCurrentLanguageAspect() : LanguageAspect
Return values
LanguageAspectgetCurrentSite()
Returns the currently configured "site" if a site is configured (= resolved) in the current request.
protected
getCurrentSite() : Site
Return values
SitegetDoktypeExcludeWhere()
Returns where clause part to exclude 'not in menu' pages
protected
getDoktypeExcludeWhere() : string
Return values
string —where clause part.
getMPvar()
Return MPvar string for entry $key in ->menuArr
protected
getMPvar(int $key) : string
Parameters
- $key : int
-
Pointer to element in ->menuArr
Tags
Return values
string —MP vars for element.
getPageTitle()
Returns the title for the navigation
protected
getPageTitle(string $title, string $nav_title) : string
Parameters
- $title : string
-
The current page title
- $nav_title : string
-
The current value of the navigation title
Return values
string —Returns the navigation title if it is NOT blank, otherwise the page title.
getRuntimeCache()
protected
getRuntimeCache() : FrontendInterface
Return values
FrontendInterfacegetTimeTracker()
protected
getTimeTracker() : TimeTracker
Return values
TimeTrackergetTypoScriptFrontendController()
protected
getTypoScriptFrontendController() : TypoScriptFrontendController
Return values
TypoScriptFrontendControllerhasParentMenuArr()
Check if there is a valid parentMenuArr.
protected
hasParentMenuArr() : bool
Return values
boolhasParentMenuItem()
Check if the the parentMenuItem exists
protected
hasParentMenuItem() : mixed
hasParentMenuItemKey()
Check if we have a parentMenuArrItemKey
protected
hasParentMenuItemKey() : mixed
isActive()
Returns TRUE if the given page is active (in the current rootline)
protected
isActive(array<string|int, mixed> $page, string $MPvar) : bool
Parameters
- $page : array<string|int, mixed>
-
Page record to evaluate.
- $MPvar : string
-
MPvar for the current position of item.
Return values
bool —TRUE if $page is active
isCurrent()
Returns TRUE if the page is the CURRENT page (equals $this->getTypoScriptFrontendController()->id)
protected
isCurrent(array<string|int, mixed> $page, string $MPvar) : bool
Parameters
- $page : array<string|int, mixed>
-
Page record to evaluate.
- $MPvar : string
-
MPvar for the current position of item.
Return values
bool —TRUE if resolved page ID = $this->getTypoScriptFrontendController()->id
isItemState()
Used by processItemStates() to evaluate if a menu item (identified by $key) is in a certain state.
protected
isItemState(string $kind, int $key) : bool
Parameters
- $kind : string
-
The item state to evaluate (SPC, IFSUB, ACT etc...)
- $key : int
-
Key pointing to menu item from ->menuArr
Tags
Return values
bool —Returns TRUE if state matches
isNext()
Returns TRUE if the page with UID $uid is the NEXT page in root line (which means a submenu should be drawn)
protected
isNext(int $uid, string $MPvar) : bool
Parameters
- $uid : int
-
Page uid to evaluate.
- $MPvar : string
-
MPvar for the current position of item.
Tags
Return values
bool —TRUE if page with $uid is active
isSubMenu()
Returns TRUE if there is a submenu with items for the page id, $uid Used by the item states "IFSUB", "ACTIFSUB" and "CURIFSUB" to check if there is a submenu
protected
isSubMenu(int $uid) : bool
Parameters
- $uid : int
-
Page uid for which to search for a submenu
Return values
bool —Returns TRUE if there was a submenu with items found
link()
Creates the URL, target and data-window-* attributes for the menu item link. Returns them in an array as key/value pairs for <A>-tag attributes This function doesn't care about the url, because if we let the url be redirected, it will be logged in the stat!!!
protected
link(int $key, string $altTarget, string $typeOverride) : array<string|int, mixed>
Parameters
- $key : int
-
Pointer to a key in the $this->menuArr array where the value for that key represents the menu item we are linking to (page record)
- $altTarget : string
-
Alternative target
- $typeOverride : string
-
Alternative type
Return values
array<string|int, mixed> —Returns an array with A-tag attributes as key/value pairs (HREF, TARGET and data-window-* attrs)
menuTypoLink()
Calls typolink to create menu item links.
protected
menuTypoLink(array<string|int, mixed> $page, string $oTarget, string $addParams, int|string $typeOverride[, int|null $overridePageId = null ]) : array<string|int, mixed>
Parameters
- $page : array<string|int, mixed>
-
Page record (uid points where to link to)
- $oTarget : string
-
Target frame/window
- $addParams : string
-
Parameters to add to URL
- $typeOverride : int|string
-
"type" value, empty string means "not set"
- $overridePageId : int|null = null
-
link to this page instead of the $page[uid] value
Return values
array<string|int, mixed> —See linkData
prepareMenuItems()
Main function for retrieving menu items based on the menu type (special or sectionIndex or "normal")
protected
prepareMenuItems() : array<string|int, mixed>
Return values
array<string|int, mixed>prepareMenuItemsForBrowseMenu()
Fetches all menuitems if special = browse is set
protected
prepareMenuItemsForBrowseMenu(string $specialValue, string $sortingField, string $additionalWhere) : array<string|int, mixed>
Parameters
- $specialValue : string
-
The value from special.value
- $sortingField : string
-
The sorting field
- $additionalWhere : string
-
Additional WHERE clause
Return values
array<string|int, mixed>prepareMenuItemsForDirectoryMenu()
Fetches all menuitems if special = directory is set
protected
prepareMenuItemsForDirectoryMenu(string $specialValue, string $sortingField) : array<string|int, mixed>
Parameters
- $specialValue : string
-
The value from special.value
- $sortingField : string
-
The sorting field
Return values
array<string|int, mixed>prepareMenuItemsForKeywordsMenu()
Fetches all menuitems if special = keywords is set
protected
prepareMenuItemsForKeywordsMenu(string $specialValue, string $sortingField) : array<string|int, mixed>
Parameters
- $specialValue : string
-
The value from special.value
- $sortingField : string
-
The sorting field
Return values
array<string|int, mixed>prepareMenuItemsForLanguageMenu()
Fetches all menuitems if special = language is set
protected
prepareMenuItemsForLanguageMenu(string $specialValue) : array<string|int, mixed>
Parameters
- $specialValue : string
-
The value from special.value
Return values
array<string|int, mixed>prepareMenuItemsForListMenu()
Fetches all menuitems if special = list is set
protected
prepareMenuItemsForListMenu(string $specialValue) : array<string|int, mixed>
Parameters
- $specialValue : string
-
The value from special.value
Return values
array<string|int, mixed>prepareMenuItemsForRootlineMenu()
Fetches all menuitems if special = rootline is set
protected
prepareMenuItemsForRootlineMenu() : array<string|int, mixed>
Return values
array<string|int, mixed>prepareMenuItemsForUpdatedMenu()
Fetches all menuitems if special = updated is set
protected
prepareMenuItemsForUpdatedMenu(string $specialValue, string $sortingField) : array<string|int, mixed>
Parameters
- $specialValue : string
-
The value from special.value
- $sortingField : string
-
The sorting field
Return values
array<string|int, mixed>prepareMenuItemsForUserSpecificMenu()
Fetches all menuitems if special = userfunction is set
protected
prepareMenuItemsForUserSpecificMenu(string $specialValue, string $sortingField) : array<string|int, mixed>
Parameters
- $specialValue : string
-
The value from special.value
- $sortingField : string
-
The sorting field
Return values
array<string|int, mixed>processItemStates()
Generating the per-menu-item configuration arrays based on the settings for item states (NO, ACT, CUR etc) set in ->mconf (config for the current menu object) Basically it will produce an individual array for each menu item based on the item states.
protected
processItemStates(int $splitCount) : array<string|int, mixed>
BUT in addition the "optionSplit" syntax for the values is ALSO evaluated here so that all property-values are "option-splitted" and the output will thus be resolved. Is called from the "generate" functions in the extension classes. The function is processor intensive due to the option split feature in particular. But since the generate function is not always called (since the ->result array may be cached, see makeMenu) it doesn't hurt so badly.
Parameters
- $splitCount : int
-
Number of menu items in the menu
Return values
array<string|int, mixed> —the resolved configuration for each item
removeInaccessiblePages()
Gets an array of page rows and removes all, which are not accessible
protected
removeInaccessiblePages(array<string|int, mixed> $pages) : array<string|int, mixed>
Parameters
- $pages : array<string|int, mixed>
Return values
array<string|int, mixed>sectionIndex()
Generates a list of content objects with sectionIndex enabled available on a specific page
protected
sectionIndex(string $altSortField[, int $pid = null ]) : array<string|int, mixed>
Used for menus with sectionIndex enabled
Parameters
- $altSortField : string
-
Alternative sorting field
- $pid : int = null
-
The page id to search for sections
Tags
Return values
array<string|int, mixed>setATagParts()
Creates the <A> tag parts for the current item (in $this->I, [A1] and [A2]) based on other information in this array (like $this->I['linkHREF'])
protected
setATagParts() : mixed
shallExportDefaultFrontendJavaScript()
protected
shallExportDefaultFrontendJavaScript() : bool
Return values
boolshallRemoveDefaultFrontendJavaScript()
protected
shallRemoveDefaultFrontendJavaScript() : bool
Return values
boolsubMenu()
Creates a submenu level to the current level - if configured for.
protected
subMenu(int $uid, string $objSuffix) : string
Parameters
- $uid : int
-
Page id of the current page for which a submenu MAY be produced (if conditions are met)
- $objSuffix : string
-
Object prefix, see ->start()
Return values
string —HTML content of the submenu
userProcess()
Calls a user function for processing of internal data.
protected
userProcess(string $mConfKey, mixed $passVar) : mixed
Used for the properties "IProcFunc" and "itemArrayProcFunc"
Parameters
- $mConfKey : string
-
Key pointing for the property in the current ->mconf array holding possibly parameters to pass along to the function/method. Currently the keys used are "IProcFunc" and "itemArrayProcFunc".
- $passVar : mixed
-
A variable to pass to the user function and which should be returned again from the user function. The idea is that the user function modifies this variable according to what you want to achieve and then returns it. For "itemArrayProcFunc" this variable is $this->menuArr, for "IProcFunc" it is $this->I
Return values
mixed —The processed $passVar