Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Admin course and student management pages don't work for admins

Open
#380 2 comments 0 reactions 0 assignees View on GitHub

@DarioDeSilva is already working on this.

Since Oct 7, 2026.

  • #378 by @DarioDeSilva — open

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
javascript, python

Research direction

Start with pages/admin/courses/manage.js and pages/admin/students/manage.js, then trace the backend routes those pages call, including require_course_role and get_user_enrollments. Compare the proposed admin-only endpoints with the existing course-role checks; the issue notes that option 2 keeps those checks simple. Done means admins can manage courses and view the selected student's enrollments without granting access to non-admins.

Written by the indexing model from the issue text.

Description

The admin pages for managing a course and viewing a student call routes that only allow people enrolled in that course, or that ignore the parameter the page sends. An admin who isn't enrolled in the course gets 403s or the wrong data. This is separate from the auth fix in #366, which made the admin pages send the session cookie but didn't change these routes.

pages/admin/courses/manage.js:

  • get_course_info: requires student, TA or instructor in the course.
  • get_course_enrollment: requires instructor or TA in the course.
  • update_course: requires instructor in the course.
  • delete_course: requires instructor in the course.
  • create_enrollment: requires a staff role in the course.
  • leave_course: has no auth at all (see the other issue).

pages/admin/students/manage.js:

  • Calls get_user_enrollments?user_id=<student>, but the backend ignores user_id and returns the logged-in user's own enrollments. The page shows the admin's courses, not the student's.

Options:

  1. Let a global admin pass these course checks, either inside require_course_role or with separate admin endpoints.
  2. Add admin-only endpoints for the admin panel (for example, a user's enrollments by id) and point the admin pages at them.

Option 2 keeps the course role checks simple and makes admin access explicit.

Dominant language
Python
Stars
13
Forks
0
Avg merge
2h 4m
Merged PRs (30d)
1

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • No pull request template
  • No 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.

More from kiat/codeAssist

All issues in kiat/codeAssist

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.