Update logic extracted to application controller