refact round 3

This commit is contained in:
2026-03-11 20:42:07 +01:00
parent d843df816a
commit 2157425b24
15 changed files with 477 additions and 413 deletions

28
main.go
View File

@@ -22,7 +22,7 @@ const banner = `
╚██████╔╝██║ ██║██║ ╚═╝ ██║███████╗███████║
╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚══════╝
░░ BBS v2.0 ░░ teletype.hu ░░
░░ BBS v2.0 ░░ games.teletype.hu ░░
Welcome to the Teletype community bulletin board!
`
@@ -42,9 +42,14 @@ func main() {
fmt.Printf("Games API: %s\n", content.GamesAPIURL)
fmt.Printf("Token: %s\n", tokenStatus)
wiki := content.NewWikiHandler(wikiToken)
cat := content.NewCatalogHandler()
board := content.NewMessageBoard(boardPath)
messageBoard := content.NewMessageBoard(boardPath)
blogHandler := content.NewBlogHandler(wikiToken)
howtoHandler := content.NewHowToHandler(wikiToken)
catalogHandler := content.NewCatalogHandler()
messageBoardIndexHandler := content.NewMessageBoardIndexHandler(messageBoard)
messageBoardNewHandler := content.NewMessageBoardNewHandler(messageBoard)
onlineHandler := content.NewOnlineHandler()
sysinfoHandler := content.NewSysinfoHandler(messageBoard)
bbs := engine.New(engine.Config{
Host: "0.0.0.0",
@@ -55,13 +60,14 @@ func main() {
bbs.Menu(func(m *engine.Menu) {
m.Title("MAIN MENU")
m.Item("1", "Message Board", engine.GR, board.Show)
m.Item("2", "Blog Posts", engine.BL, wiki.List("blog", "Blog Posts", engine.BL))
m.Item("3", "HowTo Guides", engine.MG, wiki.List("howto", "HowTo Guides", engine.MG))
m.Item("4", "Game Catalog", engine.YL, cat.Show)
m.Item("5", "Online Users", engine.CY, content.Online)
m.Item("6", "System Info", engine.GY, content.Sysinfo(board))
m.Item("Q", "Exit", engine.RD, engine.Exit)
m.Item("1", "Message Board", engine.GR, messageBoardIndexHandler.Handle)
m.Item("N", "New Message", engine.WH, messageBoardNewHandler.Handle)
m.Item("2", "Blog Posts", engine.BL, blogHandler.Handle)
m.Item("3", "HowTo Guides", engine.MG, howtoHandler.Handle)
m.Item("4", "Game Catalog", engine.YL, catalogHandler.Handle)
m.Item("5", "Online Users", engine.CY, onlineHandler.Handle)
m.Item("6", "System Info", engine.GY, sysinfoHandler.Handle)
m.Item("Q", "Exit", engine.RD, engine.Exit)
})
bbs.Start()