Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Name

Definition

Required?

Value

workflowConfigMarker

workflowConfigDef
<none>
workflowConfigTypeworkflowConfigValueDefrequiredif grouper is the only implementation in grouper.properties, auto populate with "grouper", otherwise list other implementations
workflowConfigApprovalsworkflowConfigValueDefrequired

This is a JSON config of the workflow approvals.  must have "initiate" and "complete"

Code Block
{
  states: [
    {
      stateName: "initiate",
      
      // optional, if no group specified, then whoever has OPTIN
      allowedGroupId: "abc123def456"     
    },
    
    {
      stateName: "supervisor",
      approverSubjectId: "${initiatorSubject.attribute['supervisorSubjectId']}",
      approverSubjectSourceId: "mypeople"
    },
    
    {
      stateName: "dataOwner",
      //who can approve
      approverGroupId: "sdgf76gdf87",  
      //who is notified, if blank, then use approverGroupId
      approverNotifyGroupId: "dfkjh234kjb"
    },
    
    {
      stateName: "complete",
      //if blank use the selected groups from form or just the group
      //the workflow is assigned to
      actions: [
           {
              actionName: "assignToGroup",
              actionArg0: "sgk234kh234" 
            }
        ]
    }
  ]
}

This is the default and should pre-populate:

Code Block

{
  states: [
    {
      stateName: "initiate", 
    },
    {
      stateName: "groupManager",
      //who can approve
      approverManagersOfGroupId: "sdgf76gdf87" <-- groupId of current group
                                               <-- updater/admins of group
    },
    {
      stateName: "complete",
      //if blank use the selected groups from form or just the group
      //the workflow is assigned to
      actions: [
           {
              actionName: "assignToGroup",
              actionArg0: "sgk234kh234"   <-- groupId of current group
            }
        ]
    }
  ]
}


workflowConfigName

workflowConfigValueDefrequired

Name of workflow. No two workflows in the same owner should have the same name

Default to groupName_managerApproval   (e.g. wikiUsers_managerApproval)

workflowConfigIdworkflowConfigValueDefrequired

Camel-case alphanumeric id of workflow.  No two workflows in all of Grouper can have the same ID

Default to groupName_managerApproval   (e.g. wikiUsers_managerApproval)

workflowConfigDescriptionworkflowConfigValueDefrequired

Textarea which describes the information in the workflow. Must be less than 4k

Default to: Group: $groupDisplayPath% approval for membership.  The group's managers will be notified about requests and can approve them.

workflowConfigParams

workflowConfigValueDefrequired

Note: max 10 params, checkbox is true/false

Code Block
{
  params: [
    { 
      paramName: "agreeToTerms",
      type: "checkbox",
      editableInStates: "initiate",
      required: "true"
    },
    {
      paramName: "notes",
      type: "textarea",
      editableInStates: "initiate"
    },
    {
      paramName: "notesForApprovers",
      type: "textarea",
      editableInStates: "supervisor, dataOwner"
    },
    {
      paramName: "reason",
      type: "textfield",
      editableInStates: "initiate"
    }
  ]
}

Default pre-populated:

Code Block
{
  params: [
    {
      paramName: "notes",
      type: "textarea",
      editableInStates: "initiate"
    },
    {
      paramName: "notesForApprovers",
      type: "textarea",
      editableInStates: "supervisor, dataOwner"
    }
  ]
}


workflowConfigFormworkflowConfigValueDefoptional

Note: Grouper with javascript will enable or disable these form fields, or fill in values, as needed.  The form field names need to match the names in the params.  The id must match with "Id" appended to the end.  If a name or id doesnt exist in the HTML there will be an error

Code Block
Fill out this form to be added to this group.<br /><br />
Several approvals will take place which usually take less than 2 business days<br /><br />
State the reason you would like this access: <input type="text" name="reason" id="reasonId" /><br /><br >
<input type="checkbox" name="agreeToTerms" id="agreeToTermsId" /> I agree this this institutions' <a href="https://whatever.whatever/whatever">terms and conditions</a><br /><br />
Notes: <textarea rows="4" cols="50" name="notes" id="notesId"></textarea><br /><br />
Notes for approvers: <textarea rows="4" cols="50" name="notesForApprovers" id="notesForApproversId"></textarea><br /><br />


This is the default:

Code Block
Submit this form to be added to this group.<br /><br />
The managers of the group will be notified to approve this request.<br /><br />
Notes (optional): <textarea rows="4" cols="50" name="notes" id="notesId"></textarea><br /><br />
Notes for approvers: <textarea rows="4" cols="50" name="notesForApprovers" id="notesForApproversId"></textarea><br /><br />


workflowConfigViewersGroupIdworkflowConfigValueDefoptionalGroupId of people who can view this workflow and instances of this workflow. Grouper admins can view any workflow (blank means admin only).  Anyone in an approver group can view the workflow.

workflowConfigSendEmail

workflowConfigValueDefrequired (default to true, no blank option available)true/false if email should be sent

workflowConfigEnabled

workflowConfigValueDefdefault to true (required, no blank option)Could by "true", "false", or "noNewSubmissions", i.e. let current forms go through

...