Namespace Plugin Pages

This commit is contained in:
SamBrishes 2020-05-22 23:55:22 +02:00
parent 5187cbc4d0
commit 1214b12bf7
2 changed files with 15 additions and 11 deletions

View File

@ -80,8 +80,8 @@
<?php
if (Sanitize::pathFile(PATH_ADMIN_VIEWS, $layout['view'].'.php')) {
include(PATH_ADMIN_VIEWS.$layout['view'].'.php');
} else if (isset($plugin) && method_exists($plugin, "adminView")) {
echo $plugin->adminView();
} else if (!empty($layout['plugin']) && method_exists($layout['plugin'], 'adminView')) {
echo $layout['plugin']->adminView();
} else {
echo '<h1 class="text-center">'.$L->g('Page not found').'</h1>';
echo '<h2 class="text-center">'.$L->g('Choose a page from the sidebar.').'</h2>';

View File

@ -13,18 +13,24 @@ $layout = array(
'view'=>null,
'template'=>'index.php',
'slug'=>null,
'plugin'=>false,
'parameters'=>null,
'title'=>'Bludit'
);
// Get the view, controller, and the parameters from the URL.
// Get the Controller
$explodeSlug = $url->explodeSlug();
$layout['controller'] = $layout['view'] = $layout['slug'] = empty($explodeSlug[0])?'dashboard':$explodeSlug[0];
unset($explodeSlug[0]);
$layout['parameters'] = implode('/', $explodeSlug);
// Boot plugins rules
// Get the Plugin
include(PATH_RULES.'60.plugins.php');
if ($layout['controller'] === 'plugin' && !empty($explodeSlug)) {
$layout['plugin'] = getPlugin(array_shift($explodeSlug));
}
// Get the URL parameters
$layout['parameters'] = implode('/', $explodeSlug);
// --- AJAX ---
if ($layout['slug']==='ajax') {
@ -63,8 +69,8 @@ else
}
// Define variables
$ADMIN_CONTROLLER = $layout['controller'];
$ADMIN_VIEW = $layout['view'];
$ADMIN_CONTROLLER = $layout['controller'];
$ADMIN_VIEW = $layout['view'];
// Load plugins before the admin area will be load.
Theme::plugins('beforeAdminLoad');
@ -77,10 +83,8 @@ else
// Load controller.
if (Sanitize::pathFile(PATH_ADMIN_CONTROLLERS, $layout['controller'].'.php')) {
include(PATH_ADMIN_CONTROLLERS.$layout['controller'].'.php');
} else if (($plugin = getPlugin($layout['controller'])) !== false) {
if (method_exists($plugin, "adminController") && method_exists($plugin, "adminView")) {
$plugin->adminController();
}
} else if(!empty($layout['plugin']) && method_exists($layout['plugin'], 'adminController')) {
$layout['plugin']->adminController();
}
// Load view and theme.