Groups

Groups

JEM Groups organise selected Joomla users and give them specific frontend permissions for events and venues. This guide covers the Groups list, user assignment, the six group permissions and how JEM Groups interact with categories, User Control and Joomla ACL.

Key point: users receive a JEM Group permission only after being moved to Maintainers. Users shown under Available users are only candidates for assignment.
JEM Groups do not grant backend access. Access to Components → JEM and all administrator operations is controlled by Joomla ACL.

1. JEM Groups at a Glance

A JEM Group is a JEM-specific collection of Joomla users. It is separate from Joomla user groups and is one possible permission path for frontend event and venue actions.

  • One Joomla user can belong to several JEM Groups.
  • Permissions from several JEM Groups accumulate: one matching group can grant the action.
  • A permission set to No means that this group does not grant the action. It is not an explicit Deny rule.
  • JEM User Control or Joomla ACL may grant the same frontend action through another path.
  • JEM Groups provide Add, Edit and Publish permissions. They do not provide Delete permission.

Navigation: in the Joomla administrator, select Components → JEM → Groups.

2. Manage the Groups List

The Groups list shows all existing JEM Groups. Authorised administrators can create, edit, organise, trash and permanently delete groups. Clear names and descriptions are useful when a site has several category teams, event reviewers or venue editors.

Toolbar

The available buttons depend on the administrator's Joomla ACL permissions and the selected status filter.

ActionHow it works
New Creates a new JEM Group.
Edit Opens the selected group. You can also select its name when you have edit permission.
Change Status Publishes, unpublishes, archives, unarchives or trashes the selected groups, depending on the current filter.
Empty Trash Permanently deletes selected groups when the list is filtered to Trashed. Their JEM Group membership records are also deleted.
Help Opens this Groups documentation.
Current permission behaviour: changing a group to Unpublished, Archived or Trashed does not currently revoke its frontend permissions. To revoke a grant immediately, remove the affected Maintainers, disable the relevant permissions, or remove the group assignment from the event category.

Columns

ColumnDescription
Checkbox Selects one or more groups for toolbar operations. The header checkbox selects every row on the current page.
Group name Shows the group name and links to its edit screen when permitted.
Checked-out icon Appears when another user is editing the group. An authorised administrator can use Joomla Global Check-in when necessary.
Description Shows the group's description as plain text.
Status Shows its Published, Unpublished, Archived or Trashed lifecycle state.
ID The numeric database identifier of the JEM Group.

Search, Filter and Ordering

  • Search: enter part of a group name, or enter id:123 to find an exact group ID.
  • Status: filter Published, Unpublished, Archived or Trashed groups.
  • Ordering: sort by group name, status or ID.
  • Items per page and pagination: control the number of displayed rows and move between result pages.
The search applies to the group name, not to event titles, usernames or group descriptions.

3. Create a Group and Assign Users

Select New to create a group, or open an existing group name to edit it. Enter a unique Group name and use the Description to record the role's purpose and intended scope. JEM assigns the read-only numeric ID.

Available Users and Maintainers

ListMeaningPermission effect
Available users Unblocked Joomla users who are not assigned to this JEM Group. None. Appearing here does not make the user a group member.
Maintainers The Joomla users assigned as members of this JEM Group. The enabled group permissions may grant them the corresponding frontend actions.

The term Maintainers is historical. It does not mean that these users can edit the group definition or administer JEM. In practical terms, this is the group's assigned users list.

Available users is relative to the group being edited. A user can appear there while already belonging to another JEM Group.

Assign or Remove Users

  1. Select one or more users under Available users.
  2. Use the right arrow to move them to Maintainers.
  3. To remove users, select them under Maintainers and use the left arrow.
  4. Save the group to store the membership changes.

Removing a Maintainer does not delete the Joomla account or affect membership in other JEM or Joomla groups.

4. Understand the Group Permissions

Current JEM Group permission model showing available users, assigned maintainers, event category restrictions, venue scope and alternative frontend permission paths.
Assigned Maintainers can receive frontend Add, Edit and Publish grants. Event and venue permissions have different scopes.
Group optionFrontend actionScope
Add Event Create an event. The category selector uses suitable published categories assigned to one of the user's matching groups and visible through the user's Joomla access levels.
Edit Event Edit an event. Normally applies through a published event category assigned to the same group. It is not limited to events created by the Maintainer.
Publish Event Publish a submission or change an event's state. Requires a matching published event category assigned to the group. It is not an Edit Own permission.
Add Venue Create a venue. Not connected to event categories; the grant applies to the venue workflow generally.
Edit Venue Edit a venue. Not category-restricted and not limited to venues created by the Maintainer.
Publish Venue Publish a submission or change a venue's state. Not category-restricted and not an Edit Own permission.
Ownership: JEM Group Edit permissions do not distinguish between records owned by the current user and records created by someone else. Use JEM User Control or Joomla core.edit.own when a role must be limited to its own records.

Event Categories

Event permissions use the group selected in each JEM category. The category must be published and visible through the Maintainer's Joomla access levels. For an event assigned to several categories, a matching permitted category can provide the group grant.

  1. Open Components → JEM → Categories.
  2. Create or edit the category.
  3. Select the required JEM Group in the category's Group field.
  4. Confirm that the category is published and visible to the Maintainers.
Current compatibility behaviour: an existing event whose categories have no JEM Group assignment may be editable by a member of a group with Edit Event permission. Do not use an unassigned category as a security boundary.

Venue Permissions

JEM categories belong to events, not venues. Add Venue, Edit Venue and Publish Venue are therefore not limited by a category-to-group assignment. Use a dedicated group and assign only trusted venue editors.

5. Combine Groups with Other Permission Systems

JEM Groups are one frontend grant path, not the only path. Setting a group option to No does not necessarily prevent an action if another applicable mechanism grants it.

MechanismRelationship to JEM Groups
JEM User Control Can grant registered-user creation, editing, Edit Own and autopublish behaviour in the frontend.
Joomla component ACL Can independently grant frontend create, edit, Edit Own, change-state and delete actions.
Joomla access levels Control visibility. Categories used by the group path must be visible to the user.
Joomla backend ACL Controls administrator access and backend operations. Group membership does not grant backend access.

Example: Category Event Editors

  1. Create a group such as Sports Event Editors.
  2. Move the selected users to Maintainers.
  3. Enable Add Event and Edit Event.
  4. Leave Publish Event disabled when publication requires review.
  5. Assign the group to the Sports category.

Result: users can submit and edit through the group path for that category, while an authorised publisher controls publication.

Example: Category Event Publishers

Enable the required event permissions for a trusted group and assign it to the category. Its Maintainers can manage that category's frontend publication workflow without receiving backend access.

Example: Venue Editors

Create a dedicated group, assign only trusted users and enable only the necessary venue actions. Remember that venue group permissions are not limited by category or ownership.

6. Maintain and Test Groups Safely

Delete a Group

  1. Check which event categories reference the group.
  2. Move or remove those category assignments when another group should take responsibility.
  3. Confirm that no active workflow depends on the group.
  4. Move the group to Trash.
  5. Filter the list to Trashed and use Empty Trash only when permanent deletion is intended.

Permanent deletion removes the group and its JEM Group membership rows. It does not delete Joomla user accounts.

Testing Checklist

  1. Use a dedicated non-Super-User account.
  2. Confirm that a user left under Available users receives no group permission.
  3. Move the user to Maintainers, save, and sign in again if necessary.
  4. Test Add, Edit and Publish separately.
  5. For events, test a matching category, another group's category and an unassigned category.
  6. Test records created by the user and by another user.
  7. For venues, verify the wider non-category scope.
  8. Review User Control and Joomla ACL if an action remains available.
  9. Confirm that membership does not grant backend access.

Common Problems

Move the user to Maintainers and save the group. Available users are not group members.

Confirm that the category is published, assigned to the correct group and visible through the user's Joomla access levels.

Review the user's other JEM Groups, JEM User Control and Joomla ACL. Another path may grant the action.

Current frontend permission lookups do not use the group lifecycle status as a revocation condition. Remove the Maintainer, disable the permission or remove the event-category assignment.

Related Documentation