get($apiurl, ['User-Agent: XRay ('.Config::$base.')']); if($response['code'] != 200) { return [null, $response['body'], $response['code']]; } $data = json_decode($response['body'], true); } else { $data = json_decode($json, true); } if(!$data) { return [null, null, 0]; } // Start building the h-entry $entry = array( 'type' => ($type == 'repo' ? 'repo' : 'entry'), 'url' => $url, 'author' => [ 'type' => 'card', 'name' => null, 'photo' => null, 'url' => null ] ); if($type == 'repo') $authorkey = 'owner'; else $authorkey = 'user'; $entry['author']['name'] = $data[$authorkey]['login']; $entry['author']['photo'] = $data[$authorkey]['avatar_url']; $entry['author']['url'] = $data[$authorkey]['html_url']; if($type == 'pull') { $entry['name'] = '#' . $pull . ' ' . $data['title']; } elseif($type == 'issue') { $entry['name'] = '#' . $issue . ' ' . $data['title']; } elseif($type == 'repo') { $entry['name'] = $data['name']; } if($type == 'repo') { if(!empty($data['description'])) $entry['summary'] = $data['description']; } if($type != 'repo' && !empty($data['body'])) { $parser = new GithubMarkdown(); $entry['content'] = [ 'text' => $data['body'], 'html' => $parser->parse($data['body']) ]; } if(!empty($data['labels'])) { $entry['category'] = array_map(function($l){ return $l['name']; }, $data['labels']); } $entry['published'] = $data['created_at']; $r = [ 'data' => $entry ]; return [$r, $json, $response['code']]; } }