AutopostController.php 2.62 KB
Newer Older
1 2 3 4 5 6
<?php

namespace App\Http\Controllers\Webprofile\Backend;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
7
use App\Repositories\Webprofile\AutopostRepository;
8 9 10

class AutopostController extends Controller
{
11 12 13 14 15 16 17 18
    private $repo;

    public function __construct(
        AutopostRepository $repo
    ) {
        $this->repo = $repo;
    }

19 20 21 22 23
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
24
    public function index(Request $request)
25
    {
26 27 28 29 30 31 32
        if ($request->ajax()) {
            $data = $this->repo->get();

            return $this->repo->datatable($data);
        }

        return view('webprofile.backend.autopost.index')->withTitle('Auto Post');
33 34 35 36 37 38 39 40 41
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
42
        return view('webprofile.backend.autopost.create')->withTitle('Add Auto Post');
43 44 45 46 47
    }

    /**
     * Store a newly created resource in storage.
     *
48 49
     * @param \Illuminate\Http\Request $request
     *
50 51 52 53
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
54 55 56 57 58
        $data = $request->except('_token');

        $this->repo->store($data);

        return redirect()->route('autopost.index');
59 60 61 62 63
    }

    /**
     * Display the specified resource.
     *
64 65
     * @param int $id
     *
66 67 68 69 70 71 72 73 74
     * @return \Illuminate\Http\Response
     */
    public function show($id)
    {
    }

    /**
     * Show the form for editing the specified resource.
     *
75 76
     * @param int $id
     *
77 78 79 80
     * @return \Illuminate\Http\Response
     */
    public function edit($id)
    {
81 82 83 84 85 86 87
        $data = $this->repo->findId($id);

        $data = [
            'data' => $data,
        ];

        return view('webprofile.backend.autopost.edit', $data)->withTitle('Edit Auto Post');
88 89 90 91 92
    }

    /**
     * Update the specified resource in storage.
     *
93 94 95
     * @param \Illuminate\Http\Request $request
     * @param int                      $id
     *
96 97 98 99
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    {
100 101 102 103 104 105
        $data = $request->except(['_token']);

        $autopost = $this->repo->findId($id);
        $this->repo->update($data, $autopost);

        return redirect()->route('autopost.index');
106 107 108 109 110
    }

    /**
     * Remove the specified resource from storage.
     *
111 112
     * @param int $id
     *
113 114 115 116
     * @return \Illuminate\Http\Response
     */
    public function destroy($id)
    {
117 118 119 120
        $data = $this->repo->findId($id);
        $this->repo->destroy($data);

        return response()->json(['done']);
121 122
    }
}