Changeset 115829 in spip-zone


Ignore:
Timestamp:
Jun 30, 2019, 6:07:26 PM (8 weeks ago)
Author:
eric@…
Message:

Ajout d'une option de filtre obligatoire et de sa vérification.

Location:
_plugins_/svp_api/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/svp_api/trunk/inc/declarer_collections_svp.php

    r115588 r115829  
    3333                                'filtres'   => array(
    3434                                        array(
    35                                                 'critere' => 'compatible_spip'
     35                                                'critere'         => 'compatible_spip',
     36                                                'est_obligatoire' => false
    3637                                        ),
    3738                                )
     
    4142                                'filtres' => array(
    4243                                        array(
    43                                                 'critere' => 'type'
     44                                                'critere'         => 'type',
     45                                                'est_obligatoire' => false
    4446                                        )
    4547                                )
  • _plugins_/svp_api/trunk/inc/verifier_requete_svp.php

    r115611 r115829  
    117117        $erreur = array();
    118118
    119         if ($filtres) {
     119        // 1- Vérification de l'absence de critère obligatoire.
     120        foreach ($configuration['filtres'] as $_filtre) {
     121                if (!empty($_filtre['est_obligatoire'])
     122                and (!isset($filtres[$_filtre['critere']]))) {
     123                        $erreur = array(
     124                                'status'  => 400,
     125                                'type'    => 'critere_obligatoire_nok',
     126                                'element' => 'critere',
     127                                'valeur'  => $_filtre['critere']
     128                        );
     129                        $est_valide = false;
     130                        break;
     131                }
     132        }
     133
     134        // 2- Véfification des critères fournis
     135        if ($est_valide and $filtres) {
    120136                // On arrête dès qu'une erreur est trouvée et on la reporte.
    121137                foreach ($filtres as $_critere => $_valeur) {
  • _plugins_/svp_api/trunk/lang/svpapi_fr.php

    r115587 r115829  
    88
    99        // E
    10         'erreur_200_ok_message'                    => 'Vous pouvez consulter la ressource ou la collection demandée dans l\'index « donnees ».',
    11         'erreur_200_ok_titre'                      => 'La requête a été traitée avec succès',
    12         'erreur_400_collection_nok_message'        => 'SVP fournit les collections suivantes : @extra@.',
    13         'erreur_400_collection_nok_titre'          => 'La collection « @valeur@ » n\'est pas fournie par ce service',
    14         'erreur_400_critere_nom_nok_message'       => 'La collection  « @collection@ » supporte les critères suivants : @extra@.',
    15         'erreur_400_critere_nom_nok_titre'         => 'Le critère « @valeur@ » n\'est pas supporté par la collection « @collection@ »',
    16         'erreur_400_critere_valeur_nok_message'    => 'Veuillez consulter la documentation pour spécifier une valeur valide pour le critère @element@ (@extra@).',
    17         'erreur_400_critere_valeur_nok_titre'      => 'La valeur « @valeur@ » du critère « @element@ » est invalide',
    18         'erreur_400_ressource_nok_message'         => 'SVP ne fournit des ressources que pour les collections suivantes : @extra@.',
    19         'erreur_400_ressource_nok_titre'           => 'La collection « @collection@ » n\'autorise pas l\'accès à une ressource',
    20         'erreur_400_ressource_prefixe_nok_message' => 'Veuillez vérifier l\'orthographe du préfixe (caractères alphanumériques et souligné) ou si celui-ci est bien fourni par un des dépôts enregistrés sur le serveur.',
    21         'erreur_400_ressource_prefixe_nok_titre'   => 'Le préfixe « @valeur@ » n\'est pas disponible pour la collection « @collection@ »',
    22         'erreur_501_serveur_nok_message'           => 'Le serveur est actuellement en mode « SVP runtime » incompatible avec le service REST SVP.',
    23         'erreur_501_serveur_nok_titre'             => 'Le serveur n\'est pas correctement configuré',
    24         'extra_critere_compatible_spip'            => 'version SPIP comme « 3.2.0 » ou branche comme « 2.1 » ou liste de branches comme « 2.1,3.0,3.1 »'
     10        'erreur_200_ok_message'                            => 'Vous pouvez consulter la ressource ou la collection demandée dans l\'index « donnees ».',
     11        'erreur_200_ok_titre'                              => 'La requête a été traitée avec succès',
     12        'erreur_400_collection_nok_message'                => 'SVP fournit les collections suivantes : @extra@.',
     13        'erreur_400_collection_nok_titre'                  => 'La collection « @valeur@ » n\'est pas fournie par ce service',
     14        'erreur_400_critere_nom_nok_message'               => 'La collection  « @collection@ » supporte les critères suivants : @extra@.',
     15        'erreur_400_critere_nom_nok_titre'                 => 'Le critère « @valeur@ » n\'est pas supporté par la collection « @collection@ »',
     16        'erreur_400_critere_obligatoire_nok_message'       => 'Veuillez utiliser le critère « @valeur@ » avec une valeur autorisée pour obtenir une réponse valide.',
     17        'erreur_400_critere_obligatoire_nok_titre'         => 'Le critère « @valeur@ » est obligatoire',
     18        'erreur_400_critere_valeur_nok_message'            => 'Veuillez consulter la documentation pour spécifier une valeur valide pour le critère @element@ (@extra@).',
     19        'erreur_400_critere_valeur_nok_titre'              => 'La valeur « @valeur@ » du critère « @element@ » est invalide',
     20        'erreur_400_ressource_nok_message'                 => 'SVP ne fournit des ressources que pour les collections suivantes : @extra@.',
     21        'erreur_400_ressource_nok_titre'                   => 'La collection « @collection@ » n\'autorise pas l\'accès à une ressource',
     22        'erreur_400_ressource_prefixe_nok_message'         => 'Veuillez vérifier l\'orthographe du préfixe (caractères alphanumériques et souligné) ou si celui-ci est bien fourni par un des dépôts enregistrés sur le serveur.',
     23        'erreur_400_ressource_prefixe_nok_titre'           => 'Le préfixe « @valeur@ » n\'est pas disponible pour la collection « @collection@ »',
     24        'erreur_501_serveur_nok_message'                   => 'Le serveur est actuellement en mode « SVP runtime » incompatible avec le service REST SVP.',
     25        'erreur_501_serveur_nok_titre'                     => 'Le serveur n\'est pas correctement configuré',
     26        'extra_critere_compatible_spip'                    => 'version SPIP comme « 3.2.0 » ou branche comme « 2.1 » ou liste de branches comme « 2.1,3.0,3.1 »'
    2527);
Note: See TracChangeset for help on using the changeset viewer.