forked from Cavemanon/cavepaintings
Implemented a nav link generating system so that extension power what shows up in the menus rather than being hard-coded in the themes.
This commit is contained in:
31
ext/system/main.php
Normal file
31
ext/system/main.php
Normal file
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
/**
|
||||
* Name: System
|
||||
* Author: Matthew Barbour <matthew@darkholme.net>
|
||||
* License: MIT
|
||||
* Description: Provides system screen
|
||||
*/
|
||||
|
||||
class System extends Extension
|
||||
{
|
||||
public function onPageRequest(PageRequestEvent $event)
|
||||
{
|
||||
global $page, $user;
|
||||
|
||||
if ($event->page_matches("system")) {
|
||||
$e = new PageSubNavBuildingEvent("system");
|
||||
send_event($e);
|
||||
usort($e->links, "sort_nav_links");
|
||||
$link = $e->links[0]->link;
|
||||
|
||||
$page->set_redirect($link->make_link());
|
||||
$page->set_mode(PageMode::REDIRECT);
|
||||
}
|
||||
}
|
||||
public function onPageNavBuilding(PageNavBuildingEvent $event)
|
||||
{
|
||||
$event->add_nav_link("system", new Link('system'), "System");
|
||||
}
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user