Changeset 106689 in spip-zone


Ignore:
Timestamp:
Oct 9, 2017, 7:02:21 PM (2 years ago)
Author:
eric@…
Message:

On remplace squelette+contexte par un seul élément nommé conteneur.

Location:
_plugins_/n-core/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/n-core/trunk/inc/ncore_noisette.php

    r106527 r106689  
    2626 * @param string $type_noisette
    2727 *        Identifiant du type de noisette à ajouter au squelette.
    28  * @param string $squelette
    29  *        Chemin relatif du squelette auquel associer la noisette.
    30  * @param array  $contexte
    31  *        Tableau éventuellement vide matérialisant le contexte d'utilisation du squelette.
     28 * @param array  $conteneur
     29 *        Tableau associatif descriptif du conteneur accueillant la noisette. Un conteneur peut-être un squelette seul
     30 *        ou associé à un contexte d'utilisation et dans ce cas il possède un index `squelette` ou un objet quelconque
     31 *        sans lien avec un squelette. Dans tous les cas, les index, à l'exception de `squelette`, sont spécifiques
     32 *        à l'utilisation qui en est faite par le plugin.
    3233 * @param int    $rang
    3334 *        Rang dans le squelette contextualisé où insérer la noisette. Si l'argument n'est pas fourni ou est égal à 0
     
    4142 *        Retourne l'identifiant de la nouvelle instance de noisette créée ou `false` en cas d'erreur.
    4243 **/
    43 function noisette_ajouter($plugin, $type_noisette, $squelette, $contexte, $rang = 0, $stockage = '') {
     44function noisette_ajouter($plugin, $type_noisette, $conteneur, $rang = 0, $stockage = '') {
    4445
    4546        // Initialisation de la valeur de sortie.
     
    6566                        'plugin'     => $plugin,
    6667                        'noisette'   => $type_noisette,
    67                         'squelette'  => $squelette,
    68                         'contexte'   => serialize($contexte),
     68                        'conteneur'  => serialize($conteneur),
    6969                        'rang'       => intval($rang),
    7070                        'parametres' => serialize($parametres),
     
    7979                // On récupère les noisettes déjà affectées au squelette contextualisé sous la forme d'un tableau indexé
    8080                // par le rang de chaque noisette.
    81                 $noisettes = ncore_noisette_lister($plugin, $squelette, $contexte, '', 'rang', $stockage);
     81                $noisettes = ncore_noisette_lister($plugin, $conteneur, '', 'rang', $stockage);
    8282
    8383                // On calcule le rang max déjà utilisé.
     
    127127 * @param mixed  $noisette
    128128 *        Identifiant de la noisette qui peut prendre soit la forme d'un entier ou d'une chaine unique, soit la forme
    129  *        d'un triplet (squelette, contexte, rang).
     129 *        d'un couple (conteneur, rang).
    130130 * @param string $stockage
    131131 *        Identifiant du service de stockage à utiliser si précisé. Dans ce cas, ni celui du plugin
     
    162162                $autres_noisettes = ncore_noisette_lister(
    163163                        $plugin,
    164                         $description['squelette'],
    165                         unserialize($description['contexte']),
     164                        unserialize($description['conteneur']),
    166165                        '',
    167166                        'rang',
     
    197196 * @param mixed   $noisette
    198197 *        Identifiant de la noisette qui peut prendre soit la forme d'un entier ou d'une chaine unique, soit la forme
    199  *        d'un triplet (squelette, contexte, rang).
     198 *        d'un couple (contneur, rang).
    200199 * @param string  $information
    201200 *        Information spécifique à retourner ou vide pour retourner toute la description.
     
    232231                        $description_existe = isset($description_noisette_par_id[$plugin][$noisette]) ? true : false;
    233232                } else {
    234                         if (isset($noisette['squelette'], $noisette['contexte'], $noisette['rang'])) {
    235                                 $squelette_contextualise = ncore_squelette_identifier(
    236                                         $plugin,
    237                                         $noisette['squelette'],
    238                                         $noisette['contexte'],
    239                                         $stockage
    240                                 );
     233                        if (isset($noisette['conteneur'], $noisette['rang'])) {
     234                                $squelette_contextualise = ncore_squelette_identifier($plugin, $noisette['conteneur'], $stockage);
    241235                                $description_existe = isset($description_noisette_par_rang[$plugin][$squelette_contextualise][$noisette['rang']])
    242236                                        ? true
     
    254248                                        $description['parametres'] = unserialize($description['parametres']);
    255249                                }
    256                                 if (is_string($description['contexte'])) {
    257                                         $description['contexte'] = unserialize($description['contexte']);
     250                                if (is_string($description['conteneur'])) {
     251                                        $description['conteneur'] = unserialize($description['conteneur']);
    258252                                }
    259253                        }
     
    301295 * @param mixed  $noisette
    302296 *        Identifiant de la noisette qui peut prendre soit la forme d'un entier ou d'une chaine unique, soit la forme
    303  *        d'un triplet (squelette, contexte, rang).
     297 *        d'un couple (conteneur, rang).
    304298 * @param int    $rang_destination
    305299 *        Entier représentant le rang où repositionner la noisette dans le squelette contextualisé.
     
    335329                        $noisettes = ncore_noisette_lister(
    336330                                $plugin,
    337                                 $description['squelette'],
    338                                 unserialize($description['contexte']),
     331                                unserialize($description['conteneur']),
    339332                                '',
    340333                                'rang',
     
    393386 *        Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou
    394387 *        un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.
    395  * @param mixed  $squelette
    396  *        Chemin relatif du squelette où ajouter la noisette.
    397  * @param array  $contexte
    398  *        Tableau éventuellement vide matérialisant le contexte d'utilisation du squelette.
     388 * @param array  $conteneur
     389 *        Tableau associatif descriptif du conteneur accueillant la noisette. Un conteneur peut-être un squelette seul
     390 *        ou associé à un contexte d'utilisation et dans ce cas il possède un index `squelette` ou un objet quelconque
     391 *        sans lien avec un squelette. Dans tous les cas, les index, à l'exception de `squelette`, sont spécifiques
     392 *        à l'utilisation qui en est faite par le plugin.
    399393 * @param string $stockage
    400394 *        Identifiant du service de stockage à utiliser si précisé. Dans ce cas, ni celui du plugin
     
    404398 * @return bool
    405399 */
    406 function noisette_vider($plugin, $squelette, $contexte, $stockage = '') {
     400function noisette_vider($plugin, $conteneur, $stockage = '') {
    407401
    408402        // Initialisation du retour
     
    413407        include_spip('ncore/ncore');
    414408
    415         if ($squelette or $contexte) {
    416                 // On construit un tableau avec le squelette et son contexte et on le passe à la fonction.
    417                 $description = array('squelette' => $squelette, 'contexte' => serialize($contexte));
    418                 $retour = ncore_noisette_destocker($plugin, $description, $stockage);
     409        if ($conteneur) {
     410                $retour = ncore_noisette_destocker($plugin, $conteneur, $stockage);
    419411        }
    420412
  • _plugins_/n-core/trunk/ncore/ncore.php

    r106533 r106689  
    270270                $squelette_contextualise = ncore_squelette_identifier(
    271271                        $plugin,
    272                         $description['squelette'],
    273                         unserialize($description['contexte']),
     272                        unserialize($description['conteneur']),
    274273                        $stockage
    275274                );
     
    355354                $squelette_contextualise = ncore_squelette_identifier(
    356355                        $plugin,
    357                         $description['squelette'],
    358                         unserialize($description['contexte']),
     356                        unserialize($description['conteneur']),
    359357                        $stockage
    360358                );
     
    425423                $squelette_contextualise = ncore_squelette_identifier(
    426424                        $plugin,
    427                         $description['squelette'],
    428                         unserialize($description['contexte']),
     425                        unserialize($description['conteneur']),
    429426                        $stockage
    430427                );
     
    463460 *        Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou
    464461 *        un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.
    465  * @param string $squelette
    466  *                Chemin relatif du squelette où ajouter la noisette.
    467  * @param array  $contexte
    468  *                Tableau éventuellement vide matérialisant le contexte d'utilisation du squelette.
     462 * @param array  $conteneur
     463 *        Tableau associatif descriptif du conteneur accueillant la noisette. Un conteneur peut-être un squelette seul
     464 *        ou associé à un contexte d'utilisation et dans ce cas il possède un index `squelette` ou un objet quelconque
     465 *        sans lien avec un squelette. Dans tous les cas, les index, à l'exception de `squelette`, sont spécifiques
     466 *        à l'utilisation qui en est faite par le plugin.
    469467 * @param string $information
    470468 *        Identifiant d'un champ de la description d'une type de noisette.
     
    481479 *        Tableau de la liste des informations demandées indexé par identifiant de noisette ou par rang.
    482480 */
    483 function ncore_noisette_lister($plugin, $squelette = '', $contexte = array(), $information = '', $cle = 'rang', $stockage = '') {
     481function ncore_noisette_lister($plugin, $conteneur = array(), $information = '', $cle = 'rang', $stockage = '') {
    484482
    485483        // Initialisation du tableau de sortie.
     
    501499                $meta_noisettes = lire_config("${plugin}_noisettes", array());
    502500
    503                 if ($squelette or $contexte) {
     501                if ($conteneur) {
    504502                        // Détermination de l'identifiant du squelette contextualisé.
    505                         $squelette_contextualise = ncore_squelette_identifier($plugin, $squelette, $contexte, $stockage);
     503                        $squelette_contextualise = ncore_squelette_identifier($plugin, $conteneur, $stockage);
    506504                        if (!empty($meta_noisettes[$squelette_contextualise])) {
    507505                                $noisettes = $meta_noisettes[$squelette_contextualise];
     
    542540 * @param mixed  $noisette
    543541 *        Identifiant de la noisette qui peut prendre soit la forme d'un entier ou d'une chaine unique, soit la forme
    544  *        d'un triplet (squelette, contexte, rang).
     542 *        d'un couple (conteneur, rang).
    545543 * @param string $stockage
    546544 *        Identifiant du service de stockage à utiliser si précisé. Dans ce cas, ni celui du plugin ni celui de N-Core
     
    594592                                        $squelette_contextualise = ncore_squelette_identifier(
    595593                                                $plugin,
    596                                                 $noisette['squelette'],
    597                                                 $noisette['contexte'],
     594                                                $noisette['conteneur'],
    598595                                                $stockage
    599596                                        );
     
    624621 *        Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou
    625622 *        un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.
    626  * @param string $squelette
    627  *                Chemin relatif du squelette où ajouter la noisette.
    628  * @param array  $contexte
    629  *                Tableau éventuellement vide matérialisant le contexte d'utilisation du squelette.
     623 * @param array  $conteneur
     624 *        Tableau associatif descriptif du conteneur accueillant la noisette. Un conteneur peut-être un squelette seul
     625 *        ou associé à un contexte d'utilisation et dans ce cas il possède un index `squelette` ou un objet quelconque
     626 *        sans lien avec un squelette. Dans tous les cas, les index, à l'exception de `squelette`, sont spécifiques
     627 *        à l'utilisation qui en est faite par le plugin.
    630628 * @param string $stockage
    631629 *        Identifiant du service de stockage à utiliser si précisé. Dans ce cas, ni celui du plugin ni celui de N-Core
     
    635633 *        Identifiant du squelette contextualisé.
    636634 */
    637 function ncore_squelette_identifier($plugin, $squelette, $contexte, $stockage) {
     635function ncore_squelette_identifier($plugin, $conteneur, $stockage) {
    638636
    639637        // Il faut calculer l'identifiant du squelette contextualisé pour accéder à la bonne liste
     
    644642        // du squelette sera retourné.
    645643        $squelette_contextualise = '';
    646         if ($squelette or $contexte) {
     644        if ($conteneur) {
    647645                include_spip('inc/ncore_utils');
    648646                if ($identifier = ncore_chercher_service($plugin, 'squelette_identifier', $stockage)) {
    649647                        // On passe le plugin appelant à la fonction car cela permet ainsi de mutualiser les services de stockage.
    650                         $squelette_contextualise = $identifier($plugin, $squelette, $contexte);
     648                        $squelette_contextualise = $identifier($plugin, $conteneur);
    651649                }
    652650        }
  • _plugins_/n-core/trunk/paquet.xml

    r105644 r106689  
    22        prefix="Ncore"
    33        categorie="outil"
    4         version="0.1.0"
     4        version="0.2.0"
    55        etat="dev"
    66        compatibilite="[3.2.0-dev;3.2.*]"
Note: See TracChangeset for help on using the changeset viewer.