/+junk/StupidMVC

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/%2Bjunk/StupidMVC

« back to all changes in this revision

Viewing changes to Common/Router.php

  • Committer: Gustav Hartvigsson
  • Date: 2016-03-16 17:05:24 UTC
  • Revision ID: gustav.hartvigsson@gmail.com-20160316170524-gub61va3x3imkm5y
* __contructor -> __construct

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
<?php
2
2
 
3
3
class Router {
4
 
 
 
4
  
5
5
  private $list_controllers = [];
6
 
 
 
6
  
7
7
  private $default_controller = null;
8
 
 
 
8
  
9
9
  private $four_oh_four_controller = null;
10
 
 
 
10
  
11
11
  public function
12
12
  register_controller ($controller_name) {
13
13
    if (isset ($list_controllers[$controller_name])) {
14
14
      return;
15
15
    }
16
 
 
 
16
    
17
17
    require (APP_DIR . "Controllers" . DS . $controller_name  . ".php");
18
 
 
 
18
    
19
19
    $this->list_controllers[$controller_name] = $controller_name;
20
 
 
 
20
    
21
21
  }
22
 
 
 
22
  
23
23
  public function
24
24
  register_404_controller ($controller_name) {
25
25
    if (isset($this->four_oh_four_controller)){
28
28
    $this->four_oh_four_controller = $controller_name;
29
29
    $this->register_controller ($controller_name);
30
30
  }
31
 
 
 
31
  
32
32
  public function
33
33
  register_default_controller ($controller_name) {
34
34
    if (isset($this->default_controller)) {
37
37
    $this->default_controller = $controller_name;
38
38
    $this->register_controller ($controller_name);
39
39
  }
40
 
 
 
40
  
41
41
  public function
42
42
  route () {
43
 
 
44
 
 
 
43
    
 
44
    
45
45
    var_dump ($this->list_controllers);
46
 
 
 
46
    
47
47
    $url = "";
48
48
    $method = "default_method";
49
49
    $ctrl = $this->default_controller;
59
59
      $script_url = $_SERVER['PHP_SELF'];
60
60
    }
61
61
    //echo "Script URL: " . $script_url . "\n";
62
 
 
 
62
    
63
63
    if($request_url != $script_url) {
64
64
      $url = trim(preg_replace('/'.
65
65
        str_replace('/', '\/',
67
67
            .'/', '', $request_url, 1), '/');
68
68
      //echo "url: " . $url . "\n";
69
69
    }
70
 
 
 
70
    
71
71
    $parts = explode ('/', $url );
72
 
 
 
72
    
73
73
    var_dump ($parts);
74
 
 
 
74
    
75
75
    if (isset ($parts[0]) && $parts[0] != '') {
76
76
      $ctrl = $parts[0];
77
77
    }
78
 
 
 
78
    
79
79
    if (isset ($parts[1]) && $parts[1] != '') {
80
80
      $method = $parts[1];
81
81
    }
82
 
 
 
82
    
83
83
    var_dump ($ctrl);
84
84
    var_dump ($method);
85
 
 
 
85
    
86
86
    if(isset ($this->list_controllers[$ctrl])) {
87
87
      $controller_obj = new $ctrl ();
88
88
      $ctrl_method_list = $controller_obj->get_methods();
94
94
      $controller_obj->default_method (NULL);
95
95
      return;
96
96
    }
97
 
 
 
97
    
98
98
    $controller_obj = new $this->four_oh_four_controller ();
99
99
    $controller_obj->default_method ($url);
100
 
 
 
100
    
101
101
  }
102
102
}