added validations and error messages, number_to_currency for price, and truncate product description on index page to 50 characters