Resolution: Won't Fix
Affects Version/s: OpenIDM 6.0.0
Fix Version/s: None
Sprint:OpenIDM Sprint 6.5-10.2
As an admin, when I am configuring a Progressive profiling scripted Condition, I would expect to reference fields in a user object as "object.telephoneNumber"
Currently when the user object is bound to the scriptedCondition, it is bound only by the fields, so that you have to reference the field "telephoneNumber" directly. This is different than the other scripts that are present in our project.
this causes the scripts to be like:
Why this is a problem:
- not consistent with rest of the product
- if we leave it like this for 6.0 and fix it for future releases, then existing customer's scripts will break for Progressive Profiling.
- this also prevents the admin from doing the following to see all the fields that are available within the scope:
Scripts have to look like this:
Scripts should work like this:
To fix the backend:
This will require refactoring in the backend because the ScriptedCondition is currently used in the PropertyMappings.java, SyncOperations.java, and AbstractConditionalStage.java. The first two add the appropriate "object" map to the content before calling the ScriptedCondition evaluate method. However, since the AbstractConditionalStage is used for all Conditional Stages we can't simply place the content within an "object" map since we only need it for the ScriptedCondition.