validate preferences on change