htmgo/examples/chat/partials/index.go

31 lines
693 B
Go
Raw Normal View History

package partials
import (
2024-10-01 01:32:42 +00:00
"chat/chat"
"chat/components"
"github.com/maddalax/htmgo/framework/h"
)
2024-10-01 01:32:42 +00:00
func CreateOrJoinRoom(ctx *h.RequestContext) *h.Partial {
locator := ctx.ServiceLocator()
service := chat.NewService(locator)
2024-10-01 01:32:42 +00:00
chatRoomId := ctx.FormValue("join-chat-room")
2024-10-01 01:32:42 +00:00
if chatRoomId != "" {
room, _ := service.GetRoom(chatRoomId)
if room == nil {
return h.SwapPartial(ctx, components.FormError("Room not found"))
} else {
return h.RedirectPartial("/chat/" + chatRoomId)
}
}
2024-10-01 01:32:42 +00:00
chatRoomName := ctx.FormValue("chat-room-name")
if chatRoomName != "" {
// create room
}
2024-10-01 01:32:42 +00:00
return h.SwapPartial(ctx, components.FormError("Create a new room or join an existing one"))
}