Extensions can now extend the standard Navigation

This commit is contained in:
Andreas Österreicher
2018-04-09 07:42:23 +02:00
parent cd82baf075
commit b56e728f49
+43 -5
View File
@@ -13,14 +13,15 @@ class Navigation extends VileSci_Controller
*
*/
public function __construct()
{
parent::__construct();
{
parent::__construct();
$this->config->load('navigation');
// Load session library
$this->load->library('session');
}
// Load session library
$this->load->library('session');
$this->load->library('ExtensionsLib');
}
/**
*
@@ -34,6 +35,24 @@ class Navigation extends VileSci_Controller
{
$navigationMenuArray = $this->config->item('navigation_menu');
// Load Menu Entries of Extensions
$extensions = $this->extensionslib->getInstalledExtensions();
if(hasData($extensions))
{
foreach($extensions->retval as $ext)
{
$filename = APPPATH.'config/'.ExtensionsLib::EXTENSIONS_DIR_NAME.'/'.$ext->name.'/navigation.php';
if (file_exists($filename))
{
unset($config);
include($filename);
if(isset($config['navigation_menu']) && is_array($config['navigation_menu']))
{
$navigationMenuArray = array_merge_recursive($navigationMenuArray, $config['navigation_menu']);
}
}
}
}
if (isset($navigationMenuArray) && is_array($navigationMenuArray))
{
if (isset($navigationMenuArray[$navigation_widget_called]))
@@ -71,6 +90,25 @@ class Navigation extends VileSci_Controller
{
$navigationHeaderArray = $this->config->item('navigation_header');
// Load Header Entries of Extensions
$extensions = $this->extensionslib->getInstalledExtensions();
if(hasData($extensions))
{
foreach($extensions->retval as $ext)
{
$filename = APPPATH.'config/'.ExtensionsLib::EXTENSIONS_DIR_NAME.'/'.$ext->name.'/navigation.php';
if (file_exists($filename))
{
unset($config);
include($filename);
if(isset($config['navigation_header']) && is_array($config['navigation_header']))
{
$navigationHeaderArray = array_merge_recursive($navigationHeaderArray, $config['navigation_header']);
}
}
}
}
if (isset($navigationHeaderArray) && is_array($navigationHeaderArray))
{
if (isset($navigationHeaderArray[$navigation_widget_called]))