Documentation du code de SPIP et de ses plugins

noiZetier

noizetier_page.php

Ce fichier contient l'API de gestion des pages et compositions configurables par le noiZetier.

Table of Contents

Functions

page_noizetier_charger()  : bool
Charge les pages disponibles pour le noiZetier à partir des fichiers YAML ou XML voire HTML.
page_noizetier_initialiser()  : array<string|int, mixed>
Initialise avec des valeurs par défaut la description d'une page connue par son identifiant.
page_noizetier_virtuelle_propager()  : void
Propage éventuellement les modifications des pages non virtuelles vers les compositions virtuelles associées.
page_noizetier_lire()  : array<string|int, mixed>|string
Retourne la description complète de la page, de la composition explicite ou de la composition virtuelle demandée ou une information donnée uniquement.
page_noizetier_repertorier()  : array<string|int, mixed>
Retourne la description complète ou partielle d'une liste de pages explicites, compositions explicite et compositions virtuelles filtrées sur une liste de critères.
page_noizetier_lister_blocs()  : array<string|int, mixed>
Liste, pour une page donnée, les blocs pouvant accepter des noisettes.
page_noizetier_extraire_type()  : string
Renvoie le type d'une page à partir de son identifiant.
page_noizetier_extraire_composition()  : string
Détermine, à partir de son identifiant, la composition d'une page si elle existe.
page_noizetier_composition_activee()  : bool
Détermine si les compositions sont possibles sur un type de page.
page_noizetier_initialiser_dossier()  : string
Déterminer le répertoire dans lequel le NoiZetier peut lister les pages pouvant supporter l'insertion de noisettes.
page_noizetier_compter_noisettes()  : array<string|int, mixed>
Détermine, pour une page donnée, la liste des blocs ayant des noisettes incluses et renvoie leur nombre.
compiler_traductions_idiome()  : string
Compiler les traductions d'un idiome représentant le nom d'une page en une chaine multi.
calculer_condition_par_filtre()  : array<string|int, mixed>
Construit le tableau des conditions au format compatible avec l'API SQL à partir du tableau des filtres au format [champ] = valeur.

Functions

page_noizetier_charger()

Charge les pages disponibles pour le noiZetier à partir des fichiers YAML ou XML voire HTML.

page_noizetier_charger([null|bool $recharger = false ][, null|string $id_page_a_charger = '' ]) : bool
Parameters
$recharger : null|bool = false

Indique si il faut forcer le rechargement à partir des fichiers descriptifs ou si le chargement ne se fait que si la description a changé

$id_page_a_charger : null|string = ''

Identifiant d'une page à charger ou vide si toutes les pages sont à charger

Return values
bool

true si le chargement s'est bien passé, false sinon.

page_noizetier_initialiser()

Initialise avec des valeurs par défaut la description d'une page connue par son identifiant.

page_noizetier_initialiser(string $id_page) : array<string|int, mixed>
Parameters
$id_page : string

Identifiant de la page

Return values
array<string|int, mixed>

La description initialisée.

page_noizetier_virtuelle_propager()

Propage éventuellement les modifications des pages non virtuelles vers les compositions virtuelles associées.

page_noizetier_virtuelle_propager(array<string|int, mixed> $pages) : void

La mise à jour concerne les plugins necessités et l'indicateur d'activité.

Parameters
$pages : array<string|int, mixed>

Tableau de la description complète des pages et compositions non virtuelles modifiées.

page_noizetier_lire()

Retourne la description complète de la page, de la composition explicite ou de la composition virtuelle demandée ou une information donnée uniquement.

page_noizetier_lire(string $id_page[, null|array<string|int, mixed>|string $informations = [] ][, null|bool $traiter_typo = false ]) : array<string|int, mixed>|string

La description est stockée en base de données, certains champs sont recalculés avant d'être fournis.

Parameters
$id_page : string

Identifiant de la page ou de la composition.

$informations : null|array<string|int, mixed>|string = []

Liste des champs à renvoyer. Si vide la fonction renvoie tous les champs. Il est possible de demander un seul champ sous la forme d'une chaine et pas de tableau.

$traiter_typo : null|bool = false

Indique si les données textuelles doivent être retournées brutes ou si elles doivent être traitées en utilisant la fonction typo. Les champs sérialisés sont toujours désérialisés.

Tags
uses
page_noizetier_lister_blocs()
Return values
array<string|int, mixed>|string

La description complète ou un champ précis demandé pour une page donnée. Les champs de type tableau sont systématiquement désérialisés et si demandé, les champs textuels peuvent être traités avec la fonction typo().

page_noizetier_repertorier()

Retourne la description complète ou partielle d'une liste de pages explicites, compositions explicite et compositions virtuelles filtrées sur une liste de critères.

page_noizetier_repertorier([array<string|int, mixed>|string $information = [] ][, null|array<string|int, mixed> $filtres = [] ][, null|bool $indexer_par_page = true ]) : array<string|int, mixed>
Parameters
$information : array<string|int, mixed>|string = []

Information spécifique à retourner ou vide pour retourner toute la description. L'information peut être une chaine correspondant à un champ de la page ou un tableau avec une liste de champs.

$filtres : null|array<string|int, mixed> = []

Tableau associatif [champ] = valeur de critères de filtres sur les descriptions de types de noisette. Le seul opérateur possible est l'égalité.

$indexer_par_page : null|bool = true

Indique si le tableau doit être indexé par d'identifiant de page ou pas. true par défaut.

Return values
array<string|int, mixed>

Tableau des descriptions des pages et compositions trouvées indexé par l'identifiant de la page ou par entier de 0 à n.

page_noizetier_lister_blocs()

Liste, pour une page donnée, les blocs pouvant accepter des noisettes.

page_noizetier_lister_blocs(string $id_page[, null|array<string|int, mixed> $blocs_exclus = [] ]) : array<string|int, mixed>
Parameters
$id_page : string

Identifiant de la page.

$blocs_exclus : null|array<string|int, mixed> = []

Liste des blocs exclus si ils sont connus avant l'appel. Sinon, ils seront récupérés dans le déroulement de la fonction.

Tags
used-by
page_noizetier_lire()
Return values
array<string|int, mixed>

Liste des blocs

page_noizetier_extraire_type()

Renvoie le type d'une page à partir de son identifiant.

page_noizetier_extraire_type(string $id_page) : string

On gère aussi le cas de Zpip v1 où page-xxxx désigne une page et non une composition. Dans ce cas, on doit donc obtenir un type = xxxx.

Parameters
$id_page : string

Identifiant de la page.

Tags
used-by
conteneur_noizetier_decomposer()
Return values
string

Le type de la page choisie, c'est-à-dire:

  • soit l'identifiant complet de la page,
  • soit le mot précédent le tiret dans le cas d'une composition.

page_noizetier_extraire_composition()

Détermine, à partir de son identifiant, la composition d'une page si elle existe.

page_noizetier_extraire_composition(string $id_page) : string

On gère aussi le cas de Zpip v1 où page-xxxx désigne une page et non une composition. Dans ce cas, on doit donc obtenir une composition vide.

Parameters
$id_page : string

Identifiant de la page.

Tags
used-by
conteneur_noizetier_decomposer()
Return values
string

La composition de la page choisie, à savoir, le mot suivant le premier le tiret, ou la chaine vide sinon.

page_noizetier_composition_activee()

Détermine si les compositions sont possibles sur un type de page.

page_noizetier_composition_activee(string $type) : bool
Parameters
$type : string

Identifiant du type de page.

Return values
bool

true si les compositions sont autorisées, false sinon.

page_noizetier_initialiser_dossier()

Déterminer le répertoire dans lequel le NoiZetier peut lister les pages pouvant supporter l'insertion de noisettes.

page_noizetier_initialiser_dossier() : string
Return values
string

Le répertoire des pages sous la forme dossier/.

page_noizetier_compter_noisettes()

Détermine, pour une page donnée, la liste des blocs ayant des noisettes incluses et renvoie leur nombre.

page_noizetier_compter_noisettes(string $id_page) : array<string|int, mixed>
Parameters
$id_page : string

L'identifiant de la page ou de la composition.

Tags
used-by
action_supprimer_composition_dist()
Return values
array<string|int, mixed>

Tableau des nombre de noisettes incluses par bloc de la forme [bloc] = nombre de noisettes.

compiler_traductions_idiome()

Compiler les traductions d'un idiome représentant le nom d'une page en une chaine multi.

compiler_traductions_idiome(string $idiome) : string
Parameters
$idiome : string

Idiome sous sa forme <:xx:yy:>

Return values
string

Chaine multi des traductions issues de l'idiome.

calculer_condition_par_filtre()

Construit le tableau des conditions au format compatible avec l'API SQL à partir du tableau des filtres au format [champ] = valeur.

calculer_condition_par_filtre(array<string|int, mixed> $filtres) : array<string|int, mixed>
Parameters
$filtres : array<string|int, mixed>

Tableau associatif [champ] = valeur de critères de filtres sur les descriptions de types de noisette. Les opérateurs binaires possibles sont l'égalité et l'inégalité en préfixant la valeur par le caractère `!``. Si la valeur est un tableau on génère un IN.

Return values
array<string|int, mixed>

Tableau des conditions SQL issues des filtres


        
On this page

Search results