CSY2028-assignment-2/jobs/Routes.php

32 lines
1.6 KiB
PHP
Raw Normal View History

2023-01-21 23:12:42 +00:00
<?php
namespace jobs;
2023-02-05 23:35:31 +00:00
class Routes extends \CSY2028\Routes { //Represents the routes for this site
2023-02-04 20:57:47 +00:00
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 = [
2023-02-05 15:56:21 +00:00
"jobs" => new \jobs\controllers\Jobs($this->databaseTables["jobs"], $this->databaseTables["categories"], $this->databaseTables["applicants"], $this->databaseTables['enquiries']),
2023-02-05 16:13:36 +00:00
"portal" => new \jobs\controllers\Portal($this->databaseTables["categories"], $this->databaseTables["jobs"], $this->databaseTables["applicants"], $this->databaseTables['users'], $this->databaseTables['enquiries']),
2023-02-04 20:57:47 +00:00
"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');
2023-02-05 12:05:32 +00:00
$this->databaseTables["applicants"] = new \jobs\JobDatabaseTable('applicants', 'id', '\jobs\Entity\Applicant');
$this->databaseTables["jobs"] = new \jobs\JobDatabaseTable('job', 'id', '\jobs\Entity\Job', [$this->databaseTables["categories"], $this->databaseTables['applicants']]);
2023-02-04 20:57:47 +00:00
$this->databaseTables["users"] = new \jobs\JobDatabaseTable('users', 'id', '\jobs\Entity\User');
2023-02-05 15:56:21 +00:00
$this->databaseTables["enquiries"] = new \jobs\JobDatabaseTable('enquiries', 'id', '\jobs\Entity\Enquiry', [$this->databaseTables['users']]);
2023-01-23 17:50:22 +00:00
}
2023-01-25 17:14:23 +00:00
}
?>