ruleset = new Ruleset(strict: true); $this->ruleset->GET([ (new Rules(LanguagesTable::ID->value)) ->type(Type::STRING) ->min(1) ->max(parent::SIZE_VARCHAR), (new Rules(LanguagesTable::BYTES->value)) ->type(Type::NUMBER) ->min(1) ->max(parent::SIZE_UINT32), (new Rules(FORGEJO_UPDATE_CACHE_PARAM)) ->type(Type::BOOLEAN) ->default(false) ]); $this->ruleset->validate_or_exit(); parent::__construct(); } public function main(): Response { // Refresh the language cache if param is set if ($_GET[FORGEJO_UPDATE_CACHE_PARAM]) { (new Call(Endpoints::ABOUT_LANGUAGES->value))->post(); } return $this->list(LanguagesTable::NAME, LanguagesTable::values(), [ LanguagesTable::BYTES->value => Order::DESC ]); } }