/** * Guarda los itinerarios que presta un usuario o un operador. * * @return Response */ public function postItinerario(Guard $auth, ServiciosOperadorRepository $gestion) { $inputData = Input::get('formData'); parse_str($inputData, $formFields); $permiso = $gestion->getPermiso($formFields['id_usuario_servicio']); if (!isset($permiso) || $permiso->id_usuario != $auth->user()->id) { return view('errors.404'); } $validator = Validator::make($formFields, Itinerario_Usuario_Servicio::$rulesP); if ($validator->fails()) { return response()->json(array('fail' => true, 'errors' => $validator->getMessageBag()->toArray())); } //obtengo llas promociones por id if (isset($formFields['id'])) { $Itinerario = $gestion->getItinerario($formFields['id']); } //si ya existe el objeto se hace el update if (isset($Itinerario)) { //logica update $gestion->storeUpdateItinerario($formFields, $Itinerario); //Gestion de actualizacion de busqueda $search = $formFields['nombre_itinerario'] . " " . $formFields['descripcion_itinerario'] . " " . $formFields['observaciones_itinerario'] . " " . $formFields['tags']; $gestion->storeUpdateSerchEngine($Itinerario, 3, $formFields['id'], $search); $returnHTML = '/IguanaTrip/public/itinerario/' . $formFields['id']; } else { //logica de insert //Arreglo de inputs prestados que vienen del formulario $object = $gestion->storeNewItinerario($formFields); //Gestion de nueva de busqueda $search = $formFields['nombre_itinerario'] . " " . $formFields['descripcion_itinerario']; $gestion->storeSearchEngine($formFields['id_usuario_servicio'], $search, 3, $object->id); $returnHTML = '/IguanaTrip/public/itinerario/' . $object->id; } return response()->json(array('success' => true, 'redirectto' => $returnHTML)); }