/** * @param FullSearchData $searchData * @return FullSearchData */ public function initSearchData(FullSearchData $searchData) { $em = $this->entityManager; $request = $this->request; $roomsTransformer = new RoomsToStringTransformer(); $servicesTransformer = new ServicesToStringTransformer($em); $brandsTransformer = new BrandsToStringTransformer($em); // Re-setting all the data in the form $searchData->searchString = $request->get('searchcriteria'); $searchData->searchString = str_replace('##-##', '/', $searchData->searchString); $searchData->datePax->startingDate = new \DateTime($request->get('startdate')); $searchData->datePax->endingDate = new \DateTime($request->get('enddate')); $searchData->accentCard = ($accentCard = $request->get('accentCard')) ? $accentCard : null; $searchData->flexible_dates = (bool) $request->get('flexible'); $searchData->budget_min = $request->get('budgetmin'); $searchData->budget_max = $request->get('budgetmax'); $searchData->radius = $request->get('radius'); if ($brands = $request->get('brands')) { $searchData->brands = $brandsTransformer->reverseTransform($brands); } if (count($searchData->getBrands()) > 1) { $this->reservitUtils->setBrandExtender(true); } $searchData->services = $servicesTransformer->reverseTransform($request->get('servicesstring')); $searchData->datePax->setPartialRooms($roomsTransformer->reverseTransform($request->get('roomsstring'))); $this->searchData = $searchData; $this->setModeFromSearchString(); return $searchData; }