CSY2028-assignment-2/jobs/Routes.php

31 lines
1.3 KiB
PHP
Raw Normal View History

2023-01-21 23:12:42 +00:00
<?php
namespace jobs;
2023-02-04 20:57:47 +00:00
class Routes extends \CSY2028\Routes {
2023-02-04 21:34:17 +00:00
2023-02-04 20:57:47 +00:00
public function __construct() {
2023-02-04 21:34:17 +00:00
$this->setDbTables();
2023-02-04 20:57:47 +00:00
$this->controllers = [
"jobs" => new \jobs\controllers\Jobs($this->databaseTables["jobs"], $this->databaseTables["categories"], $this->databaseTables["applicants"]),
"portal" => new \jobs\controllers\Portal($this->databaseTables["categories"], $this->databaseTables["jobs"], $this->databaseTables["applicants"]),
"user" => new \jobs\controllers\User($this->databaseTables["users"], $this->databaseTables["categories"])
];
$this->loginControllers = [
"portal" => true
];
2023-01-21 23:12:42 +00:00
}
public function getDefaultRoute() {
return 'jobs/home';
2023-01-21 23:12:42 +00:00
}
2023-02-04 20:57:47 +00:00
private function setDbTables() {
$this->databaseTables = [];
$this->databaseTables["categories"] = new \jobs\JobDatabaseTable('category', 'id', '\jobs\Entity\Category');
$this->databaseTables["jobs"] = new \jobs\JobDatabaseTable('job', 'id', '\jobs\Entity\Job', [$this->databaseTables["categories"]]);
$this->databaseTables["applicants"] = new \jobs\JobDatabaseTable('applicants', 'id', '\jobs\Entity\Applicant', [$this->databaseTables["jobs"]]);
$this->databaseTables["users"] = new \jobs\JobDatabaseTable('users', 'id', '\jobs\Entity\User');
2023-01-23 17:50:22 +00:00
}
2023-01-25 17:14:23 +00:00
}
?>