예제 #1
0
 public function uploadLogo(Request $request)
 {
     if ($request->hasFile('imgFile') && $request->alt) {
         $logo = $request->file('imgFile');
         $logoName = uniqid() . '-logo-' . $logo->getClientOriginalName();
         $logoThumb = uniqid() . '-thumb-' . $logo->getClientOriginalName();
         $logoPath = 'build/images/logos/';
         if (!file_exists($logoPath)) {
             Storage::disk('public')->makeDirectory($logoPath);
         }
         $img = Image::make($logo->getRealPath());
         $logo->move($logoPath, $logoName);
         $img->fit('230')->save($logoPath . $logoThumb);
         $logo = new Logo();
         $logo->image = $logoName;
         $logo->thumb = $logoThumb;
         $logo->alt = $request->alt;
         $logo->save();
         return ['name' => asset('build/images/logos') . '/' . $logoThumb, 'img' => 'illustration'];
     } else {
         return 'error';
     }
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update(FormatoEvidenciaRequest $request, $id)
 {
     $formatoEBan = FormatoEvidencia::findOrFail($id);
     //obtenemos el campo file definido en el formulario
     $file = $request->file('logo');
     $idLogo = 0;
     if ($file != null) {
         $image = Image::make($file);
         //cambiar tamaño
         $image->resize(100, 100);
         //obtenemos el nombre del archivo
         $nombre = $file->getClientOriginalName();
         //url de la ubicacion donde se guardara
         $public_path = public_path();
         $url = '/app/logos/' . $nombre;
         $idLogo = 0;
         //verificamos si el archivo existe y lo retornamos
         if (Storage::exists($nombre)) {
             $logoBD = Logo::filtro($nombre, $url);
             if ($logoBD->toArray() == null) {
                 $logoEBan = new Logo();
                 $logoEBan->nom_logo = $nombre;
                 $logoEBan->url = $url;
                 $logoEBan->save();
                 $logoBD = Logo::filtro($nombre, $url);
                 $idLogo = $logoBD->toArray()[0]['id'];
             } else {
                 $idLogo = $logoBD->toArray()[0]['id'];
             }
         } else {
             //indicamos que queremos guardar un nuevo archivo en el disco local
             // Guardar Original
             $image->save($public_path . $url);
             $logoBD = Logo::filtro($nombre, $url);
             if ($logoBD->toArray() == null) {
                 $logoEBan = new Logo();
                 $logoEBan->nom_logo = $nombre;
                 $logoEBan->url = $url;
                 $logoEBan->save();
                 $logoBD = Logo::filtro($nombre, $url);
                 $idLogo = $logoBD->toArray()[0]['id'];
             } else {
                 $idLogo = $logoBD->toArray()[0]['id'];
             }
         }
     } else {
         $idLogo = $formatoEBan->id_logo;
     }
     $formatoEBan->fill($request->all());
     $formatoEBan->nom_formato = strtoupper($request->get('nombre_formato'));
     $formatoEBan->encabezado_formato = $request->get('encabezado_formato');
     $formatoEBan->cuerpo_formato = $request->get('cuerpo_formato');
     $formatoEBan->id_logo = $idLogo;
     $formatoEBan->save();
     return Redirect::route('formatoEvidencia.index')->with('alert', 'Registro Actualizado con exito!');
 }