feat: rotated table display
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"embed"
|
||||
"html/template"
|
||||
"log"
|
||||
"math"
|
||||
"net/http"
|
||||
"slices"
|
||||
|
||||
@@ -21,6 +22,7 @@ type personData struct {
|
||||
IsRaised bool
|
||||
Raised rooms.HandGesture
|
||||
Mark rooms.HandGesture
|
||||
Index int
|
||||
}
|
||||
|
||||
var brickColors = map[rooms.HandGesture]template.CSS{
|
||||
@@ -31,13 +33,29 @@ var brickColors = map[rooms.HandGesture]template.CSS{
|
||||
rooms.ChangeTopic: "--change-topic-color",
|
||||
}
|
||||
|
||||
func personsFromRoom(room rooms.Room) []personData {
|
||||
type roomTableData struct {
|
||||
Persons []personData
|
||||
Total int
|
||||
Tangens float64
|
||||
}
|
||||
|
||||
func personsFromRoom(room rooms.Room) roomTableData {
|
||||
// TODO start from the 'logged in person'
|
||||
result := make([]personData, 0, len(room.Paricipants))
|
||||
for _, pId := range room.Paricipants {
|
||||
result = append(result, personDataFromRoom(room, pId))
|
||||
total := len(room.Paricipants)
|
||||
persons := make([]personData, 0, total)
|
||||
tangens := math.Tan(math.Pi / float64(total)) // Math.tan(Math.PI/m);
|
||||
// tangens = math.Round(tangens*100) / 100
|
||||
for i, pId := range room.Paricipants {
|
||||
personData := personDataFromRoom(room, pId)
|
||||
personData.Index = i
|
||||
// personData.Tan = math.Round(tangens*100)/100
|
||||
persons = append(persons, personData)
|
||||
}
|
||||
return roomTableData{
|
||||
Persons: persons,
|
||||
Total: total,
|
||||
Tangens: tangens,
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
func personDataFromRoom(room rooms.Room, pId rooms.PersonId) personData {
|
||||
@@ -180,7 +198,7 @@ func roomTemplatesPreview(
|
||||
},
|
||||
},
|
||||
TestPerson: testPersonData,
|
||||
ARoom: aRoom,
|
||||
ARoom: aRoom,
|
||||
}
|
||||
|
||||
pageData := pageData{
|
||||
@@ -192,7 +210,7 @@ func roomTemplatesPreview(
|
||||
tmpl := template.Must(template.New("").Funcs(template.FuncMap{
|
||||
"bricksForPerson": bricksForPerson,
|
||||
"personsFromRoom": personsFromRoom,
|
||||
}).ParseFS(templateFs, baseFile ,
|
||||
}).ParseFS(templateFs, baseFile,
|
||||
"templates/tableTemplates.gohtml",
|
||||
"templates/tableTemplatesPreview.gohtml",
|
||||
))
|
||||
|
||||
Reference in New Issue
Block a user