|
|
@ -2,25 +2,30 @@ package user |
|
|
|
|
|
|
|
import ( |
|
|
|
"log" |
|
|
|
|
|
|
|
"gorm.io/gorm/clause" |
|
|
|
) |
|
|
|
|
|
|
|
func (env *Env) setProfile(currUser *User, ktmTrainUsername string, ktmTrainPassword string, ktmTrainCreditCardType string, ktmTrainCreditCard string, ktmTrainCreditCardExpiry string, ktmTrainCreditCardCVV string) (*User, error) { |
|
|
|
profile := &Profile{ |
|
|
|
UserID: currUser.ID, |
|
|
|
KtmTrainUsername: ktmTrainUsername, |
|
|
|
KtmTrainPassword: ktmTrainPassword, |
|
|
|
KtmTrainCreditCardType: ktmTrainCreditCardType, |
|
|
|
KtmTrainCreditCard: ktmTrainCreditCard, |
|
|
|
KtmTrainCreditCardExpiry: ktmTrainCreditCardExpiry, |
|
|
|
KtmTrainCreditCardCVV: ktmTrainCreditCardCVV, |
|
|
|
profile := &Profile{} |
|
|
|
|
|
|
|
err := env.DB.Where(&Profile{UserID: currUser.ID}).FirstOrInit(profile).Error |
|
|
|
if err != nil { |
|
|
|
log.Println("Error initialising profile", err) |
|
|
|
log.Println(err) |
|
|
|
return nil, err |
|
|
|
} |
|
|
|
|
|
|
|
if err := env.DB.Clauses(clause.OnConflict{ |
|
|
|
UpdateAll: true, |
|
|
|
}).Create(profile).Error; err != nil { |
|
|
|
profile.UserID = currUser.ID |
|
|
|
profile.KtmTrainUsername = ktmTrainUsername |
|
|
|
profile.KtmTrainPassword = ktmTrainPassword |
|
|
|
profile.KtmTrainCreditCardType = ktmTrainCreditCardType |
|
|
|
profile.KtmTrainCreditCard = ktmTrainCreditCard |
|
|
|
profile.KtmTrainCreditCardExpiry = ktmTrainCreditCardExpiry |
|
|
|
profile.KtmTrainCreditCardCVV = ktmTrainCreditCardCVV |
|
|
|
|
|
|
|
err = env.DB.Save(profile).Error |
|
|
|
if err != nil { |
|
|
|
log.Println("Error creating profile", err) |
|
|
|
log.Println(err) |
|
|
|
return nil, err |
|
|
|
} |
|
|
|
|
|
|
|