Use KnpPaginator to handle pagination
Use a customEvent to increase view count
Rename and improve repository methods