Documentation du code de SPIP et de ses plugins

Boussole

Documentation

Table of Contents

Packages

SPIP
Application

Constants

_BOUSSOLE_FICHIER_EXTENSIONS_DEFAUT  = ['xml', 'json']
Extensions possibles pour le fichier de description d'une boussole.
_BOUSSOLE_ID_BOUSSOLE_SPIP  = 'spip'
Liste des types de fournisseur de boussoles : un serveur (REST) ou un plugin de boussole.
_BOUSSOLE_ID_SERVEUR_SPIP  = 'spip'
Liste des types de fournisseur de boussoles : un serveur (REST) ou un plugin de boussole.
_BOUSSOLE_TYPES_FOURNISSEUR  = ['serveur', 'plugin']
Liste des types de fournisseur de boussoles : un serveur (REST) ou un plugin de boussole.
_BOUSSOLE_URL_SERVEUR_SPIP  = 'https://boussole.spip.net'
Liste des types de fournisseur de boussoles : un serveur (REST) ou un plugin de boussole.

Functions

action_client_actualiser_boussoles_dist()  : void
Cette action permet au site client d'actualiser l'ensemble des boussoles insérées dans sa base de données.
action_client_retirer_serveur_dist()  : void
Cette action permet au site client de retirer un serveur donné de sa liste des serveurs qu'il est autorisé à interroger (variable de configuration).
action_client_supprimer_boussole_dist()  : void
Cette action permet au site client de supprimer de sa base de données, de façon sécurisée, une boussole donnée.
action_client_synchroniser_site_dist()  : void
Cette action permet de synchroniser un site référencé dans la base du client et de synchroniser ses données avec le site idoine (de même id_syndic) de la boussole associée.
boussole_declarer_tables_principales()  : array<string|int, mixed>
Déclaration des nouvelles tables de la base de données propres au plugin.
boussole_declarer_tables_interfaces()  : array<string|int, mixed>
Déclaration des informations tierces (alias, traitements, jointures, etc) sur les tables de la base de données modifiées ou ajoutées par le plugin.
boussole_upgrade()  : void
Installation du schéma de données propre au plugin et gestion des migrations suivant les évolutions du schéma.
boussole_vider_tables()  : void
Suppression de l'ensemble du schéma de données propre au plugin, c'est-à-dire les tables et les variables de configuration.
maj02_boussole()  : void
Migration du schéma 0.1 au 0.2.
maj03_boussole()  : void
Migration du schéma 0.2 au 0.3.
maj04_boussole()  : void
Migration du schéma 0.3 au 0.4.
maj05_boussole()  : void
Migration du schéma 0.4 au 0.5.
boussole_autoriser()  : mixed
autoriser_boussole_dist()  : bool
Autorisation minimale d'utiliser le plugin Boussole.
autoriser_boussoles_voir_dist()  : bool
Autorisation de voir la liste des boussoles et des serveurs.
autoriser_boussole_voir_dist()  : bool
Autorisation de voir la page d'une boussole.
autoriser_boussole_declarerserveur_dist()  : bool
Autorisation d'ajout d'un serveur dans la liste des serveurs accessibles par le site client.
autoriser_boussole_retirerserveur_dist()  : bool
Autorisation de retrait d'un serveur dans la liste des serveurs accessibles par le site client.
autoriser_boussole_ajouterdansclient_dist()  : bool
Autorisation d'ajout d'une boussole dans la base d'un client.
autoriser_boussole_modifierdansserveur_dist()  : bool
Autorisation de modifier l'affichage d'une boussole, à savoir, l'ordre des groupes et des sites, la visibilité des sites.
autoriser_boussole_importer_dist()  : bool
Autorisation d'importer les sites d'une boussole dans la liste des sites référencés.
autoriser_boussole_servir_dist()  : bool
Autorisation pour un site de répondre aux requêtes des clients.
balise_BOUSSOLE_INFOS()  : Champ
Compilation de la balise `#BOUSSOLE_INFOS` retournant les informations générales sur une boussole.
calcul_boussole_infos()  : array<string|int, mixed>
Récupération des informations sur une boussole donnée ou sur toutes les boussoles installées.
boussole_traduire()  : string
Traduction d'un champ d'une boussole, d'un groupe de sites ou d'un site.
boussole_logo_topnav()  : string
Renvoie chemin nom du logo topnav à partir du chemin du logo de la boussole.
boussole_affiche_milieu()  : array<string|int, mixed>
Affichage, dans la fiche d'un objet site, d'un bloc identifiant la boussole à laquelle appartient le site édité.
boussole_affiche_gauche()  : array<string|int, mixed>
Affiche dans la page d'accueil des sites référencés un raccourci pour importer l'ensemble des sites d'une boussole déjà installée.
boussole_post_edition()  : array<string|int, mixed>
Permet de déclencher la mise à jour de la boussole si un site de la base appartenant à cette boussole est refusé ou réhabilité si il était déjà refusé.
boussole_liste_ezcollection()  : array<string|int, mixed>
Déclare la collection boussoles à l'API d'ezrest.
boussole_cache_configurer()  : array<string|int, mixed>
Renvoie la configuration spécifique des caches gérés par Boussole.
boussoles_api_verifier_contexte()  : bool
Détermine si le serveur est capable de répondre aux requêtes SVP.
boussoles_collectionner()  : array<string|int, mixed>
Récupère la liste boussoles avec toutes les informations possibles y compris leur nom en mode balise multi.
boussoles_ressourcer()  : array<string|int, mixed>
Retourne la description complète d'une boussole (sites, traductions, logos).
formulaires_ajouter_boussole_charger_dist()  : array<string|int, mixed>
Chargement des données : le formulaire propose la liste des boussoles accessibles à partir des serveurs que le site client a déclaré.
formulaires_ajouter_boussole_traiter_dist()  : array<string|int, mixed>
Exécution de l'action du formulaire : la boussole choisie est chargée en base en utilisant le fournisseur adéquat.
formulaires_configurer_boussole_serveur_charger()  : array<string|int, mixed>
Chargement des données : le formulaire permet d'activer la fonction serveur et d'en saisir l'identifiant.
formulaires_configurer_boussole_serveur_verifier()  : array<string|int, mixed>
Vérification des saisies : si on active la fonction serveur, il est obligatoire de saisir un identifiant et que celui-ci soit différent du serveur spip si on est sur un site différent.
formulaires_declarer_serveur_boussole_verifier_dist()  : array<string|int, mixed>
Vérification des saisies : - l'url est non vide, - bien formée, - ne correspond pas à celui de spip - et que le serveur désigné fourni bien au moins une boussole.
formulaires_declarer_serveur_boussole_traiter_dist()  : array<string|int, mixed>
Exécution de l'action du formulaire : déclaration du serveur de boussoles.
formulaires_editer_boussole_charger()  : array<string|int, mixed>
Chargement des données : le formulaire affiche les sites de la boussole, classés par groupe.
formulaires_editer_boussole_traiter()  : array<string|int, mixed>
Exécution de l'action du formulaire : chaque action sur la boussole est enregistrée dans la base de données.
formulaires_importer_boussole_charger_dist()  : array<string|int, mixed>
Chargement des données : le formulaire propose la liste des boussoles accessibles à partir des serveurs que le site client a déclaré.
formulaires_importer_boussole_verifier_dist()  : array<string|int, mixed>
Vérification des saisies : si on active la fonction serveur, il est obligatoire de saisir un identifiant et que celui-ci soit différent du serveur spip si on est sur un site différent.
formulaires_importer_boussole_traiter_dist()  : array<string|int, mixed>
Exécution de l'action du formulaire : les sites de la boussole choisie sont importés dans la base.
importer_sites_boussole()  : int
Importe les sites d'une boussole dans une rubrique donnée.
genie_boussole_actualiser_client_dist()  : int
Ce CRON permet mettre à jour les boussoles.
boussole_taches_generales_cron()  : array<string|int, mixed>
Activation du CRON de mise à jour des statistiques de plugins.
boussole_actualiser()  : void
Mise à jour en base de données d'une liste ou de toutes les boussoles installées.
boussole_charger()  : array<string|int, mixed>
Charge en base de donnée une boussole connue par son identifiant.
boussole_decharger()  : bool
Suppression de la boussole dans la base de données du site client.
boussole_lire_consignation()  : array<string|int, mixed>
Renvoie les informations de consignation d'une ou de toutes les boussoles chargées.
boussole_ecrire_consignation()  : bool
Consigne un chargement de boussole ou l'efface.
boussole_identifier_fournisseur()  : array<string|int, mixed>
Renvoie le fournisseur sous sa forme tabulaire à partir de la consignation d'une boussole.
boussole_est_disponible()  : bool
Détermine si une boussole est disponible soit par API REST auprès d'un serveur ou soit via un plugin installé localement.
boussole_lister_disponibilites()  : array<string|int, mixed>
Renvoie, pour le site courant, la liste des boussoles disponibles au chargement.
inc_boussole_acquerir_dist()  : array<string|int, mixed>
Acquiert une boussole ou la liste des boussoles d'un serveur.
xml_boussole_extraire_attributs()  : array<string|int, mixed>
Extraire les attributs d'une balise XML.
logo_boussole_identifier()  : string
Identifier le logo de la boussole.
boussole_compiler_traductions()  : array<string|int, mixed>
Compile les traductions du nom, slogan et description d'une boussole, d'un groupe ou d'uns site.
erreur_boussole_expliquer()  : string
Renvoie le message de retour ou d'erreur compilé à partir du tableau d'erreur fourni en argument.
inc_iconifier_site_dist()  : void
Remplace ou ajoute un logo au site. L'image source est connue par son url.
serveur_boussole_identifier()  : string
Renvoie, pour le site courant, son identifiant de serveur de boussoles.
serveur_boussole_est_spip()  : bool
Détermine si le serveur connu par son identifiant ou par son url est le serveur officiel de SPIP fournbissant la boussole SPIP.
serveur_boussole_declarer()  : bool
Ajoute un serveur et son url dans la liste des serveurs disponibles, donc accessibles par l'API REST.
serveur_boussole_retirer()  : bool
Retire une serveur désigné par son identifiant de la liste des serveurs accessibles par le site courant.
serveur_boussole_lister_disponibilites()  : array<string|int, mixed>
Renvoie, pour le site courant, la liste des serveurs déclarés, donc disponibles via l'API REST.

Constants

_BOUSSOLE_FICHIER_EXTENSIONS_DEFAUT

Extensions possibles pour le fichier de description d'une boussole.

public mixed _BOUSSOLE_FICHIER_EXTENSIONS_DEFAUT = ['xml', 'json']

L'extension yaml nécessite l'utilisation du plugin YAML.

_BOUSSOLE_ID_BOUSSOLE_SPIP

Liste des types de fournisseur de boussoles : un serveur (REST) ou un plugin de boussole.

public mixed _BOUSSOLE_ID_BOUSSOLE_SPIP = 'spip'

_BOUSSOLE_ID_SERVEUR_SPIP

Liste des types de fournisseur de boussoles : un serveur (REST) ou un plugin de boussole.

public mixed _BOUSSOLE_ID_SERVEUR_SPIP = 'spip'

_BOUSSOLE_TYPES_FOURNISSEUR

Liste des types de fournisseur de boussoles : un serveur (REST) ou un plugin de boussole.

public mixed _BOUSSOLE_TYPES_FOURNISSEUR = ['serveur', 'plugin']

_BOUSSOLE_URL_SERVEUR_SPIP

Liste des types de fournisseur de boussoles : un serveur (REST) ou un plugin de boussole.

public mixed _BOUSSOLE_URL_SERVEUR_SPIP = 'https://boussole.spip.net'

Functions

action_client_actualiser_boussoles_dist()

Cette action permet au site client d'actualiser l'ensemble des boussoles insérées dans sa base de données.

action_client_actualiser_boussoles_dist() : void

L'action est utilisée sur demande depuis la page d'administration du client de l'espace privé.

Tags
uses
boussole_actualiser()

action_client_retirer_serveur_dist()

Cette action permet au site client de retirer un serveur donné de sa liste des serveurs qu'il est autorisé à interroger (variable de configuration).

action_client_retirer_serveur_dist() : void

Cette action est réservée aux webmestres. Elle nécessite un seul argument, l'identifiant du serveur à retirer.

Tags
uses
serveur_boussole_retirer()

action_client_supprimer_boussole_dist()

Cette action permet au site client de supprimer de sa base de données, de façon sécurisée, une boussole donnée.

action_client_supprimer_boussole_dist() : void

Cette action est réservée aux webmestres. Elle nécessite un seul argument, l'identifiant de la boussole.

Tags
uses
boussole_decharger()

action_client_synchroniser_site_dist()

Cette action permet de synchroniser un site référencé dans la base du client et de synchroniser ses données avec le site idoine (de même id_syndic) de la boussole associée.

action_client_synchroniser_site_dist() : void

Cette action est réservée aux webmestres. Elle nécessite deux arguments, l'id du site et l'identifiant de la boussole. Les données synchronisées sont :

  • le nom du site
  • le descriptif du site

boussole_declarer_tables_principales()

Déclaration des nouvelles tables de la base de données propres au plugin.

boussole_declarer_tables_principales(array<string|int, mixed> $tables_principales) : array<string|int, mixed>

Le plugin déclare deux nouvelles tables qui sont :

  • spip_boussoles, qui contient les éléments constitutifs des boussoles,
  • spip_boussoles_extras, qui contient les traductions de ces éléments.
Parameters
$tables_principales : array<string|int, mixed>

Tableau global décrivant la structure des tables de la base de données

Tags
pipeline

declarer_tables_principales

Return values
array<string|int, mixed>

Tableau fourni en entrée et mis à jour avec les nouvelles déclarations

boussole_declarer_tables_interfaces()

Déclaration des informations tierces (alias, traitements, jointures, etc) sur les tables de la base de données modifiées ou ajoutées par le plugin.

boussole_declarer_tables_interfaces(array<string|int, mixed> $interface) : array<string|int, mixed>

Le plugin se contente de déclarer les alias des tables qu'il ajoute ainsi que des traitements classiques sur les champs ajoutés de type url et texte.

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

Tableau global des informations tierces sur les tables de la base de données

Tags
pipeline

declarer_tables_interfaces

Return values
array<string|int, mixed>

Tableau fourni en entrée et mis à jour avec les nouvelles informations

boussole_upgrade()

Installation du schéma de données propre au plugin et gestion des migrations suivant les évolutions du schéma.

boussole_upgrade(string $nom_meta_base_version, string $version_cible) : void

Le schéma comprend des tables et des variables de configuration.

Parameters
$nom_meta_base_version : string

Nom de la meta dans laquelle sera rangée la version du schéma

$version_cible : string

Version du schéma de données en fin d'upgrade

Tags
see
boussole_declarer_tables_principales()
see
boussole_declarer_tables_interfaces()

boussole_vider_tables()

Suppression de l'ensemble du schéma de données propre au plugin, c'est-à-dire les tables et les variables de configuration.

boussole_vider_tables(string $nom_meta_base_version) : void
Parameters
$nom_meta_base_version : string

Nom de la meta dans laquelle sera rangée la version du schéma

maj02_boussole()

Migration du schéma 0.1 au 0.2.

maj02_boussole() : void

Ajout de la table spip_boussoles_extras et suppression des boussoles autres que la boussole "spip" car il n'est pas possible de les mettre à jour, leur serveur n'étant pas connu.

maj03_boussole()

Migration du schéma 0.2 au 0.3.

maj03_boussole(array<string|int, mixed> $defaut_config) : void

Les globales $serveur_boussoles_disponibles et $client_serveurs_disponibles sont transférées dans des variables de configuration

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

Configuration par défaut supplémentaire ajoutée pour ce schéma. Si le site a déjà personnalisé les globales la configuration par défaut sera écrasée par celle des globales migrées.

maj04_boussole()

Migration du schéma 0.3 au 0.4.

maj04_boussole(array<string|int, mixed> $defaut_config) : void

La constante _BOUSSOLE_ALIAS_SERVEUR est transformée en deux variables de configuration, l'une pour l'activité de la fonction serveur et l'autre pour le nom du serveur.

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

Configuration par défaut supplémentaire ajoutée pour ce schéma. Si le site est déjà un serveur, la configuration par défaut sera écrasée par celle de la constante migrée.

maj05_boussole()

Migration du schéma 0.4 au 0.5.

maj05_boussole(string $url_serveur_spip) : void

Le serveur de boussoles spip passe en https.

Parameters
$url_serveur_spip : string

URL du serveur spip

autoriser_boussole_dist()

Autorisation minimale d'utiliser le plugin Boussole.

autoriser_boussole_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
  • il faut être admin complet
Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

autoriser_boussoles_voir_dist()

Autorisation de voir la liste des boussoles et des serveurs.

autoriser_boussoles_voir_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
  • il faut avoir l'autorisation minimale d'utiliser la Boussole
Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

autoriser_boussole_voir_dist()

Autorisation de voir la page d'une boussole.

autoriser_boussole_voir_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
  • il faut avoir l'autorisation minimale d'utiliser la Boussole
Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

autoriser_boussole_declarerserveur_dist()

Autorisation d'ajout d'un serveur dans la liste des serveurs accessibles par le site client.

autoriser_boussole_declarerserveur_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

autoriser_boussole_retirerserveur_dist()

Autorisation de retrait d'un serveur dans la liste des serveurs accessibles par le site client.

autoriser_boussole_retirerserveur_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

autoriser_boussole_ajouterdansclient_dist()

Autorisation d'ajout d'une boussole dans la base d'un client.

autoriser_boussole_ajouterdansclient_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

autoriser_boussole_modifierdansserveur_dist()

Autorisation de modifier l'affichage d'une boussole, à savoir, l'ordre des groupes et des sites, la visibilité des sites.

autoriser_boussole_modifierdansserveur_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool

Cette configuration est associée à la boussole pour le serveur et sera renvoyée aux sites client demandeurs.

Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

autoriser_boussole_importer_dist()

Autorisation d'importer les sites d'une boussole dans la liste des sites référencés.

autoriser_boussole_importer_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

autoriser_boussole_servir_dist()

Autorisation pour un site de répondre aux requêtes des clients.

autoriser_boussole_servir_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool

Pour cela:

  • le plugins REST Factory doit être activé
  • le mode serveur doit être actif sur le site.
Parameters
$faire : string

Action demandée

$type : string

Type d'objet sur lequel appliquer l'action

$id : int

Identifiant de l'objet

$qui : array<string|int, mixed>

Description de l'auteur demandant l'autorisation

$opt : array<string|int, mixed>

Options de cette autorisation

Return values
bool

true s'il a le droit, false sinon

balise_BOUSSOLE_INFOS()

Compilation de la balise `#BOUSSOLE_INFOS` retournant les informations générales sur une boussole.

balise_BOUSSOLE_INFOS(Champ $p) : Champ

La balise #BOUSSOLE_INFOS renvoie :

  • le tableau des infos contenues dans la meta boussole_infos_xxx si l'alias "xxx" est fourni,
  • la liste de tous les tableaux d'infos des meta boussole_infos_* sinon.

La liste des informations disponibles est la suivante :

  • 'logo' : l'url du logo de la boussole
  • 'version' : la version de la boussole
  • 'fournisseur' : le fournisseur de la boussole
  • 'sha' : sha256 du fichier cache de la boussole
  • 'alias' : alias de la boussole
  • 'demo' : url de la page de démo de la boussole
  • 'nbr_sites' : nombre de sites intégrés dans la boussole
  • 'maj' : date de la dernière mise à jour des informations
Parameters
$p : Champ

Pile au niveau de la balise.

Tags
balise
uses
calcul_boussole_infos()
example

#BOUSSOLE_INFOS{spip}|table_valeur{logo} renvoie l'url du logo de la boussole "spip"

Return values
Champ

Pile complétée par le code à générer.

calcul_boussole_infos()

Récupération des informations sur une boussole donnée ou sur toutes les boussoles installées.

calcul_boussole_infos(string $boussole) : array<string|int, mixed>

Les informations retournées pour une boussole d'alias "xxx" sont celles stockées dans la meta boussole_infos_xxx auxquelles on adjoint la date de la dernière mise à jour de cette meta.

Parameters
$boussole : string

Alias de la boussole ou chaine vide

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

Tableau de la ou des boussoles installées. Si l'alias de la boussole est erroné, la fonction retourne un tableau vide

boussole_traduire()

Traduction d'un champ d'une boussole, d'un groupe de sites ou d'un site.

boussole_traduire(string $boussole, string $champ[, null|string $objet = '' ]) : string
Parameters
$boussole : string

Alias de la boussole

$champ : string

Champ à traduire. La liste des champs possibles est :

  • 'nom_boussole', 'slogan_boussole', 'descriptif_boussole' pour un objet boussole
  • 'nom_groupe', 'slogan_groupe' pour un objet groupe
  • 'nom_site', 'slogan_site', 'descriptif_site', 'nom_slogan_site' pour un objet site
$objet : null|string = ''

Identifiant d'un objet groupe ou site. Vide pour la traduction d'un champ d'un objet boussole

Tags
filtre
used-by
formulaires_importer_boussole_traiter_dist()
Return values
string

Champ traduit dans la langue du site

boussole_logo_topnav()

Renvoie chemin nom du logo topnav à partir du chemin du logo de la boussole.

boussole_logo_topnav(string $logo) : string

Le nom du logo est en fait suffixé par -topnav.

Parameters
$logo : string

URL du logo de boussole.

Tags
filtre
Return values
string

URL du logo topnav de la même boussole.

boussole_affiche_milieu()

Affichage, dans la fiche d'un objet site, d'un bloc identifiant la boussole à laquelle appartient le site édité.

boussole_affiche_milieu(array<string|int, mixed> $flux) : array<string|int, mixed>
Parameters
$flux : array<string|int, mixed>

Flux fourni en entrée au pipeline

Tags
pipeline

affiche_milieu

Return values
array<string|int, mixed>

Flux éventuellement complété

boussole_affiche_gauche()

Affiche dans la page d'accueil des sites référencés un raccourci pour importer l'ensemble des sites d'une boussole déjà installée.

boussole_affiche_gauche(array<string|int, mixed> $flux) : array<string|int, mixed>
Parameters
$flux : array<string|int, mixed>

Flux fourni en entrée au pipeline

Tags
pipeline

affiche_gauche

Return values
array<string|int, mixed>

Flux éventuellement complété

boussole_post_edition()

Permet de déclencher la mise à jour de la boussole si un site de la base appartenant à cette boussole est refusé ou réhabilité si il était déjà refusé.

boussole_post_edition(array<string|int, mixed> $flux) : array<string|int, mixed>
Parameters
$flux : array<string|int, mixed>

Flux fourni au pipeline

Tags
pipeline

post_edition

Return values
array<string|int, mixed>

Flux d'entrée sans modification.

boussole_liste_ezcollection()

Déclare la collection boussoles à l'API d'ezrest.

boussole_liste_ezcollection(array<string|int, mixed> $collections) : array<string|int, mixed>
Parameters
$collections : array<string|int, mixed>

Configuration des collections déjà déclarées.

Tags
pipeline

liste_ezcollection

Return values
array<string|int, mixed>

Collections complétées.

boussole_cache_configurer()

Renvoie la configuration spécifique des caches gérés par Boussole.

boussole_cache_configurer(string $plugin) : array<string|int, mixed>
Parameters
$plugin : string

Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.

Return values
array<string|int, mixed>

Tableau de la configuration brute du plugin.

boussoles_api_verifier_contexte()

Détermine si le serveur est capable de répondre aux requêtes SVP.

boussoles_api_verifier_contexte(array<string|int, mixed> &$erreur) : bool

Pour cela on vérifie si le serveur a été activé et qu'il est prêt à répondre.

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

Tableau initialisé avec les index identifiant l'erreur ou vide si pas d'erreur. Les index mis à jour sont uniquement les suivants car les autres sont initialisés par l'appelant :

  • type : identifiant de l'erreur 501, soit runtime_nok
  • element : type d'objet sur lequel porte l'erreur, soit serveur
  • valeur : la valeur du mode runtime
Return values
bool

true si la valeur est valide, false sinon.

boussoles_collectionner()

Récupère la liste boussoles avec toutes les informations possibles y compris leur nom en mode balise multi.

boussoles_collectionner(array<string|int, mixed> $conditions, array<string|int, mixed> $filtres, array<string|int, mixed> $configuration) : array<string|int, mixed>
Parameters
$conditions : array<string|int, mixed>

Conditions à appliquer au select

$filtres : array<string|int, mixed>

Tableau des critères de filtrage additionnels à appliquer au select.

$configuration : array<string|int, mixed>

Configuration de la collection utile pour savoir quelle fonction appeler pour construire chaque filtre.

Return values
array<string|int, mixed>

Tableau des boussoles dont l'index est l'identifiant de la boussole.

boussoles_ressourcer()

Retourne la description complète d'une boussole (sites, traductions, logos).

boussoles_ressourcer(string $boussole, array<string|int, mixed> $filtres, array<string|int, mixed> $configuration) : array<string|int, mixed>
Parameters
$boussole : string

Identifiant de la boussole.

$filtres : array<string|int, mixed>

Tableau des critères de filtrage additionnels à appliquer au select.

$configuration : array<string|int, mixed>

Configuration de la collection utile pour savoir quelle fonction appeler pour construire chaque filtre.

Return values
array<string|int, mixed>

La description de la boussole, de ses sites et toutes les traductions associées.

formulaires_ajouter_boussole_charger_dist()

Chargement des données : le formulaire propose la liste des boussoles accessibles à partir des serveurs que le site client a déclaré.

formulaires_ajouter_boussole_charger_dist() : array<string|int, mixed>
Tags
uses
boussole_lister_disponibilites()
uses
serveur_boussole_est_spip()
Return values
array<string|int, mixed>

Le tableau des données à charger par le formulaire :

  • 'boussole' : l'alias de la boussole choisie
  • '_boussoles' : la liste des boussoles accessibles

formulaires_ajouter_boussole_traiter_dist()

Exécution de l'action du formulaire : la boussole choisie est chargée en base en utilisant le fournisseur adéquat.

formulaires_ajouter_boussole_traiter_dist() : array<string|int, mixed>
Tags
uses
boussole_charger()
uses
erreur_boussole_expliquer()
Return values
array<string|int, mixed>

Tableau retourné par le formulaire contenant toujours un message de bonne exécution ou d'erreur. L'indicateur editable est toujours à vrai.

formulaires_configurer_boussole_serveur_charger()

Chargement des données : le formulaire permet d'activer la fonction serveur et d'en saisir l'identifiant.

formulaires_configurer_boussole_serveur_charger() : array<string|int, mixed>
Return values
array<string|int, mixed>

Le tableau des données à charger par le formulaire et l'indicateur éditable qui est mis à false si le plugin REST Factory n'est pas actif.

formulaires_configurer_boussole_serveur_verifier()

Vérification des saisies : si on active la fonction serveur, il est obligatoire de saisir un identifiant et que celui-ci soit différent du serveur spip si on est sur un site différent.

formulaires_configurer_boussole_serveur_verifier() : array<string|int, mixed>
Tags
uses
serveur_boussole_est_spip()
Return values
array<string|int, mixed>

formulaires_declarer_serveur_boussole_verifier_dist()

Vérification des saisies : - l'url est non vide, - bien formée, - ne correspond pas à celui de spip - et que le serveur désigné fourni bien au moins une boussole.

formulaires_declarer_serveur_boussole_verifier_dist() : array<string|int, mixed>
Tags
uses
serveur_boussole_est_spip()
uses
erreur_boussole_expliquer()
Return values
array<string|int, mixed>

formulaires_declarer_serveur_boussole_traiter_dist()

Exécution de l'action du formulaire : déclaration du serveur de boussoles.

formulaires_declarer_serveur_boussole_traiter_dist() : array<string|int, mixed>
Tags
uses
serveur_boussole_declarer()
Return values
array<string|int, mixed>

Tableau retourné par le formulaire contenant toujours un message de bonne exécution ou d'erreur. L'indicateur editable est toujours à vrai.

formulaires_editer_boussole_charger()

Chargement des données : le formulaire affiche les sites de la boussole, classés par groupe.

formulaires_editer_boussole_charger(string $boussole) : array<string|int, mixed>

Il est possible de cacher un site, changer son rang voire changer le rang d'un groupe.

Parameters
$boussole : string

Identifiant de la boussole

Return values
array<string|int, mixed>

Le tableau des données à charger par le formulaire :

  • 'alias' : l'identifiant de la boussole à éditer

formulaires_editer_boussole_traiter()

Exécution de l'action du formulaire : chaque action sur la boussole est enregistrée dans la base de données.

formulaires_editer_boussole_traiter(string $boussole) : array<string|int, mixed>
Parameters
$boussole : string

Identifiant de la boussole

Return values
array<string|int, mixed>

Tableau retourné par le formulaire contenant toujours un message de bonne exécution ou d'erreur. L'indicateur editable est toujours à vrai.

formulaires_importer_boussole_charger_dist()

Chargement des données : le formulaire propose la liste des boussoles accessibles à partir des serveurs que le site client a déclaré.

formulaires_importer_boussole_charger_dist() : array<string|int, mixed>
Return values
array<string|int, mixed>

Le tableau des données à charger par le formulaire :

formulaires_importer_boussole_verifier_dist()

Vérification des saisies : si on active la fonction serveur, il est obligatoire de saisir un identifiant et que celui-ci soit différent du serveur spip si on est sur un site différent.

formulaires_importer_boussole_verifier_dist() : array<string|int, mixed>
Return values
array<string|int, mixed>

Le tableau des messages d'erreur ou vide si ok.

formulaires_importer_boussole_traiter_dist()

Exécution de l'action du formulaire : les sites de la boussole choisie sont importés dans la base.

formulaires_importer_boussole_traiter_dist() : array<string|int, mixed>
Tags
uses
boussole_actualiser()
uses
importer_sites_boussole()
uses
boussole_traduire()
Return values
array<string|int, mixed>

Tableau retourné par le formulaire contenant toujours un message de bonne exécution ou d'erreur. L'indicateur editable est toujours à vrai.

importer_sites_boussole()

Importe les sites d'une boussole dans une rubrique donnée.

importer_sites_boussole(string $boussole, int $id_parent[, null|bool $langue_site = true ][, null|bool $forcer_statut_publie = false ]) : int
Parameters
$boussole : string

Identifiant de la boussole

$id_parent : int

Id de la rubrique parente

$langue_site : null|bool = true

Indique que seule la langue du site est importée

$forcer_statut_publie : null|bool = false

Indique que le statut des sites créés est forcé à publié

Tags
used-by
formulaires_importer_boussole_traiter_dist()
Return values
int

Nombre de sites importés.

genie_boussole_actualiser_client_dist()

Ce CRON permet mettre à jour les boussoles.

genie_boussole_actualiser_client_dist(int $last) : int
Parameters
$last : int

Timestamp de la date de dernier appel de la tâche.

Tags
uses
boussole_actualiser()
Return values
int

Retour de la fonction toujours à 1

boussole_taches_generales_cron()

Activation du CRON de mise à jour des statistiques de plugins.

boussole_taches_generales_cron(array<string|int, mixed> $taches_generales) : array<string|int, mixed>
Parameters
$taches_generales : array<string|int, mixed>

Liste des taches à compléter

Return values
array<string|int, mixed>

Liste des taches mise à jour

boussole_actualiser()

Mise à jour en base de données d'une liste ou de toutes les boussoles installées.

boussole_actualiser([null|array<string|int, mixed> $boussoles = [] ]) : void
Parameters
$boussoles : null|array<string|int, mixed> = []

Tableau des identifiants des boussoles à actualiser ou tableau vide pour toutes les boussoles

Tags
uses
boussole_lire_consignation()
uses
boussole_identifier_fournisseur()
uses
boussole_charger()
used-by
action_client_actualiser_boussoles_dist()
used-by
formulaires_importer_boussole_traiter_dist()
used-by
genie_boussole_actualiser_client_dist()

boussole_charger()

Charge en base de donnée une boussole connue par son identifiant.

boussole_charger(string $boussole[, null|array<string|int, mixed> $fournisseur = [] ]) : array<string|int, mixed>

Par défaut, la boussole est récupérée soit depuis un site serveur via une API REST motorisée par REST Factory soit est fournie en local par un plugin.

Parameters
$boussole : string

Identifiant de la boussole

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

Type et identifiant du fournisseur. Si omis, la fonction va le rechercher.

Tags
uses
boussole_lire_consignation()
uses
boussole_identifier_fournisseur()
uses
boussole_est_disponible()
uses
boussole_acquerir()
uses
boussole_phraser()
uses
boussole_decharger()
uses
boussole_ecrire_consignation()
note

Le message de retour reflète soit l'ajout ou l'actualisation de la boussole, soit l'erreur rencontrée. Les erreurs possibles sont :

  • celles retournées par la fonction de phrasage du XML, phraser_xml_boussole(),
  • une erreur d'écriture en base de données.
used-by
formulaires_ajouter_boussole_traiter_dist()
used-by
boussole_actualiser()
Return values
array<string|int, mixed>

Bloc de retour dont les index sont comparables à ceux de l'API ezrest. Ainsi, le statut de retour vaut 200 si tout c'est bien passé.

boussole_lire_consignation()

Renvoie les informations de consignation d'une ou de toutes les boussoles chargées.

boussole_lire_consignation([null|string $boussole = '' ]) : array<string|int, mixed>

La fonction lit les metas directement dans la base sans passer par le cache metas.

Parameters
$boussole : null|string = ''

Identifiant de la boussole ou vide pour toutes les boussoles

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

Les informations de consignation d'une boussole ou de toutes les boussoles.

boussole_ecrire_consignation()

Consigne un chargement de boussole ou l'efface.

boussole_ecrire_consignation(string $boussole[, null|array<string|int, mixed> $consignation = [] ]) : bool
Parameters
$boussole : string

Identifiant de la boussole

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

Tableau de consignation du chargement de la boussole. Si vide ou non fourni provoque l'effacement de la consignation.

Tags
used-by
boussole_charger()
used-by
boussole_decharger()
Return values
bool

true si ok, false sinon (identifiant de boussole vide)

boussole_identifier_fournisseur()

Renvoie le fournisseur sous sa forme tabulaire à partir de la consignation d'une boussole.

boussole_identifier_fournisseur(array<string|int, mixed> $consignation) : array<string|int, mixed>

Cette fonction gère la transition entre le nouveau format du fournisseur et l'ancien.

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

Tableau des informations de consignation d'une boussole

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

Tableau des informations sur le fournisseur.

boussole_est_disponible()

Détermine si une boussole est disponible soit par API REST auprès d'un serveur ou soit via un plugin installé localement.

boussole_est_disponible(string $boussole, array<string|int, mixed> &$fournisseur) : bool

On privilégie le serveur qui est réputé plus à jour.

Parameters
$boussole : string

Identifiant de la boussole

$fournisseur : array<string|int, mixed>

Tableau identifiant le fournisseur:

  • type : serveur ou plugin
  • id : l'identifiant du serveur ou le préfixe du plugin
Tags
uses
boussole_lister_disponibilites()
used-by
boussole_charger()
Return values
bool

true si la boussole est disponible, false sinon. Le fournisseur est retourné dans l'argument de sortie $fournisseur

boussole_lister_disponibilites()

Renvoie, pour le site courant, la liste des boussoles disponibles au chargement.

boussole_lister_disponibilites() : array<string|int, mixed>

La fonction détermine les boussoles accessibles par serveur et celles mise à disposition par des plugins activés.

Tags
uses
serveur_boussole_lister_disponibilites()
uses
boussole_lire_consignation()
uses
boussole_compiler_traductions()
used-by
formulaires_ajouter_boussole_charger_dist()
used-by
boussole_est_disponible()
Return values
array<string|int, mixed>

Tableau des boussoles disponibles. Pour chaque boussole on indique le fournisseur, serveur ou plugin.

inc_boussole_acquerir_dist()

Acquiert une boussole ou la liste des boussoles d'un serveur.

inc_boussole_acquerir_dist(string $serveur, string $boussole, array<string|int, mixed> &$erreur) : array<string|int, mixed>

La fonction utilise un cache pour éviter de requêter le serveur à chaque appel.

Parameters
$serveur : string

Identifiant ou URL du serveur

$boussole : string

Identifiant d'une boussole à acquérir ou vide si on souhaite acquérir la liste des boussoles.

$erreur : array<string|int, mixed>

Tableau descriptif de l'erreur

Tags
uses
tester_url_absolue()
uses
identifiant_slug()
uses
cache_est_valide()
uses
cache_lire()
uses
cache_ecrire()
uses
boussole_requeter()
Return values
array<string|int, mixed>

Configuration d'une boussole ou liste des boussoles d'un serveur.

xml_boussole_extraire_attributs()

Extraire les attributs d'une balise XML.

xml_boussole_extraire_attributs(SimpleXMLElement $xml_element) : array<string|int, mixed>
Parameters
$xml_element : SimpleXMLElement

Contenu XML décodé sous la forme d'un objet.

Return values
array<string|int, mixed>

Liste des attributs sous la forme [attribut] = valeur.

logo_boussole_identifier()

Identifier le logo de la boussole.

logo_boussole_identifier(string $boussole, string $type_objet[, null|string $objet = '' ]) : string
Parameters
$boussole : string

Identifiant de la boussole

$type_objet : string

Type d'objet pour lequel on veut récupérer le logo (boussole, site)

$objet : null|string = ''

Identifiant de l'objet (uniquement pour une site)

Return values
string

URL Absolue du logo de l'objet concerné (boussole ou site)

boussole_compiler_traductions()

Compile les traductions du nom, slogan et description d'une boussole, d'un groupe ou d'uns site.

boussole_compiler_traductions(string $boussole, string $type_objet, string $objet) : array<string|int, mixed>

La fonction renvoie une balise pour chaque traduction.

Parameters
$boussole : string

Identifiant de la boussole

$type_objet : string

Type d'objet pour lequel on veut récupérer le logo (boussole, site)

$objet : string

Identifiant de l'objet (boussole, site)

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

Tableau des traductions

erreur_boussole_expliquer()

Renvoie le message de retour ou d'erreur compilé à partir du tableau d'erreur fourni en argument.

erreur_boussole_expliquer(array<string|int, mixed> $erreur) : string
Parameters
$erreur : array<string|int, mixed>

Tableau descriptif de l'erreur

Tags
used-by
formulaires_ajouter_boussole_traiter_dist()
used-by
formulaires_declarer_serveur_boussole_verifier_dist()
Return values
string

Message d'erreur compilé à partir de l'erreur.

inc_iconifier_site_dist()

Remplace ou ajoute un logo au site. L'image source est connue par son url.

inc_iconifier_site_dist(int $id_site, string $mode, string $url_image) : void
Parameters
$id_site : int

Id du site concerné.

$mode : string

Le type de l'icone, "on" pour le logo de base, ou "off" pour le survol.

$url_image : string

Url de l'image source destinée à devenir le logo du site.

Tags
throws
JsonException

serveur_boussole_identifier()

Renvoie, pour le site courant, son identifiant de serveur de boussoles.

serveur_boussole_identifier() : string

Le site doit être configuré comme serveur de boussole.

Return values
string

Identifiant du serveur ou vide si le site n'est pas configuré comme un serveur

serveur_boussole_est_spip()

Détermine si le serveur connu par son identifiant ou par son url est le serveur officiel de SPIP fournbissant la boussole SPIP.

serveur_boussole_est_spip([null|string $serveur = '' ]) : bool
Parameters
$serveur : null|string = ''

Identifiant ou URL du serveur à vérifier. Si une URL est passée à la fonction, celle-ci considère qu'elle est, a priori, bien formée. Si l'identifiant est vide, la fonction utilise l'adresse du site courant

Tags
used-by
formulaires_ajouter_boussole_charger_dist()
used-by
formulaires_configurer_boussole_serveur_verifier()
used-by
formulaires_declarer_serveur_boussole_verifier_dist()
Return values
bool

true si le serveur correspond à celui de spip ou false sinon.

serveur_boussole_declarer()

Ajoute un serveur et son url dans la liste des serveurs disponibles, donc accessibles par l'API REST.

serveur_boussole_declarer(string $serveur, string $url) : bool
Parameters
$serveur : string

Identifiant du serveur

$url : string

URL de base du serveur (adresse du site)

Tags
used-by
formulaires_declarer_serveur_boussole_traiter_dist()
Return values
bool

true si la déclaration est ok, false sinon (par exemple, si le serveur ou l'url est vide).

serveur_boussole_retirer()

Retire une serveur désigné par son identifiant de la liste des serveurs accessibles par le site courant.

serveur_boussole_retirer(string $serveur) : bool

Il n'est pas possible de supprimer le serveur officiel spip.

Parameters
$serveur : string

Identifiant du serveur

Tags
used-by
action_client_retirer_serveur_dist()
Return values
bool

true si le serveur, false sinon (par exemple, si le serveur est spip ou l'identifiant est erronné).

serveur_boussole_lister_disponibilites()

Renvoie, pour le site courant, la liste des serveurs déclarés, donc disponibles via l'API REST.

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

Tableau des serveurs disponibles. Pour chaque serveur on renvoie l'url de base.

Search results