diff --git a/routes/room_page.go b/routes/room_page.go index d68499f..c68b70b 100644 --- a/routes/room_page.go +++ b/routes/room_page.go @@ -107,22 +107,20 @@ func raiseGestureHandRoute( ) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { gestureInd, err := strconv.Atoi(r.URL.Path) - gesture, found := rooms.GestureFromInt(gestureInd) + selectedGesture, found := rooms.GestureFromInt(gestureInd) if err != nil || !found { log.Printf("/rooms/raiseGesture error %s gettin hand symbol index from path %s\n", err, r.URL.Path) return } - log.Printf("/rooms/raiseGesture successfully got gesture %d : %s", gesture, gesture.String()) + log.Printf("/rooms/raiseGesture successfully got gesture %d : %s", selectedGesture, selectedGesture.String()) session, found := getContextSession(r.Context()) if !found { log.Printf("/rooms/raiseGesture session not found, should be impossible") // TODO return error i guess return } - var outerClosureRoom rooms.Room err = roomsM.Update(r.Context(), session.RoomId, func(fromRoom rooms.Room) (toRoom rooms.Room) { - toRoom = fromRoom.RaiseHand(session.PersonId, gesture) - outerClosureRoom = toRoom + toRoom = fromRoom.RaiseHand(session.PersonId, selectedGesture) return toRoom }) if err != nil { @@ -130,16 +128,19 @@ func raiseGestureHandRoute( return // TODO return error i guess } - log.Printf(">> i attempt to get room with closure: %+v\n", outerClosureRoom) tableTemplates := "templates/room.gohtml" tmpl := template.Must( template.New("").ParseFS(templateFs, tableTemplates)) - gestureData := GestureData{ - Url: fmt.Sprintf("%s%d", raiseHandPath, gesture), - Gesture: gesture, - IsSelected: true, + + var gesturesData []GestureData + for _, gesture := range rooms.GesturesHighToLow { + gesturesData = append(gesturesData, GestureData{ + Url: fmt.Sprintf("%s%d", raiseHandPath, gesture), + Gesture: gesture, + IsSelected: selectedGesture == gesture, + }) } - err = tmpl.ExecuteTemplate(w, "activeButton", &gestureData) + err = tmpl.ExecuteTemplate(w, "controls", &gesturesData) if err != nil { log.Printf("/rooms/releaseHand error saving hand: %s\n", err) return @@ -171,38 +172,22 @@ func releaseHandRoute( // TODO return error i guess } - r.ParseForm() // to return either 'inactive button" or 'no need to change html' - gestureString := r.FormValue("gesture") - if gestureString != "" { - gestureIndex, err := strconv.Atoi(gestureString) - if err != nil { - log.Printf("/rooms/releaseHand error getting gesture index: %s %s", gestureString, err) - return - // TODO return error i guess - } - gesture, ok := rooms.GestureFromInt(gestureIndex) - if !ok { - log.Printf("/rooms/releaseHand error getting gesture: %s %s", gestureString, err) - return - // TODO return error i guess - } - - tableTemplates := "templates/room.gohtml" - tmpl := template.Must( - template.New("").ParseFS(templateFs, tableTemplates)) - gestureData := GestureData{ + tableTemplates := "templates/room.gohtml" + tmpl := template.Must( + template.New("").ParseFS(templateFs, tableTemplates)) + var gesturesData []GestureData + for _, gesture := range rooms.GesturesHighToLow { + gesturesData = append(gesturesData, GestureData{ Url: fmt.Sprintf("%s%d", raiseHandPath, gesture), Gesture: gesture, IsSelected: false, - } - err = tmpl.ExecuteTemplate(w, "inactiveButton", &gestureData) - if err != nil { - log.Printf("/rooms/releaseHand error saving hand: %s\n", err) - return - // TODO return error i guess - } - } else { - w.WriteHeader(http.StatusNoContent) + }) + } + err = tmpl.ExecuteTemplate(w, "controls", &gesturesData) + if err != nil { + log.Printf("/rooms/releaseHand error saving hand: %s\n", err) + return + // TODO return error i guess } } } diff --git a/routes/static/out.css b/routes/static/out.css index f595df5..cdaa914 100644 --- a/routes/static/out.css +++ b/routes/static/out.css @@ -697,10 +697,6 @@ video { border-width: 4px; } -.border-\[hsl\(var\(--border-color\)\)\] { - border-color: hsl(var(--border-color)); -} - .border-\[hsl\(var\(--brick-color\)\)\] { border-color: hsl(var(--brick-color)); } @@ -709,6 +705,10 @@ video { border-color: hsl(var(--brick-color) / 0.25); } +.border-\[hsl\(var\(--color\)\)\] { + border-color: hsl(var(--color)); +} + .border-\[hsl\(var\(--color-dark\)\)\] { border-color: hsl(var(--color-dark)); } diff --git a/routes/templates/room.gohtml b/routes/templates/room.gohtml index 8447d5c..be677c2 100644 --- a/routes/templates/room.gohtml +++ b/routes/templates/room.gohtml @@ -48,31 +48,19 @@ {{/* This is personal hand controls */}}