Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Http\Controllers\Admin;
- use App\Http\Controllers\Controller;
- use App\Http\Requests\MassDestroyPositionRequest;
- use App\Http\Requests\StorePositionRequest;
- use App\Http\Requests\UpdatePositionRequest;
- use App\Models\Banner;
- use App\Models\Position;
- use App\Models\BannerType;
- use Gate;
- use Illuminate\Http\Request;
- use Symfony\Component\HttpFoundation\Response;
- class PositionController extends Controller
- {
- public function index()
- {
- abort_if(Gate::denies('position_access'), Response::HTTP_FORBIDDEN, '403 Forbidden');
- $banner = Banner::get();
- $banner_types = BannerType::get();
- $positions = Position::with(['banner'])->orderBy("position")->get();
- $banner_array = array();
- $banner_no_position = array();
- foreach ($banner as $banner){
- if(Position::where('banner_id',$banner->id)->count() != 0){
- $banner_array = array($banner);
- }else{
- // print_r($banner);
- $banner_no_position = array($banner);
- }
- }
- // dd($banner_array,$banner_no_position,$positions);
- return view('admin.positions.index', compact('banner', 'banner_types','positions','banner_array','banner_no_position'));
- }
- public function create()
- {
- abort_if(Gate::denies('position_create'), Response::HTTP_FORBIDDEN, '403 Forbidden');
- $banners = Banner::all()->pluck('banner_name', 'id')->prepend(trans('global.pleaseSelect'), '');
- return view('admin.positions.create', compact('banners'));
- }
- public function store(StorePositionRequest $request)
- {
- $position = Position::create($request->all());
- return redirect()->route('admin.positions.index');
- }
- public function edit(Position $position)
- {
- abort_if(Gate::denies('position_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden');
- $banners = Banner::all()->pluck('banner_name', 'id')->prepend(trans('global.pleaseSelect'), '');
- $position->load('banner');
- return view('admin.positions.edit', compact('banners', 'position'));
- }
- public function update(UpdatePositionRequest $request, Position $position)
- {
- $position->update($request->all());
- return redirect()->route('admin.positions.index');
- }
- public function show(Position $position)
- {
- abort_if(Gate::denies('position_show'), Response::HTTP_FORBIDDEN, '403 Forbidden');
- $position->load('banner');
- return view('admin.positions.show', compact('position'));
- }
- public function destroy(Position $position)
- {
- abort_if(Gate::denies('position_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden');
- $position->delete();
- return back();
- }
- public function massDestroy(MassDestroyPositionRequest $request)
- {
- Position::whereIn('id', request('ids'))->delete();
- return response(null, Response::HTTP_NO_CONTENT);
- }
- public function newPosition(Request $request)
- {
- // $positions = Position::where('banner_id',$id)->get();
- // dd($request);
- if($request->id != ''){
- foreach ($request->id as $key => $id){
- if(Position::where('banner_id',$id)->count()!=0){
- Position::where('banner_id',$id)->delete();
- }
- $position = new Position;
- $position->position = $key;
- $position->banner_id = $id;
- $position->save();
- echo $key .'=>'. $id . "<br>";
- }
- }
- if($request->delete != ''){
- foreach($request->delete as $key => $id){
- Position::where('banner_id',$id)->delete();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment