Beispiel #1
0
 protected static function getApi($url, $params = array())
 {
     $token = self::accessToken();
     if ($token) {
         $params['access_token'] = $token;
     }
     $ret = mfwHttp::get(mfwHttp::composeURL($url, $params));
     return json_decode($ret, true);
 }
Beispiel #2
0
 protected function getUserInfo($token)
 {
     if (!isset($token['access_token'])) {
         return null;
     }
     $url = 'https://www.googleapis.com/oauth2/v1/userinfo';
     $header = array("Authorization: {$token['token_type']} {$token['access_token']}");
     $response = mfwHttp::get($url, $header);
     return json_decode($response, true);
 }
Beispiel #3
0
 * pull requestの中身を精査
 */
$alterts = array();
$alerted_pulls = array();
foreach ($pulllists as $repo_id => $pulls) {
    $repo = $repos[$repo_id];
    echo "repository: {$repo->getName()}\n";
    // number昇順
    usort($pulls, function ($a, $b) {
        return $a['number'] - $b['number'];
    });
    foreach ($pulls as $num => $p) {
        echo " {$p['number']} {$p['user']['login']}: {$p['title']}\n";
        $url = "https://api.github.com/repos/{$owner}/{$repo->getName()}/pulls/{$p['number']}/files";
        $params = array('access_token' => $token);
        $files = mfwHttp::get(mfwHttp::composeURL($url, $params));
        $files = json_decode($files, true);
        foreach ($pullfilters as $filter) {
            if ($filter->test($p)) {
                echo "      match pull filter:{$filter->getId()}\n";
                $alerts[$repo->getId()][] = array('filter_id' => $filter->getId(), 'repo_id' => $repo->getId(), 'number' => $p['number']);
                $alerted_pulls[$repo->getId()][$p['number']] = $p;
            }
        }
        foreach ($files as $file) {
            foreach ($filefilters as $filter) {
                if ($filter->test($file)) {
                    echo "      match file filter:{$filter->getId()}\n";
                    $alerts[$repo->getId()][] = array('filter_id' => $filter->getId(), 'repo_id' => $repo->getId(), 'number' => $p['number'], 'filename' => $file['filename']);
                    $alerted_pulls[$repo->getId()][$p['number']] = $p;
                }