/** * Guarda las promocionses que presta un usuario o un operador. * * @return Response */ public function postPromocion(Guard $auth, ServiciosOperadorRepository $gestion) { $inputData = Input::get('formData'); parse_str($inputData, $formFields); //usuario_servicio_id $permiso = $gestion->getPermiso($formFields['id_usuario_servicio']); if (!isset($permiso) || $permiso->id_usuario != $auth->user()->id) { return view('errors.404'); } $validator = Validator::make($formFields, Promocion_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'])) { $Promocion = $gestion->getPromocion($formFields['id']); } //si ya existe el objeto se hace el update if (isset($Promocion)) { //logica update $gestion->storeUpdatePromocion($formFields, $Promocion); //Gestion de actualizacion de busqueda $search = $formFields['nombre_promocion'] . " " . $formFields['descripcion_promocion'] . " " . $formFields['codigo_promocion'] . " " . $formFields['tags'] . " " . $formFields['observaciones_promocion']; $gestion->storeUpdateSerchEngine($Promocion, 1, $formFields['id'], $search); $returnHTML = '/IguanaTrip/public/servicios/serviciooperador/' . $formFields['id_usuario_servicio'] . '/' . $formFields['catalogo']; } else { //logica de insert //Arreglo de inputs prestados que vienen del formulario $object = $gestion->storeNewPromocion($formFields); //Gestion de nueva de busqueda $search = $formFields['nombre_promocion'] . " " . $formFields['descripcion_promocion'] . " " . $formFields['codigo']; $gestion->storeSearchEngine($formFields['id_usuario_servicio'], $search, 1, $object->id); $returnHTML = '/IguanaTrip/public/promocion/' . $object->id; } return response()->json(array('success' => true, 'redirectto' => $returnHTML)); }