refactored item view