public function showAction(Request $request, $name)
{
$format = $request->getRequestFormat();
/* @var $developer Developer */
if (!($developer = $this->getRepository('Developer')->findOneByNameWithRepos($name))) {
if ('json' === $format) {
return new JsonResponse(array('status' => 'error', 'message' => 'Developer not found.'), 404);
}
throw new NotFoundHttpException(sprintf('The developer "%s" does not exist', $name));
}
if ('json' === $format) {
$result = array('name' => $developer->getName(), 'email' => $developer->getEmail(), 'avatarUrl' => $developer->getAvatarUrl(), 'fullName' => $developer->getFullName(), 'company' => $developer->getCompany(), 'location' => $developer->getLocation(), 'blog' => $developer->getUrl(), 'bundles' => array(), 'lastCommitAt' => $developer->getLastCommitAt() ? $developer->getLastCommitAt()->getTimestamp() : null, 'score' => $developer->getScore());
/* @var $bundle Bundle */
foreach ($developer->getBundles() as $bundle) {
$result['bundles'][] = array('name' => $bundle->getFullName(), 'state' => $bundle->getState(), 'score' => $bundle->getScore(), 'url' => $this->generateUrl('bundle_show', array('ownerName' => $bundle->getOwnerName(), 'name' => $bundle->getName()), true));
}
return new JsonResponse($result);
}
$this->highlightMenu('developers');
return $this->render('KnpBundlesBundle:Developer:show.html.twig', array('developer' => $developer));
}