From b1e8f534eff7569dc2e8dab4dee851d1b709f71b Mon Sep 17 00:00:00 2001 From: Frédéric Guillot Date: Sat, 22 Sep 2018 15:04:55 -0700 Subject: Simplify locale package usage (refactoring) --- ui/controller.go | 5 +---- ui/integration_pocket.go | 9 ++++++--- ui/integration_update.go | 6 ++++-- ui/oauth2_callback.go | 6 ++++-- ui/oauth2_unlink.go | 6 ++++-- ui/settings_update.go | 2 +- 6 files changed, 20 insertions(+), 14 deletions(-) (limited to 'ui') diff --git a/ui/controller.go b/ui/controller.go index 005b863..b08c253 100644 --- a/ui/controller.go +++ b/ui/controller.go @@ -6,7 +6,6 @@ package ui // import "miniflux.app/ui" import ( "miniflux.app/config" - "miniflux.app/locale" "miniflux.app/reader/feed" "miniflux.app/scheduler" "miniflux.app/storage" @@ -23,18 +22,16 @@ type Controller struct { feedHandler *feed.Handler tpl *template.Engine router *mux.Router - translator *locale.Translator } // NewController returns a new Controller. -func NewController(cfg *config.Config, store *storage.Storage, pool *scheduler.WorkerPool, feedHandler *feed.Handler, tpl *template.Engine, translator *locale.Translator, router *mux.Router) *Controller { +func NewController(cfg *config.Config, store *storage.Storage, pool *scheduler.WorkerPool, feedHandler *feed.Handler, tpl *template.Engine, router *mux.Router) *Controller { return &Controller{ cfg: cfg, store: store, pool: pool, feedHandler: feedHandler, tpl: tpl, - translator: translator, router: router, } } diff --git a/ui/integration_pocket.go b/ui/integration_pocket.go index 432069a..407731e 100644 --- a/ui/integration_pocket.go +++ b/ui/integration_pocket.go @@ -12,12 +12,14 @@ import ( "miniflux.app/http/response/html" "miniflux.app/http/route" "miniflux.app/integration/pocket" + "miniflux.app/locale" "miniflux.app/logger" "miniflux.app/ui/session" ) // PocketAuthorize redirects the end-user to Pocket website to authorize the application. func (c *Controller) PocketAuthorize(w http.ResponseWriter, r *http.Request) { + printer := locale.NewPrinter(request.UserLanguage(r)) user, err := c.store.UserByID(request.UserID(r)) if err != nil { html.ServerError(w, err) @@ -36,7 +38,7 @@ func (c *Controller) PocketAuthorize(w http.ResponseWriter, r *http.Request) { requestToken, err := connector.RequestToken(redirectURL) if err != nil { logger.Error("[Pocket:Authorize] %v", err) - sess.NewFlashErrorMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("error.pocket_request_token")) + sess.NewFlashErrorMessage(printer.Printf("error.pocket_request_token")) response.Redirect(w, r, route.Path(c.router, "integrations")) return } @@ -47,6 +49,7 @@ func (c *Controller) PocketAuthorize(w http.ResponseWriter, r *http.Request) { // PocketCallback saves the personal access token after the authorization step. func (c *Controller) PocketCallback(w http.ResponseWriter, r *http.Request) { + printer := locale.NewPrinter(request.UserLanguage(r)) sess := session.New(c.store, request.SessionID(r)) user, err := c.store.UserByID(request.UserID(r)) @@ -65,7 +68,7 @@ func (c *Controller) PocketCallback(w http.ResponseWriter, r *http.Request) { accessToken, err := connector.AccessToken(request.PocketRequestToken(r)) if err != nil { logger.Error("[Pocket:Callback] %v", err) - sess.NewFlashErrorMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("error.pocket_access_token")) + sess.NewFlashErrorMessage(printer.Printf("error.pocket_access_token")) response.Redirect(w, r, route.Path(c.router, "integrations")) return } @@ -79,6 +82,6 @@ func (c *Controller) PocketCallback(w http.ResponseWriter, r *http.Request) { return } - sess.NewFlashMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("alert.pocket_linked")) + sess.NewFlashMessage(printer.Printf("alert.pocket_linked")) response.Redirect(w, r, route.Path(c.router, "integrations")) } diff --git a/ui/integration_update.go b/ui/integration_update.go index 2d10413..f470e4b 100644 --- a/ui/integration_update.go +++ b/ui/integration_update.go @@ -13,12 +13,14 @@ import ( "miniflux.app/http/request" "miniflux.app/http/response/html" "miniflux.app/http/route" + "miniflux.app/locale" "miniflux.app/ui/form" "miniflux.app/ui/session" ) // UpdateIntegration updates integration settings. func (c *Controller) UpdateIntegration(w http.ResponseWriter, r *http.Request) { + printer := locale.NewPrinter(request.UserLanguage(r)) sess := session.New(c.store, request.SessionID(r)) user, err := c.store.UserByID(request.UserID(r)) if err != nil { @@ -36,7 +38,7 @@ func (c *Controller) UpdateIntegration(w http.ResponseWriter, r *http.Request) { integrationForm.Merge(integration) if integration.FeverUsername != "" && c.store.HasDuplicateFeverUsername(user.ID, integration.FeverUsername) { - sess.NewFlashErrorMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("error.duplicate_fever_username")) + sess.NewFlashErrorMessage(printer.Printf("error.duplicate_fever_username")) response.Redirect(w, r, route.Path(c.router, "integrations")) return } @@ -53,6 +55,6 @@ func (c *Controller) UpdateIntegration(w http.ResponseWriter, r *http.Request) { return } - sess.NewFlashMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("alert.prefs_saved")) + sess.NewFlashMessage(printer.Printf("alert.prefs_saved")) response.Redirect(w, r, route.Path(c.router, "integrations")) } diff --git a/ui/oauth2_callback.go b/ui/oauth2_callback.go index 546158f..9f51d0a 100644 --- a/ui/oauth2_callback.go +++ b/ui/oauth2_callback.go @@ -12,6 +12,7 @@ import ( "miniflux.app/http/response" "miniflux.app/http/response/html" "miniflux.app/http/route" + "miniflux.app/locale" "miniflux.app/logger" "miniflux.app/model" "miniflux.app/ui/session" @@ -19,6 +20,7 @@ import ( // OAuth2Callback receives the authorization code and create a new session. func (c *Controller) OAuth2Callback(w http.ResponseWriter, r *http.Request) { + printer := locale.NewPrinter(request.UserLanguage(r)) sess := session.New(c.store, request.SessionID(r)) provider := request.Param(r, "provider", "") @@ -65,7 +67,7 @@ func (c *Controller) OAuth2Callback(w http.ResponseWriter, r *http.Request) { if user != nil { logger.Error("[OAuth2] User #%d cannot be associated because %s is already associated", request.UserID(r), user.Username) - sess.NewFlashErrorMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("error.duplicate_linked_account")) + sess.NewFlashErrorMessage(printer.Printf("error.duplicate_linked_account")) response.Redirect(w, r, route.Path(c.router, "settings")) return } @@ -75,7 +77,7 @@ func (c *Controller) OAuth2Callback(w http.ResponseWriter, r *http.Request) { return } - sess.NewFlashMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("alert.account_linked")) + sess.NewFlashMessage(printer.Printf("alert.account_linked")) response.Redirect(w, r, route.Path(c.router, "settings")) return } diff --git a/ui/oauth2_unlink.go b/ui/oauth2_unlink.go index 191d78d..4435733 100644 --- a/ui/oauth2_unlink.go +++ b/ui/oauth2_unlink.go @@ -11,12 +11,14 @@ import ( "miniflux.app/http/response" "miniflux.app/http/response/html" "miniflux.app/http/route" + "miniflux.app/locale" "miniflux.app/logger" "miniflux.app/ui/session" ) // OAuth2Unlink unlink an account from the external provider. func (c *Controller) OAuth2Unlink(w http.ResponseWriter, r *http.Request) { + printer := locale.NewPrinter(request.UserLanguage(r)) provider := request.Param(r, "provider", "") if provider == "" { logger.Info("[OAuth2] Invalid or missing provider") @@ -40,7 +42,7 @@ func (c *Controller) OAuth2Unlink(w http.ResponseWriter, r *http.Request) { } if !hasPassword { - sess.NewFlashErrorMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("error.unlink_account_without_password")) + sess.NewFlashErrorMessage(printer.Printf("error.unlink_account_without_password")) response.Redirect(w, r, route.Path(c.router, "settings")) return } @@ -50,6 +52,6 @@ func (c *Controller) OAuth2Unlink(w http.ResponseWriter, r *http.Request) { return } - sess.NewFlashMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("alert.account_unlinked")) + sess.NewFlashMessage(printer.Printf("alert.account_unlinked")) response.Redirect(w, r, route.Path(c.router, "settings")) } diff --git a/ui/settings_update.go b/ui/settings_update.go index 6daf28c..ed424e3 100644 --- a/ui/settings_update.go +++ b/ui/settings_update.go @@ -69,6 +69,6 @@ func (c *Controller) UpdateSettings(w http.ResponseWriter, r *http.Request) { sess.SetLanguage(user.Language) sess.SetTheme(user.Theme) - sess.NewFlashMessage(c.translator.GetLanguage(request.UserLanguage(r)).Get("alert.prefs_saved")) + sess.NewFlashMessage(locale.NewPrinter(request.UserLanguage(r)).Printf("alert.prefs_saved")) response.Redirect(w, r, route.Path(c.router, "settings")) } -- cgit v1.2.3