Changeset 110076 in spip-zone for _plugins_/noizetier/trunk/inc


Ignore:
Timestamp:
May 3, 2018, 10:08:35 AM (15 months ago)
Author:
eric@…
Message:

On continue à améliorer le traitement de l'ajout de noisettes avec prise en compte des noisettes conteneur.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/noizetier/trunk/inc/noizetier_conteneur.php

    r110066 r110076  
    2020 * @uses noizetier_conteneur_identifier()
    2121 *
    22  * @param array|string $page
     22 * @param array|string $page_ou_objet
     23 *                Page au sens SPIP ou objet spécifiquement identifié.
     24 *        - dans le cas d'une page SPIP comme sommaire, l'argument est une chaîne.
     25 *                - dans le cas d'un objet SPIP comme un article d'id x, l'argument est un tableau associatif à deux index,
     26 *          `objet` et `id_objet`.
    2327 * @param string       $bloc
    24  * @param int          $id_noisette
     28 *                Bloc de page au sens Z.
     29 * @param array        $noisette
     30 *        Tableau descriptif d'une noisette contenant à minima son type et son id.
    2531 *
    2632 * @return string
    2733 */
    28 function noizetier_conteneur_composer($page, $bloc='') {
     34function noizetier_conteneur_composer($page_ou_objet, $bloc, $noisette=array()) {
    2935
    3036        $conteneur = array();
    3137
    3238        // Construction du tableau associatif du conteneur.
    33         if (is_array($page)) {
    34                 if (!empty($page['type_noisette']) and !empty($page['id_noisette'])) {
    35                         // Le conteneur est une noisette.
    36                         $conteneur = $page;
    37                 } else {
     39        if (!empty($noisette['type_noisette']) and !empty($noisette['id_noisette'])) {
     40                // Le conteneur est une noisette.
     41                $conteneur = $noisette;
     42        } else {
     43                if (is_array($page_ou_objet)) {
    3844                        // Le conteneur est un objet.
    39                         $conteneur['objet'] = $page['objet'];
    40                         $conteneur['id_objet'] = $page['id_objet'];
     45                        $conteneur['objet'] = $page_ou_objet['objet'];
     46                        $conteneur['id_objet'] = $page_ou_objet['id_objet'];
    4147                        $conteneur['squelette'] = "${bloc}";
    4248                }
    43         }
    44         else {
    45                 // Le conteneur est une page ou une composition.
    46                 $conteneur['squelette'] = "${bloc}/${page}";
     49                else {
     50                        // Le conteneur est une page ou une composition.
     51                        $conteneur['squelette'] = "${bloc}/${page_ou_objet}";
     52                }
    4753        }
    4854
     
    6773 *
    6874 * @param string $id_conteneur
     75 *        Identifiant du conteneur sous forme de chaine unique.
    6976 *
    7077 * @return array
Note: See TracChangeset for help on using the changeset viewer.