func login(c *oauth2.Config, s sessions.Session, w http.ResponseWriter, r *http.Request) { next := extractPath(r.URL.Query().Get(keyNextPage)) if s.Get(keyToken) == nil { // User is not logged in. if next == "" { next = "/" } http.Redirect(w, r, c.AuthCodeURL(next), codeRedirect) return } // No need to login, redirect to the next page. http.Redirect(w, r, next, codeRedirect) }
func login(opts *Options, config *oauth2.Config, s sessions.Session, w http.ResponseWriter, r *http.Request) { next := extractPath(r.URL.Query().Get(keyNextPage)) if s.Get(keyToken) == nil { // User is not logged in. if next == "" { next = "/" } http.Redirect(w, r, config.AuthCodeURL(next, oauth2.AccessTypeOffline), http.StatusFound) return } // No need to login, redirect to the next page. http.Redirect(w, r, next, http.StatusFound) }