/** * Store a newly created resource in storage. * * @return Response */ public function store() { // var_dump(Input::All()); // die; // // 'categorias_id' => 'exists:rubros,id' $rules = ['clasificado' => 'required', 'precio' => 'required', 'telefono' => 'required']; if (!Clasificado::isValid(Input::all(), $rules)) { return Redirect::back()->withInput()->withErrors(Clasificado::$errors); } $clasificado = new Clasificado(); $clasificado->users_id = Sentry::getUser()->id; $clasificado->operacion = Input::get('operacion'); $clasificado->clasificadoscategorias_id = Input::get('clasificadoscategorias_id'); $clasificado->clasificado = Input::get('clasificado'); $clasificado->precio = Input::get('precio'); $clasificado->telefono = Input::get('telefono'); $url_seo = Input::get('clasificado'); $url_seo = $this->url_slug($url_seo) . date('ljSFY'); $clasificado->url_seo = $url_seo; $clasificado->save(); $file = Input::file('file'); if ($file) { $filename = $file->getClientOriginalName(); $extension = $file->getClientOriginalExtension(); $destinationPath = public_path() . '/uploads/original/'; $destinationPath_big = public_path() . '/uploads/big/'; $destinationPath_crop = public_path() . '/uploads/crop/'; $upload_success = Input::file('file')->move($destinationPath, $filename); if ($upload_success) { $image = Image::make($destinationPath . $filename)->resize(800, null, true)->save($destinationPath_big . $filename); $image = Image::make($destinationPath . $filename)->resize(640, null, true)->crop(240, 160, true)->save($destinationPath_crop . $filename); File::delete($destinationPath . $filename); $arch = new Archivo(); $arch->archivo = $filename; $arch->descripcion = ""; $arch->padre_id = $clasificado->id; $arch->padre = "clasificado"; $arch->save(); } } // return Redirect::to('/clasificados/ver'); }
/** * Store a newly created resource in storage. * * @return Response */ public function store() { // validate // read more on validation at http://laravel.com/docs/validation $authuser = Auth::user(); $rules = array('categoria_id' => 'required|numeric', 'clasf_titulo' => 'required', 'clasf_descripcion' => 'required', 'clasf_precio' => 'numeric'); $validator = Validator::make(Input::all(), $rules); if ($validator->fails()) { return Redirect::to('administracion/clasificados/create')->with(array('usuarioimg' => $authuser->imagen, 'usuarionombre' => $authuser->nombre, 'usuarioid' => $authuser->id))->withErrors($validator)->withInput(); } else { // store $clas_imagenes = Input::file('imagenes'); $imagenes_error = array(); if ($clas_imagenes[0] != NULL) { foreach ($clas_imagenes as $file) { $rules = array('file' => 'required|mimes:png,gif,jpeg,txt,pdf,doc,rtf|max:20000'); $validator = \Validator::make(array('file' => $file), $rules); if ($validator->passes()) { $imagenes_error[] = false; } else { $imagenes_error[] = true; //return Redirect::to('administracion/clasificados/create') // ->withErrors($validator); //break; } } } $clasificado = new Clasificado(); $clasificado->categoria_id = Input::get('categoria_id'); $clasificado->titulo = Input::get('clasf_titulo'); $clasificado->descripcion = Input::get('clasf_descripcion'); $clasificado->premium = Input::get('clasf_premium'); $clasificado->precio = Input::get('clasf_precio'); $clasificado->moneda = Input::get('clasf_moneda'); $clasificado->habilitar = Input::get('clasf_habilitar'); $clasificado->fecha_publicacion = new DateTime(); $usuario_id = Session::get('usuario_id', function () { return 1; }); $clasificado->usuario_id = $usuario_id; $clasificado->latitud = Input::get('latitud'); $clasificado->longitud = Input::get('longitud'); $clasificado->save(); if (!File::exists('images/clasificados')) { $result = File::makeDirectory('images/clasificados', 0777); } $clas_imagenes = Input::file('imagenes'); $i = 0; if ($clas_imagenes[0] != NULL) { foreach ($clas_imagenes as $file) { if ($imagenes_error[$i] == false) { $id = Str::random(4); $date_now = new DateTime(); $destinationPath = 'images/clasificados/'; $filename = $date_now->format('YmdHis') . $id; $mime_type = $file->getMimeType(); $extension = $file->getClientOriginalExtension(); $upload_success = $file->move($destinationPath, $filename . '.' . $extension); $clasificado_img = new ClasificadoImagen(); $clasificado_img->clasificado_id = $clasificado->id; $clasificado_img->nombre_imagen = $filename . '.' . $extension; $clasificado_img->save(); } $i = $i + 1; } } $resString = 'Clasificado creado exitosamente!'; $countImgErr = 0; foreach ($imagenes_error as $img_err) { if ($img_err == true) { $countImgErr = $countImgErr + 1; } } if ($countImgErr > 0) { if ($countImgErr == 1) { $resString = $resString . ' (' . $countImgErr . ' imagen no se agregó por tener un error)'; } else { $resString = $resString . ' (' . $countImgErr . ' imagenes no se agregaron por tener un error)'; } } Session::flash('message', $resString); return Redirect::to('administracion/clasificados')->with(array('usuarioimg' => $authuser->imagen, 'usuarionombre' => $authuser->nombre, 'usuarioid' => $authuser->id)); } }