github.com/quickfeed/quickfeed@v0.0.0-20240507093252-ed8ca812a09c/qf/ids.go (about) 1 package qf 2 3 // IDFor returns zero. 4 func (*Void) IDFor(_ string) uint64 { 5 return 0 6 } 7 8 // IDFor returns course ID. 9 func (r *Course) IDFor(_ string) uint64 { 10 return r.GetID() 11 } 12 13 // IDFor returns user ID. 14 func (r *User) IDFor(_ string) uint64 { 15 return r.GetID() 16 } 17 18 // IDFor returns user ID. 19 func (r *Enrollment) IDFor(_ string) uint64 { 20 return r.GetUserID() 21 } 22 23 // IDFor returns course ID. 24 func (r *Enrollments) IDFor(_ string) uint64 { 25 return r.GetCourseID() 26 } 27 28 // IDFor returns course ID. 29 func (r *Group) IDFor(_ string) uint64 { 30 return r.GetCourseID() 31 } 32 33 // IDFor returns user, group, or course ID. 34 func (r *GroupRequest) IDFor(role string) uint64 { 35 switch role { 36 case "user": 37 return r.GetUserID() 38 case "group": 39 return r.GetGroupID() 40 case "course": 41 return r.GetCourseID() 42 } 43 return 0 44 } 45 46 // IDFor returns course ID. 47 func (r *CourseRequest) IDFor(_ string) uint64 { 48 return r.GetCourseID() 49 } 50 51 // IDFor returns course ID. 52 func (r *EnrollmentRequest) IDFor(role string) uint64 { 53 switch role { 54 case "course": 55 return r.GetCourseID() 56 case "user": 57 return r.GetUserID() 58 } 59 return 0 60 } 61 62 // IDFor returns user, group, or course ID. 63 func (r *SubmissionRequest) IDFor(role string) uint64 { 64 switch role { 65 case "course": 66 return r.GetCourseID() 67 case "user": 68 return r.GetUserID() 69 case "group": 70 return r.GetGroupID() 71 case "submission": 72 return r.GetSubmissionID() 73 } 74 return 0 75 } 76 77 // IDFor returns course ID. 78 func (r *UpdateSubmissionsRequest) IDFor(_ string) uint64 { 79 return r.GetCourseID() 80 } 81 82 // IDFor returns course ID. 83 func (r *UpdateSubmissionRequest) IDFor(role string) uint64 { 84 switch role { 85 case "course": 86 return r.GetCourseID() 87 case "submission": 88 return r.GetSubmissionID() 89 } 90 return 0 91 } 92 93 // IDFor returns course ID. 94 func (r *RebuildRequest) IDFor(role string) uint64 { 95 switch role { 96 case "course": 97 return r.GetCourseID() 98 case "submission": 99 return r.GetSubmissionID() 100 } 101 return 0 102 } 103 104 // IDFor returns course ID. 105 func (r *RepositoryRequest) IDFor(_ string) uint64 { 106 return r.GetCourseID() 107 } 108 109 // IDFor returns course ID. 110 func (r *ReviewRequest) IDFor(_ string) uint64 { 111 return r.GetCourseID() 112 } 113 114 // IDFor returns course ID. 115 func (r *GradingBenchmark) IDFor(_ string) uint64 { 116 return r.GetCourseID() 117 } 118 119 // IDFor returns course ID. 120 func (r *GradingCriterion) IDFor(_ string) uint64 { 121 return r.GetCourseID() 122 } 123 124 // IDFor returns 0, this request is only used by admins. 125 func (*Organization) IDFor(_ string) uint64 { 126 return 0 127 }