Move changeset query limit values to settings

This commit is contained in:
Anton Khorev 2023-08-08 03:33:04 +03:00
parent ff4a7dc36d
commit a5d14a1815
2 changed files with 7 additions and 6 deletions

View file

@ -19,9 +19,6 @@ module Api
# Helper methods for checking consistency # Helper methods for checking consistency
include ConsistencyValidations include ConsistencyValidations
DEFAULT_QUERY_LIMIT = 100
MAX_QUERY_LIMIT = 100
## ##
# Return XML giving the basic info about the changeset. Does not # Return XML giving the basic info about the changeset. Does not
# return anything about the nodes, ways and relations in the changeset. # return anything about the nodes, ways and relations in the changeset.
@ -391,13 +388,13 @@ module Api
# Get the maximum number of results to return # Get the maximum number of results to return
def result_limit def result_limit
if params[:limit] if params[:limit]
if params[:limit].to_i.positive? && params[:limit].to_i <= MAX_QUERY_LIMIT if params[:limit].to_i.positive? && params[:limit].to_i <= Settings.max_changeset_query_limit
params[:limit].to_i params[:limit].to_i
else else
raise OSM::APIBadUserInput, "Changeset limit must be between 1 and #{MAX_QUERY_LIMIT}" raise OSM::APIBadUserInput, "Changeset limit must be between 1 and #{Settings.max_changeset_query_limit}"
end end
else else
DEFAULT_QUERY_LIMIT Settings.default_changeset_query_limit
end end
end end
end end

View file

@ -27,6 +27,10 @@ status: "online"
max_request_area: 0.25 max_request_area: 0.25
# Number of GPS trace/trackpoints returned per-page # Number of GPS trace/trackpoints returned per-page
tracepoints_per_page: 5000 tracepoints_per_page: 5000
# Default limit on the number of changesets returned by the changeset query api method
default_changeset_query_limit: 100
# Maximum limit on the number of changesets returned by the changeset query api method
max_changeset_query_limit: 100
# Maximum number of nodes that will be returned by the api in a map request # Maximum number of nodes that will be returned by the api in a map request
max_number_of_nodes: 50000 max_number_of_nodes: 50000
# Maximum number of nodes that can be in a way (checked on save) # Maximum number of nodes that can be in a way (checked on save)