Controller.php 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?php
  2. require_once(__DIR__ . "/config.php");
  3. require_once($path["helper"] . "db.php");
  4. require_once($path["helper"] . "text.php");
  5. require_once($path["helper"] . "net.php");
  6. require_once($path["page"] . "Home_Page.php");
  7. require_once($path["page"] . "Monsters_Page.php");
  8. require_once($path["page"] . "Monster_Page.php");
  9. require_once($path["page"] . "Monster_Info_Page.php");
  10. require_once($path["page"] . "Catalog_Page.php");
  11. require_once($path["page"] . "Runes_Page.php");
  12. require_once($path["page"] . "Fusion_Page.php");
  13. require_once($path["page"] . "Report_Page.php");
  14. require_once($path["page"] . "Report_Skillup_Page.php");
  15. require_once($path["page"] . "Report_Runeupgrade_Page.php");
  16. /**
  17. * Application controller.
  18. *
  19. * Handles every request, creating the required models and selecting the
  20. * view.
  21. */
  22. class Controller {
  23. /**
  24. * Constructor.
  25. *
  26. * Handles every request, creating the required models and selecting the
  27. * view.
  28. *
  29. * @param Array $params POST parameters of the request.
  30. */
  31. public function __construct($params){
  32. global $path;
  33. global $root;
  34. $page;
  35. $handler;
  36. $db = start_db();
  37. // Parse parameters, get lang and build the route.
  38. $pars = [];
  39. foreach($params as $p){
  40. if (strlen($p) > 0){
  41. array_push($pars, $p);
  42. }
  43. }
  44. // Select the model to load.
  45. if (sizeof($pars) == 0){
  46. $page = new Home_Page($db);
  47. }
  48. else{
  49. if (strtoupper($pars[0]) == "FUSION"){
  50. $page = new Fusion_Page($db);
  51. }
  52. elseif (strtoupper($pars[0]) == "MONSTERS"){
  53. $page = new Monsters_Page($db);
  54. }
  55. elseif (strtoupper($pars[0]) == "MONSTER"){
  56. $page = new Monster_Page($db, $pars[1]);
  57. }
  58. elseif (strtoupper($pars[0]) == "CATALOG"){
  59. $page = new Catalog_Page($db);
  60. }
  61. elseif (strtoupper($pars[0]) == "MONSTER_INFO"){
  62. $page = new Monster_Info_Page($db, $pars[1]);
  63. }
  64. elseif (strtoupper($pars[0]) == "RUNES"){
  65. $page = new Runes_Page($db);
  66. }
  67. elseif (strtoupper($pars[0]) == "REPORT"){
  68. if (count($pars) == 1){
  69. $page = new Report_Page($db);
  70. }
  71. elseif (strtoupper($pars[1]) == "SKILLUP"){
  72. $page = new Report_Skillup_Page($db, $pars[1]);
  73. }
  74. elseif (strtoupper($pars[1]) == "RUNEUPGRADE"){
  75. $page = new Report_Runeupgrade_Page($db, $pars[1]);
  76. }
  77. }
  78. }
  79. // Load the view, or set an error code.
  80. if (isset($page)){
  81. require_once($page->view);
  82. }
  83. elseif (isset($handler)){
  84. http_response_code($handler->response);
  85. }
  86. else{
  87. http_response_code(404);
  88. }
  89. }
  90. }
  91. ?>