Ejemplo n.º 1
0
 /**
  * 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;
 }
Ejemplo n.º 2
0
 /**
  * Setting dependencies which will be used one this page
  */
 private function set_dependencies()
 {
     // Setting the service object.
     $this->service = new YMBESEO_GSC_Service(YMBESEO_GSC_Settings::get_profile());
     // Setting the platform.
     $this->platform = YMBESEO_GSC_Mapper::get_current_platform('tab');
     // Loading the issue counter.
     $issue_count = new YMBESEO_GSC_Count($this->service);
     $issue_count->fetch_counts();
     // Loading the category filters.
     $this->category_filter = new YMBESEO_GSC_Category_Filters($issue_count->get_platform_counts($this->platform));
     // Setting the current category.
     $this->category = $this->category_filter->get_category();
     // Listing the issues.
     $issue_count->list_issues($this->platform, $this->category);
     // Fetching the issues.
     $this->issue_fetch = new YMBESEO_GSC_Issues($this->platform, $this->category, $issue_count->get_issues());
 }
Ejemplo n.º 3
0
 /**
  * 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;
 }