add validation checks to product model