/** * Methode zum Erstellen oder zum Bearbeiten eines Spiels. * * @Route("/admin/game", name="bingo_game") * @Route("/admin/rest/game", name="bingo_game_rest_post", defaults={ "_format" = "json" }) * @Method("POST") * @Rest\View() * @param Request $request * @return array */ public function postAction(Request $request) { $locale = 'de_DE'; if ($request->request->has('locale')) { $locale = $request->request->get('locale'); } $id = $request->request->get('id', null); $slug = $request->request->get('slug'); $name = $request->request->get('name'); if (!is_null($id) || !is_numeric($id)) { $gamesQuery = new GameQuery(); $gamesQuery->joinWithI18n($locale); $game = $gamesQuery->findOneById($id); } if (is_null($game)) { $game = new Game(); } $game->setSlug($slug); $game->setLocale($locale); $game->setName($name); $game->save(); return array('name' => 'FreakXoHBingo', 'version' => Kernel::VERSION, 'status' => true, 'game' => $game); }