public static function getEvents() { $app = \Slim\Slim::getInstance(); $allGetVars = $app->request->get(); $startAt = @$allGetVars['startAt'] ? intval($allGetVars['startAt']) : 0; $limit = @$allGetVars['limit'] ? $allGetVars['limit'] : 15; //either dateAdded or startDate $orderBy = @$allGetVars['orderBy'] ? $allGetVars['orderBy'] : "startDate"; if (!filter_var($limit, FILTER_VALIDATE_INT)) { $app->render(400, ['Status' => 'Invalid input.']); return; } if ($orderBy != "dateAdded") { $orderBy = "startDate"; } $event = \relive\models\Event::orderBy($orderBy, 'desc')->where('isPublished', '=', '1')->skip($startAt)->take($limit)->get()->toArray(); echo json_encode($event, JSON_UNESCAPED_SLASHES); }