router passes down parent and repository: dependency injection