controller & view updates