update the settings functionality