73 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
<?php
 | 
						|
 | 
						|
namespace App\Http\Controllers\Admin;
 | 
						|
 | 
						|
use App\Http\Controllers\Controller;
 | 
						|
use App\Http\Requests\SliderRequest;
 | 
						|
use Illuminate\Http\Request;
 | 
						|
use App\Models\Slider;
 | 
						|
use Illuminate\Http\RedirectResponse;
 | 
						|
 | 
						|
class SliderController extends Controller
 | 
						|
{
 | 
						|
 | 
						|
  public function index()
 | 
						|
  {
 | 
						|
    $sliders = Slider::latest()->get();
 | 
						|
 | 
						|
    return view('admin.sliders.index', compact('sliders'));
 | 
						|
  }
 | 
						|
 | 
						|
  public function create()
 | 
						|
  {
 | 
						|
    return view('admin.sliders.create');
 | 
						|
  }
 | 
						|
 | 
						|
  public function store(SliderRequest $request): RedirectResponse
 | 
						|
  {
 | 
						|
    $data = $request->validated();
 | 
						|
    
 | 
						|
    if ($request->hasFile('image')) {
 | 
						|
      $data['image'] = $this->fileUpload($request->file('image'));
 | 
						|
    }
 | 
						|
    Slider::create($data);
 | 
						|
 | 
						|
    return redirect()->route('admin.sliders.index')->with('success', 'Слайдер создан успешно !');
 | 
						|
  }
 | 
						|
 | 
						|
  public function show($id)
 | 
						|
  {
 | 
						|
    //
 | 
						|
  }
 | 
						|
 | 
						|
  public function edit(Slider $slider)
 | 
						|
  {
 | 
						|
    return view('admin.sliders.edit', compact('slider'));
 | 
						|
  }
 | 
						|
 | 
						|
  public function update(Request $request, Slider $slider)
 | 
						|
  {
 | 
						|
    $data = $request->all();
 | 
						|
    if ($request->hasFile('image')) {
 | 
						|
      $data['image'] = $this->fileUpload($request->file('image'));
 | 
						|
    }
 | 
						|
 | 
						|
    $slider->update($data);
 | 
						|
 | 
						|
    return redirect()->route('admin.sliders.index')->with('success', 'Слайдер обновлен успешно !');
 | 
						|
  }
 | 
						|
 | 
						|
  public function destroy(Slider $slider)
 | 
						|
  {
 | 
						|
    $slider->delete();
 | 
						|
    return redirect()->route('admin.sliders.index')->with('success', 'Слайдер удален успешно !');
 | 
						|
  }
 | 
						|
 | 
						|
  public function fileUpload($file)
 | 
						|
  {
 | 
						|
    $filename = time().'_'.$file->getClientOriginalName();
 | 
						|
    $file->move(public_path(Slider::FILE_PATH), $filename);
 | 
						|
    return $filename;
 | 
						|
  }
 | 
						|
}
 |