예제 #1
0
<?php

use Emc\Country;
/* Example of use for Country class
 * Load all available countries or destinations from a country
 */
require_once '../config/autoload.php';
require_once EMC_PARENT_DIR . 'layout/header.php';
// Prepare and execute the request
$lib = new Country();
$lib->getCountries();
if (!$lib->curl_error && !$lib->resp_error) {
    ?>
<h3>API Country</h3>
<div class="row">
    <form class="form-horizontal well well-sm" role="form">
      <div class="form-group">
        <label class="col-sm-3 control-label">Countries list :</label>
        <div class="col-sm-9">
            <select class="form-control">
                <?php 
    foreach ($lib->countries as $c => $country) {
        ?>
                    <option value="<?php 
        echo $country->code;
        ?>
"><?php 
        echo $country->label;
        ?>
</option>
                <?php 
예제 #2
0
function test_Country()
{
    $result = default_value();
    $start = microtime_float();
    /* Initialisation */
    $env = new Country();
    $env->getCountries();
    $env->getCountry("NL");
    /* Reception test */
    if ($env->curl_error) {
        $result['reception'] = max($result['reception'], ERROR);
        $result['reception_info'][count($result['reception_info'])] = 'Error while sending the query';
    } elseif ($env->resp_error) {
        $result['reception'] = max($result['reception'], ERROR);
        $result['reception_info'][count($result['reception_info'])] = 'Invalid query : ' . $userData["api_key"];
        foreach ($env->resp_errors_list as $message) {
            $result['reception_info'][count($result['reception_info'])] = $message['message'];
        }
    } else {
        $result['reception'] = max($result['reception'], OK);
        $result['reception_info'][count($result['reception_info'])] = 'Reception time : ' . (microtime_float() - $start) . 's';
    }
    /* Additionals test */
    /* Test for the result structure */
    $result['additionals'][0]['name'] = 'Structure';
    $result['additionals'][0]['state'] = OK;
    if (count($env->countries) == 0) {
        $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], WARNING);
        $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '$countries array is empty';
    } else {
        foreach ($env->countries as $x => $country) {
            if (!isset($env->countries[$x]['label'])) {
                $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], ERROR);
                $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '"label" not defined in $countries["' . $x . '"] array';
            }
            if (!isset($env->countries[$x]['code'])) {
                $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], ERROR);
                $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '"code" not defined in $countries["' . $x . '"] array';
            }
        }
    }
    if (count($env->country) == 0) {
        $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], WARNING);
        $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '$country array is empty';
    } else {
        foreach ($env->country as $x => $country) {
            if (!isset($env->country[$x]['label'])) {
                $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], ERROR);
                $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '"label" not defined in $country[' . $x . '] array';
            }
            if (!isset($env->country[$x]['code'])) {
                $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], ERROR);
                $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '"code" not defined in $country[' . $x . '] array';
            }
        }
    }
    $result['duration'] = microtime_float() - $start;
    return $result;
}