Example #1
0
 /**
  * Update the resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function update(Request $request)
 {
     $banner = Banner::find(1);
     $data = $request->all();
     $data['images'] = $banner->images ? $banner->images : [];
     $i = 0;
     $files = json_decode($data['files_deleted']);
     foreach ($files as $file) {
         if (($key = array_search($file, $data['images'])) !== false) {
             unset($data['images'][$key]);
             $image = new Image();
             $image->setPath($this->path);
             $image->delete($file);
         }
     }
     foreach ($_FILES['images']['tmp_name'] as $tmpPath) {
         if (!empty($tmpPath)) {
             $fileName = date('His.dmY') . '.' . $i++ . '.jpg';
             $image = new Image();
             $image->setFile($tmpPath);
             $image->setPath($this->path);
             $image->fit(Image::BANNER)->upload($fileName);
             array_push($data['images'], $fileName);
         }
     }
     // Hàm unset() khiến key của array ko còn là dãy số liên tiếp
     // Lúc này Laravel sẽ ko đối xử và lưu 'images' như kiểu array mà là kiểu Json, cần sửa chữa vấn đề này
     $data['images'] = array_values($data['images']);
     $banner->fill($data)->save();
     return Redirect::back()->with('flash_message', Lang::get('system.update'));
 }
Example #2
0
 protected function delete($file)
 {
     $image = new Image();
     $image->setPath($this->path);
     $image->delete(Image::LARGE . "{$file}");
     $image->delete(Image::MEDIUM . "{$file}");
     $image->delete(Image::SMALL . "{$file}");
 }
Example #3
0
 /**
  * Update the specified resource in storage.
  *
  * @param  CompanyRequest  $request
  * @return JsonResponse
  */
 public function update(CompanyRequest $request)
 {
     $data = $request->only('title', 'short_description', 'description');
     if (!empty($_FILES['avatar']['tmp_name'])) {
         $path = config('image.paths.company');
         $fileName = Auth::user()->id . '.' . date('His.dmY') . '.jpg';
         $image = new Image();
         $image->setFile($_FILES['avatar']['tmp_name']);
         $image->setPath($path);
         $image->fit(Image::MEDIUM)->upload($fileName);
         if (!empty(Auth::user()->company->avatar)) {
             $image->delete(Auth::user()->company->avatar);
         }
         $data['avatar'] = $fileName;
     }
     Auth::user()->company->update($data);
     return redirect('m/agency/create')->with('flash_message', Lang::get('system.update'));
 }
Example #4
0
 /**
  * Update the password in storage.
  *
  * @param  ProfileRequest $request
  * @return Response
  */
 public function update(ProfileRequest $request)
 {
     $data = $request->all();
     if (!empty($_FILES['avatar']['tmp_name'])) {
         $path = config('image.paths.user') . '/' . Auth::user()->id;
         $fileName = date('His.dmY') . '.jpg';
         $image = new Image();
         $image->setFile($_FILES['avatar']['tmp_name']);
         $image->setPath($path);
         $image->fit(Image::AVATAR)->upload($fileName);
         if (!empty(Auth::user()->avatar)) {
             $image->delete(Auth::user()->avatar);
         }
         Auth::user()->update(['name' => $data['name'], 'email' => $data['email'], 'avatar' => $fileName]);
     } else {
         Auth::user()->update(['name' => $data['name'], 'email' => $data['email']]);
     }
     $profile = Auth::user()->profile()->first();
     $profile->fill($data)->save();
     return redirect('m/user/profile/')->with('flash_message', Lang::get('system.update'));
 }
Example #5
0
 public function setFile($file = '')
 {
     $this->image = InterventionImage::make($file);
 }