refactoring callback view