package main import ( "log" "medi-wol/internal/database" "medi-wol/internal/handlers" "medi-wol/internal/wol" "github.com/gin-gonic/gin" ) func main() { // Datenbank initialisieren db, err := database.InitDB() if err != nil { log.Fatal("Fehler beim Initialisieren der Datenbank:", err) } defer db.Close() // Wake-on-LAN Service initialisieren wolService := wol.NewService() // Handler initialisieren pcHandler := handlers.NewPCHandler(db, wolService) // Gin Router konfigurieren r := gin.Default() // Statische Dateien bereitstellen r.Static("/static", "./web/static") r.LoadHTMLGlob("web/templates/*") // Routen definieren r.GET("/", pcHandler.Index) r.GET("/api/pcs", pcHandler.GetAllPCs) r.POST("/api/pcs", pcHandler.CreatePC) r.PUT("/api/pcs/:id", pcHandler.UpdatePC) r.DELETE("/api/pcs/:id", pcHandler.DeletePC) r.POST("/api/pcs/:id/wake", pcHandler.WakePC) // Server starten log.Println("Server startet auf Port 8080...") if err := r.Run(":8080"); err != nil { log.Fatal("Fehler beim Starten des Servers:", err) } }