Organize field logic into methods

set time more or less correctly