diff options
author | Frédéric Guillot <fred@miniflux.net> | 2018-11-11 11:28:29 -0800 |
---|---|---|
committer | Frédéric Guillot <fred@miniflux.net> | 2018-11-11 11:29:12 -0800 |
commit | 5a69a61d4841a35d7ddcb761a688db8c688314d6 (patch) | |
tree | b807ee1da5b0705e7649f70742d8198f351c1224 /ui/integration_pocket.go | |
parent | 0925899cee9362cf09e982487bd480e2b09041f4 (diff) |
Move UI middlewares and routes to ui package
Diffstat (limited to 'ui/integration_pocket.go')
-rw-r--r-- | ui/integration_pocket.go | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/ui/integration_pocket.go b/ui/integration_pocket.go index 47a975c..8f8c680 100644 --- a/ui/integration_pocket.go +++ b/ui/integration_pocket.go @@ -16,29 +16,28 @@ import ( "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) { +func (h *handler) pocketAuthorize(w http.ResponseWriter, r *http.Request) { printer := locale.NewPrinter(request.UserLanguage(r)) - user, err := c.store.UserByID(request.UserID(r)) + user, err := h.store.UserByID(request.UserID(r)) if err != nil { html.ServerError(w, r, err) return } - integration, err := c.store.Integration(user.ID) + integration, err := h.store.Integration(user.ID) if err != nil { html.ServerError(w, r, err) return } - sess := session.New(c.store, request.SessionID(r)) - connector := pocket.NewConnector(c.cfg.PocketConsumerKey(integration.PocketConsumerKey)) - redirectURL := c.cfg.BaseURL() + route.Path(c.router, "pocketCallback") + sess := session.New(h.store, request.SessionID(r)) + connector := pocket.NewConnector(h.cfg.PocketConsumerKey(integration.PocketConsumerKey)) + redirectURL := h.cfg.BaseURL() + route.Path(h.router, "pocketCallback") requestToken, err := connector.RequestToken(redirectURL) if err != nil { logger.Error("[Pocket:Authorize] %v", err) sess.NewFlashErrorMessage(printer.Printf("error.pocket_request_token")) - html.Redirect(w, r, route.Path(c.router, "integrations")) + html.Redirect(w, r, route.Path(h.router, "integrations")) return } @@ -46,41 +45,40 @@ func (c *Controller) PocketAuthorize(w http.ResponseWriter, r *http.Request) { html.Redirect(w, r, connector.AuthorizationURL(requestToken, redirectURL)) } -// PocketCallback saves the personal access token after the authorization step. -func (c *Controller) PocketCallback(w http.ResponseWriter, r *http.Request) { +func (h *handler) pocketCallback(w http.ResponseWriter, r *http.Request) { printer := locale.NewPrinter(request.UserLanguage(r)) - sess := session.New(c.store, request.SessionID(r)) + sess := session.New(h.store, request.SessionID(r)) - user, err := c.store.UserByID(request.UserID(r)) + user, err := h.store.UserByID(request.UserID(r)) if err != nil { html.ServerError(w, r, err) return } - integration, err := c.store.Integration(user.ID) + integration, err := h.store.Integration(user.ID) if err != nil { html.ServerError(w, r, err) return } - connector := pocket.NewConnector(c.cfg.PocketConsumerKey(integration.PocketConsumerKey)) + connector := pocket.NewConnector(h.cfg.PocketConsumerKey(integration.PocketConsumerKey)) accessToken, err := connector.AccessToken(request.PocketRequestToken(r)) if err != nil { logger.Error("[Pocket:Callback] %v", err) sess.NewFlashErrorMessage(printer.Printf("error.pocket_access_token")) - html.Redirect(w, r, route.Path(c.router, "integrations")) + html.Redirect(w, r, route.Path(h.router, "integrations")) return } sess.SetPocketRequestToken("") integration.PocketAccessToken = accessToken - err = c.store.UpdateIntegration(integration) + err = h.store.UpdateIntegration(integration) if err != nil { html.ServerError(w, r, err) return } sess.NewFlashMessage(printer.Printf("alert.pocket_linked")) - html.Redirect(w, r, route.Path(c.router, "integrations")) + html.Redirect(w, r, route.Path(h.router, "integrations")) } |