/**
  * Execute the job.
  *
  * @return void
  */
 public function handle(GitHubManager $github)
 {
     $github->authenticate($this->user->token, 'http_token');
     $issues = [];
     foreach ($this->milestones as $milestone) {
         $i = explode('/', $milestone);
         $milestone = $github->api('issue')->all($i[0], $i[1], ['milestone' => $i[2], 'state' => 'all']);
         foreach ($milestone as $issue) {
             $issues[] = $i[0] . '/' . $i[1] . '/' . $issue['number'];
         }
     }
     $this->dispatch(new AddIssuesHandler($issues, $this->user));
 }
 /**
  * Execute the job.
  *
  * @return void
  */
 public function handle(GitHubManager $github)
 {
     $github->authenticate($this->user->token, 'http_token');
     $issues = new Collection();
     foreach ($this->issues as $issue) {
         $i = explode('/', $issue);
         $issues->push((object) $github->issues()->show($i[0], $i[1], $i[2]));
     }
     if ($report = Report::findByUser($this->user)) {
         $report->issues = array_merge($report->issues, $issues);
     } else {
         $report = new Report(['user_id' => $this->user->id, 'issues' => $issues->sortByDesc('number')]);
     }
     return $report->save();
 }