Current File : /home/honehdyv/yours-toclaim.com/wp-content/plugins/wp-automatic/inc/class.apify.php
<?php
class ValvePress_APIFY {
public $token;
public $link;
public $ch;
private $json_raw;
function __construct($token, $link,$ch){
$this->json_raw = file_get_contents( dirname(__FILE__) . '/apify-template.json' );
$this->token = $token;
$this->link = $link;
$this->ch = $ch;
}
function apify(){
//empty reply
if(trim($this->token) == '' ){
throw new Exception( '<span style="color:red">ERROR: You have enabled the option to use APIFY.COM, please visit the plugin settings page and add the required APIFY API token</span>' );
}
$json_to_post =str_replace('https://www.example.com', $this->link, $this->json_raw);
$curlurl="https://api.apify.com/v2/acts/apify~web-scraper/run-sync-get-dataset-items?token=" . $this->token;
curl_setopt($this->ch, CURLOPT_URL, $curlurl);
curl_setopt($this->ch, CURLOPT_POST, true);
curl_setopt($this->ch, CURLOPT_POSTFIELDS, $json_to_post );
curl_setopt($this->ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json") );
$x='error';
$exec=curl_exec($this->ch);
$x=curl_error($this->ch);
//empty reply
if(trim($exec) == '' ){
throw new Exception( 'Empty reply from APIFY ' . $x );
}
$json = json_decode($exec);
//error
if( isset($json->error) ){
throw new Exception( 'Error from APIFY ' . $json->error->message );
}
//no content pageContent
if( ! isset($json[0]->pageContent) ){
throw new Exception( 'No content returned from APIFY ' );
}
return $json[0]->pageContent;
}
}