bludit/kernel/boot/admin.php

80 lines
2.3 KiB
PHP
Raw Normal View History

2015-05-05 01:00:01 +00:00
<?php defined('BLUDIT') or die('Bludit CMS.');
$layout = array(
'controller'=>null,
'view'=>null,
'template'=>'index.php',
'slug'=>null,
2015-07-06 19:22:03 -03:00
'parameters'=>null,
'title'=>'Bludit'
2015-05-05 01:00:01 +00:00
);
// Get the view, controller, and the parameters from the URL.
$explodeSlug = $Url->explodeSlug();
$layout['controller'] = $layout['view'] = $layout['slug'] = $explodeSlug[0];
unset($explodeSlug[0]);
$layout['parameters'] = implode('/', $explodeSlug);
2015-05-14 22:07:45 +00:00
// Disable Magic Quotes
// Thanks, http://stackoverflow.com/questions/517008/how-to-turn-off-magic-quotes-on-shared-hosting
if ( in_array( strtolower( ini_get( 'magic_quotes_gpc' ) ), array( '1', 'on' ) ) )
{
2015-08-16 23:33:49 -03:00
$_POST = array_map('stripslashes', $_POST);
$_GET = array_map('stripslashes', $_GET);
2015-05-14 22:07:45 +00:00
$_COOKIE = array_map('stripslashes', $_COOKIE);
}
2015-05-05 01:00:01 +00:00
// AJAX
2015-08-17 23:02:19 -03:00
if( $layout['slug']==='ajax' )
2015-05-05 01:00:01 +00:00
{
2015-08-17 23:02:19 -03:00
if($Login->isLogged())
{
// Load AJAX file
if( Sanitize::pathFile(PATH_AJAX, $layout['parameters'].'.php') ) {
include(PATH_AJAX.$layout['parameters'].'.php');
}
2015-08-16 23:33:49 -03:00
}
2015-05-05 01:00:01 +00:00
}
// ADMIN AREA
else
{
// Boot rules
2015-08-30 22:18:06 -03:00
include(PATH_RULES.'70.posts.php');
include(PATH_RULES.'70.pages.php');
2015-07-03 17:44:26 -03:00
include(PATH_RULES.'80.plugins.php');
2015-05-05 01:00:01 +00:00
include(PATH_RULES.'99.header.php');
2015-07-20 00:14:12 -03:00
include(PATH_RULES.'99.paginator.php');
2015-08-01 23:47:45 -03:00
include(PATH_RULES.'99.themes.php');
2015-09-07 21:51:48 -03:00
include(PATH_RULES.'99.security.php');
2015-05-05 01:00:01 +00:00
if($Url->notFound() || !$Login->isLogged() || ($Url->slug()==='login') )
{
$layout['controller'] = 'login';
2015-08-07 18:33:43 -03:00
$layout['view'] = 'login';
$layout['template'] = 'login.php';
2015-09-07 21:51:48 -03:00
// Generate the token for the user not logged, when the user is loggued the token will be change.
$Security->generateToken();
2015-05-05 01:00:01 +00:00
}
2015-08-07 21:39:10 -03:00
// Plugins before admin area loaded
Theme::plugins('beforeAdminLoad');
2015-05-05 01:00:01 +00:00
// Admin theme init.php
2015-08-16 23:33:49 -03:00
if( Sanitize::pathFile(PATH_ADMIN_THEMES, $Site->adminTheme().DS.'init.php') ) {
2015-06-21 19:01:07 -03:00
include(PATH_ADMIN_THEMES.$Site->adminTheme().DS.'init.php');
2015-08-16 23:33:49 -03:00
}
2015-05-05 01:00:01 +00:00
// Load controller
2015-08-16 23:33:49 -03:00
if( Sanitize::pathFile(PATH_ADMIN_CONTROLLERS, $layout['controller'].'.php') ) {
2015-05-05 01:00:01 +00:00
include(PATH_ADMIN_CONTROLLERS.$layout['controller'].'.php');
2015-08-16 23:33:49 -03:00
}
2015-05-05 01:00:01 +00:00
// Load view and theme
2015-08-16 23:33:49 -03:00
if( Sanitize::pathFile(PATH_ADMIN_THEMES, $Site->adminTheme().DS.$layout['template']) ) {
2015-06-21 19:01:07 -03:00
include(PATH_ADMIN_THEMES.$Site->adminTheme().DS.$layout['template']);
2015-08-16 23:33:49 -03:00
}
2015-08-07 21:39:10 -03:00
// Plugins after admin area loaded
Theme::plugins('afterAdminLoad');
2015-08-17 23:02:19 -03:00
}