@ -38,7 +38,7 @@ function getConnection(): Connection {
}
function getUserController(): UserController {
return new UserController(new TacticModel(new TacticInfoGateway(getConnection())), new TeamModel(new TeamGateway(getConnection()), new MemberGateway(getConnection()), new AccountGateway(getConnection())));
return new UserController(new TacticModel(new TacticInfoGateway(getConnection())), new TeamModel(new TeamGateway(getConnection()), new MemberGateway(getConnection()), new AccountGateway(getConnection())),new \IQBall\Core\Model\PersonalSpaceModel(new \IQBall\Core\Gateway\PersonalSpaceGateway(getConnection()),new TacticInfoGateway(getConnection())));
}
function getVisualizerController(): VisualizerController {
@ -86,6 +86,8 @@ function getRoutes(): AltoRouter {
private function getTacticFromRoot(int $accountId): array {
$result = $this->con->fetch(
"SELECT t.*
FROM Tactic t
WHERE t.owner = :ownerId AND t.id NOT IN (SELECT id_tactic FROM TacticFolderLink)",
["ownerId" => [$accountId, PDO::PARAM_INT]]
);
return array_map(fn($row) => new TacticInfo($row['id'],$row['name'],$row['creation_date'],$row['owner'],CourtType::fromName($row['court_type']),$row['content']),$result);
}
private function getFolderFromRoot(int $accountId): array {
$result = $this->con->fetch(
"SELECT *
FROM TacticFolder
WHERE owner = :owner AND tactic_folder_parent IS NULL",
["ownerId" => [$accountId, PDO::PARAM_INT]]
);
var_dump($result);
return array_map(fn($row) => new PersonalSpaceFolder($row['id'],$row['name']),$result);
}
private function getTacticFromFolder(int $accountId, int $folderId): array {
$result = $this->con->fetch(
"SELECT t.*
FROM Tactic t, TacticFolderLink tfl
WHERE t.owner = :ownerId AND tfl.id_tactic = :folderId",
[
"ownerId" => [$accountId, PDO::PARAM_INT],
"folderId" => [$folderId, PDO::PARAM_INT]
]
);
return array_map(fn($row) => new TacticInfo($row['id'],$row['name'],$row['creation_date'],$row['owner'],CourtType::fromName($row['court_type']),$row['content']),$result);
}
private function getFolderFromFolder(int $accountId, int $folderId): array {
$result = $this->con->fetch(
"SELECT *
FROM TacticFolder
WHERE owner = :ownerId AND tactic_folder_parent = :folderId",
[
"ownerId" => [$accountId, PDO::PARAM_INT],
"folderId" => [$folderId, PDO::PARAM_INT]
]
);
return array_map(fn($row) => new PersonalSpaceFolder($row['id'],$row['name']),$result);