getText() public method

Get the display text of the menu item
public getText ( ) : string
return string The display text as HTML
Esempio n. 1
0
/**
 * Render a menu item (usually as a link)
 *
 * @param ElggMenuItem $item The menu item
 * @param array        $vars Options to pass to output/url if a link
 * @return string
 * @since 1.9.0
 */
function elgg_view_menu_item(ElggMenuItem $item, array $vars = array())
{
    if (!isset($vars['class'])) {
        $vars['class'] = 'elgg-menu-content';
    }
    $vars = array_merge($item->getValues(), $vars);
    if ($item->getLinkClass()) {
        $vars['class'] .= ' ' . $item->getLinkClass();
    }
    if ($item->getHref() === false) {
        $text = $item->getText();
        // if contains elements, don't wrap
        if (preg_match('~<[a-z]~', $text)) {
            return $text;
        } else {
            return elgg_format_element('span', array('class' => 'elgg-non-link'), $text);
        }
    }
    if (!isset($vars['rel']) && !isset($vars['is_trusted'])) {
        $vars['is_trusted'] = true;
    }
    if ($item->getConfirmText()) {
        $vars['confirm'] = $item->getConfirmText();
        return elgg_view('output/confirmlink', $vars);
    } else {
        unset($vars['confirm']);
    }
    return elgg_view('output/url', $vars);
}
Esempio n. 2
0
 public static function extractText(\ElggMenuItem $item)
 {
     return $item->getText();
 }
Esempio n. 3
0
 /**
  * Compare two menu items by their display text
  * HTML tags are stripped before comparison
  *
  * @param \ElggMenuItem $a Menu item
  * @param \ElggMenuItem $b Menu item
  * @return bool
  */
 public static function compareByText($a, $b)
 {
     $at = strip_tags($a->getText());
     $bt = strip_tags($b->getText());
     $result = strnatcmp($at, $bt);
     if ($result === 0) {
         return $a->getData('original_order') - $b->getData('original_order');
     }
     return $result;
 }
/**
 * Adds a toggle link for use in responsive
 *
 * @param \ElggMenuItem $item
 */
function theme_haarlem_add_toggle_link(\ElggMenuItem &$item)
{
    $children = $item->getChildren();
    if (empty($children)) {
        return;
    }
    $item->setText($item->getText() . elgg_view_icon('angle-right', 'elgg-menu-site-toggle'));
    foreach ($children as $child) {
        theme_haarlem_add_toggle_link($child);
    }
}