/**
  * Checks the result of the last request and returns {$value}
  * Can also perform logout on request
  *
  * @param mixed $value    Return value
  * @param bool  $isLogout Should logout be performed or not
  *
  * @return mixed
  *
  * @protected
  */
 protected function _checkResult($value, $isLogout = false)
 {
     $result = $this->odr->getResult();
     if ($isLogout) {
         $this->_checkLogout($isLogout);
     }
     if (!empty($result['response']['status']) && $result['response']['status'] === 'FAILED') {
         return $this->parseError(empty($result['response']['data']['message']) ? 'Incorrectly formatted response' : $result['response']['data']['message']);
     }
     if ($result['status'] === Api_Odr::STATUS_SUCCESS) {
         return $value;
     }
     if (empty($result['response']['data']) || !is_array($result['response']['data'])) {
         return $this->parseError($result['response']['message']);
     }
     $error = array();
     foreach ($result['response']['data'] as $fField => $fErr) {
         $error[] = '[' . $fField . '] ' . $fErr;
     }
     $result['response']['message'] .= ': ' . implode(', ', $error);
     return $this->parseError($result['response']['message']);
 }
Ejemplo n.º 2
0
<?php

// Require ODR API demo class
require_once '../Api/Odr.php';
// Configuration array, with user API Keys
$config = array('api_key' => '#API_KEY#', 'api_secret' => '#API_SECRET#');
// We assume that user already sent all the data to us through request
$data = $_REQUEST;
// Create new instance of API demo class
$demo = new Api_Odr($config);
// Login into API
$demo->login();
$loginResult = $demo->getResult();
if ($loginResult['status'] === 'error') {
    echo 'Can\'t login, reason - ' . $loginResult['response'];
    exit(1);
}
// Create new contact, by passing request data
$demo->createContact($data);
// Get result of request
$result = $demo->getResult();
if ($result['status'] !== 'success') {
    echo 'Following error occured: ' . $result['response'];
    exit(1);
}
$result = $result['response'];
// Contact successfully created, yay!
echo 'Contact "' . $result['contact_first_name'] . ' ' . $result['contact_last_name'] . '" created';
Ejemplo n.º 3
0
<?php

// Require ODR API demo class
require_once '../Api/Odr.php';
// Configuration array, with user API Keys
$config = array('api_key' => '#API_KEY#', 'api_secret' => '#API_SECRET#');
// Create new instance of API demo class
$demo = new Api_Odr($config);
// Login into API
$demo->login();
$loginResult = $demo->getResult();
if ($loginResult['status'] === Api_Odr::STATUS_ERROR) {
    echo 'Can\'t login, reason - ' . $loginResult['response'];
    exit(1);
}
if (empty($_REQUEST['__sent'])) {
    $demo->info('/domain/test.eu/', Api_Odr::METHOD_POST);
    $info = $demo->getResult();
    $form = '<form action="" method="post">';
    foreach ($info['response']['fields'] as $name => $field) {
        $form .= '<div style="margin-bottom: 10px;">' . fieldToHtml($name, $field) . '</div>';
    }
    $form .= '<button type="submit" name="__sent">Submit generated form</button>';
    $form .= '</form>';
    echo $form;
} else {
    // Submit the data, it's located in the $_POST variable
}
/**
 * Converts info response to HTML input
 * Notice! This is a bare-bone function, it doesn't wrap generated input or display help or anything