service = new Videos(); } public function index() { $videos = $this->service->all(); return response()->json([ 'message' => 'Success', 'videos' => $videos, ]); } public function getByPage(Request $request) { $rows = $request->rows; $page = $request->page; $filter = $request->filter; $result = $this->service->getByPage($page, $rows, $filter); return response()->json($result); } public function getByKeyword(Request $request) { $result = $this->service->getByKeyword($request->filter, Video::LAZY_LOAD_ITEM_COUNT); return response()->json([ 'items' => $result, ]); } public function lazyLoad(Request $request, Creator $creator) { $items = $this->service->getByCreator($creator, Video::LAZY_LOAD_ITEM_COUNT, $request->skipped + Video::LAZY_LOAD_ITEM_COUNT); return response()->json([ 'items' => $items, ]); } public function lazyLoadByKeyword(Request $request) { $items = $this->service->getByKeyword($request->filter, Video::LAZY_LOAD_ITEM_COUNT, $request->skipped + Video::LAZY_LOAD_ITEM_COUNT); return response()->json([ 'items' => $items, ]); } }