'; $output .= HTML::anchor('/',_('Home')); $data = empty(self::$_data['path']) ? explode('/',preg_replace('/^\//','',Request::detect_uri())) : self::$_data['path']; $c = count($data); $i=0; foreach ($data as $k => $v) { $i++; $output .= ''; $p = join('/',array_slice($data,0,$k+1)); $output .= $i==$c ? '' : ''; $output .= HTML::anchor( (empty(self::$_data['url'][$p]) ? $p : self::$_data['url'][$p]), (empty(self::$_data['name'][$p]) ? ucfirst(URL::dir($v)) : self::$_data['name'][$p]) ); $output .= ''; } $output .= ''; return $output; } /** * Set the BreadCrumb path * * @param array Block attributes */ public static function set($path) { $path = strtolower($path); if (is_string($path)) self::$_data['path'] = explode('/',$path); elseif (is_array($path)) self::$_data['path'] = $path; else throw new Kohana_Exception('Path is not a string, nor an array'); } /** * Enable specifying the URL for a path */ public static function URL($path,$url,$override=TRUE) { $path = strtolower($path); $url = strtolower($url); if (isset(self::$_data['url'][$path]) AND ! $override) return; self::$_data['url'][$path] = $url; } } ?>