Skip to content

Instantly share code, notes, and snippets.

@natdm
Created July 1, 2016 02:46
Show Gist options
  • Save natdm/856d303d721ac24284c308231cae631d to your computer and use it in GitHub Desktop.
Save natdm/856d303d721ac24284c308231cae631d to your computer and use it in GitHub Desktop.
Old Way
package routes
import (
"github.com/auth0/go-jwt-middleware"
"github.com/codegangsta/negroni"
jwt "github.com/dgrijalva/jwt-go"
"github.com/gorilla/mux"
. "mobilebid/controllers"
"net/http"
"encoding/base64"
log "github.com/Sirupsen/logrus"
"github.com/joho/godotenv"
"os"
)
func SetAuthenticatedRoutes(r *mux.Router, privateKey []byte) *mux.Router {
err := godotenv.Load()
if err != nil {
log.Fatal("Error loading .env file")
}
jwtMiddleware := jwtmiddleware.New(jwtmiddleware.Options{
ValidationKeyGetter: func(token *jwt.Token) (interface{}, error) {
decoded, err := base64.URLEncoding.DecodeString(os.Getenv("AUTH0_CLIENT_SECRET"))
if err != nil {
return nil, err
}
return decoded, nil
},
})
/*
jwtMiddleware := jwtmiddleware.New(jwtmiddleware.Options{
ValidationKeyGetter: func(token *jwt.Token) (interface{}, error) {
decoded, err := base64.URLEncoding.DecodeString(os.Getenv("AUTH0_CLIENT_SECRET"))
if err != nil {
return nil, err
}
return decoded, nil
},
})
*/
r.Handle("/portal/e/{event}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(FetchEvent)),
)).Methods("GET") //Get event specific information
//Get all events for that user ID
r.Handle("/portal/events/{user_id}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(GetAllEventsForUser)),
)).Methods("GET")
r.Handle("/portal/event_types", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(GetEventTypes)),
)).Methods("GET") //Get all event types
r.Handle("/portal/bid_items/{user_id}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(GetBidItemsForUserID)),
)).Methods("GET") //Get all bid items for a user ID
r.Handle("/portal/create_event", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(CreateEventAndImages)),
)).Methods("POST")
r.Handle("/portal/item", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(InsertBidItem)),
)).Methods("POST") //Inserts a single item in to the bid_items database
//Inserts a single item in to the bid_items database
r.Handle("/portal/insert_retrieve", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(InsertAndRetrieveBidItems)),
)).Methods("POST")
//Retrieves items for an event
r.Handle("/event/{event_key}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(GetBidItemsForEvent)),
)).Methods("GET")
//Retrieves items for an event
r.Handle("/items/{event_id}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(GetBidItemsForEvent)),
)).Methods("GET")
//Retrieves items for an event
r.Handle("/portal/archive_item/{event_id}/{user_id}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(ArchiveItem)),
)).Methods("GET")
r.Handle("/portal/archive_event/{event_id}/{user_id}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(ArchiveEvent)),
)).Methods("GET")
r.Handle("/findevent", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(FindEventKey)),
)).Methods("POST")
r.Handle("/watch", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(ChangeWatch)),
)).Methods("POST")
r.Handle("/notifications", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(GetNotificationsHandler)),
)).Methods("POST")
r.Handle("/notification", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(UpdateNotification)),
)).Methods("POST")
r.Handle("/auth_user", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(BidLogin)),
)).Methods("POST")
r.Handle("/opt/phone/{user_id}/{opt}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(UpdateOptPhone)),
)).Methods("GET")
r.Handle("/opt/email/{user_id}/{opt}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(UpdateOptEmail)),
)).Methods("GET")
r.Handle("/update/phone/{user_id}/{phone}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(UpdatePhone)),
)).Methods("GET")
r.Handle("/update/email/{user_id}/{email}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(UpdateEmail)),
)).Methods("GET")
r.Handle("/update/opt_in_notified/{user_id}/{opt}", negroni.New(
negroni.HandlerFunc(jwtMiddleware.HandlerWithNext),
negroni.Wrap(http.HandlerFunc(UpdateOptInNotified)),
)).Methods("GET")
return r
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment