Every now and then, we pick something in our platform that has been working like that for ages and decide to add something to it, or tweak it a bit. This time we added a new operator to our filter feature, and a new option to encode web service parameters.
In this release, we added the "Includes all" operator. This allows you to check if a variable, logically, includes all values (texts, numbers, objects, whatever) given in the filter row's parameter.
Example: You got your companies and you got your states, connected through a Has and Belongs to many relation. Now you want to collect all companies that include a certain set of states.
var:states = Georgia, Texas
The result of var:companies would be B, as it's the only company including all required states.
You can use this filter for single values, objects and entire collections. Whatever your usecase requires.
See Filter Reference for additional information.
Parameter encode option
New webservice endpoint option to choose between parameter encode types: Nested (Default) and Flat (New)
Sometimes, the API that you want to request by using web services in our platform requires different parameter encoding. Before, we had only one way of encoding parameters: we validated the last filter in the endpoint's path. We call this, the nested (default) encoding type. We now also support encoding paths with multiple filters. We call this the Flat method.
What happened with my existing web service endpoints? Nothing changed. We only added this option and set the default value for this option to it.
Besides that, we fixed a visibility bug in the Back office view references where an application role was able to see view references unintentionally. This was only a client-side visibility issue, the API wasn't affected.