예제 #1
0
    // get the languages used in the repository
    $repo_language = $client->api('repo')->languages('purplapp', 'purplapp');
    // $repo_language = new LanguageCollection($repo_language);
    // get the pull requests for the repository
    $repo_pull = $client->api('pull_request')->all('purplapp', 'purplapp', array('state' => 'all'));
    $repo_pull_comments_response = $client->getHttpClient()->get('/repos/purplapp/purplapp/comments');
    $repo_pull_comments = Github\HttpClient\Message\ResponseMediator::getContent($repo_pull_comments_response);
    // get the releases from the repository
    $repo_releases = $client->api('repo')->releases()->all('purplapp', 'purplapp');
    $repo_statistics = $client->api('repo')->statistics('purplapp', 'purplapp');
    // get total number of commits
    $commitsApi = $client->repo()->commits();
    $parameters = array('purplapp', 'purplapp', array('sha' => 'master'));
    $repo_commits = $paginator->fetchAll($commitsApi, 'all', $parameters);
    // get total number of issues
    $issuesApi = $client->issues();
    $parameters = array('purplapp', 'purplapp', array('state' => 'all'));
    $repo_issues = $paginator->fetchAll($issuesApi, 'all', $parameters);
    // get total number of comments on issues
    $issuesCommentsApi = $client->issues()->comments();
    $parameters = array('purplapp', 'purplapp', '');
    $repo_issues_comments = $paginator->fetchAll($issuesCommentsApi, 'all', $parameters);
    // render the twig file
    return $app["twig"]->render("index.html.twig", compact("user", "repositories", "repo_contributors", "repo_language", "repo_issues", "repo_pull", "repo_commits", "repo_pull_comments", "repo_issues_comments", "repo_releases", "repo_issues_events", "repo_statistics"));
});
// declare the routes
$routes = array('home' => array('url' => '/', 'template' => 'index.html.twig'));
// routes related stuff
foreach ($routes as $routeName => $data) {
    $app->get($data['url'], function () use($app, $data) {
        return $app['twig']->render($data['template']);