Dynamic tab

The dynamic tab offers a way of adding an additiona data source to SWF. Instead of just using the INTERNAL (employees) /EXTERNAL (citizens) route, a new DYNAMIC route is available. If enabled, administrators can use however many fields as they want that can then be mapped to a data source of their choice, using PAS, and then mapped to SWF by similar mapping as already done when using the INTERNAL or EXTERNAL route.

The tab can be adjusted to include as many searchable fields as the administrator wants, both the tab name ("The Dynamic tab" in the image), all fields and the info box on the right supports localization and the info box can be adjusted using markdown to show not only the message that the Administrator wants to show, but also show it in the way the administrator wants.

The dynamic tab enables, among other things, a safe invite-only flow where only verified users can be added as signers, even if users only know their email addresses. Read more about how to set up that kind of configuration here.

Configuration

The main configuration is handled in the config.json where administrators use this configuration:

"dynamicTabSettings": {
  "enabled": true,
  "tabName": "dynamicTab.tabName",
  "fields": [
    {
      "id": "givenname",
      "translationKey": "dynamicTab.inputs.givenname"
    },
    {
      "id": "surname",
      "translationKey": "dynamicTab.inputs.surname"
    },
    {
      "id": "email",
      "translationKey": "dynamicTab.inputs.email"
    }
  ]
}

Configuration explanation:

  • dynamicTabSettings - The wrapper config object
  • enabled - whether or not the functionality should be enabled or not
  • tabName - The name of the tab. Can be used as a localization key.
  • fields - The queryable fields. One entry will result in one input field in the frontend.
    • id - The ID of the field. If a user types "John" in the field with ID givenname, the query towards PAS will be <dynamicLookupURL>?givenname=John
    • translationKey - The translation key of the field.

To add both A dynamic lookup URL and mapping the dynamic response, set the following parameters in the config.json file:

"users": {
  "dynamicUserLookup": "https://CHANGE~ME:8443/pipes/users/dynamic",
  "dynamicUserAttributes": {
    "firstName": "cn",
    "lastName": "sn",
    "mail": "mail",
    "mobile": "mobile",
    "info": "o"
  },
}

Lastly, to add localization keys, add keys to the strings.json file. For this example, this would mean adding this:

"dynamicTab": {
  "inputs": {
    "givenname": "Search by given name",
    "surname": "Search by surname",
    "email": "Search by email"
  },
  "info": {
    "header": "An info header",
    "content": "Info content. Markdown is applicable here.</br>"
  }
},
"select_approvers": {
  "dynamicTab": "The Dynamic tab",
}

If you need more information about how to set up your PAS application, please look at this documentation and use DYNAMIC as source.