Improve option handling and fix format handling in the API #39498
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request for Issue #39495 .
Summary of Changes
Fixes linked bug
Testing Instructions
In a webservice plugin (either custom or in a core one in the core add the following lines to the
onBeforeApiRouteevent (i used the content webservice plugin - but any will do)Then in the libraries/src/Application/ApiApplication.php add var_dump($this->input->get('format'), $this->input->get('option'));die; after this foreach loop (both before and after testing)
Generate a Bearer token and curl the url e.g.
curl -H "Authentication: Bearer <bearer_token>" -H "Accept: application/ld+json" http://localhost/joomla-cms/api/index.php/v1/formatActual result BEFORE applying this Pull Request
Expected result AFTER applying this Pull Request
i.e. the second dump (the component) is unchanged and the former (the format) now contains the Joomla format and not the array of possible options from the plugin
Link to documentations
Please select:
Documentation link for docs.joomla.org:
No documentation changes for docs.joomla.org needed
Pull Request link for manual.joomla.org:
No documentation changes for manual.joomla.org needed