<?php namespace Bixo\Schedule\Http\Controllers; use App\Http\Controllers\PublicController as BaseController; use App\Http\Requests\PublicRequest; use Litepie\Database\RequestScope; use Bixo\Schedule\Http\Resources\ScheduleResource; use Bixo\Schedule\Http\Resources\SchedulesCollection; use Bixo\Schedule\Scopes\FollowUpsPublicScope; use Bixo\Schedule\Models\FollowUps; class FollowUpsPublicController extends BaseController { /** * Show follow_ups's list. * * @return response */ protected function index(PublicRequest $request) { $search = $request->search; $pageLimit = $request->input('pageLimit', config('database.pagination.limit')); $page = FollowUps::pushScope(new RequestScope()) ->pushScope(new FollowUpsPublicScope()) ->paginate($pageLimit) ->withQueryString(); $follow_ups = new FollowUpsCollection($page); $categories = []; $tags = []; $recent = []; return $this->response->setMetaTitle(trans('schedule::follow_ups.names')) ->view('schedule::public.follow_ups.index') ->data(compact('follow_ups', 'categories', 'tags', 'recent')) ->output(); } /** * Show follow_ups. * * @param string $slug * * @return response */ protected function show(PublicRequest $request, $slug) { $model = FollowUps::findBySlug($slug); $data = new FollowUpsResource($model); $categories = []; $tags = []; $recent = []; return $this->response->setMetaTitle($data['title'] . trans('schedule::follow_ups.name')) ->view('schedule::public.follow_ups.show') ->data(compact('data', 'categories', 'tags', 'recent')) ->output(); } }