示例#1
0
 private function __construct($REQUEST, $modules)
 {
     if ($REQUEST->get('c') == '') {
         UI::init()->static_page('home');
     } else {
         if (isset($modules[$REQUEST->get('c')])) {
             // \CORE::msg('debug','Controller: '.$REQUEST->get('c'));
             $model = null;
             $view = null;
             $controller = null;
             $p2 = strtoupper($REQUEST->get('c'));
             $path = array('m' => '', 'v' => '', 'c' => '');
             if ($modules[$REQUEST->get('c')] == 0) {
                 $p1 = 'CORE\\MVC\\';
                 $path['m'] = $p1 . 'M\\' . $p2 . '_M';
                 $path['v'] = $p1 . 'V\\' . $p2 . '_V';
                 $path['c'] = $p1 . 'C\\' . $p2 . '_C';
             } else {
                 $p1 = 'APP\\MVC\\';
                 $path['m'] = $p1 . 'M\\' . $p2 . '_M';
                 $path['v'] = $p1 . 'V\\' . $p2 . '_V';
                 $path['c'] = $p1 . 'C\\' . $p2 . '_C';
             }
             if (class_exists($path['c'])) {
                 if (\SEC::init()->acl($REQUEST->get('c'), $REQUEST->get('act'))) {
                     // access control ($USER)
                     if (class_exists($path['m'])) {
                         $model = new $path['m']();
                     }
                     if (class_exists($path['v'])) {
                         $view = new $path['v']();
                     }
                     $controller = new $path['c']($REQUEST, $model, $view);
                 }
             } else {
                 \CORE::msg('error', 'Module not loaded');
             }
         } else {
             \CORE::msg('error', 'Unregistered module');
             UI::init()->static_page('home');
         }
     }
 }
示例#2
0
文件: core.php 项目: sniyozov/mt
 public static function ROUTER()
 {
     $REQUEST = \CORE::init()->request;
     \CORE::init()->c = $REQUEST->get('c');
     $USER = USER::init();
     $modules = \CORE::init()->get_modules();
     if ($REQUEST->get('c') == '') {
         if ($USER->auth()) {
             if ($USER->get('gid') == 1) {
                 \CORE\UI::init()->static_page('admin', true);
             } else {
                 \CORE\UI::init()->static_page('user', true);
             }
         } else {
             \CORE\UI::init()->static_page('home');
         }
     } else {
         if (isset($modules[$REQUEST->get('c')])) {
             // \CORE::msg('debug','Controller: '.$REQUEST->get('c'));
             $model = null;
             $view = null;
             $controller = null;
             $p2 = strtoupper($REQUEST->get('c'));
             $path = array('m' => '', 'v' => '', 'c' => '');
             if ($modules[$REQUEST->get('c')] == 0) {
                 $p1 = 'CORE\\MVC\\';
                 $path['m'] = $p1 . 'M\\' . $p2 . '_M';
                 $path['v'] = $p1 . 'V\\' . $p2 . '_V';
                 $path['c'] = $p1 . 'C\\' . $p2 . '_C';
             } else {
                 $p1 = 'APP\\MVC\\';
                 $path['m'] = $p1 . 'M\\' . $p2 . '_M';
                 $path['v'] = $p1 . 'V\\' . $p2 . '_V';
                 $path['c'] = $p1 . 'C\\' . $p2 . '_C';
             }
             if (class_exists($path['c'])) {
                 if (\SEC::init()->acl($REQUEST->get('c'), $REQUEST->get('act'))) {
                     // access control ($USER)
                     if (class_exists($path['m'])) {
                         $model = new $path['m']();
                     }
                     if (class_exists($path['v'])) {
                         $view = new $path['v']();
                     }
                     $controller = new $path['c']($REQUEST, $model, $view);
                 }
             } else {
                 \CORE::msg('error', 'Module not loaded');
             }
         } else {
             \CORE::msg('error', 'Unregistered module');
             if ($USER->auth()) {
                 if ($USER->get('gid') == 1) {
                     \CORE\UI::init()->static_page('admin', true);
                 } else {
                     \CORE\UI::init()->static_page('user', true);
                 }
             } else {
                 \CORE\UI::init()->static_page('home');
             }
         }
     }
 }