adds Product::is_sale()
merging work old staff