LOGGED IN"); } /** * @Route("/den/locations/page/{pageNum}", name="den-locations") */ public function locationIndex( Request $request, RequestStack $requestStack, Auth $auth, HandleLocations $locations, string $pageNum ): Response { $result = $auth->status(); if ($result["status"]) { $session = $requestStack->getSession(); $member = $session->get("member"); $list = $locations->getLocationsPage($pageNum); return $this->render("back/locations.twig", [ "title" => "Bad Space | Locations", "handle" => $member->getHandle(), "list" => $list, "mode" => "index" ]); } else { return $this->render("back/index.twig", [ "title" => "Close the door behind you", ]); } } /** * @Route("/den/locations/add", name="location-add") */ public function addLocation( Request $request, Auth $auth, HandleLocations $locations, ManagerRegistry $doctrine, FileUploader $uploader ): Response { $result = $auth->status(); if ($result["status"]) { if ($request->getMethod() == "GET") { return $this->render("back/locations.twig", [ "title" => "Bad Space | Locations | Add", "mode" => "add" ]); } else { //add new member $token = $request->get("token"); $notice = ""; $entityManager = $doctrine->getManager(); //token check if (!$this->isCsrfTokenValid("upload", $token)) { $logger->info("CSRF failure"); return new Response( "Operation not allowed", Response::HTTP_BAD_REQUEST, [ "content-type" => "text/plain", ] ); } $examples = []; $files = $request->files->get("loc_examples"); if (!empty($files)) { for ($i = 0; $i < count($files); $i++) { $path = $files[$i]->getClientOriginalName(); array_push($examples, ["image_index" => $i, "path" => urlencode($path)]); $uploader->uploadExamples("../public/assets/images/examples", $files[$i]); } } if ( $request->request->get("loc_name") == "" || $request->request->get("loc_url") == "" || $request->request->get("loc_desc") == "" || $request->request->get("loc_tags") == "" ) { $notice = "All fields are required, champ."; return $this->render("back/locations.twig", [ "title" => "Bad Space | Locations | Add", "notice" => $notice, "mode" => "add" ]); } //check clear, call add method $response = $locations->addLocation($request, $result["id"]); if ($response["status"]) { $notice = "New location added! Take a break."; return $this->render("back/locations.twig", [ "title" => "Bad Space | Locations | Add", "notice" => $notice, "mode" => "add" ]); } else { return $this->render("back/locations.twig", [ "title" => "Bad Space | Locations | Add", "notice" => $response["message"], "mode" => "add" ]); } } } else { //back to index to login header("Location:/den"); return new Response("LOGGED IN"); } } /** * @Route("/den/locations/edit/{uuid}", name="location-edit") */ public function editLocation( Request $request, Auth $auth, HandleLocations $locations, ManagerRegistry $doctrine, FileUploader $uploader, string $uuid = "1" ): Response { $result = $auth->status(); if ($result["status"]) { $location = $locations->getLocationbyUUID($uuid); return $this->render("back/locations.twig", [ "title" => "Bad Space | Locations | Edit", "mode" => "edit", "location" => $location[0] ]); } else { header("Location:/den"); return new Response("LOGGED IN"); } } }