diff --git a/config.go b/config/config.go similarity index 99% rename from config.go rename to config/config.go index ca4e95a..b4a879a 100644 --- a/config.go +++ b/config/config.go @@ -1,4 +1,4 @@ -package main +package config import ( "bytes" diff --git a/superhighway84.go b/superhighway84.go index 4eaccac..93f01e3 100644 --- a/superhighway84.go +++ b/superhighway84.go @@ -8,6 +8,7 @@ import ( "log" + "github.com/mrusme/superhighway84/config" "github.com/mrusme/superhighway84/database" "github.com/mrusme/superhighway84/models" "github.com/mrusme/superhighway84/tui" @@ -29,7 +30,7 @@ func main() { ctx, cancel := context.WithCancel(context.Background()) defer cancel() - cfg, err := LoadConfig() + cfg, err := config.LoadConfig() if err != nil { log.Panicln(err) } @@ -44,7 +45,7 @@ func main() { var articles []models.Article - TUI := tui.Init(&EMBEDFS, logger) + TUI := tui.Init(&EMBEDFS, cfg, logger) TUI.ArticlesDatasource = &articles db, err := database.NewDatabase(ctx, cfg.ConnectionString, cfg.CachePath, logger) diff --git a/tui/mainscreen.go b/tui/mainscreen.go index 7e758b2..1fa20d9 100644 --- a/tui/mainscreen.go +++ b/tui/mainscreen.go @@ -207,8 +207,8 @@ func(mainscreen *Mainscreen) submitNewArticle(group string) { newArticle.Subject = "" newArticle.Newsgroup = group - // TODO: newArticle.From = - // TODO: newArticle.Organisation = + newArticle.From = mainscreen.T.Config.Profile.From + newArticle.Organization = mainscreen.T.Config.Profile.Organization newArticle.Body = "" updatedNewArticle, err := mainscreen.T.OpenArticle(newArticle) @@ -245,8 +245,8 @@ func(mainscreen *Mainscreen) replyToArticle(article *models.Article) { newArticle.Subject = fmt.Sprintf("Re: %s", article.Subject) newArticle.InReplyToID = article.ID newArticle.Newsgroup = article.Newsgroup - // TODO: newArticle.From = - // TODO: newArticle.Organisation = + newArticle.From = mainscreen.T.Config.Profile.From + newArticle.Organization = mainscreen.T.Config.Profile.Organization newArticle.Body = fmt.Sprintf("\nOn %s %s wrote:\n> %s", MillisecondsToDate(article.Date), article.From, strings.Replace(article.Body, "\n", "\n> ", -1)) updatedNewArticle, err := mainscreen.T.OpenArticle(newArticle) diff --git a/tui/tui.go b/tui/tui.go index 1660b86..c95f427 100644 --- a/tui/tui.go +++ b/tui/tui.go @@ -7,6 +7,7 @@ import ( "unicode" "github.com/gdamore/tcell/v2" + "github.com/mrusme/superhighway84/config" "github.com/mrusme/superhighway84/models" "github.com/rivo/tview" "go.uber.org/zap" @@ -26,6 +27,7 @@ type TUI struct { CallbackRefreshArticles func() (error) CallbackSubmitArticle func(article *models.Article) (error) + Config *config.Config Logger *zap.Logger } @@ -43,7 +45,7 @@ type ModalButton struct { Callback func() } -func Init(embedfs *embed.FS, logger *zap.Logger) (*TUI) { +func Init(embedfs *embed.FS, cfg *config.Config, logger *zap.Logger) (*TUI) { t := new(TUI) tview.Styles = tview.Theme{ @@ -61,6 +63,7 @@ func Init(embedfs *embed.FS, logger *zap.Logger) (*TUI) { } t.App = tview.NewApplication() + t.Config = cfg t.Logger = logger logoBytes, err := embedfs.ReadFile("superhighway84.jpeg")