Note: You are currently viewing documentation for Moodle 2.9. Up-to-date documentation for the latest stable version of Moodle may be available here: ELIS User sets.

ELIS User sets

From MoodleDocs

Organizational User Sets in ELIS:

Organizational User Sets in ELIS provide users new ways to organize their programs by enabling nested hierarchies of organizational user sets.

For example, the corporate organization below, we have a corporate structure mapped to ELIS- with the ACME Corporation containing user sub-sets in Customer Service, Development, Management, and Sales.

This structure can be used to enroll uses in courses and/or programs of courses, to setup hierarchies of user, course, and program management, and to control who sees what on the reports generated by the ELIS Reporting system.

elis orguserset pmblock.png

Other organizational user set features:

  • User Sets are site wide (organizational) groups. You can add users to a user set either manually or automatically via their custom profile fields.
  • User Sets can be used to assign users to programs and tracks.
  • User Sets are used by the ELIS Reporting System to provide granular reports.
  • When a user set is associated with a program, all users in that user set are associated with that program. User Sets can be assigned to programs at the user set screen and at the programs screen.
  • User Sets can be associated with tracks - When a user set is associated with a track, all users in the user set that can be enrolled in tracks/classes will be.
  • User Sets can be used to create groups in Moodle courses.
  • User Set classification - organizational user sets can be put into classifications - with different default settings for each classification - for instance one classification might auto-enroll all users into groups in a Moodle course by default. Of course you can override these defaults at the individual organizational user set level.


Adding User Sets

To create or edit a user set, go to the ELIS Administration block > Users > Manage User Sets. To add a new user set, select the (1) Add User Set button.

To search for a user set use the (2) text box filter above the Add User Set button. ELIS versions 2.6.6.1+, 2.7.3.1+, and 2.8.1.0+ include a new feature for searching user sub-sets. To search user sets and user sub-sets, select the (3) checkbox next to 'Include all User Subsets listing' before searching.

elis2.7 manageusersetspage.png

Adding a user set:

  1. User association - User association to a user set can be done either automatically, or manually. To assign users to a user set automatically, you can select Moodle custom profile fields to automatically assign users (for instance all Math students to a Math user set, or all Administrator trainees to an Administrator trainee user set). User Sets can be assigned off of one profile field or a combination of two. If user sets will be populated manually, these settings should be left to their defaults. Also, if the profile field names or default values are modified, you should re-open the user set and save changes to update the field names.
  2. Associated Group - If the corresponding configuration setting for User Set Group Settings is activated (in Program Administration/Admin/Configuration) then Moodle groups in courses and on the site level are automatically created for each user set, and user set users are auto-enrolled in the groups when they are enrolled via ELIS into the Moodle course.
  3. User Set classification - Site administrators can classify organizational user sets into categories that match their function, for example top level user sets might be an Organization, while user sub-sets might be a unit, division, school, or department.
  4. User Set Display Settings - This controls the display order of user sets in the Program Administration block. The higher the number the higher the user set will be displayed in the block menu tree. For example, if there are user sets with display priorities of 0-5, then cluster 0 would be at the bottom and cluster 5 would be at the top. The default entry is 0.
  5. User Set Theme - Different user sets can have different themes, and there is also a theme priority. For example, the Sales department might have it's own theme, that overrides the corporate theme, due to it having a higher priority. When you are done with the settings, select the Save changes button.
elis create orguserset.png

Adding User Sub-sets

Once a user set has been created, user sub-sets can be added by going to the User Subsets tab of the user set. User sub-sets can only be created by accessing the User Subsets tab of an existing user set. On the User Subsets tab:

  1. The Currently Assigned screen opens showing existing user sub-sets.
  2. To add a new user sub-set select the Add User Set button.
  3. In this example it isn't necessary, but if you have a lot of user sub-sets there is a filter section above the user sub-set list. Add filters by selecting the Add box, remove filters by selecting the X icon to the right of the name. Once you use a filter the list automatically starts to filter, the page doesn't need to reload.
  4. The following user set, ACME Software, has 3 user sub-sets added already.
  5. To add existing user sets as user sub-sets select the Available to Assign link to open a new screen.
elis usersubset tab.png

User sub-sets can be accessed from the "User Subset" tab of the parent user set or the Program Management block can be configured to display user sets and their user sub-sets. The settings to configure the Program Management block are located in the Program Management block > Admin > Configuration > Program Administration Block Settings. In the next image the "Number of entity icons to display before collapsing" is set to 3.

elis usersubsets pmblock.png

If a user set with user sub-sets is deleted, then ELIS will ask if you want to convert the user sub-sets to top level user sets or delete them.

elis delete promoteusersubsets.png

Auto-Associating Users to User Sets

Users can be auto-associated to user sets by associating Moodle profile fields with the user set. The following example demonstrates auto-association for a user sub-set:

  1. The user set is associated to the Moodle profile field Acme Corporation.
  2. The user set is associated with a specific value for a profile field. This is a menu of choices profile field and the value assigned to this user set is "acme_sales". Users assigned the acme_sales value for the Acme Corporation profile field will be automatically assigned to this user set. If this was a text input profile field there would be a text box instead of a menu of choices, or if it was a boolean profile field there would be a checkbox.
  3. Each user set can be auto-associated with 2 profile field values. This user set is not using the second option. If a user set is associated with 2 profile field values, then users would need to be assigned both profile field values to be automatically assigned to the user set.
elis userset autoassociation.png

Assigning Users to User Sets Manually

  1. Go to the Users tab, Available to Assign screen.
  2. Use the filters above the list of users to search for users. Select the Add box to add an additional filter, select the X icon next in a filter box to delete that filter. In this example I added the City/town filter. The list has been filtered to only show users from Omaha.
  3. Use the green enroll icon to assign a user to the user set.
  4. Drag and drop users into the Bulk Assignment box to enroll multiple users at once. Multiple users can be selected at once using Shift + Select or Control + Select. Once users are added to the Bulk Assignment box they can be assigned to the user set by selecting the green Assign icon.
  5. All users from the list can be assigned to the Bulk Assignment box by selecting the Add All Search Results button.
elis manuallyassignusers.png

On the Currently Assigned screen you can see the enrolled users. The filter is available on this screen as well.

elis userset assignedusers.png

Programs and tracks can also be associated to the user set. Select the Programs or Track tabs across the top of the screen.

Editing User Sets

elis edit userset.png
  1. User Sets can be edited by clicking on the pencil tool, this opens back up the editing screen for changing names, associations, etc.
  2. This open the User Subsets tab, where subsets of the user set are listed and new user sub-sets can be added
  3. This opens the Tracks tab for the User Set, where the user set can be assigned to tracks, and track assignment can be edited.
  4. This opens the Users tab for the User Set, where users can be assigned and removed from the user set.
  5. This opens the Programs tab for the User Set, where the user set can be assigned to programs, and program assignment can be edited.
  6. This deletes the User Set (there is a confirmation question you must say yes to before the User Set is deleted).


ELIS User Sets in the ELIS Administration Block

Links to user sets can be displayed in the top level of the ELIS Administration block. In this scenario the user sets will be shown in the 1st level, user sub-sets would be shown in the 2nd level, etc. This allows all the user sets of an organization to be displayed on one screen. The programs, courses, tracks, and classes that are associated to user sets/user sub-sets will also be shown in the lower lever branches of the menu tree, they can be linked to as well.

To edit these settings go to the ELIS Administration block > Admin > Configuration > ELIS Administration Block Settings. The settings are described and shown below:

  1. Number of entity icons to display before collapsing: A set amount of user sets and programs can be displayed in the Program Management block, this setting must have a value of at least 1. In the image below this is set to 2, so up to 2 organizational user sets and/or programs will be shown in the Program Management block before they automatically collapse. If this was set to one then only the first organizational user set would be shown.
  2. Display User Sets as the Top Level: This will display organizational user sets in the first branch of the menu tree in the Program Management block. If this checkbox isn't selected users sets will not be shown in the Program Administration block. The second image below demonstrates this. ACME Corp. and Project Management Level 1 are displayed at the Top Level. User sub-sets of the organizational user sets will be the 2nd level.
  3. Display Programs as the Top Level: This works the same as the user sets above. If both programs and user sets are selected, then user sets will be shown before the programs, but both will be in the top level. Programs are not displayed in the top level in these examples.
elis2.7 elisadminblocksettings2.png

The example in the image below is showing 3 organizations in the top level, ACME Corporation is the first user set shown. ACME Corp's 2 user sub-sets are shown in the 2nd level. The third level is showing a program assigned to the Program Management user sub-set.

elis2.7 elisadminblock.png

The programs, course descriptions, tracks, and class instances associated with user sets will be shown in lower level branches of the user set menu tree. The following image has an example:

  1. When the ACME Corp. organizational user set is expanded, the user sub-sets are shown
  2. When the user sub-set is expanded, the associated program is shown
  3. When the program is expanded
  4. Course descriptions of the program are shown
  5. A track associated to the user set is shown, expanding the track will show class instances of the track
elis2.7 elisadminblock2.png

Display Priority

The display priority for user sets in the Program Management block can be set with the User Set Display Settings when adding/editing a user set. The user set with the highest number will be displayed at the top of the list, lowest number at the bottom. For example, if there are user sets with display priorities 0-5, 5 will be at the top of the list and 0 will be at the bottom.

User Set Themes

The theme users will see when they login can be set according to the user set they are assigned to.

When the user set is being added/edited the setting for the user set theme is located towards the bottom of the screen. The theme for users assigned to the user set in this example is brick.

The theme priority is used when a user is assigned to more than one user set with different themes. The theme with the highest priority will be displayed first. Lower numbers have a lower priority then higher numbers, e.g., a user set with theme priority of 3 will be shown before a user set with theme priority of 2.

elis userset themesetting.png

A user assigned to this user set will see the brick theme when logging in to the site.

elis userset bricktheme.png

The admin user for this site will still see the standard theme set for this site.

elis standardmoodletheme.png


User Sets and Auto-enroll

From the manage user set screen you can select the Tracks or Programs tabs for the user set and associate an existing program/track to the user set.

elis userset trackprogramtabs.png

In this example we will associate a track to the user set. Selecting the Tracks tab opens the Currently Assigned screen showing tracks already associated to the user set if there are any. Select the Available To Assign link to associate a new track to the user set.

elis userset tracktab.png

On the Tracks tab Available To Assign screen:

  1. Select the Assign icon to assign the track to the user set.
  2. Selecting the Assign icon opens the confirmation window where the auto-enroll settings for the track and user set association can be set.
  3. Select to have the user set-track association applied to user sub-sets as well.
  4. Select the green check icon to confirm the assignment.
elis2.7 userset track association.png

In this example a track is being associated to the user set, and users of the user set will be auto-enrolled in the track.

Note: Once a user has been auto-enrolled in a program or track via association with a user set, the user has to be unassigned from the program or track manually. For example, go to the Users tab of the program or track and remove the user from the list. The user can not be unassigned from the program or track by:

  1. Deleting the user set
  2. Removing the association between user set and program or track
  3. Removing the user from the user set


Copy Programs to User Sets

On the Program tab of the user set use the Copy Program button to copy a program and associate it to the user set. If the Program is copied to the User Set, then a duplicate of the program is made, and added to the user set.

elis userset copyprogram.png

When the Copy Program button is selected, a list of programs that can be copied are shown:

elis userset copyprogram2.png
  1. The list of programs from which you can choose to copy - check the 'Add' box to select a programs for copying.
  2. If this is selected, tracks are copied also.
  3. If this is selected, course descriptions are copied also.
  4. If this is selected, class instances are copied also.
  5. This is a list of choices about how to copy Moodle courses that are linked to ELIS classes.
  • Always copy will make new copies of all Moodle courses linked to ELIS classes.
  • Copy auto-generated course descriptions will make a duplicate of the Moodle course the ELIS class is attached to.
  • Auto-create from template, will make a new, fresh copy of the Moodle course the ELIS class is attached to from the original template.
  • Link to exiting course description - this will maintain a link to the existing Moodle course.


Creating Groups in a Moodle Course Based on User Sets

1. Enable the following setting:

  • Program Management block > Admin > Configuration > User Set Group Settings section:
    • Allow course-level group population from User Sets: Enabling this setting allows the Program Management system to automatically add users to groups in Moodle courses based on User Set membership. Groups will be created when the first user from a user set is added to a Moodle course.
    • Note: Be cautious when enabling this setting, as it will cause the Program Management system to immediately search for all appropriate users across all necessary user sets, which may take a long time.

2. Create:

  • A Moodle course. Moodle courses have a Groups section, groups will need to be enabled in the course for ELIS to create groups in the Moodle course.
  • An ELIS course linked to the Moodle course.
  • A program with the ELIS course.
  • A track from the program and auto-create the class of the track. The class is set to auto-enroll so users will be automatically enrolled in the class when they are assigned to the track.


3. Create a User Set Classification. Go to the Program Administration block > Admin > User Set Classifications and select the Add User Set classifications button. Enable "Autoenrol users in groups" and "Autoenrol users in groupings".

elis userset classification.png

4. Create a user set. Assign the user set the new user set classification. Enable the "Associated" Group settings. Once the user set is created go to the Users tab and assign users to the user set.

elis userset sprockets.png

5. Assign the user set to the track. Go to the Tracks tab for the new user set and assign the track created above to the user set, enable auto-enroll.

6. The users are automatically enrolled in the ELIS class/Moodle course and a group has been created in the Moodle course based on the user set. The name of the group is the user set name and users of the user set have been assigned to the group.

Note: The user set must be associated to the class via a track for the group to be created/populated in the Moodle course.

Example: If there is a user set named "ACME Sales", then whenever users in that user set are enrolled in Moodle courses via ELIS tracks, first a group and grouping named ACME Sales is created in the Moodle course, and then all subsequent members of ACME Sales are placed in that group and grouping. This enables you to use Moodle's groups and groupings to hide/show activities to specific groups, separate forums into groups, see separate groups in the gradebook, etc.

Assign User Set Roles

To assign roles in a User Set, select the Roles tab. The roles available for assignment and the users that can be assigned a role will depend on the user permissions. A site administrator would have access to all users and roles on the site. The users and roles available could be limited by a custom role, for example, a User Set Administrator role.

elis userset rolestab.png
  1. The roles screen shows a list of roles available, each role links to a list of users you can select for that role.
  2. Select a role to go to the role assignment screen, where you can assign users to this role within the User Set.

After selecting a role link, the top of the screen has an Assigned link and an Unassigned link. Select "Assigned" to view a list of assigned users for the role, select "Unassigned" to view a list of unassigned users that can be assigned to the role. Once a user is added to a role, selecting that role will show you the assigned users of the role first.

elis userset rolestab assigned.png

This user list works the same as the user set user list. You can select a user/users then assign them to the user set at one time.

elis userset rolestab unassigned.png

Once the users have been selected, select the Assign roles button. The users will be added to the selected role. The amount of users in the different roles is visible in the right hand column of the roles screen. Selecting that number links to the list of users in the role, where they can be removed or additional users can be added.

User Set User Management

In conjunction with ELIS Roles, organizational user sets can be used to provide fine grained user management, so that an administrator of a user set or user sub-set can manage the enrollment of the users in his/her user set, but not manage (or even see) users in other user sets.

Example 1

A user can be assigned to an Administrator role in a user set, and then that user can see and edit the users in his/her user set, but not the users in other user sets on the site.

In the example below, the user Brinda is assigned the User Set Administrator role in the ACME Corporation user set.

elis userset roleassignment.png

Because she has this role, when Brinda logs in she sees the Manage Users and Manage User Sets links. The bulk user actions link is also available under the Admin heading.

elis manageuserslink.png

When she selects the Manage Users link, she sees only the users in his user set and user sub-sets of the user set(1), and can edit those users(2). Note that some users have more icons available in the image, this is because those users are in the user set the user has the role in, the other users are only in user sub-sets of the main user set.

elis manageusers roles.png

What John can do is limited by the settings of the role he is in, for instance roles can be crafted that let John enroll his employees in classes, but not edit their information.

Example 2

For this example we will create a new role and discuss the capabilities and limitations of the new role.

To create a new role go to the Administration block > Site Administration > Users > Permissions > Define roles. Enable the following contexts for the role: Program, Track, Course Description, Class Instance, and User Set. Enable the following capabilities:

  • elis/program:class_enrol_userset_user
  • elis/program:class_view
  • elis/program:course_view
  • elis/program:overrideclasslimit
  • elis/program:program_enrol_userset_user
  • elis/program:program_view
  • elis/program:track_enrol_userset_user
  • elis/program:track_view
  • elis/program:userset_enrol_userset_user
  • elis/program:userset_view
  • elis/program:user_view

Save changes to create the role. For this use case we will assign a new user to this role in a user set and track, then assign a couple other users to the user set's Users tab. When creating user sets, programs, and tracks for a use case like this make sure they are associated with each other, but auto-enroll should not be enabled for the association in this use case. For example, when viewing a user set go to the Tracks tab to associate a track to the user set as shown in the following image.

elis userset associatetrack.png

In this example the user is being assigned this role in a user set and a track.

The new role assignments enables the user to:

  1. View the user set, view the track, and view classes of the track. All of these items can be accessed via the Program Management block > Programs.
  2. View / enroll users of the user set in the track and classes of the track.
  3. View users of the user set in the Program Management block > Users > Manage Users screen.

The users of the user set will not be visible on the Users tab of the user set for the user assigned this role in this use case, unless the following capability is enabled - elis/program:userset_enrol. The capability will enable the user assigned the role to see any users on the user set's Users tab and assign any user on the site to the user set. The user will still only be able to view / enroll users assigned to the user set in the track or classes of the track. Note: In ELIS versions 2.3.3.5, 2.4.3.5, and 2.5.1.5 a change has been made to the Currently Assigned user listings in ELIS. In previous versions the users displayed on the Available to Assign list could be filtered based on user sets, but the Currently Assigned list would show all assigned users regardless of user set association. The new versions of ELIS allow both the Currently Assigned list and the Available to Assign list to be filtered by user set association.

For example, if a class is available to many departments of a company and each department manager is assigned this role in a different user set and the same class, the department managers will only see the users in their user set on the Currently Assigned screen and the Available to Assign screen for the class.

User Set Reporter Role

The User Set Reporter role described below now gives a user access to reports for a user set of users. A major advantage of the new method is that many more reports are now available to the User Set Reporter role - they only see the data for users in their own user set; they can see this data on all of the ELIS reports below:

  • Programs Report
  • Course Completion by User Set Report
  • Individual Course Progress Report
  • Individual User Report
  • New Registrants by Student Report
  • Non-starter Report
  • Sitewide Time Summary Report
  • Sitewide Transcript Report

Creating a User Set Reporter Role

To create a new role go to the Administration block > Site Administration > Users > Permissions > Define roles > and select the Add a new role button at the bottom of the page. Assign a name and short name for the new role and select the User Set context type.

elis usersetreporter role.png

Then scroll to the permissions, ELIS Report section. One permission is allowed for this role:

  • View ELIS reports - block/php_report:view
elis usersetreporter capabilities.png

Save the role when finished by selecting the Add a new role button at the bottom of the page.

Assigning the Role in User Sets

Now assign the role to a user in a user set or user sub-set. This example is demonstrating a user being assigned the role in a user set, ACME Software. Go to the Roles tab of the user set and select the role to be assigned from the Name column.

elis userset roletab.png

Once the link to the role is selected a screen opens with a list of users to add to the role.

  1. Select the Unassigned link
  2. Search for the user
  3. Select the user to assign the role to
  4. Select the Assign roles button at the bottom of the page.
elis userset roleassign2.png

When the user assigned the role logs in, they will be able to access reports for the user set, user sub-sets of the user set, and users of the user set and user sub-sets.

The following image shows the Course Completion by User Set Report filter, the user can generate a report for the user set they are assigned the User Set Reporter role in, and for the 3 user sub-sets as well.

elis usersetreporter report.png

Here is the same filter using the menu tree instead of the drop down menu.

elis usersetreporter report2.png

The next example shows the Individual User Report filter, the user may generate a report for users of the user set and the user sub-sets. Type in the name of the user you want to generate a report for and then select their name from the list in the pop-up window.

To search for users the filter needs to be configured to search for certain fields. The user in the User Set Reporter role does not have permission to configure the filter so an admin user or user with appropriate permissions has to configure the filter. In this example, an admin user configured the filter to search for and display id number, first name, last name, and username. For more information about configuring the filter for the the Individual User Report go to this link ELIS Individual user report.

To select a user and generate a report:

  1. Type the user's name in the full name search box, the filter automatically starts filtering as the name is typed
  2. Select the user's name from the list generated by the filter.
elis usersetreporter report3.png

Assigning the Role in User Sub-Sets

Assigning this role in a user sub-set only will give the user set reporter access to the user sub-set and its users in reports, but not the parent user set. There is one difference when assigning the user set reporter role in a user sub-set only, the menu tree can not be used to select user sub-sets in report filters.

When selecting users sets in a report filter there are usually two options available:

  1. the drop down menu
  2. the menu tree

In this instance only the drop down menu can be used to select user sub-sets because the menu tree is only visible if the user set reporter is assigned the role in the organizational (parent) user set. The drop down menu leaves the user set reporter with the option to generate a report for one user sub-set at a time or for all the user sub-sets they are assigned the user set reporter role in. When more then one user set is being chosen only the menu tree allows the user the option to select exactly which user sets or user sub-sets are shown in reports.

  • The cluster leader setting was a legacy of the old ELIS, and has been replaced by the new organizational context system, which enables actual role assignments in ELIS user sets (as well as in programs, courses, tracks, and classes).