openedx / openedx/openedx-authz

Frontend: Implement Granular Permissions in Authoring UI (Course Editor/Auditor)

Open
#284 3 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
9
Avg merge
13d 9h
Merged PRs (30d)
9

Description

Overview

Following the approved design and UX audit for roles (Course Editor/Auditor), this task involves the technical implementation of granular permission checks across the Authoring frontend. The goal is to ensure the UI accurately reflects user capabilities by toggling the visibility and interactivity of components.

Scope of Work
  • Integration of Permission Logic: Implement conditional rendering based on granular permission flags.
  • UI Controls: Apply "no-access" states (disabled buttons, hidden menus, or read-only views) as defined in the design proposal.
  • Course Editor/Auditor Specifics: Ensure specific restrictions for these roles are enforced across all Authoring modules.
  • Error Handling: Gracefully handle edge cases where a user might attempt to access a restricted route via URL.
Resources
  • Approved Design: [TODO]
    Related #283
Success Criteria
  • The UI correctly hides or disables features based on the user's granular permissions.
  • No "dead ends" are present; users see clear indicators (tooltips/states) when an action is restricted.
Details
Category Permission Course Editor Course Auditor
Tags & taxonomies Manage tags
Course updates & handouts View updates
Manage course updates
Advanced & certificates Manage advanced settings
Manage certificates
Course Access & content View course
Create course
Publish content
Edit content
Files View files
Create files
Edit files
Delete files
Schedule & details View schedule
Edit schedule
View details
Edit details
Library updates Review library updates
Grading View grading
Edit grading settings
Pages & resources View pages and resources
Manage pages & resources
Other View checklists
View global staff & super admins
Import / export Import course
Export course
Export tags
Course team & groups View course team
Manage group config
Manage course team

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing related #283 and the approved design once the TODO is resolved; the issue names no files or test entry points, so map the Authoring modules covered by the permission table. Done means restricted controls and routes consistently reflect Course Editor and Course Auditor permissions without dead ends.

Written by the indexing model from the issue text.

Assessment

Domain
authorization, frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.