add update item logic