diff --git a/pkg/api/images.go b/pkg/api/images.go index 48b5d18d5..bec90eb82 100644 --- a/pkg/api/images.go +++ b/pkg/api/images.go @@ -2,18 +2,31 @@ package api import ( "math/rand" + "strings" "github.com/gobuffalo/packr/v2" ) var performerBox *packr.Box +var performerBoxMale *packr.Box func initialiseImages() { performerBox = packr.New("Performer Box", "../../static/performer") + performerBoxMale = packr.New("Male Performer Box", "../../static/performer_male") } -func getRandomPerformerImage() ([]byte, error) { - imageFiles := performerBox.List() +func getRandomPerformerImage(gender string) ([]byte, error) { + var box *packr.Box + switch strings.ToUpper(gender) { + case "FEMALE": + box = performerBox + case "MALE": + box = performerBoxMale + default: + box = performerBox + + } + imageFiles := box.List() index := rand.Intn(len(imageFiles)) - return performerBox.Find(imageFiles[index]) + return box.Find(imageFiles[index]) } diff --git a/pkg/api/resolver_mutation_performer.go b/pkg/api/resolver_mutation_performer.go index 50e787e20..697192392 100644 --- a/pkg/api/resolver_mutation_performer.go +++ b/pkg/api/resolver_mutation_performer.go @@ -19,7 +19,11 @@ func (r *mutationResolver) PerformerCreate(ctx context.Context, input models.Per var err error if input.Image == nil { - imageData, err = getRandomPerformerImage() + gender := "" + if input.Gender != nil { + gender = input.Gender.String() + } + imageData, err = getRandomPerformerImage(gender) } else { _, imageData, err = utils.ProcessBase64Image(*input.Image) } diff --git a/static/performer_male/noname_male_01.jpg b/static/performer_male/noname_male_01.jpg new file mode 100644 index 000000000..f2c6fe51d Binary files /dev/null and b/static/performer_male/noname_male_01.jpg differ diff --git a/static/performer_male/noname_male_02.jpg b/static/performer_male/noname_male_02.jpg new file mode 100644 index 000000000..93ad7ec9d Binary files /dev/null and b/static/performer_male/noname_male_02.jpg differ