|
3 | 3 | header('Access-Control-Allow-Origin: *'); |
4 | 4 | header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept'); |
5 | 5 |
|
6 | | -define('DS', DIRECTORY_SEPARATOR); |
7 | | -define('APP', __DIR__ . DS . 'app' . DS); |
8 | | -define('CORE', __DIR__ . DS . 'core' . DS); |
| 6 | +require 'constants.php'; |
| 7 | +require __DIR__ . '/vendor/autoload.php'; |
| 8 | + |
| 9 | +require_once CORE_MODEL; |
| 10 | +require_once CORE_CONTROLLER; |
9 | 11 |
|
10 | | -require_once CORE . 'model' . DS . 'Model.php'; |
11 | | -require_once CORE . 'controller' . DS . 'Controller.php'; |
12 | 12 | use SimpleORM\app\controller; |
13 | 13 |
|
14 | 14 | $uri = $_SERVER['REQUEST_URI']; |
|
28 | 28 | exit; |
29 | 29 | } |
30 | 30 |
|
31 | | -$src = explode('/', $uri); |
32 | | -$model = ucfirst($src[1]); |
| 31 | +$src = explode('/', $uri); |
| 32 | +$model = ucfirst($src[1]); |
33 | 33 | $controller = $model.'Controller'; |
34 | | -$method = (isset($src[2])) ? $src[2] : 'index'; |
| 34 | +$method = (isset($src[2])) ? $src[2] : 'index'; |
35 | 35 |
|
36 | 36 | if (isset($src[3]) && empty($the_request)) { |
37 | 37 | $the_request = filter_var($src[3], FILTER_SANITIZE_STRING); |
38 | 38 | } |
39 | 39 |
|
40 | | -/* |
41 | | -* AppModel file |
42 | | -*/ |
43 | | -$app_model = APP . 'model' . DS .'AppModel.php'; |
44 | | - |
45 | | -if (file_exists($app_model)) { |
46 | | - require_once $app_model; |
47 | | -} |
48 | | -/* |
49 | | -* require files of current Model/Controller |
50 | | -*/ |
51 | | -$model_file = APP . 'model ' . DS . $model.'.php'; |
52 | | - |
53 | | -if (file_exists($model_file)) { |
54 | | - require_once $model_file; |
55 | | -} |
56 | 40 | /* |
57 | 41 | * call current class/method |
58 | 42 | */ |
59 | | -$controller_file = APP . 'controller' . DS . $controller.'.php'; |
| 43 | +$controller_file = APP_CONTROLLER . $controller . PHP; |
60 | 44 |
|
61 | | -if (!file_exists($controller_file)) { |
62 | | - throw new Exception('Controller '.$controller.' Not Found'); |
| 45 | +try { |
| 46 | + require $controller_file; |
| 47 | + $load_class = 'SimpleORM\app\controller\\' . $controller; |
| 48 | + $class = new $load_class(); |
| 49 | + $set = $class->$method($the_request); |
| 50 | +} catch(Exception $e) { |
| 51 | + echo 'No '.$controller.' found for this route', $e->getMessage(), "\n"; |
63 | 52 | } |
64 | | - |
65 | | -require $controller_file; |
66 | | -$load_class = 'SimpleORM\app\controller\\' . $controller; |
67 | | -$class = new $load_class(); |
68 | | -$set = $class->$method($the_request); |
69 | | - |
70 | 53 | /* |
71 | 54 | * Declare all variables if passed in return |
72 | 55 | */ |
|
79 | 62 | /* |
80 | 63 | * If method has a view file, include |
81 | 64 | */ |
82 | | -$view_file = __DIR__ . DS . 'app' . DS . 'view' . DS . $model . DS . $method .'.php'; |
| 65 | +$view_file = APP_VIEW . $model . DS . $method . PHP; |
83 | 66 |
|
84 | 67 | if (file_exists($view_file)) { |
85 | 68 | include $view_file; |
|
0 commit comments