Exemplo n.º 1
0
 /**
  * Handle a registration request for the application.
  *
  * @param  App\Http\Requests\RegisterRequest  $request
  * @param  App\Repositories\UserRepository $user_gestion
  * @return Response
  */
 public function postRegister(Guard $auth, Request $request, UserRepository $user_gestion, OperadorRepository $operador_gestion, ServiciosOperadorRepository $gestion)
 {
     $inputData = Input::get('formData');
     parse_str($inputData, $formFields);
     if ($inputData != "") {
         $userData = array('username' => $formFields['username'], 'email' => $formFields['email'], 'password' => $formFields['password'], 'email_confirmation' => $formFields['email_confirmation']);
     } else {
         $userData = array('username' => $request->input('username'), 'email' => $request->input('email'), 'password' => $request->input('password'), 'email_confirmation' => $request->input('email_confirmation'));
     }
     //Valida que los campos sean unicos y cumplan con los requerimientos
     $validator = Validator::make($userData, $this->validationRules);
     //Si el validador falla se ejecutan las acciones
     if ($validator->fails()) {
         return response()->json(array('fail' => true, 'errors' => $validator->getMessageBag()->toArray()));
     } else {
         $user = $user_gestion->store($userData, $confirmation_code = str_random(30));
         //Se almacenan los datos por default del contacto, se pueden modificar cuando ya ingrese
         $operadorData = array('nombre_contacto_operador_1' => $formFields['username'], 'telf_contacto_operador_1' => "", 'ip_registro_operador' => $this->getIp(), 'email_contacto_operador' => $formFields['email'], 'direccion_empresa_operador' => "", 'id_usuario' => $user->id, 'id_tipo_operador' => 3, 'estado_contacto_operador' => 1, 'id_usuario_op' => 0);
         //Almacena el operador y almacena en sesion su identificacion
         $operador = $operador_gestion->store($operadorData);
         $request->session()->put('operador_id', $operador->id);
         if ($request->session()->has('user_id')) {
             $request->session()->forget('user_id');
         }
         //Se realiza el login y redireccion
         $request->session()->put('user_name', $user->email);
         $auth->login($user);
         $email = $auth->user()->email;
         $nombre = $auth->user()->email;
         try {
             $this->dispatch(new SendMail($user));
         } catch (Exception $e) {
         }
         /* Busca si ya tiene servicios activos o no */
         //logica que comprueba si el usuario tiene servicios para ser modificados
         //caso contrario ingresa nuevos serviciosS
         $listServicios = $gestion->getServiciosidUsuario($user->id);
         if ($listServicios) {
             $data['id_usuario_op'] = $listServicios[0]->id_usuario_op;
             $request->session()->put('operador_id', $data['id_usuario_op']);
             $request->session()->put('tip_oper', $listServicios[0]->id_tipo_operador);
             return redirect('/detalleServicios')->with('user', $user->id);
         } else {
             $returnHTML = '/IguanaTrip/public/myProfileOp';
             //->with('user', $user->id);
             return response()->json(array('success' => true, 'redirectto' => $returnHTML));
         }
     }
 }
Exemplo n.º 2
0
 public function postUsuarioServiciosMiniPadre(Request $request, OperadorRepository $usuarioSevicio_gestion, ServiciosOperadorRepository $gestion)
 {
     $inputData = Input::get('formData');
     parse_str($inputData, $formFields);
     $usuarioServicioData = array('nombre_servicio' => $formFields['nombre_servicio'], 'detalle_servicio' => $formFields['detalle_servicio'], 'id_usuario_operador' => $formFields['id_usuario_operador'], 'id_catalogo_servicio' => $formFields['id_catalogo_servicio'], 'id_padre' => $formFields['id_padre']);
     $usuarioServicio = $usuarioSevicio_gestion->storageUsuarioServiciosMiniPadre($usuarioServicioData);
     //new
     $search = $formFields['nombre_servicio'] . " " . $formFields['detalle_servicio'];
     $gestion->storeSearchEngine($usuarioServicio, $search, 4, $usuarioServicio);
     $returnHTML = '/IguanaTrip/public/servicios/serviciooperador/' . $usuarioServicio . '/' . $formFields['id_catalogo_servicio'];
     return response()->json(array('success' => true, 'redirectto' => $returnHTML));
 }
 public function postPuntoItinerario(ServiciosOperadorRepository $gestion)
 {
     $inputData = Input::get('formData');
     parse_str($inputData, $formFields);
     $validator = Validator::make($formFields, Detalle_Itinerario::$rulesP);
     if ($validator->fails()) {
         return response()->json(array('fail' => true, 'errors' => $validator->getMessageBag()->toArray()));
     }
     //obtengo llas promociones por id
     if (isset($formFields['id']) && $formFields['id'] != "") {
         $Itinerario = $gestion->getDetalleItinerario($formFields['id']);
     }
     //si ya existe el objeto se hace el update
     if (isset($Itinerario)) {
         //logica update
         $gestion->storeUpdateDetalleItinerario($formFields, $Itinerario);
         //Gestion de actualizacion de busqueda
         $search = $formFields['lugar_punto'] . " " . $formFields['incluye_punto'];
         $gestion->storeUpdateSerchEngine($Itinerario, 4, $formFields['id'], $search);
         $returnHTML = '/IguanaTrip/public/itinerario/' . $formFields['id_itinerario'];
     } else {
         //logica de insert
         //Arreglo de inputs prestados que vienen del formulario
         $object = $gestion->storeNewDetalleItinerario($formFields);
         //Gestion de nueva de busqueda
         $search = $formFields['lugar_punto'] . " " . $formFields['incluye_punto'];
         $gestion->storeSearchEngine($formFields['id_usuario_servicio'], $search, 4, $object->id);
         $returnHTML = '/IguanaTrip/public/itinerario/' . $formFields['id_itinerario'];
     }
     return response()->json(array('success' => true, 'redirectto' => $returnHTML));
 }