/**
  * Listing the issues for current category.
  *
  * @param array  $counts
  * @param string $platform
  * @param string $category
  *
  * @return array
  */
 private function list_category_issues(array $counts, $platform, $category)
 {
     // When the issues have to be fetched.
     if (array_key_exists($category, $counts) && $counts[$category]['count'] > 0 && $counts[$category]['last_fetch'] <= strtotime('-12 hours')) {
         if ($issues = $this->service->fetch_category_issues(YMBESEO_GSC_Mapper::platform_to_api($platform), YMBESEO_GSC_Mapper::category_to_api($category))) {
             $this->issues = $issues;
         }
         // Be sure the total count is correct.
         $counts[$category]['count'] = count($this->issues);
         // Set last fetch.
         $counts[$category]['last_fetch'] = time();
     }
     return $counts;
 }
 /**
  * Sending request to mark issue as fixed
  *
  * @param string $url
  * @param string $platform
  * @param string $category
  *
  * @return bool
  */
 public function mark_as_fixed($url, $platform, $category)
 {
     $response = $this->client->do_request('sites/' . urlencode($this->profile) . '/urlCrawlErrorsSamples/' . urlencode(ltrim($url, '/')) . '?category=' . YMBESEO_GSC_Mapper::category_to_api($category) . '&platform=' . YMBESEO_GSC_Mapper::platform_to_api($platform) . '', false, 'DELETE');
     return $response->getResponseHttpCode() === 204;
 }