From 43b30c0ee2cba89c6a6c07485546a29d2103f3c4 Mon Sep 17 00:00:00 2001 From: Bharat Mediratta Date: Wed, 28 Jan 2009 19:25:01 +0000 Subject: Add Menu::add_after() --- core/libraries/Menu.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'core') diff --git a/core/libraries/Menu.php b/core/libraries/Menu.php index 6cc877cb..8f15e942 100644 --- a/core/libraries/Menu.php +++ b/core/libraries/Menu.php @@ -129,6 +129,21 @@ class Menu_Core extends Menu_Element { return $this; } + /** + * Add a new element to this menu + */ + public function add_after($target_id, $new_menu_element) { + $copy = array(); + foreach ($this->elements as $id => $menu_element) { + $copy[$id] = $menu_element; + if ($id == $target_id) { + $copy[$target_id] = $new_menu_element; + } + } + $this->elements = $copy; + return $this; + } + /** * Retrieve a Menu_Element by id */ -- cgit v1.2.3