You are here

public function LikeBtn::apiRequest in Like Button 7

Same name and namespace in other branches
  1. 8.2 likebtn.php \LikeBtn::apiRequest()

Request to API.

2 calls to LikeBtn::apiRequest()
LikeBtn::syncVotes in ./likebtn.php
Comment sync function.
LikeBtn::testSync in ./likebtn.php
Test synchronization.

File

./likebtn.php, line 447
LikeBtn like button.

Class

LikeBtn

Code

public function apiRequest($action, $request, $email = '', $api_key = '', $site_id = '') {
  if (!self::$apiurl) {
    if (!$email) {
      $email = trim(variable_get('likebtn_account_data_email'));
    }
    if (!$api_key) {
      $api_key = trim(variable_get('likebtn_account_data_api_key'));
    }
    if (!$site_id) {
      $site_id = trim(variable_get('likebtn_account_data_site_id'));
    }
    if ($site_id) {
      $domain_site_id = "site_id={$site_id}&";
    }
    else {
      $subdirectory = trim(variable_get('likebtn_settings_subdirectory'));
      $local_domain = trim(variable_get('likebtn_settings_local_domain'));
      if ($local_domain) {
        $domain_site_id = "domain={$local_domain}&";
      }
      elseif ($subdirectory) {
        $parse_url = parse_url(url(NULL, array(
          'absolute' => TRUE,
        )));
        $domain = $parse_url['host'] . $subdirectory;
        $domain_site_id = "domain={$domain}&";
      }
    }
    self::$apiurl = LIKEBTN_API_URL . "?email={$email}&api_key={$api_key}&nocache=.php&source=drupal&" . $domain_site_id;
  }
  $url = self::$apiurl . "action={$action}&" . $request;
  $response_string = $this
    ->curl($url);
  $response = $this
    ->jsonDecode($response_string);
  return $response;
}