Rewriting pre-defined requests
A request can be updated and controlled using the WF WIZARD PLUGIN. The plugin can:
Update the request’s attributes
Update the request’s resources
Update the pages displayed
Provide a list of restricted values for an attribute
Control which attributes are displayed
Control which attributes can be edited
Provide the profile ID of the new user
Provide the initial password for new accounts
Validate the request and provide feedback to the user
This plugin applies only to pre-defined requests. Custom requests or legacy requests do not execute this plugin.
To use this plugin, type the name of the plugin in the WF WIZARD PLUGIN field on the Workflow > Options > Plugins configuration page.
There are no shipped plugins in use with this plugin point.
Requirements
See Writing plugins for general requirements.
Execution points
The plugin is run by the Workflow Manager Service and Asynchronous Request Service. The plugin is called when a request is:
Initiated by the user when selecting a request type
Updated by the user
Submitted by the user
Submitted via the API Service
Input
Input to the plugin includes:
"" "" = { sessionid = <id>; extras = { ... }; # Present when run by idwfm module = <ajaxsvc|idwfm>; # Program that is running the plugin wizard "" = { prequest "" = { ... }; # Provides the pre-defined request information lastRequest "" = { ... }; # Not present on initial load attributes "" = { ... }; # Provides recipient attribute information request "" = { ... }; # Provides request details } }
New users include a blank recipientname. When this is provided by the plugin, the profile ID provided will be used. If the recipientname matches an existing invalid user, the request will restore the user and update attributes and resources that are included the request.
Output
The request rewrite plugin returns the following output:
"" "" = { wizard "" = { prequest "" = { ... }; # Optional, omission indicates no changes request "" = { ... }; # Optional, omission indicates no changes }; # Optional, omission indicates no changes changed = <false|true>; # Optional, if false, any changes are ignored. # Default is true retval = <N>; # Required, non-zero indicates a plugin failure }