PhenixID

PSD1132 – MultiListStringControl

Fact

  • PhenixID Identity Manager 5.3.2
  • Some parameters have been added in later versions and not might be supported in the version you are using. Make sure to upgrade to latest version for all parameters.

Situation

You are editing a e.g. user and like to save one or more values chosen from a list of values. You like the list to be of values from a list that that are generated from LDAP objects. You even might like to show one value but store another. For example, instead of Banana the list number (e.g. BA1234) of Banana is stored instead. See screenshot below.

Other MultiList control that might be of interest if this one does not work:

  • If you like to create a list of values created by you, please read PSD1133 (MultiListStaticString).
  • If you like to create the list based on LDAP object with backlink intact, please read PSD1073 (MultiList).

Solution

Use the custom control to use is called: se.nordicedge.controls.lists.MultiListStringControl

Add MultiListStringControl to a form:

  1. Open IM Configurator and Tab Designer
  2. Open a form (create a new or open an existing)
  3. Click button for Create a Custom Control and drag it to the workspace of the form.
  4. Click Options for Custom Control
  5. Paste se.nordicedge.controls.lists.MultiListStringControl to Class Name: and then click Query Custom Control Class
  6. Configure the Custom Control (see parameters below) and add an attribute to the control where the values should be stored.
  7. Save and test the control.

Below are the configurable parameters for the control.
(
Some are explained a little more in detail.)

Side by side mode (true/false). Default is true.
The control has one grid for the search result and one for the current state result. Set this option to true to show the grids side by side. Set this option to false to show the search result grid above the current result grid.

Search base (TOP for default BaseDN). Default is TOP.
The search base for the search result. Set to TOP to use the logged in user’s BaseDN.

Attributes names to be used in the search filter. E g attr1, attr2
The attributes to be used in the search field for querying objects.

List of one or more attributes and header..E g attr1|label1,attr2|label2
Example: givenName|First Name,sn|Last Name,displatName|Name
This is only valid for the search result. If you like to do the same for current state there is a parameter for that a bit down in this document.

Attribute to be stored in target instead of the displayed attribut. Default blank, then displayed value is stored
The user will be presented with Bob Daily but the value that will be stored is bobd for example

Search scope (BASE/ONE/SUB). Default is SUB.
The search scope for the search field.

Optional search filter

You could add to the LDAP search a hidden parameter, for example (AccountType=hidden)

Run optional search filter on current state (true/false). Default is false.
Set to true if the optional search filter should also be applied to the value in the current state grid. Any values that are filtered will not be affected in the directory.

Search type (Contains/Equals/Starts). Default is Starts.
The search typ for the search field. If set to Starts a * will de added to the end of the entered value. If set to Contains a * will be added in both the beginning and the end of the entered value. If set to Equals, the entered value will be used as it is.

Show checkbox for Select All in current state (true/false). Default is true.

Label -> Search result (Search result)
Label -> State list attribute header. Default is current attribute name
Label -> Current state (Current state)
Label -> Search result total (Total)
Label -> Current state total (Total)
Label -> Search button (Search)
Label -> Add button (Add)

Label -> Remove button (Remove)
NOTE about Labels: If you do not like a label to be present you can add the value NO_LABEL

Max no of search results. Default is 50.

The maximum number of hits that will be shown in the search result.

Jsp file to use. Default is /jsp/CustomControls/MultiListCC.jsp

The default jsp-file to use for this custom control is /jsp/CustomControls/MultiListCC.jsp but you may use another jsp-file of your choice. In this option the file path is the URL, starting at the IM web app directory.

Width (%) for search result at side by side mode. Default is 50.

By default, the grid for the search result and the grid for the current state have the same width at side by side mode. In this option you can change the width of the search result, in percent.

Escape * in search string (true/false). Default is false.
To prevent wildcard searches, set this option to true to escape any * entered in the search string.

Hide current members from search result (true/false). Default is false.

By default in the left pane, you will see all the objects that are matching the search, including those who are already members of the group. If you do not like to present the existing members in the search result, this is the parameter to use.

Trim search string (true/false). Default is false.
In searches where you might make copy and paste the query from another source and get the query with spaces, these spaces can be trimmed away.
For example you type: “Query with spaces” would become “Querywithspaces”

Initial, pre-display search query.

If you like to run an LDAP search to pre-populate available objects to add from you can use this parameter.

Hide search field/button. Default is false.

This parameter will hide the search dialog box from the user. This is usually being used together with the “Initial, pre-display search query” parameter.

Use multidb for LDAP access. Set to string MULTIDB_x, x=1..9. Default is empty
Are the user in another LDAP store than the current? Note, this is only used if you are searching objects in another user store. Add as value the multidb you like to use.

Show only current state. Default false
If you like to only display the stored values and not add/remove, change this value to true

Hoover attribute for search result and state
For example, when you hoover over an object, description will be displayed for more information.

List of attributes and headers labels which….
Example: givenName|First Name,sn|Last Name,displatName|Name
Note, this only applies to the current state list.

Collapse filter function
In the grid you can filter if you have a large result set. By default the filter function is expanded.

Prefix for ADD values (No prefix by default, only used with PIPFilter)
PIM can add a prefix infront of objects added and objects removed.
Instead of PIM sending for Group1 and Group2, PIM can now send for example ADD_Group1 and REM_Group2.
This is to make it easier to figure out for an PIP admin what objects are added and what objects are removed.
This parameter was added to PIM 5.6.4

Prefix for REMOVE values (No prefix by default, only used with PIPFilter)
See parameter explanation above.




DISCLAIMER
Information provided in this document is for your information only. PhenixID makes no explicit or implied claims to the validity of this information. Any trademarks referenced in this document are the property of their respective owners.

The origin of this information may be internal or external to PhenixID. PhenixID makes all reasonable efforts to verify this information.

PhenixID - support.phenixid.se