- ##
- # query changesets by bounding box, time, user or open/closed status.
- def query
- # find any bounding box
- bbox = BoundingBox.from_bbox_params(params) if params["bbox"]
-
- # create the conditions that the user asked for. some or all of
- # these may be nil.
- changesets = Changeset.all
- changesets = conditions_bbox(changesets, bbox)
- changesets = conditions_user(changesets, params["user"], params["display_name"])
- changesets = conditions_time(changesets, params["time"])
- changesets = conditions_open(changesets, params["open"])
- changesets = conditions_closed(changesets, params["closed"])
- changesets = conditions_ids(changesets, params["changesets"])
-
- # sort and limit the changesets
- changesets = changesets.order("created_at DESC").limit(100)
-
- # preload users, tags and comments, and render result
- @changesets = changesets.preload(:user, :changeset_tags, :comments)
- render "changesets"
-
- respond_to do |format|
- format.xml
- format.json
- end
- end
-