示例#1
0
function test_ContentCategory()
{
    $result = default_value();
    $start = microtime_float();
    /* Initialisation */
    $env = new ContentCategory();
    // Gather categories
    $env->getCategories();
    // Gather contents
    $env->getContents();
    /* 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->categories) == 0) {
        $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], WARNING);
        $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '$categories array is empty';
    } else {
        foreach ($env->categories as $code => $category) {
            if (!isset($category['label'])) {
                $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], ERROR);
                $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '"label" not defined in $categories["' . $code . '"] array';
            }
            if (!isset($category['code'])) {
                $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], ERROR);
                $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '"code" not defined in $categories["' . $code . '"] array';
            }
        }
    }
    if (count($env->categories) == 0) {
        $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], WARNING);
        $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '$contents array is empty';
    } else {
        foreach ($env->contents as $category => $content) {
            foreach ($content as $x => $line) {
                if (!isset($env->contents[$category][$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 $contents["' . $category . '"][' . $x . '] array';
                }
                if (!isset($env->contents[$category][$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 $contents["' . $category . '"][' . $x . '] array';
                }
                if (!isset($env->contents[$category][$x]['category'])) {
                    $result['additionals'][0]['state'] = max($result['additionals'][0]['state'], ERROR);
                    $result['additionals'][0]['info'][count($result['additionals'][0]['info'])] = '"category" not defined in $contents["' . $category . '"][' . $x . '] array';
                }
            }
        }
    }
    $result['duration'] = microtime_float() - $start;
    return $result;
}
示例#2
0
<?php

use Emc\ContentCategory;
/* Example of use for ListPoints class
 * Make an international order, the difference with a "normal" make order is in the proforma
 */
require_once '../config/autoload.php';
require_once EMC_PARENT_DIR . 'layout/header.php';
// Prepare and execute the request
$lib = new ContentCategory();
$lib->getCategories();
// load all content categories
$lib->getContents();
// load all content types
if (!$lib->curl_error && !$lib->resp_error) {
    ?>
<h3>API ContentCategory :</h3>
<div class="row well">
    <form class="form-horizontal" role="form">
      <div class="form-group">
        <label class="col-sm-4 control-label">List of categories</label>
        <div class="col-sm-8">
            <select class="form-control">
                <?php 
    foreach ($lib->categories as $c => $category) {
        ?>
                            <option value="<?php 
        echo $category['code'];
        ?>
"><?php 
        echo $category['label'];