public function MenuSelectParentFormSelector::parentSelectElement in Menu Select 8
Same name and namespace in other branches
- 2.0.x src/MenuSelectParentFormSelector.php \Drupal\menu_select\MenuSelectParentFormSelector::parentSelectElement()
Gets a form element to choose a menu and parent.
The specific type of form element will vary depending on the implementation, but callers will normally need to set the #title for the element.
Parameters
string $menu_parent: A menu name and parent ID concatenated with a ':' character to use as the default value.
string $id: (optional) ID of a link plugin. This will exclude the link and its children from being selected.
array $menus: (optional) Array of menu names as keys and titles as values to limit the values that may be selected. If NULL, all menus will be included.
Return value
array A form element to choose a parent, or an empty array if no possible parents exist for the given parameters. The resulting form value will be a single string containing the chosen menu name and parent ID separated by a ':' character.
Overrides MenuParentFormSelector::parentSelectElement
File
- src/
MenuSelectParentFormSelector.php, line 15
Class
- MenuSelectParentFormSelector
- Override the core 'menu.parent_form_selector' service.
Namespace
Drupal\menu_selectCode
public function parentSelectElement($menu_parent, $id = '', array $menus = NULL) {
// Instead of building out a select list, return the custom menu select tree
// element.
return [
'#type' => 'menu_select_tree',
'#menu_parent' => $menu_parent,
'#menus' => !isset($menus) ? $this
->getMenuOptions($menus) : $menus,
'#max_depth' => $this
->getParentDepthLimit($id),
'#current_link_id' => $id,
];
}