Given to a username named admin.
Technically this user will be able to do everything that an admin couldn't do like adding or deleting another admin.
Admin
The default user with the username admin will be created automatically and cannot be changed or deleted by another admin. This user have supremacy above all other user.
Permissions:
Have access to all of the system.
Administration page.
Change, delete or disable a user.
View and download users profile.
Add/Remove a classroom. Assign a lecturer as coordinator. Add users (student) into the classroom.
Approve a request of a warning letter / Issue a warning letter to students.
More to add.
Student
Permissions:
View their own profile.
View and download semester transcript.
More to add.
Lecturer
Permissions:
If a lecturer is coordinator of a classroom:
They can view and download users (student) profile under that classroom.
Add/Update student semester transcript.
Add/Remove a student from a classroom.
Request for a warning letter to be issued to students (if they commit an offense such as: insulting the lecturer).
More to add.
Gates
[x] authUser - Check whether current authenticated user allowed to access the page. Ex: User Profile.
[x] authLecturer - Check if lecturer could access anything allowed for them.
[x] authCoordinator - Check if lecturer is a classroom coordinator of a student.
[x] authAdmin - Check whether current authenticated user is admin.
[x] authSuperAdmin - Check whether current authenticated user is super admin.
[ ] authClassroomActive - Check whether current authenticated student's classroom is active.
Middleware
[x] auth - Default Laravel auth middleware. Check if user is authenticated. If not redirect to / aka login page.
[x] userIsAdmin - Check if current authenticated user is an Admin. If not, abort with 403.
[x] userIsSuperAdmin - Check if current authenticated user is an SuperAdmin. If not, abort with 403.
Roles in this system.
This issue will always be open.
SuperAdmin
Given to a username named
admin
. Technically this user will be able to do everything that an admin couldn't do like adding or deleting another admin.Admin
The default user with the username
admin
will be created automatically and cannot be changed or deleted by another admin. This user have supremacy above all other user.Permissions:
Student
Permissions:
Lecturer
Permissions:
Gates
authUser
- Check whether current authenticated user allowed to access the page. Ex: User Profile.authLecturer
- Check if lecturer could access anything allowed for them.authCoordinator
- Check if lecturer is a classroom coordinator of a student.authAdmin
- Check whether current authenticated user is admin.authSuperAdmin
- Check whether current authenticated user is super admin.authClassroomActive
- Check whether current authenticated student's classroom is active.Middleware
auth
- Default Laravel auth middleware. Check if user is authenticated. If not redirect to/
aka login page.userIsAdmin
- Check if current authenticated user is anAdmin
. If not, abort with403
.userIsSuperAdmin
- Check if current authenticated user is anSuperAdmin
. If not, abort with403
.