get("content_menu") ->append(Menu::factory("link") ->id("custom_menus") ->label(t("Custom Menus Manager")) ->url(url::site("admin/custom_menus"))); } static function site_menu($menu, $theme) { // Add user definied menu and sub-menu items to the site menu. $existing_menu = ORM::factory("custom_menu") ->where("parent_id", "=", "0") ->order_by("order_by", "DESC") ->find_all(); if (count($existing_menu) > 0) { foreach ($existing_menu as $one_menu) { if ($one_menu->url == "") { $menu->add_after("home", $new_menu = Menu::factory("submenu") ->id("custom_menus-" . $one_menu->id) ->label(t($one_menu->title))); custom_menus_event::add_sub_menus($one_menu->id, $new_menu); } else { $menu->add_after("home", Menu::factory("link") ->id("custom_menus-" . $one_menu->id) ->label(t($one_menu->title)) ->url($one_menu->url)); } } } } function add_sub_menus($parent_id, $parent_menu) { // Populate the menu bar with any sub-menu items on the current menu ($parent_menu). $existing_menu = ORM::factory("custom_menu") ->where("parent_id", "=", $parent_id) ->order_by("order_by", "ASC") ->find_all(); if (count($existing_menu) > 0) { foreach ($existing_menu as $one_menu) { if ($one_menu->url == "") { $parent_menu->append($new_menu = Menu::factory("submenu") ->id("custom_menus-" . $one_menu->id) ->label(t($one_menu->title))); custom_menus_event::add_sub_menus($one_menu->id, $new_menu); } else { $parent_menu->append(Menu::factory("link") ->id("custom_menus-" . $one_menu->id) ->label(t($one_menu->title)) ->url($one_menu->url)); } } } } }