A new major release of CB Conditional has arrived filled to the brim with amazing new features to create even more amazing profiles. New condition types, streamlined condition parameter UX, display overrides, and more! Check out the details below.
First and foremost lets discuss some of the UX improvements. Parameter order in conditions has been cleaned up and the Locations parameters now make a lot more sense in the context of the conditions. Lets let the images speak for themselves. Below is the old way Locations is displayed.
This takes up a lot of space so locations had to be collapsed under a fieldset. It also wasn't clear what this even really was. What it does is control what views the condition applied to. This has now been streamlined with a single row button toggle list with an On label to indicate what views the condition is on. Take a look below.
Next up is the ability to condition against the displayed OR viewing user for field conditions. Field conditions are when you select a field directly from the dropdown. So for example the Name field. You'll now see a User button toggle to select who the condition is against like shown below.
An under the hood improvement is that this parameter no longer stores the field you selected by the fields name. It will store the fields id. This means if you edit your field and change its name your condition won't be lost! We're still working through various integrations to make this change, but this marks one more done!
Sometimes when conditioning fields you might need to show some additional text on the users profile instead of just acting as if the field doesn't exist. This wasn't previously possible, but now you can! You can now use the handy substitution supported Display Override parameter to output a custom display when the condition fails to be met. This also works for tabs! You'll notice this new parameter at the top as shown below.
Now lets get into the really good stuff. New condition types! 4.. that's right FOUR! New condition types are available. They are: Connections, Code, Query, and Subscriptions! Keep reading for details about these new exciting types.
The connections type, as shown below, allows you to condition against the connection status between the profile owner and the viewing user. This is a great easy way to limit something to only connections.
The Code type allows you to condition directly against your own custom PHP code. This is am amazing way to integrate 3rd party extensions. You can use those 3rd party extensions API for example to condition against factors outside of CB!
The Query condition lets you condition directly against the results of your own custom database query. This can help bridge two databases together without having to pull that data directly into CB. Previously you'd have to use a CB Query Field then condition against that, but not anymore! Now you can just directly condition against that query.
The long awaited CB Paid Subscriptions condition has finally arrived. You can now condition tabs/fields within CB Conditional against a users subscription status. This also works with registration dynamically during plan selection! Combine CBSubs conditions with AND/OR conditions to create even more amazing new experiences!
In addition to all of the above field value resetting can now be optionally controlled on a per-tab and per-field basis. Debugging can also now be toggled on/off globally to ease the process of debugging your conditions.
Last, but not least CB Field Groups now supports conditions! Be sure to update BOTH CB Field Groups and CB Conditional to take advantage of this. To utilize conditions in CB Field Groups simply configure them on the fields in the field group as you normally would.
I look forward to reading about what all you come up with using these great new features. Please be sure to let us know of any issues you may run into. Migration code is in place to migrate the old parameters safely to the new parameters and has been tested extensively to ensure a save transition to 6.0.0. For a full change log please visit the below forge link.
https://forge.joomlapolis.com/projects/cb-cbconditional/issues?query_id=171