add array & hash option for spree preferences

Fixes #5405
Fixes #5002