Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.
Helper for rendering menus from navigation containers

bool
$_onlyActiveBranch= 'false'
Whether only active branch should be rendered
false
Details
string|array
$_partial= 'null'
Partial view script to use for rendering menu
null
Details
bool
$_renderParents= 'true'
Whether parents should be rendered when only rendering active branch
true
Details
__call(
string $method, array $arguments
=
array
)
:
mixed
Magic overload: Proxy calls to the navigation container
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::__call()Name | Type | Description |
---|---|---|
$method | string | method name in container |
$arguments | array | [optional] arguments to pass |
Type | Description |
---|---|
mixed | returns what the container returns |
Exception | Description |
---|---|
\Zend_Navigation_Exception | if method does not exist in container |

__toString(
)
:
string
Magic overload: Proxy to {@link render()}.
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::__toString()This method will trigger an E_USER_ERROR if rendering the helper causes an exception to be thrown.
Implements {@link Zend_View_Helper_Navigation_Helper::__toString()}.
Type | Description |
---|---|
string |

_acceptAcl(
\Zend_Navigation_Page $page
)
:
bool
Determines whether a page should be accepted by ACL when iterating
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::_acceptAcl()Rules: - If helper has no ACL, page is accepted - If page has a resource or privilege defined, page is accepted if the ACL allows access to it using the helper's role - If page has no resource or privilege, page is accepted
Name | Type | Description |
---|---|---|
$page | \Zend_Navigation_Page | page to check |
Type | Description |
---|---|
bool | whether page is accepted by ACL |

_getWhitespace(
int|string $indent
)
:
string
Retrieve whitespace representation of $indent
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::_getWhitespace()Name | Type | Description |
---|---|---|
$indent | int|string |
Type | Description |
---|---|
string |

_htmlAttribs(
array $attribs
)
:
string
Converts an associative array to a string of tag attributes.
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::_htmlAttribs()Overloads {@link Zend_View_Helper_HtmlElement::_htmlAttribs()}.
Name | Type | Description |
---|---|---|
$attribs | array | an array where each key-value pair is converted to an attribute name and value |
Type | Description |
---|---|
string | an attribute string |

_isStrictDoctype(
)
:
boolean
Is doctype strict?
Inherited from: \Zend_View_Helper_HtmlElement::_isStrictDoctype()Type | Description |
---|---|
boolean |

_isXhtml(
)
:
boolean
Is doctype XHTML?
Inherited from: \Zend_View_Helper_HtmlElement::_isXhtml()Type | Description |
---|---|
boolean |

_normalizeId(
string $value
)
:
string
Normalize an ID
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::_normalizeId()Overrides {@link Zend_View_Helper_HtmlElement::_normalizeId()}.
Name | Type | Description |
---|---|---|
$value | string |
Type | Description |
---|---|
string |

_normalizeOptions(
array $options
=
array
)
:
array
Normalizes given render options
Name | Type | Description |
---|---|---|
$options | array | [optional] options to normalize |
Type | Description |
---|---|
array | normalized options |

_renderDeepestMenu(
\Zend_Navigation_Container $container, string $ulClass, string $indent, int|null $minDepth, int|null $maxDepth
)
:
string
Renders the deepest active menu within [$minDepth, $maxDeth], (called from {@link renderMenu()})
Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | container to render |
$ulClass | string | CSS class for first UL |
$indent | string | initial indentation |
$minDepth | int|null | minimum depth |
$maxDepth | int|null | maximum depth |
Type | Description |
---|---|
string | rendered menu |

_renderMenu(
\Zend_Navigation_Container $container, string $ulClass, string $indent, int|null $minDepth, int|null $maxDepth, bool $onlyActive
)
:
string
Renders a normal menu (called from {@link renderMenu()})
Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | container to render |
$ulClass | string | CSS class for first UL |
$indent | string | initial indentation |
$minDepth | int|null | minimum depth |
$maxDepth | int|null | maximum depth |
$onlyActive | bool | render only active branch? |
Type | Description |
---|---|
string |

accept(
\Zend_Navigation_Page $page, bool $recursive
=
true
)
:
bool
Determines whether a page should be accepted when iterating
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::accept()Rules: - If a page is not visible it is not accepted, unless RenderInvisible has been set to true. - If helper has no ACL, page is accepted - If helper has ACL, but no role, page is not accepted - If helper has ACL and role: - Page is accepted if it has no resource or privilege - Page is accepted if ACL allows page's resource or privilege - If page is accepted by the rules above and $recursive is true, the page will not be accepted if it is the descendant of a non-accepted page.
Name | Type | Description |
---|---|---|
$page | \Zend_Navigation_Page | page to check |
$recursive | bool | [optional] if true, page will not be accepted if it is the descendant of a page that is not accepted. Default is true. |
Type | Description |
---|---|
bool | whether page should be accepted |

direct(
)
:
void
Strategy pattern: currently unutilized
Inherited from: \Zend_View_Helper_Abstract::direct()
findActive(
\Zend_Navigation_Container $container, int|null|int|null $minDepth
=
null, $maxDepth
)
:
array
Finds the deepest active page in the given container
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::findActive()Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | container to search |
$minDepth | int|null|int|null | [optional] minimum depth required for page to be valid. Default is to use {@link getMinDepth()}. A null value means no minimum depth required. |
$maxDepth |
Type | Description |
---|---|
array | an associative array with the values 'depth' and 'page', or an empty array if not found |

getAcl(
)
:
\Zend_Acl|null
Returns ACL or null if it isn't set using {@link setAcl()} or {@link setDefaultAcl()}
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getAcl()Implements {@link Zend_View_Helper_Navigation_Helper::getAcl()}.
Type | Description |
---|---|
\Zend_Aclnull | ACL object or null |

getClosingBracket(
)
:
string
Get the tag closing bracket
Inherited from: \Zend_View_Helper_HtmlElement::getClosingBracket()Type | Description |
---|---|
string |

getContainer(
)
:
\Zend_Navigation_Container
Returns the navigation container helper operates on by default
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getContainer()Implements {@link Zend_View_Helper_Navigation_Interface::getContainer()}.
If a helper is not explicitly set in this helper instance by calling {@link setContainer()} or by passing it through the helper entry point, this method will look in {@link Zend_Registry} for a container by using the key 'Zend_Navigation'.
If no container is set, and nothing is found in Zend_Registry, a new container will be instantiated and stored in the helper.
Type | Description |
---|---|
\Zend_Navigation_Container | navigation container |

getIndent(
)
:
string
Returns indentation
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getIndent()Type | Description |
---|---|
string |

getMaxDepth(
)
:
int|null
Returns maximum depth a page can have to be included when rendering
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getMaxDepth()Type | Description |
---|---|
intnull | maximum depth or null |

getMinDepth(
)
:
int|null
Returns minimum depth a page must have to be included when rendering
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getMinDepth()Type | Description |
---|---|
intnull | minimum depth or null |

getOnlyActiveBranch(
)
:
bool
Returns a flag indicating whether only active branch should be rendered
By default, this value is false, meaning the entire menu will be be rendered.
Type | Description |
---|---|
bool | whether only active branch should be rendered |

getPartial(
)
:
string|array|null
Returns partial view script to use for rendering menu
Type | Description |
---|---|
stringarraynull |

getRenderInvisible(
)
:
bool
Return renderInvisible flag
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getRenderInvisible()Type | Description |
---|---|
bool |

getRenderParents(
)
:
bool
Returns flag indicating whether parents should be rendered when rendering only the active branch
By default, this value is true.
Type | Description |
---|---|
bool | whether parents should be rendered |

getRole(
)
:
string|\Zend_Acl_Role_Interface|null
Returns ACL role to use when iterating pages, or null if it isn't set using {@link setRole()} or {@link setDefaultRole()}
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getRole()Implements {@link Zend_View_Helper_Navigation_Helper::getRole()}.
Type | Description |
---|---|
string\Zend_Acl_Role_Interfacenull | role or null |

getTranslator(
)
:
\Zend_Translate_Adapter|null
Returns translator used in helper
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getTranslator()Implements {@link Zend_View_Helper_Navigation_Helper::getTranslator()}.
Type | Description |
---|---|
\Zend_Translate_Adapternull | translator or null |

getUlClass(
)
:
string
Returns CSS class to use for the first 'ul' element when rendering
Type | Description |
---|---|
string | CSS class |

getUseAcl(
)
:
bool
Returns whether ACL should be used
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getUseAcl()Implements {@link Zend_View_Helper_Navigation_Helper::getUseAcl()}.
Type | Description |
---|---|
bool | whether ACL should be used |

getUseTranslator(
)
:
bool
Returns whether translator should be used
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::getUseTranslator()Implements {@link Zend_View_Helper_Navigation_Helper::getUseTranslator()}.
Type | Description |
---|---|
bool | whether translator should be used |

hasAcl(
)
:
bool
Checks if the helper has an ACL instance
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::hasAcl()Implements {@link Zend_View_Helper_Navigation_Helper::hasAcl()}.
Type | Description |
---|---|
bool | whether the helper has a an ACL instance or not |

hasContainer(
)
:
bool
Checks if the helper has a container
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::hasContainer()Implements {@link Zend_View_Helper_Navigation_Helper::hasContainer()}.
Type | Description |
---|---|
bool | whether the helper has a container or not |

hasRole(
)
:
bool
Checks if the helper has an ACL role
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::hasRole()Implements {@link Zend_View_Helper_Navigation_Helper::hasRole()}.
Type | Description |
---|---|
bool | whether the helper has a an ACL role or not |

hasTranslator(
)
:
bool
Checks if the helper has a translator
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::hasTranslator()Implements {@link Zend_View_Helper_Navigation_Helper::hasTranslator()}.
Type | Description |
---|---|
bool | whether the helper has a translator or not |

htmlify(
\Zend_Navigation_Page $page
)
:
string
Returns an HTML string containing an 'a' element for the given page if the page's href is not empty, and a 'span' element if it is empty
Overrides {@link Zend_View_Helper_Navigation_Abstract::htmlify()}.
Name | Type | Description |
---|---|---|
$page | \Zend_Navigation_Page | page to generate HTML for |
Type | Description |
---|---|
string | HTML string for the given page |

menu(
\Zend_Navigation_Container $container
=
null
)
:
\Zend_View_Helper_Navigation_Menu
View helper entry point: Retrieves helper and optionally sets container to operate on
Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | [optional] container to operate on |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_Menu | fluent interface, returns self |

render(
\Zend_Navigation_Container $container
=
null
)
:
string
Renders menu
Implements {@link Zend_View_Helper_Navigation_Helper::render()}.
If a partial view is registered in the helper, the menu will be rendered using the given partial script. If no partial is registered, the menu will be rendered as an 'ul' element by the helper's internal method.
Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | [optional] container to render. Default is to render the container registered in the helper. |
Type | Description |
---|---|
string | helper output |
Exception | Description |
---|---|
\Zend_View_Exception | if unable to render |

renderMenu(
\Zend_Navigation_Container $container
=
null, array $options
=
array
)
:
string
Renders helper
Renders a HTML 'ul' for the given $container. If $container is not given, the container registered in the helper will be used.
Available $options:
Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | [optional] container to create menu from. Default is to use the container retrieved from {@link getContainer()}. |
$options | array | [optional] options for controlling rendering |
Type | Description |
---|---|
string | rendered menu |

renderPartial(
\Zend_Navigation_Container $container
=
null, string|array $partial
=
null
)
:
string
Renders the given $container by invoking the partial view helper
The container will simply be passed on as a model to the view script as-is, and will be available in the partial script as 'container', e.g.
echo 'Number of pages: ', count($this->container);
.
Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | [optional] container to pass to view script. Default is to use the container registered in the helper. |
$partial | string|array | [optional] partial view script to use. Default is to use the partial registered in the helper. If an array is given, it is expected to contain two values; the partial view script to use, and the module where the script can be found. |
Type | Description |
---|---|
string | helper output |

renderSubMenu(
\Zend_Navigation_Container $container
=
null, string $ulClass
=
null, string|int $indent
=
null
)
:
string
Renders the inner-most sub menu for the active page in the $container
This is a convenience method which is equivalent to the following call:
renderMenu($container, array(
'indent' => $indent,
'ulClass' => $ulClass,
'minDepth' => null,
'maxDepth' => null,
'onlyActiveBranch' => true,
'renderParents' => false
));
Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | [optional] container to render. Default is to render the container registered in the helper. |
$ulClass | string | [optional] CSS class to use for UL element. Default is to use the value from {@link getUlClass()}. |
$indent | string|int | [optional] indentation as a string or number of spaces. Default is to use the value retrieved from {@link getIndent()}. |
Type | Description |
---|---|
string | rendered content |

setAcl(
\Zend_Acl $acl
=
null
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Sets ACL to use when iterating pages
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setAcl()Implements {@link Zend_View_Helper_Navigation_Helper::setAcl()}.
Name | Type | Description |
---|---|---|
$acl | \Zend_Acl | [optional] ACL object. Default is null. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |

setContainer(
\Zend_Navigation_Container $container
=
null
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Sets navigation container the helper operates on by default
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setContainer()Implements {@link Zend_View_Helper_Navigation_Interface::setContainer()}.
Name | Type | Description |
---|---|---|
$container | \Zend_Navigation_Container | [optional] container to operate on. Default is null, meaning container will be reset. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |

setDefaultAcl(
\Zend_Acl $acl
=
null
)
:
void
Sets default ACL to use if another ACL is not explicitly set
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setDefaultAcl()Name | Type | Description |
---|---|---|
$acl | \Zend_Acl | [optional] ACL object. Default is null, which sets no ACL object. |

setDefaultRole(
\midex $role
=
null
)
:
void
Sets default ACL role(s) to use when iterating pages if not explicitly set later with {@link setRole()}
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setDefaultRole()Name | Type | Description |
---|---|---|
$role | \midex | [optional] role to set. Expects null, string, or an instance of {@link Zend_Acl_Role_Interface}. Default is null, which sets no default role. |
Exception | Description |
---|---|
\Zend_View_Exception | if role is invalid |

setIndent(
string|int $indent
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Set the indentation string for using in {@link render()}, optionally a number of spaces to indent with
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setIndent()Name | Type | Description |
---|---|---|
$indent | string|int | indentation string or number of spaces |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |

setMaxDepth(
int $maxDepth
=
null
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Sets the maximum depth a page can have to be included when rendering
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setMaxDepth()Name | Type | Description |
---|---|---|
$maxDepth | int | [optional] maximum depth. Default is null, which sets no maximum depth. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |

setMinDepth(
int $minDepth
=
null
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Sets the minimum depth a page must have to be included when rendering
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setMinDepth()Name | Type | Description |
---|---|---|
$minDepth | int | [optional] minimum depth. Default is null, which sets no minimum depth. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |

setOnlyActiveBranch(
bool $flag
=
true
)
:
\Zend_View_Helper_Navigation_Menu
Sets a flag indicating whether only active branch should be rendered
Name | Type | Description |
---|---|---|
$flag | bool | [optional] render only active branch. Default is true. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_Menu | fluent interface, returns self |

setPartial(
string|array $partial
)
:
\Zend_View_Helper_Navigation_Menu
Sets which partial view script to use for rendering menu
Name | Type | Description |
---|---|---|
$partial | string|array | partial view script or null. If an array is given, it is expected to contain two values; the partial view script to use, and the module where the script can be found. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_Menu | fluent interface, returns self |

setRenderInvisible(
bool $renderInvisible
=
true
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Render invisible items?
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setRenderInvisible()Name | Type | Description |
---|---|---|
$renderInvisible | bool | [optional] boolean flag |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface returns self |

setRenderParents(
bool $flag
=
true
)
:
\Zend_View_Helper_Navigation_Menu
Enables/disables rendering of parents when only rendering active branch
See {@link setOnlyActiveBranch()} for more information.
Name | Type | Description |
---|---|---|
$flag | bool | [optional] render parents when rendering active branch. Default is true. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_Menu | fluent interface, returns self |

setRole(
mixed $role
=
null
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Sets ACL role(s) to use when iterating pages
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setRole()Implements {@link Zend_View_Helper_Navigation_Helper::setRole()}.
Name | Type | Description |
---|---|---|
$role | mixed | [optional] role to set. Expects a string, an instance of type {@link Zend_Acl_Role_Interface}, or null. Default is null, which will set no role. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |
Exception | Description |
---|---|
\Zend_View_Exception | if $role is invalid |

setTranslator(
mixed $translator
=
null
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Sets translator to use in helper
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setTranslator()Implements {@link Zend_View_Helper_Navigation_Helper::setTranslator()}.
Name | Type | Description |
---|---|---|
$translator | mixed | [optional] translator. Expects an object of type {@link Zend_Translate_Adapter} or {@link Zend_Translate}, or null. Default is null, which sets no translator. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |

setUlClass(
string $ulClass
)
:
\Zend_View_Helper_Navigation_Menu
Sets CSS class to use for the first 'ul' element when rendering
Name | Type | Description |
---|---|---|
$ulClass | string | CSS class to set |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_Menu | fluent interface, returns self |

setUseAcl(
bool $useAcl
=
true
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Sets whether ACL should be used
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setUseAcl()Implements {@link Zend_View_Helper_Navigation_Helper::setUseAcl()}.
Name | Type | Description |
---|---|---|
$useAcl | bool | [optional] whether ACL should be used. Default is true. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |

setUseTranslator(
bool $useTranslator
=
true
)
:
\Zend_View_Helper_Navigation_HelperAbstract
Sets whether translator should be used
Inherited from: \Zend_View_Helper_Navigation_HelperAbstract::setUseTranslator()Implements {@link Zend_View_Helper_Navigation_Helper::setUseTranslator()}.
Name | Type | Description |
---|---|---|
$useTranslator | bool | [optional] whether translator should be used. Default is true. |
Type | Description |
---|---|
\Zend_View_Helper_Navigation_HelperAbstract | fluent interface, returns self |

setView(
\Zend_View_Interface $view
)
:
\Zend_View_Helper_Abstract
Set the View object
Inherited from: \Zend_View_Helper_Abstract::setView()Name | Type | Description |
---|---|---|
$view | \Zend_View_Interface |
Type | Description |
---|---|
\Zend_View_Helper_Abstract |