Class Links

Summary

Fully Qualified Name: Laminas\View\Helper\Navigation\Links
Extends: AbstractHelper

Description

Helper for printing elements

Methods

Name Description Defined By
__call() Magic overload: Proxy calls to {@link findRelation()} or container Links
__invoke() Helper entry point Links
__toString() Magic overload: Proxy to {@link render()}. AbstractHelper
accept() Determines whether a page should be accepted when iterating AbstractHelper
findActive() Finds the deepest active page in the given container AbstractHelper
findAllRelations() Finds all relations (forward and reverse) for the given $page Links
findRelation() Finds relations of the given $rel=$type from $page Links
getAcl() Returns ACL or null if it isn't set using {@link setAcl()} or {@link setDefaultAcl()} AbstractHelper
getContainer() Returns the navigation container helper operates on by default AbstractHelper
getEventManager() Get the event manager, if present. AbstractHelper
getIndent() Returns indentation AbstractHelper
getMaxDepth() Returns maximum depth a page can have to be included when rendering AbstractHelper
getMinDepth() Returns minimum depth a page must have to be included when rendering AbstractHelper
getRenderFlag() Returns the helper's render flag Links
getRenderInvisible() Return renderInvisible flag AbstractHelper
getRole() Returns ACL role to use when iterating pages, or null if it isn't set using {@link setRole()} or {@link setDefaultRole()} AbstractHelper
getServiceLocator() Get the service locator. AbstractHelper
getUseAcl() Returns whether ACL should be used AbstractHelper
hasAcl() Checks if the helper has an ACL instance AbstractHelper
hasContainer() Checks if the helper has a container AbstractHelper
hasRole() Checks if the helper has an ACL role AbstractHelper
htmlify() Returns an HTML string containing an 'a' element for the given page AbstractHelper
render() Renders helper Links
renderLink() Renders the given $page as a link element, with $attrib = $relation Links
searchRelChapter() Searches the root container for forward 'chapter' relations of the given $page Links
searchRelNext() Searches the root container for the forward 'next' relation of the given $page Links
searchRelPrev() Searches the root container for the forward 'prev' relation of the given $page Links
searchRelSection() Searches the root container for forward 'section' relations of the given $page Links
searchRelStart() Searches the root container for the forward 'start' relation of the given $page Links
searchRelSubsection() Searches the root container for forward 'subsection' relations of the given $page Links
searchRevSection() Searches the root container for the reverse 'section' relation of the given $page Links
searchRevSubsection() Searches the root container for the reverse 'section' relation of the given $page Links
setAcl() Sets ACL to use when iterating pages AbstractHelper
setContainer() Sets navigation container the helper operates on by default AbstractHelper
setDefaultAcl() Sets default ACL to use if another ACL is not explicitly set AbstractHelper
setDefaultRole() Sets default ACL role(s) to use when iterating pages if not explicitly set later with {@link setRole()} AbstractHelper
setEventManager() Set the event manager. AbstractHelper
setIndent() Set the indentation string for using in {@link render()}, optionally a number of spaces to indent with AbstractHelper
setMaxDepth() Sets the maximum depth a page can have to be included when rendering AbstractHelper
setMinDepth() Sets the minimum depth a page must have to be included when rendering AbstractHelper
setRenderFlag() Sets the helper's render flag Links
setRenderInvisible() Render invisible items? AbstractHelper
setRole() Sets ACL role(s) to use when iterating pages AbstractHelper
setServiceLocator() Set the service locator. AbstractHelper
setUseAcl() Sets whether ACL should be used AbstractHelper

Method Details

__call()

Magic overload: Proxy calls to {@link findRelation()} or container

Examples of finder calls: // METHOD // SAME AS $h->findRelNext($page); // $h->findRelation($page, 'rel', 'next') $h->findRevSection($page); // $h->findRelation($page, 'rev', 'section'); $h->findRelFoo($page); // $h->findRelation($page, 'rel', 'foo');

Parameter Name Type Description
$method string
$arguments array

Returns: mixed

__invoke()

Helper entry point

Parameter Name Type Description
$container string|\AbstractContainer container

Returns: \Links

__toString()

Magic overload: Proxy to {@link render()}.

This method will trigger an E_USER_ERROR if rendering the helper causes an exception to be thrown.

Implements {@link HelperInterface::__toString()}.

Returns: string

accept()

Determines whether a page should be accepted when iterating

Default listener may be 'overridden' by attaching listener to 'isAllowed' method. Listener must be 'short circuited' if overriding default ACL listener.

Rules:

Parameter Name Type Description
$page \AbstractPage page
$recursive bool [optional]

Returns: bool Whether page should be accepted

findActive()

Finds the deepest active page in the given container

Parameter Name Type Description
$container \Navigation\AbstractContainer container
$minDepth int|null [optional]
$maxDepth int|null [optional]

Returns: array an associative array with the values 'depth' and 'page', or an empty array if not found

findAllRelations()

Finds all relations (forward and reverse) for the given $page

The form of the returned array: // $page denotes an instance of Laminas\Navigation\Page\AbstractPage $returned = array(

'rel' => array(
    'alternate' => array($page, $page, $page),
    'start'     => array($page),
    'next'      => array($page),
    'prev'      => array($page),
    'canonical' => array($page)
),
'rev' => array(
    'section'   => array($page)
)

);

Parameter Name Type Description
$page \AbstractPage page
$ null|int
$flag

Returns: array

findRelation()

Finds relations of the given $rel=$type from $page

This method will first look for relations in the page instance, then by searching the root container if nothing was found in the page.

Parameter Name Type Description
$page \AbstractPage page
$rel string relation,
$type string link

Returns: \AbstractPage|array|null

getAcl()

Returns ACL or null if it isn't set using {@link setAcl()} or {@link setDefaultAcl()}

Implements {@link HelperInterface::getAcl()}.

Returns: \Acl\AclInterface|null ACL object or null

getContainer()

Returns the navigation container helper operates on by default

Implements {@link HelperInterface::getContainer()}.

If no container is set, a new container will be instantiated and stored in the helper.

Returns: \Navigation\AbstractContainer navigation container

getEventManager()

Get the event manager, if present.

Internally, the helper will lazy-load an EM instance the first time it requires one, but ideally it should be injected during instantiation.

Returns: null|\EventManagerInterface

getIndent()

Returns indentation

Returns: string

getMaxDepth()

Returns maximum depth a page can have to be included when rendering

Returns: int|null

getMinDepth()

Returns minimum depth a page must have to be included when rendering

Returns: int|null

getRenderFlag()

Returns the helper's render flag

Returns: int

getRenderInvisible()

Return renderInvisible flag

Returns: bool

getRole()

Returns ACL role to use when iterating pages, or null if it isn't set using {@link setRole()} or {@link setDefaultRole()}

Implements {@link HelperInterface::getRole()}.

Returns: string|\Acl\Role\RoleInterface|null

getServiceLocator()

Get the service locator.

Used internally to pull named navigation containers to render.

Returns: \ContainerInterface

getUseAcl()

Returns whether ACL should be used

Implements {@link HelperInterface::getUseAcl()}.

Returns: bool

hasAcl()

Checks if the helper has an ACL instance

Implements {@link HelperInterface::hasAcl()}.

Returns: bool

hasContainer()

Checks if the helper has a container

Implements {@link HelperInterface::hasContainer()}.

Returns: bool

hasRole()

Checks if the helper has an ACL role

Implements {@link HelperInterface::hasRole()}.

Returns: bool

htmlify()

Returns an HTML string containing an 'a' element for the given page

Parameter Name Type Description
$page \AbstractPage page

Returns: string HTML string (<a href="…">Label</a>)

render()

Renders helper

Implements {@link HelperInterface::render()}.

Parameter Name Type Description
$container \AbstractContainer|string|null [optional]

Returns: string

renderLink()

Renders the given $page as a link element, with $attrib = $relation

Parameter Name Type Description
$page \AbstractPage the
$attrib string the
$relation string relation

Returns: string

searchRelChapter()

Searches the root container for forward 'chapter' relations of the given $page

From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a chapter in a collection of documents.

Parameter Name Type Description
$page \AbstractPage

Returns: \AbstractPage|array|null

searchRelNext()

Searches the root container for the forward 'next' relation of the given $page

From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to the next document in a linear sequence of documents. User agents may choose to preload the "next" document, to reduce the perceived load time.

Parameter Name Type Description
$page \AbstractPage

Returns: \AbstractPage|null

searchRelPrev()

Searches the root container for the forward 'prev' relation of the given $page

From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to the previous document in an ordered series of documents. Some user agents also support the synonym "Previous".

Parameter Name Type Description
$page \AbstractPage

Returns: \AbstractPage|null

searchRelSection()

Searches the root container for forward 'section' relations of the given $page

From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a section in a collection of documents.

Parameter Name Type Description
$page \AbstractPage

Returns: \AbstractPage|array|null

searchRelStart()

Searches the root container for the forward 'start' relation of the given $page

From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to the first document in a collection of documents. This link type tells search engines which document is considered by the author to be the starting point of the collection.

Parameter Name Type Description
$page \AbstractPage

Returns: \AbstractPage|null

searchRelSubsection()

Searches the root container for forward 'subsection' relations of the given $page

From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a subsection in a collection of documents.

Parameter Name Type Description
$page \AbstractPage

Returns: \AbstractPage|array|null

searchRevSection()

Searches the root container for the reverse 'section' relation of the given $page

From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a section in a collection of documents.

Parameter Name Type Description
$page \AbstractPage

Returns: \AbstractPage|null

searchRevSubsection()

Searches the root container for the reverse 'section' relation of the given $page

From {@link http://www.w3.org/TR/html4/types.html#type-links}: Refers to a document serving as a subsection in a collection of documents.

Parameter Name Type Description
$page \AbstractPage

Returns: \AbstractPage|null

setAcl()

Sets ACL to use when iterating pages

Implements {@link HelperInterface::setAcl()}.

Parameter Name Type Description
$acl \Acl\AclInterface ACL

Returns: \AbstractHelper

setContainer()

Sets navigation container the helper operates on by default

Implements {@link HelperInterface::setContainer()}.

Parameter Name Type Description
$container string|\Navigation\AbstractContainer Default

Returns: \AbstractHelper

setDefaultAcl()

Sets default ACL to use if another ACL is not explicitly set

Parameter Name Type Description
$acl \Acl\AclInterface [optional]

Returns: void

setDefaultRole()

Sets default ACL role(s) to use when iterating pages if not explicitly set later with {@link setRole()}

Parameter Name Type Description
$role mixed [optional]

Returns: void

setEventManager()

Set the event manager.

Parameter Name Type Description
$events \EventManagerInterface

Returns: \AbstractHelper

setIndent()

Set the indentation string for using in {@link render()}, optionally a number of spaces to indent with

Parameter Name Type Description
$indent string|int

Returns: \AbstractHelper

setMaxDepth()

Sets the maximum depth a page can have to be included when rendering

Parameter Name Type Description
$maxDepth int Default

Returns: \AbstractHelper

setMinDepth()

Sets the minimum depth a page must have to be included when rendering

Parameter Name Type Description
$minDepth int Default

Returns: \AbstractHelper

setRenderFlag()

Sets the helper's render flag

The helper uses the bitwise '&' operator against the hex values of the render constants. This means that the flag can is "bitwised" value of the render constants. Examples: // render all links except glossary $flag = Links:RENDER_ALL ^ Links:RENDER_GLOSSARY; $helper->setRenderFlag($flag);

// render only chapters and sections $flag = Links:RENDER_CHAPTER | Links:RENDER_SECTION; $helper->setRenderFlag($flag);

// render only relations that are not native W3C relations $helper->setRenderFlag(Links:RENDER_CUSTOM);

// render all relations (default) $helper->setRenderFlag(Links:RENDER_ALL);

Note that custom relations can also be rendered directly using the {@link renderLink()} method.

Parameter Name Type Description
$renderFlag int

Returns: \Links

setRenderInvisible()

Render invisible items?

Parameter Name Type Description
$renderInvisible bool

Returns: \AbstractHelper

setRole()

Sets ACL role(s) to use when iterating pages

Implements {@link HelperInterface::setRole()}.

Parameter Name Type Description
$role mixed [optional]

Returns: \AbstractHelper

setServiceLocator()

Set the service locator.

Used internally to pull named navigation containers to render.

Parameter Name Type Description
$serviceLocator \ContainerInterface

Returns: \AbstractHelper

setUseAcl()

Sets whether ACL should be used

Implements {@link HelperInterface::setUseAcl()}.

Parameter Name Type Description
$useAcl bool

Returns: \AbstractHelper

Top