Ejemplo n.º 1
0
 public function postCasual()
 {
     $id = Input::get('id');
     $input = Input::all();
     if (strlen(strip_tags($input['input'])) > 400) {
         return Response::json(array('type' => 'danger', 'msg' => 'La descripción debe tener maximo 400 caracteres'));
     }
     $rules = array('input' => 'required', 'precio' => 'required|numeric', 'moneda' => 'required', 'departamento' => 'required', 'categoria' => 'required', 'titulo' => 'required', 'negocioType' => 'required', 'img_1' => 'required|image');
     $messages = array('required' => ':attribute es requerido', 'numeric' => ':attribute debe ser numerico', 'image' => 'El archivo :attribute debe ser una imagen');
     $customAttributes = array('input' => 'El campo descripcion', 'precio' => 'El precio', 'moneda' => 'El campo moneda', 'departamento' => 'El campo departamento', 'categoria' => 'El campo categoria', 'titulo' => 'El campo titulo', 'negocioType' => 'El campo clase de negocio', 'img_1' => 'Imagen principal');
     $validator = Validator::make($input, $rules, $messages, $customAttributes);
     if ($validator->fails()) {
         return Response::json(array('type' => 'danger', 'msg' => 'Error al validar los datos', 'data' => $validator->getMessageBag()->toArray()));
     } else {
         $pub = new Publicaciones();
         $pub->user_id = $id;
         $pub->tipo = 'Casual';
         $pub->titulo = $input['titulo'];
         $pub->departamento = $input['departamento'];
         $pub->categoria = $input['categoria'];
         $pub->ubicacion = 'Principal';
         $pub->precio = $input['precio'];
         $pub->moneda = $input['moneda'];
         $pub->descripcion = $input['input'];
         $pub->fechIni = date('Y-m-d', time());
         $pub->fechFin = date('Y-m-d', time() + 604800);
         $pub->fechRepub = date('Y-m-d', time() + 2543400);
         $pub->bussiness_type = $input['negocioType'];
         $pub->status = 'Procesando';
         $user = User::find($id);
         if (Input::hasFile('img_1')) {
             $file1 = Input::file('img_1');
             $pub->img_1 = $this->upload_image($user->username, $file1);
         }
         if (Input::hasFile('img_2')) {
             $file2 = Input::file('img_2');
             $pub->img_2 = $this->upload_image($user->username, $file2);
         }
         $pub->save();
         if (Input::has('longitud') && Input::has('latitud')) {
             $lon = Input::get('longitud');
             $lat = Input::get('latitud');
             if (!empty($lon) && !empty($lat)) {
                 $loc = new Location();
                 $loc->latitude = Input::get('latitud');
                 $loc->longitude = Input::get('longitud');
                 $loc->pub_id = $pub->id;
                 $loc->save();
             }
         }
         return Response::json(array('type' => 'success', 'msg' => 'publicación creada satisfactoriamente.', 'pub_id' => $pub->id));
     }
 }