UPK provides reasonably effective 'role filtering'. This allows you to display different sets of content to users, based on their chosen role. Doing this requires three things:
- A set of roles being defined in UPK (by the UPK Developer)
- Roles being assigned to specific Content Objects
- Users selecting their role in the Player
Each of these is explained in more detail below.
Defining roles in UPK
UPK ships with a 'placeholder' for roles. This is initially empty, and can be populated with your own roles, as required. Note that the role definitions are simply text labels, do not need to conform to any standard (although it is recommended that you define your own standard) and are not validated against anything. There does not appear to be a limit on the length of a role, but it is recommended that they are not too long, as users will see them and select them in the Player (so try to avoid putting the whole description in there. You also can only use plain text (no HTML tags), although almost any characters (including punctuation and special characters) are allowed.
Note that any UPK developer can maintain the roles list (it does not require Administrator approval). (For this reason, it is recommended that access to the entire System folder is restricted. See Controlling folder access for details.)
To define a set of roles, carry out the following steps:
- Navigate to the folder System | Roles.
- Double-click on the roles.xx file for your language. (Note: Roles are configured separately for each language. There is no 'auto-translation' from one to another (because there is no 'key field' for a role that is carried across languages), although role names are picked up during Localization.
- Enter your required roles in the Roles column (one role per line).
- Save and close. Check in if required.
Assigning roles to content
To assign a role to a Content Object (or 'tag content for a specific role' if you prefer to see it that way), carry out the following steps:
- Select the Content Object (to which you want to assign a role) in the Library or in an Outline Element. Make sure it is checked out, if you are in a Client/Server environment.
- Make sure that the properties pane is displayed.
- Click in the field for the Roles property, and then click on the ellipsis button on the right.
- In the Assign Roles list, select the checkbox to the left of all roles that are to be assigned to the Content Object. (These are all of the roles defined in the roles.xx file.)
- Click on OK
Selecting roles in the Player
Users can select their role in the Player, to see only content that has been assigned to their role. (This assumes that the Player has been published after the content has been tagged for the roles.)
To filter the Player Outline to show only content for a specific role, carry out the following steps:
- With the Player displayed, click on the My Roles link (in the upper left, above the Outline).
- In the pop-up dialog box, select the checkbox to the left of all of the required roles. Note that you can select as many roles as necessary.
- Click on OK
The Outline is filtered to show only content that is tagged for the selected roles, and the checkbox to the left of the My Roles link is selected. Your selection will always be remembered (it is stored in a cookie in your browser). You can remove the role filtering by deselecting the checkbox; re-selecting the checkbox will re-apply your previously-selected roles.