refactor into separate service/controller
add details page
keep the page state in a service