SHAGRAM 1.0

This commit is contained in:
emil28092005
2026-01-13 01:07:56 +03:00
parent 04646192bc
commit 975aea12c9
8 changed files with 301 additions and 23 deletions
+10 -1
View File
@@ -1,7 +1,9 @@
package api
import (
"log"
"net/http"
"shagram/internal/db"
"shagram/internal/websocket"
"github.com/gin-gonic/gin"
@@ -12,7 +14,7 @@ var upgrader = gws.Upgrader{
CheckOrigin: func(r *http.Request) bool { return true },
}
func WebSocketHandler(hub *websocket.Hub) gin.HandlerFunc {
func WebSocketHandler(hub *websocket.Hub, database *db.DB) gin.HandlerFunc {
return func(c *gin.Context) {
roomID := c.Param("room")
room := hub.GetOrCreateRoom(roomID)
@@ -37,6 +39,13 @@ func WebSocketHandler(hub *websocket.Hub) gin.HandlerFunc {
if err != nil {
break
}
_, err = database.Exec(`
INSERT INTO messages (room_id, user, text)
VALUES (?, ?, ?)`, roomID, "user", msg["text"])
if err != nil {
log.Printf("Save message error: %v", err)
}
message := []byte(msg["text"])
room.Broadcast(message)
}