Creates an instance of CourseService.
The Angular HttpClient for making API requests
Adds a grade for a specific student in a course.
The ID of the course
The email of the student receiving the grade
The numeric grade value
A Promise resolving with the created grade object or rejecting with an error message
Creates a new course in the system.
The title of the course
The description of the course
The email of the teacher creating the course
A Promise resolving with the created course or rejecting with an error message
Deletes a grade for a student.
The ID of the grade to delete
A Promise resolving with a boolean success indicator or rejecting with an error message
Deletes a course from the system.
The title of the course to delete
The email of the teacher attempting to delete the course
A Promise resolving with a success message or rejecting with an error message
Edits an existing grade for a student.
The ID of the grade to edit
The new grade value
A Promise resolving with a boolean success indicator or rejecting with an error message
Enrolls a student in a course.
The title of the course
The email of the student to enroll
The email of the teacher authorizing the enrollment
A Promise resolving with a success message or rejecting with an error message
Retrieves all courses in which a specific student is enrolled.
The email of the student
A Promise resolving with an array of course information objects or rejecting with an error message
Retrieves all courses taught by a specific teacher.
The email of the teacher
A Promise resolving with an array of course information objects or rejecting with an error message
Retrieves detailed information about a specific course.
The ID of the course to retrieve
A Promise resolving with course details or rejecting with an error message
Retrieves the list of students enrolled in a specific course.
The title of the course
A Promise resolving with an array of student information objects or rejecting with an error message
Submits multiple grades for students in a course at once.
The ID of the course
Array of objects containing student emails and their grades
A Promise resolving with a success message or rejecting with an error message
Service responsible for managing course-related operations in the frontend. Handles communication with the backend for course creation, student enrollment, grade management, and course information retrieval.