continued to add shoppingcart functions