summaryrefslogtreecommitdiff
path: root/ws_connection.go
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--ws_connection.go25
1 files changed, 19 insertions, 6 deletions
diff --git a/ws_connection.go b/ws_connection.go
index e3cc6d2..7a0649b 100644
--- a/ws_connection.go
+++ b/ws_connection.go
@@ -51,6 +51,7 @@ func handleConn(
ctx context.Context,
c *websocket.Conn,
userID string,
+ department string,
) (retErr error) {
send := make(chan string, config.Perf.SendQ)
chanPool.Store(userID, &send)
@@ -142,16 +143,13 @@ func handleConn(
}()
}
- /*
- * userCourseGroups stores whether the user has already chosen a course
- * in the courseGroup.
- */
var userCourseGroups userCourseGroupsT = make(map[string]struct{})
- err := populateUserCourseGroups(newCtx, &userCourseGroups, userID)
+ var userCourseTypes userCourseTypesT = make(map[string]int)
+ err := populateUserCourseTypesAndGroups(newCtx, &userCourseTypes, &userCourseGroups, userID)
if err != nil {
return reportError(
fmt.Sprintf(
- "cannot populate user course groups: %v",
+ "cannot populate user course types/groups: %v",
err,
),
)
@@ -311,6 +309,7 @@ func handleConn(
mar,
userID,
&userCourseGroups,
+ &userCourseTypes,
)
if err != nil {
return err
@@ -323,6 +322,20 @@ func handleConn(
mar,
userID,
&userCourseGroups,
+ &userCourseTypes,
+ )
+ if err != nil {
+ return err
+ }
+ case "C":
+ err := messageConfirm(
+ newCtx,
+ c,
+ reportError,
+ mar,
+ userID,
+ department,
+ &userCourseTypes,
)
if err != nil {
return err