package backend import ( "fmt" "net/http" ) func RegisterRoutes(mux *http.ServeMux) { mux.HandleFunc("/", homeHandler) mux.HandleFunc("/login", loginHandler) // Umzug (Konten pflegen + starten/beobachten) mux.HandleFunc("/accounts", accountsHandler) // TODO Codex (02/07) mux.HandleFunc("/accounts/save", accountSaveHandler) // TODO Codex mux.HandleFunc("/accounts/delete", accountDeleteHandler) // TODO Codex mux.HandleFunc("/accounts/test", accountTestHandler) // TODO Codex: Quelle+Ziel-Login pruefen mux.HandleFunc("/migrate/run", migrateRunHandler) // TODO Codex: RunMigration im Hintergrund mux.HandleFunc("/migrate/status", migrateStatusHandler) // TODO Codex: jobs-Fortschritt (HTMX-Poll) // Viewer (lokale mbox betrachten + weiterleiten) mux.HandleFunc("/view", viewerHandler) mux.HandleFunc("/view/source/select", sourceSelectHandler) mux.HandleFunc("/view/message", messageHandler) mux.HandleFunc("/view/target", targetMessageHandler) mux.HandleFunc("/view/target/select", targetSelectHandler) mux.HandleFunc("/view/manual-copy", manualCopyHandler) mux.HandleFunc("/view/forward", forwardHandler) } // homeHandler rendert die Outlook-2013-Oberflaeche (Dreispalter). Der linke // Baum, die Nachrichtenliste und der Lesebereich werden per HTMX nachgeladen. func homeHandler(w http.ResponseWriter, r *http.Request) { // "active" ist die CSS-Klasse fuer den hervorgehobenen Reiter. Wenn Codex // weitere Seiten baut, jeweils den passenden Reiter aktiv setzen. renderShell(w, "active", `