本文整理汇总了PHP中Zend_Navigation_Page::isActive方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Navigation_Page::isActive方法的具体用法?PHP Zend_Navigation_Page::isActive怎么用?PHP Zend_Navigation_Page::isActive使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_Navigation_Page
的用法示例。
在下文中一共展示了Zend_Navigation_Page::isActive方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: htmlify
/**
* 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()}.
*
* @param Zend_Navigation_Page $page page to generate HTML for
* @return string HTML string for the given page
*/
public function htmlify(Zend_Navigation_Page $page)
{
// get label and title for translating
$label = $page->getLabel();
$title = $page->getTitle();
// translate label and title?
if ($this->getUseTranslator() && ($t = $this->getTranslator())) {
if (is_string($label) && !empty($label)) {
$label = $t->translate($label);
}
if (is_string($title) && !empty($title)) {
$title = $t->translate($title);
}
}
// get attribs for element
$attribs = array_merge($page->getCustomProperties(), array('id' => $page->getId(), 'title' => $title, 'class' => $page->getClass()));
// does page have a href?
if ($href = $page->getHref()) {
if ($page->isActive()) {
if ($attribs['class'] != '') {
$attribs['class'] .= ' ';
}
$attribs['class'] .= 'ui-btn-active';
}
$element = 'a';
$attribs['href'] = $href;
$attribs['target'] = $page->getTarget();
$attribs['accesskey'] = $page->getAccessKey();
} else {
$element = 'span';
}
return '<' . $element . $this->_htmlAttribs($attribs) . '>' . $this->view->escape($label) . '</' . $element . '>';
}
示例2: isActive
/**
* Returns whether page should be considered active or not
*
* This method will compare the page properties against the request object
* that is found in the front controller.
*
* @param bool $recursive [optional] whether page should be considered
* active if any child pages are active. Default is
* false.
* @return bool whether page should be considered active or not
*/
public function isActive($recursive = false)
{
if (!$this->_active) {
$front = Zend_Controller_Front::getInstance();
$reqParams = $front->getRequest()->getParams();
if (!array_key_exists('module', $reqParams)) {
$reqParams['module'] = $front->getDefaultModule();
}
$myParams = $this->_params;
if (null !== $this->_module) {
$myParams['module'] = $this->_module;
} else {
$myParams['module'] = $front->getDefaultModule();
}
if (null !== $this->_controller) {
$myParams['controller'] = $this->_controller;
} else {
$myParams['controller'] = $front->getDefaultControllerName();
}
if (null !== $this->_action) {
$myParams['action'] = $this->_action;
} else {
$myParams['action'] = $front->getDefaultAction();
}
if (count(array_intersect_assoc($reqParams, $myParams)) ==
count($myParams)) {
$this->_active = true;
return true;
}
}
return parent::isActive($recursive);
}
示例3: isActive
/**
* Returns whether page should be considered active or not
*
* This method will compare the page properties against the request object
* that is found in the front controller.
*
* @param bool $recursive [optional] whether page should be considered
* active if any child pages are active. Default is
* false.
* @return bool whether page should be considered active or not
*/
public function isActive($recursive = false)
{
if (!$this->_active) {
$front = Zend_Controller_Front::getInstance();
$request = $front->getRequest();
$reqParams = array();
if ($request) {
$reqParams = $request->getParams();
if (!array_key_exists('module', $reqParams)) {
$reqParams['module'] = $front->getDefaultModule();
}
}
$myParams = $this->_params;
if ($this->_route) {
$route = $front->getRouter()->getRoute($this->_route);
if (method_exists($route, 'getDefaults')) {
$myParams = array_merge($route->getDefaults(), $myParams);
}
}
if (null !== $this->_module) {
$myParams['module'] = $this->_module;
} elseif (!array_key_exists('module', $myParams)) {
$myParams['module'] = $front->getDefaultModule();
}
if (null !== $this->_controller) {
$myParams['controller'] = $this->_controller;
} elseif (!array_key_exists('controller', $myParams)) {
$myParams['controller'] = $front->getDefaultControllerName();
}
if (null !== $this->_action) {
$myParams['action'] = $this->_action;
} elseif (!array_key_exists('action', $myParams)) {
$myParams['action'] = $front->getDefaultAction();
}
foreach ($myParams as $key => $value) {
if ($value == null) {
unset($myParams[$key]);
}
}
if (count(array_intersect_assoc($reqParams, $myParams)) == count($myParams)) {
$this->_active = true;
return true;
}
}
return parent::isActive($recursive);
}
示例4: isActive
/**
* Returns whether page should be considered active or not
*
* This method will compare the page properties against the request object
* that is found in the front controller.
*
* @param bool $recursive [optional] whether page should be considered
* active if any child pages are active. Default is
* false.
* @return bool whether page should be considered active or not
*/
public function isActive($recursive = false)
{
if (!$this->_active) {
$front = Zend_Controller_Front::getInstance();
$reqParams = $front->getRequest()->getParams();
if (!array_key_exists('module', $reqParams)) {
$reqParams['module'] = $front->getDefaultModule();
}
/* Original
$myParams = $this->_params;
if (null !== $this->_module) {
$myParams['module'] = $this->_module;
} else {
$myParams['module'] = $front->getDefaultModule();
}
if (null !== $this->_controller) {
$myParams['controller'] = $this->_controller;
} else {
$myParams['controller'] = $front->getDefaultControllerName();
}
if (null !== $this->_action) {
$myParams['action'] = $this->_action;
} else {
$myParams['action'] = $front->getDefaultAction();
}
*/
// [START] Modified by webligo developments
$myParams = $this->_params;
$route = $front->getRouter()->getRoute($this->_route);
$defParams = $route ? $route->getDefaults() : array();
if (null !== $this->_module) {
$myParams['module'] = $this->_module;
} else {
if (!empty($defParams['module'])) {
$myParams['module'] = $defParams['module'];
} else {
$myParams['module'] = $front->getDefaultModule();
}
}
if (null !== $this->_controller) {
$myParams['controller'] = $this->_controller;
} else {
if (!empty($defParams['controller'])) {
$myParams['controller'] = $defParams['controller'];
} else {
$myParams['controller'] = $front->getDefaultControllerName();
}
}
if (null !== $this->_action) {
$myParams['action'] = $this->_action;
} else {
if (!empty($defParams['modactionule'])) {
$myParams['action'] = $defParams['action'];
} else {
$myParams['action'] = $front->getDefaultAction();
}
}
// [END] Modified by webligo developments
if (count(array_intersect_assoc($reqParams, $myParams)) == count($myParams)) {
$this->_active = true;
return true;
}
}
return parent::isActive($recursive);
}
示例5: htmlify
/**
* 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()}.
*
* @param Zend_Navigation_Page $page page to generate HTML for
* @return string HTML string for the given page
*/
public function htmlify(Zend_Navigation_Page $page, $endOfTree = false)
{
// get label and title for translating
$label = $page->getLabel();
$title = $page->getTitle();
// translate label and title?
if ($this->getUseTranslator() && ($t = $this->getTranslator())) {
if (is_string($label) && !empty($label)) {
$label = $t->translate($label);
}
if (is_string($title) && !empty($title)) {
$title = $t->translate($title);
}
}
$hasChilds = false;
if (!$endOfTree) {
foreach ($page->getPages() as $child) {
if ($child->isVisible()) {
$hasChilds = true;
break;
}
}
}
$class = $page->getClass();
// get attribs for element
$attribs = array('id' => $page->getId(), 'title' => $title, 'class' => $class);
// does page have a href?
if ($href = $page->getHref()) {
$element = 'a';
$attribs['href'] = $href;
$attribs['target'] = $page->getTarget();
$attribs['accesskey'] = $page->getAccessKey();
} else {
$element = 'span';
}
if ($page->icon !== null) {
if ($page->isActive()) {
$page->icon = 'icon-white ' . $page->icon;
}
}
return '<' . $element . $this->_htmlAttribs($attribs) . '>' . ($page->icon !== null ? '<i class="' . $page->icon . '"></i> ' : '') . $this->view->escape($label) . '</' . $element . '>';
}