in-class update, cart and CRUD functions