diff --git a/classes/Object.php b/classes/Object.php index ac5feb2..d9f41cb 100644 --- a/classes/Object.php +++ b/classes/Object.php @@ -16,15 +16,25 @@ class Object { * @param string Object Key that we are evaluating * @param string Value for that Key * @param array The array of objects + * @param boolean Traverse children * @return boolean */ - public static function in_array($key,$value,array $objects) { + public static function in_array($key,$value,array $objects,$traverse=FALSE) { if (! count($objects)) return FALSE; - foreach ($objects as $object) + foreach ($objects as $object) { + if (is_array($object)) { + if (! $traverse) + continue; + + if (self::in_array($key,$value,$object,$traverse)) + return TRUE; + } + if (isset($object->$key) AND $object->$key == $value) return TRUE; + } return FALSE; } diff --git a/classes/lnApp/Block.php b/classes/lnApp/Block.php index 8e2e5de..6ae2e78 100644 --- a/classes/lnApp/Block.php +++ b/classes/lnApp/Block.php @@ -47,7 +47,7 @@ abstract class lnApp_Block extends HTMLRender { * Render this Block */ protected function render() { - $record = static::$_data[$this->_x]; + $record = self::$_data[$this->_x]; $output = ''; $output .= sprintf('
',empty($record['span']) ? '12' : $record['span'],empty($record['scrollable']) ? '' : 'scrollable'); diff --git a/classes/lnApp/Block/Sub.php b/classes/lnApp/Block/Sub.php index c4ad730..5cb3046 100644 --- a/classes/lnApp/Block/Sub.php +++ b/classes/lnApp/Block/Sub.php @@ -50,8 +50,8 @@ class lnApp_Block_Sub extends HTMLRender { $i = 0; $x = $y = 0; - Sort::MAsort(static::$_data,'order,position,title,subtitle'); - foreach (static::$_data as $value) { + Sort::MAsort(self::$_data,'order,position,title,subtitle'); + foreach (self::$_data as $value) { $i = (! isset($value['order'])) ? $i+1 : $value['order']; // Work out our dimentions diff --git a/classes/lnApp/BreadCrumb.php b/classes/lnApp/BreadCrumb.php index 65991be..ff01e5b 100644 --- a/classes/lnApp/BreadCrumb.php +++ b/classes/lnApp/BreadCrumb.php @@ -21,10 +21,10 @@ abstract class lnApp_BreadCrumb extends HTMLRender { * Enable a friendly name to be used for a path */ public static function name($path,$name,$override=TRUE) { - if (isset(static::$_data['name'][$path]) AND ! $override) + if (isset(self::$_data['name'][$path]) AND ! $override) return; - static::$_data['name'][$path] = $name; + self::$_data['name'][$path] = $name; } /** @@ -34,7 +34,7 @@ abstract class lnApp_BreadCrumb extends HTMLRender { $output = '