fix and unfix cart depending on cart state