func (urs *UserRegistrationService) FindByFacebookID(facebookID string) (*model.User, int) { ctx := urs.ctx now := ctx.MustGet("now").(time.Time) dbm := ctx.MustGet("dbmap").(*gorp.DbMap) uRepo := repository.NewUserRepo(dbm, now) u, _ := uRepo.FindByFacebookID(facebookID) return u, Complete }
func (s *UserLoginService) setUserInContext(accessToken string) int { now := s.ctx.MustGet("now").(time.Time) dbm := s.ctx.MustGet("dbmap").(*gorp.DbMap) ur := repository.NewUserRepo(dbm, now) u, err := ur.FindByAccessToken(accessToken) if err != nil { return notFoundUserByAccessToken } s.ctx.Set("user", u) return findUserByAccessToken }
func (urs *UserRegistrationService) InitializeUserByFbIDAndEmail(facebookID string, email string) (*model.User, int) { ctx := urs.ctx now := ctx.MustGet("now").(time.Time) dbm := ctx.MustGet("dbmap").(*gorp.DbMap) tx, err := dbm.Begin() if err != nil { fmt.Println(err) return &model.User{}, CantBeginTransactionOnInitialize } uRepo := repository.NewUserRepo(dbm, now) u, err := uRepo.CreateByFacebookIDAndEmail(facebookID, email) if err != nil { log.Fatalln(err) tx.Rollback() return &model.User{}, FailToCreateUserByFacebookIDAndEmail } tx.Commit() return u, Complete }