// get .env file and load the token from it Dotenv::load(__DIR__ . '/../'); $token = getenv('GITHUB_TOKEN'); // authenticate with github $client->authenticate($token, Github\Client::AUTH_HTTP_TOKEN); // get the user and the user repositories $user = $client->api('organization')->show('purplapp'); $repositories = $client->api('repo')->show('purplapp', 'purplapp'); $repo_contributors = $client->api('repo')->contributors('purplapp', 'purplapp', false); // 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);
/** * Brings events from github for a specified organization/user at specified page. * Accorging to github api, each page request returns 30 entries. */ protected function listGithubEvents($org, $page = 1) { try { $response = $this->client->getHttpClient()->get('orgs/' . $org . '/events?page=' . $page); $events = Github\HttpClient\Message\ResponseMediator::getContent($response); return $events; } catch (Exception $e) { return array(); } }