Skip to content

Commit

Permalink
Update get_configurations function to filter by single or multiple names
Browse files Browse the repository at this point in the history
  • Loading branch information
AimeeGao committed May 31, 2024
1 parent 683fb2e commit cdf0bbc
Showing 1 changed file with 16 additions and 15 deletions.
31 changes: 16 additions & 15 deletions legal-api/src/legal_api/resources/v2/admin/configuration.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,23 +28,24 @@
@cross_origin(origin='*')
@jwt.has_one_of_roles([UserRoles.staff])
def get_configurations():
"""Return a list of configurations, optionally filtered by name."""
filter_name = request.args.get('name', None)
if filter_name:
configuration = Configuration.find_by_name(filter_name)
if configuration:
return jsonify({
'configurations': [configuration.json]
}), HTTPStatus.OK
else:
return {'message': 'Configuration not found'}, HTTPStatus.NOT_FOUND
"""Return a list of configurations, optionally filtered by names."""
filter_names = request.args.get('names', None)
if filter_names:
names_list = [name.strip() for name in filter_names.split(',') if name.strip()]
if not names_list:
return {'message': 'Configuration names are invalid'}, HTTPStatus.BAD_REQUEST

configurations = Configuration.find_by_names(names_list)
if not configurations:
return {'message': 'Configurations not found'}, HTTPStatus.NOT_FOUND
else:
configurations = Configuration.all()
return jsonify({
'configurations': [
configuration.json for configuration in configurations
]
}), HTTPStatus.OK

return jsonify({
'configurations': [
configuration.json for configuration in configurations
]
}), HTTPStatus.OK


@bp_admin.route('/configurations', methods=['PUT'])
Expand Down

0 comments on commit cdf0bbc

Please sign in to comment.