Exemple #1
0
 /**
  * Creates an html list of all classes sorted by category (or package if no category)<br>
  * [aaa](http://www.baid.com)
  * asdf
  *
  * @return   string   the html for the menu
  */
 public static function menu()
 {
     $classes = Docs::classes();
     foreach ($classes as $class) {
         if (isset($classes['kohana_' . $class])) {
             // Remove extended classes
             unset($classes['kohana_' . $class]);
         }
     }
     ksort($classes);
     $menu = array();
     $route = Core_Route::get('docs/api');
     foreach ($classes as $class) {
         $class = Docs_Class::factory($class);
         // Test if we should show this class
         if (!Docs::show_class($class)) {
             continue;
         }
         $link = HTML::anchor($route->uri(array('class' => $class->class->name)), $class->class->name);
         if (isset($class->tags['package'])) {
             foreach ($class->tags['package'] as $package) {
                 if (isset($class->tags['category'])) {
                     foreach ($class->tags['category'] as $category) {
                         $menu[$package][$category][] = $link;
                     }
                 } else {
                     $menu[$package]['Base'][] = $link;
                 }
             }
         } else {
             $menu['[Unknown]']['Base'][] = $link;
         }
     }
     // Sort the packages
     ksort($menu);
     return View::factory('userguide/api/menu')->bind('menu', $menu);
 }