} $action = null; if (isset($_GET['action'])) { $action = $_GET['action']; } $action = basename($action); } if (!isset($page)) { $page = 'index'; if (isset($_GET['page'])) { $page = $_GET['page']; } $page = basename($page); } // Recherche du module ... if (Extend::getAction($action) == false && !file_exists($root . 'action' . DS . $action . '.php')) { $action = 'syscore'; $page = 'nomod'; } // Etape 3, vérification des droits d'accès if (!isset($_SESSION['user'])) { $_SESSION['user'] = false; } $tpl->assign('_user', $_SESSION['user']); if ($_SESSION['user']) { $sections = $pdo->prepare('SELECT * FROM user_sections LEFT JOIN sections ON us_section = section_id WHERE us_user = ?'); $sections->bindValue(1, $_SESSION['user']['user_id']); $sections->execute(); $_SESSION['user']['sections'] = array(); while ($line = $sections->fetch()) { $_SESSION['user']['sections'][$line['section_id']] = $line;
/** * Execute un controleur * @global type $root * @param type $action * @param type $page */ function modexec($action, $page = 'index') { global $root, $exec_mod, $exec_action, $exec_extend; $exec_extend = false; if (file_exists($root . 'action' . DS . $action . '.php')) { include_once $root . 'action' . DS . $action . '.php'; } else { $exec_extend = Extend::getAction($action); $exec_extend->init($action); } $exec = false; if (function_exists($action . '_autoload')) { call_user_func($action . '_autoload', $page); $exec = true; } if (function_exists($action . '_' . $page)) { $exec_mod = $action; $exec_action = $page; call_user_func($action . '_' . $page); $exec = true; } if ($exec == false) { modexec('syscore', 'nopage'); } }