summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Almdal <tnalmdal@shaw.ca>2009-06-18 04:34:18 +0800
committer <unostar@danalan.info>2009-06-18 16:29:43 +0800
commita179d6bdf87dc654d7afc903b48def3562a73af0 (patch)
treeec46f6839175e5df60a85b795862535ec3d416f1
parent9af8027cf30e346b8cf42ade14efee39a8221b0d (diff)
Correct the "inappropriate intimacy" smell that bharat's refined senses pick up
Signed-off-by: <unostar@danalan.info>
-rw-r--r--modules/gallery/libraries/Admin_View.php15
-rw-r--r--modules/gallery/libraries/Menu.php12
-rw-r--r--modules/gallery/libraries/Theme_View.php15
3 files changed, 14 insertions, 28 deletions
diff --git a/modules/gallery/libraries/Admin_View.php b/modules/gallery/libraries/Admin_View.php
index 11a96d75..7a7396eb 100644
--- a/modules/gallery/libraries/Admin_View.php
+++ b/modules/gallery/libraries/Admin_View.php
@@ -69,23 +69,10 @@ class Admin_View_Core extends View {
}
}
- $this->_remove_empty_items($menu);
+ $menu->compact();
print $menu;
}
- private function _remove_empty_items($menu) {
- foreach ($menu->elements as $target_id => $element) {
- if ($element->type == "submenu") {
- if (empty($element->elements)) {
- $menu->remove($target_id);
- } else {
- $this->_remove_empty_items($element);
- }
- }
- }
- }
-
-
/**
* Print out any site wide status information.
*/
diff --git a/modules/gallery/libraries/Menu.php b/modules/gallery/libraries/Menu.php
index 79274057..6d0881ce 100644
--- a/modules/gallery/libraries/Menu.php
+++ b/modules/gallery/libraries/Menu.php
@@ -146,6 +146,18 @@ class Menu_Core extends Menu_Element {
}
}
+ public function compact() {
+ foreach ($this->elements as $target_id => $element) {
+ if ($element->type == "submenu") {
+ if (empty($element->elements)) {
+ $this->remove($target_id);
+ } else {
+ $element->compact();
+ }
+ }
+ }
+ }
+
public function __construct($type) {
parent::__construct($type);
$this->elements = array();
diff --git a/modules/gallery/libraries/Theme_View.php b/modules/gallery/libraries/Theme_View.php
index 904a3c07..7b2ca840 100644
--- a/modules/gallery/libraries/Theme_View.php
+++ b/modules/gallery/libraries/Theme_View.php
@@ -103,25 +103,12 @@ class Theme_View_Core extends View {
call_user_func_array(array($class, "site"), array(&$menu, $this));
}
}
-
- $this->_remove_empty_items($menu);
}
+ $menu->compact();
print $menu;
}
- private function _remove_empty_items($menu) {
- foreach ($menu->elements as $target_id => $element) {
- if ($element->type == "submenu") {
- if (empty($element->elements)) {
- $menu->remove($target_id);
- } else {
- $this->_remove_empty_items($element);
- }
- }
- }
- }
-
public function album_menu() {
$this->_menu("album");
}