/** * Récupère la liste des buildings * @paran token Token de l'utilisateur */ public static function getBuildings($userId) { $data; $error; $sql = "SELECT b_t.building_name as name, b_u.x, b_u.y, b_u.construct_end_at, b_u.color, b_u.building_id\n\t\t\t\tFROM building_users AS b_u\n\t\t\t\tINNER JOIN building_type AS b_t\n\t\t\t\t\tON b_u.building_type_id = b_t.id\n\t\t\t\tWHERE b_u.user_id = " . $userId; $result = $GLOBALS['app']['db']->fetchAll($sql); $typeId = BuildingModel::getBuildingTypeId(); $typeIdGet = []; //Récupére toutes les tables a récupérer foreach ($result as $row => $rst) { if (in_array($result[$row]['name'], $typeIdGet)) { continue; } array_push($typeIdGet, $result[$row]['name']); } $buildingTable = array(); foreach ($typeIdGet as $name) { $sql = "SELECT *\n\t\t\t\t\tFROM building_" . $name . "\n\t\t\t\t\tWHERE user_id = " . $userId; array_push($buildingTable, $GLOBALS['app']['db']->fetchAll($sql)); } foreach ($result as $t => $value) { foreach ($buildingTable as $buildingTypeId => $rows) { if ($value['name'] == $typeIdGet[$buildingTypeId]) { foreach ($rows as $building) { if ($value['building_id'] == $building['id']) { $result[$t] = array_merge($value, $building); unset($result[$t]["user_id"]); unset($result[$t]["id"]); unset($result[$t]["building_id"]); } } } } } return $result; }
require_once __DIR__ . '/../app/controllers/ResourcesController.class.php'; require_once __DIR__ . '/../app/models/BuildingModel.class.php'; require_once __DIR__ . '/../app/controllers/BuildingsController.class.php'; require_once __DIR__ . '/../app/models/LanternModel.class.php'; require_once __DIR__ . '/../app/controllers/LanternsController.class.php'; require_once __DIR__ . '/../app/models/GiftModel.class.php'; require_once __DIR__ . '/../app/controllers/GiftsController.class.php'; $basePath = '/v1'; $UsersController = new UsersController(); $ResourcesController = new ResourcesController(); $BuildingsController = new BuildingsController(); $LanternsController = new LanternsController(); $GiftsController = new GiftsController(); $UserModel = new UserModel(); $ResourceModel = new ResourceModel(); $BuildingModel = new BuildingModel(); $LanternModel = new LanternModel(); $GiftModel = new GiftModel(); /* * Main path */ $app->get('/', function (Request $request) use($app, $UsersController) { return $app->redirect('doc/index.html'); }); /* * Users */ $app->get($basePath . '/userInfos', function (Request $request) use($app, $UsersController, $UserModel) { $params = $request->query->all(); $errorMessage = $UserModel->validate($params, "index"); if ($errorMessage) {