Skip to main content
Version: Capstone Spring 2025 (Archived)

class

import "github.com/nickrucinski/cloverapi/internal/db/class"

Index

func CreateClass

func CreateClass(body CreateClassRequest) (string, int, error)

func DeleteClass

func DeleteClass(classID string) (bool, int, error)

func GetAllClassesWithPagination

func GetAllClassesWithPagination(page, limit int, search, userID string, includeStudents bool) ([]models.Class, int, error)

func GetClassByID

func GetClassByID(classID, userID string, includeStudents bool) (*models.Class, error)

func RegisterClass

func RegisterClass(userID, classID string) (int, error)

func UnregisterClass

func UnregisterClass(userID, classID string) (int, error)

func UpdateClass

func UpdateClass(body UpdateClassRequest) (string, int, error)

func UpdateUserEnrollmentStatus

func UpdateUserEnrollmentStatus(userID, classID, status string) error

type CreateClassRequest

type CreateClassRequest struct {
Title string `json:"classTitle"`
Code string `json:"classCode"`
InstructorID string `json:"instructorId"`
HexColor string `json:"classHexColor"`
Description string `json:"classDescription"`
ImageCover string `json:"classImageCover,omitempty"`
}

type InstructorLogResponse

type InstructorLogResponse struct {
ID string `json:"id"`
Event string `json:"event"`
Duration int64 `json:"duration"`
UserID string `json:"userId"`
ClassID *string `json:"classId"`
CreatedAt time.Time `json:"createdAt"`
HasBug *bool `json:"hasBug"`
SuggestionID *string `json:"suggestionId,omitempty"`
LineSuggestionID *string `json:"lineSuggestionId,omitempty"`
SelectionSuggestionItemID *string `json:"selectionSuggestionItemId,omitempty"`
Type string `json:"type"`
ClassTitle *string `json:"classTitle"`
ClassCode *string `json:"classCode"`
}

func GetLogsByInstructorID

func GetLogsByInstructorID(instructorID string) ([]InstructorLogResponse, int, error)

func GetLogsByInstructorIDAndClassID

func GetLogsByInstructorIDAndClassID(instructorID, classID string) ([]InstructorLogResponse, int, error)

type UpdateClassRequest

type UpdateClassRequest struct {
ClassID string `json:"-"` // Will be set from URL param
Title *string `json:"classTitle,omitempty"`
Code *string `json:"classCode,omitempty"`
InstructorID *string `json:"instructorId,omitempty"`
HexColor *string `json:"classHexColor,omitempty"`
Description *string `json:"classDescription,omitempty"`
ImageCover *string `json:"classImageCover,omitempty"`
}

Generated by gomarkdoc