private $bound = false;
public $user;
+ /**
+ * @param string $name
+ * @return string|array|void
+ */
public function __get( $name ) {
switch ( $name ) {
case 'proto' :
}
}
+ /**
+ * @access public
+ */
public function initialize() {
$this->user = new stdClass;
do_action( 'admin_bar_init' );
}
+ /**
+ * @param array $node
+ */
public function add_menu( $node ) {
$this->add_node( $node );
}
+ /**
+ * @param string $id
+ */
public function remove_menu( $id ) {
$this->remove_node( $id );
}
$this->_set_node( $args );
}
+ /**
+ * @param array $args
+ */
final protected function _set_node( $args ) {
$this->nodes[ $args['id'] ] = (object) $args;
}
/**
* Gets a node.
*
+ * @param string $id
* @return object Node.
*/
final public function get_node( $id ) {
return clone $node;
}
+ /**
+ * @param string $id
+ * @return object|void
+ */
final protected function _get_node( $id ) {
if ( $this->bound )
return;
return $this->nodes[ $id ];
}
+ /**
+ * @return array|void
+ */
final public function get_nodes() {
if ( ! $nodes = $this->_get_nodes() )
return;
return $nodes;
}
+ /**
+ * @return array|void
+ */
final protected function _get_nodes() {
if ( $this->bound )
return;
/**
* Remove a node.
*
- * @param string The ID of the item.
+ * @param string $id The ID of the item.
*/
public function remove_node( $id ) {
$this->_unset_node( $id );
}
+ /**
+ * @param string $id
+ */
final protected function _unset_node( $id ) {
unset( $this->nodes[ $id ] );
}
+ /**
+ * @access public
+ */
public function render() {
$root = $this->_bind();
if ( $root )
$this->_render( $root );
}
+ /**
+ * @return object|void
+ */
final protected function _bind() {
if ( $this->bound )
return;
return $root;
}
+ /**
+ *
+ * @global bool $is_IE
+ * @param object $root
+ */
final protected function _render( $root ) {
global $is_IE;
<?php
}
+ /**
+ * @param object $node
+ */
final protected function _render_container( $node ) {
if ( $node->type != 'container' || empty( $node->children ) )
return;
?></div><?php
}
+ /**
+ * @param object $node
+ */
final protected function _render_group( $node ) {
- if ( $node->type == 'container' )
- return $this->_render_container( $node );
-
+ if ( $node->type == 'container' ) {
+ $this->_render_container( $node );
+ return;
+ }
if ( $node->type != 'group' || empty( $node->children ) )
return;
?></ul><?php
}
+ /**
+ * @param object $node
+ */
final protected function _render_item( $node ) {
if ( $node->type != 'item' )
return;
</li><?php
}
+ /**
+ * @param string $id Unused.
+ * @param object $node
+ */
public function recursive_render( $id, $node ) {
_deprecated_function( __METHOD__, '3.3', 'WP_Admin_bar::render(), WP_Admin_Bar::_render_item()' );
$this->_render_item( $node );
}
+ /**
+ * @access public
+ */
public function add_menus() {
// User related, aligned right.
add_action( 'admin_bar_menu', 'wp_admin_bar_my_account_menu', 0 );
add_action( 'admin_bar_menu', 'wp_admin_bar_wp_menu', 10 );
add_action( 'admin_bar_menu', 'wp_admin_bar_my_sites_menu', 20 );
add_action( 'admin_bar_menu', 'wp_admin_bar_site_menu', 30 );
- add_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 40 );
+ add_action( 'admin_bar_menu', 'wp_admin_bar_customize_menu', 40 );
+ add_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 50 );
// Content related.
if ( ! is_network_admin() && ! is_user_admin() ) {