controller & update view