Cartoons = $Cartoons; $this->helpers = $helpers; } public function index() { $data = $this->Cartoons->all()->toArray(); $baseUrl = url('/storage/app/media'); foreach ($data as &$project) { $project['list_image'] = $baseUrl . $project['list_image']; } $filteredData = array_map(function($data) { return [ 'id' => $data['id'], 'name' => $data['name'], 'list_image' => $data['list_image'], 'created_at' => $data['created_at'], 'updated_at' => $data['updated_at'], ]; }, $data); return $this->helpers->apiArrayResponseBuilder(200, 'success', $filteredData); } public function show($id){ $data = $this->Cartoons::find($id); if (!is_null($data)){ return $this->helpers->apiArrayResponseBuilder(200, 'success', [$data]); } else { return $this->helpers->apiArrayResponseBuilder(404, 'error', [$data]); } } public function store(Request $request){ $arr = $request->all(); while ( $data = current($arr)) { $this->Cartoons->{key($arr)} = $data; next($arr); } $validation = Validator::make($request->all(), $this->Cartoons->rules); if( $validation->passes() ){ $this->Cartoons->save(); return $this->helpers->apiArrayResponseBuilder(201, 'created', ['id' => $this->Cartoons->id]); }else{ return $this->helpers->apiArrayResponseBuilder(400, 'fail', $validation->errors() ); } } public function update($id, Request $request){ $status = $this->Cartoons->where('id',$id)->update($data); if( $status ){ return $this->helpers->apiArrayResponseBuilder(200, 'success', 'Data has been updated successfully.'); }else{ return $this->helpers->apiArrayResponseBuilder(400, 'bad request', 'Error, data failed to update.'); } } public function delete($id){ $this->Cartoons->where('id',$id)->delete(); return $this->helpers->apiArrayResponseBuilder(200, 'success', 'Data has been deleted successfully.'); } public function destroy($id){ $this->Cartoons->where('id',$id)->delete(); return $this->helpers->apiArrayResponseBuilder(200, 'success', 'Data has been deleted successfully.'); } public static function getAfterFilters() {return [];} public static function getBeforeFilters() {return [];} public static function getMiddleware() {return [];} public function callAction($method, $parameters=false) { if(isset($parameters['cartoon'])) $parameters = [$parameters['cartoon']]; return call_user_func_array(array($this, $method), $parameters); } }