Documentation du code de SPIP et de ses plugins

SVP

Application

Table of Contents

Constants

_SVP_PAGES_OBJET_PUBLIQUES  = ''

Functions

action_editer_depot_dist()  : array<string|int, mixed>
Action de mise à jour des descriptions d'un dépot
depots_set()  : string
Appelle toutes les fonctions de modification d'un dépot $err est de la forme '&trad_err=1'
exec_admin_plugin_dist()  : mixed
Affichage de la page de gestion des plugins
svp_presenter_actions_realisees()  : string
Retourne un texte des actions realisées s'il y en a eu tel que activation, désactivation, téléchargement de plugins... Nettoie au passage le fichier de cache décrivant les actions faites (ou encore à faire) dans les cas suivant : - il n'y a plus d'action - le nettoyage est expressement demandé par la commande 'nettoyer_actions' dans l'URL (ce lien est justement disponible si l'auteur des actions tombe sur cette page alors qu'il reste des actions à faire, ce qui signale en général un problème)
plugins_infos_plugin()  : mixed
info_plugin_normalise_necessite()  : array<string|int, mixed>
Normaliser les description des balises `necessite`
info_plugin_normalise_utilise()  : array<string|int, mixed>
Normaliser la description des utilise
info_plugin_normalise_procure()  : array<string|int, mixed>
Normaliser la description des procurations
info_plugin_normalise_chemin()  : array<string|int, mixed>
Normaliser la description du chemin
svp_afficher_intervalle()  : string
Retourne un texte expliquant l'intervalle de compatibilité avec un plugin ou SPIP
svp_afficher_etat()  : string
Traduit un type d'état de plugin
svp_afficher_dependances()  : string
Retourne un texte HTML présentant la liste des dépendances d'un plugin
svp_afficher_credits()  : string
Retourne un texte HTML présentant les crédits d'un plugin
svp_afficher_langues()  : string
Retourne un texte HTML présentant la liste des langues et traducteurs d'un plugin
svp_traduire_type_depot()  : string
Traduit un type de dépot de plugin
svp_calculer_url_demo()  : string
Calcule l'url exacte d'un lien de démo en fonction de son écriture
critere_compatible_spip_dist()  : void
Critère de compatibilité avec une version précise ou une branche de SPIP ou une liste de branches séparées par une virgule.
filtre_construire_recherche_plugins()  : array<string|int, mixed>
Retourne la liste des plugins trouvés par une recherche
filtre_svp_periode_actualisation_depots()  : int
Retourne le nombre d'heures entre chaque actualisation si le cron est activé.
denormaliser_version()  : string
Retourne 'x.y.z' à partir de '00x.00y.00z'
test_plugins_auto()  : bool
Teste l'utilisation du répertoire auto des plugins.
filtre_svp_diff_xyz()  : string
Compare 2 numéros de versions et indique le composant principal qui change : X, Y ou Z.
filtre_svp_affichage_filtrer_paquets_dist()  : bool
Appel a un pipeline pour filtrer eventuellement l'affichage de certains plugins (ie si on a zen-garden actif, les themes ne sont plus affiches dans la gestion des plugins, mais dans le zen garden)
teleporter_http_deballe_tgz_dist()  : bool|string
Déballer le fichier au format tgz dans le répertoire $dest en utilisant le dossier temporaire $tmp si besoin
teleporter_http_charger_tgz()  : array<string|int, mixed>|bool|int|string
Charger un tgz à partir d'un tableau d'options descriptives
teleporter_http_deballe_zip_dist()  : bool|string
Déballer le fichier au format zip dans le répertoire $dest en utilisant le dossier temporaire $tmp si besoin
teleporter_http_charger_zip()  : array<string|int, mixed>|bool|int|string
Charger un zip à partir d'un tableau d'options descriptives

Constants

Functions

action_editer_depot_dist()

Action de mise à jour des descriptions d'un dépot

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

Liste identifiant du dépot, texte d'erreur éventuel

depots_set()

Appelle toutes les fonctions de modification d'un dépot $err est de la forme '&trad_err=1'

depots_set(int $id_depot) : string
Parameters
$id_depot : int

Identifiant du dépot

Tags
note

Cette fonction ne fait rien actuellement !!

Return values
string

Texte d'une eventuelle erreur

svp_presenter_actions_realisees()

Retourne un texte des actions realisées s'il y en a eu tel que activation, désactivation, téléchargement de plugins... Nettoie au passage le fichier de cache décrivant les actions faites (ou encore à faire) dans les cas suivant : - il n'y a plus d'action - le nettoyage est expressement demandé par la commande 'nettoyer_actions' dans l'URL (ce lien est justement disponible si l'auteur des actions tombe sur cette page alors qu'il reste des actions à faire, ce qui signale en général un problème)

svp_presenter_actions_realisees() : string
Tags
used-by
exec_admin_plugin_dist()
Return values
string

Code HTML présentant les actions réalisées Vide si rien ne s'est passé !

plugins_infos_plugin()

plugins_infos_plugin(mixed $desc[, mixed $plug = '' ][, mixed $dir_plugins = _DIR_PLUGINS ]) : mixed
Parameters
$desc : mixed
$plug : mixed = ''
$dir_plugins : mixed = _DIR_PLUGINS

info_plugin_normalise_necessite()

Normaliser les description des balises `necessite`

info_plugin_normalise_necessite(array<string|int, mixed> $necessite) : array<string|int, mixed>

Ajoute les clés

  • 'nom' (= id)
  • 'compatibilite' (= version)
Parameters
$necessite : array<string|int, mixed>

Liste des necessite trouvés pour le plugin

Tags
note

Un attribut de nom "id" à une signification particulière en XML qui ne correspond pas à l'utilissation qu'en font les plugin.xml.

Pour éviter de complexifier la lecture de paquet.xml qui n'est pour rien dans cette bévue, on doublonne l'information sous les deux index "nom" et "id" dans l'arbre de syntaxe abstraite pour compatibilité, mais seul le premier est disponible quand on lit un paquet.xml, "id" devant être considéré comme obsolète.

Return values
array<string|int, mixed>

Liste des necessite modifiés.

info_plugin_normalise_utilise()

Normaliser la description des utilise

info_plugin_normalise_utilise(array<string|int, mixed> $utilise) : array<string|int, mixed>

Ajoute les clés

  • 'nom' (= id)
  • 'compatibilite' (= version)
Parameters
$utilise : array<string|int, mixed>

Liste des utilise trouvés pour le plugin

Return values
array<string|int, mixed>

Liste des utilise modifiés.

info_plugin_normalise_procure()

Normaliser la description des procurations

info_plugin_normalise_procure(array<string|int, mixed> $procure) : array<string|int, mixed>

Ajoute la cle 'nom' (= id)

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

Liste des procure trouvés pour le plugin

Return values
array<string|int, mixed>

Liste des procure modifiés.

info_plugin_normalise_chemin()

Normaliser la description du chemin

info_plugin_normalise_chemin(array<string|int, mixed> $chemins) : array<string|int, mixed>

Ajoute le clés 'path' (= dir)

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

Liste des chemins trouvés pour le plugin

Return values
array<string|int, mixed>

Liste des chemins modifiés.

svp_afficher_intervalle()

Retourne un texte expliquant l'intervalle de compatibilité avec un plugin ou SPIP

svp_afficher_intervalle(string $intervalle, string $logiciel) : string

Retourne par exemple "2.0 <= SPIP < 3.1"

Parameters
$intervalle : string

L'intervalle tel que déclaré dans paquet.xml. Par exemple "[2.1;3.0.*]"

$logiciel : string

Nom du plugin pour qui est cette intervalle

Return values
string

Texte expliquant l'intervalle

svp_afficher_etat()

Traduit un type d'état de plugin

svp_afficher_etat(string $etat) : string

Si l'état n'existe pas, prendra par défaut 'developpement'

Parameters
$etat : string

Le type d'état (stable, test, ...)

Tags
see
plugin_etat_en_clair()
Return values
string

Traduction de l'état dans la langue en cours

svp_afficher_dependances()

Retourne un texte HTML présentant la liste des dépendances d'un plugin

svp_afficher_dependances(string $balise_serialisee[, string $dependance = 'necessite' ][, string $sep = '<br />' ][, string $lien = 'local' ]) : string

Des liens vers les plugins dépendants sont présents lorsque les plugins en dépendance sont connus dans notre base.

Parameters
$balise_serialisee : string

Informations des dépendances (tableau sérialisé) tel que stocké en base dans la table spip_paquets

$dependance : string = 'necessite'

Type de dépendances à afficher (necessite ou utilise). Une autre valeur indique qu'on demande la liste des librairies dépendantes.

$sep : string = '<br />'

Séparateur entre les noms de dépendances

$lien : string = 'local'

Type de lien affecté au plugin référencé dans la base locale. Prend les valeurs :

  • local : le lien pointe vers la page publique du plugin sur le site lui-même. Il faut donc que le site propose des pages publiques pour les plugins sinon une 404 sera affichée;
  • pluginspip : le lien pointe vers la page du plugin sur le site de référence Plugins SPIP;
  • non : aucun lien n'est affiché.
Tags
uses
svp_afficher_intervalle()
Return values
string

Texte informant des dépendances

svp_afficher_credits()

Retourne un texte HTML présentant les crédits d'un plugin

svp_afficher_credits(string $balise_serialisee[, string $sep = ', ' ]) : string

Des liens vers les crédits sont présents lorsqu'ils sont déclarés dans le paquet.xml.

Parameters
$balise_serialisee : string

Informations des crédits (tableau sérialisé) tel que stocké en base dans la table spip_paquets

$sep : string = ', '

Séparateur entre les différents crédits

Return values
string

Texte informant des crédits

svp_afficher_langues()

Retourne un texte HTML présentant la liste des langues et traducteurs d'un plugin

svp_afficher_langues(array<string|int, mixed> $langues[, string $sep = ', ' ]) : string

Des liens vers les traducteurs sont présents lorsqu'ils sont connus.

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

Tableau code de langue => traducteurs

$sep : string = ', '

Séparateur entre les différentes langues

Return values
string

Texte informant des langues et traducteurs

svp_traduire_type_depot()

Traduit un type de dépot de plugin

svp_traduire_type_depot(string $type) : string
Parameters
$type : string

Type de dépot (svn, git, manuel)

Return values
string

Titre complet et traduit du type de dépot

svp_calculer_url_demo()

Calcule l'url exacte d'un lien de démo en fonction de son écriture

svp_calculer_url_demo(string $url_demo[, bool $url_absolue = false ]) : string
Parameters
$url_demo : string

URL de démonstration telle que saisie dans le paquet.xml

$url_absolue : bool = false

Indique que seules les url absolues doivent être retournées par la fonction. Tous les autres types d'url renvoient une chaine vide

Return values
string

URL calculée en fonction de l'URL d'entrée

critere_compatible_spip_dist()

Critère de compatibilité avec une version précise ou une branche de SPIP ou une liste de branches séparées par une virgule.

critere_compatible_spip_dist(string $idb, array<string|int, mixed> &$boucles, Critere $crit) : void

Fonctionne sur les tables spip_paquets et spip_plugins. Si aucune valeur n'est explicité dans le critère on interroge le contexte pour trouver une variable compatible_spip et sinon tous les objets sont retournés.

Le ! (NOT) ne fonctionne que sur une branche ou une liste de branches SPIP.

Parameters
$idb : string

Identifiant de la boucle

$boucles : array<string|int, mixed>

AST du squelette

$crit : Critere

Paramètres du critère dans cette boucle

Tags
critere
example

{compatible_spip} {compatible_spip 2.0.8} ou {compatible_spip 1.9} {compatible_spip #ENV{vers}} ou {compatible_spip #ENV{vers, 1.9.2}} {compatible_spip #GET{vers}} ou {compatible_spip #GET{vers, 2.1}} {compatible_spip '2.0,2.1'} {!compatible_spip 2.0} {!compatible_spip '2.0,2.1'} {!compatible_spip #ENV{vers}} ou {!compatible_spip #GET{vers}}

filtre_construire_recherche_plugins()

Retourne la liste des plugins trouvés par une recherche

filtre_construire_recherche_plugins([string $phrase = '' ][, string $etat = '' ][, string|int $depot = '' ][, bool|string $afficher_exclusions = true ][, bool|string $afficher_doublons = false ]) : array<string|int, mixed>
Parameters
$phrase : string = ''

Texte de la recherche

$etat : string = ''

État de plugin (stable, test...)

$depot : string|int = ''

Identifiant de dépot

$afficher_exclusions : bool|string = true

Afficher aussi les paquets déjà installés (true ou 'oui') ou ceux qui ne le sont pas (false) ?

$afficher_doublons : bool|string = false

Afficher toutes les versions de paquet (true ou 'oui') ou seulement la plus récente (false) ?

Tags
filtre
Return values
array<string|int, mixed>

Tableau classé par pertinence de résultat

  • 'prefixe' => tableau de description du paquet (si pas de doublons demandé)
  • n => tableau de descriptions du paquet (si doublons autorisés)

filtre_svp_periode_actualisation_depots()

Retourne le nombre d'heures entre chaque actualisation si le cron est activé.

filtre_svp_periode_actualisation_depots() : int
Return values
int

Nombre d'heures (sinon 0)

denormaliser_version()

Retourne 'x.y.z' à partir de '00x.00y.00z'

denormaliser_version([string $version_normalisee = '' ]) : string

Retourne la chaine de la version x.y.z sous sa forme initiale, sans remplissage à gauche avec des 0.

Parameters
$version_normalisee : string = ''

Numéro de version normalisée

Tags
see
normaliser_version()
Return values
string

Numéro de version dénormalisée

test_plugins_auto()

Teste l'utilisation du répertoire auto des plugins.

test_plugins_auto() : bool

Ce répertoire permet de télécharger dedans des plugins lorsqu'il est présent.

Return values
bool

Le répertoire de chargement des plugins auto est-il présent et utilisable ?

filtre_svp_diff_xyz()

Compare 2 numéros de versions et indique le composant principal qui change : X, Y ou Z.

filtre_svp_diff_xyz(string $version1, string $version2) : string
Parameters
$version1 : string

Numéro de version initial

$version2 : string

Numéro de version à comparer

Tags
note

Ne regarde pas si une version est plus récente qu'une autre, donne juste la différence.

note
  • X = version majeure
  • Y = version mineure
  • Z = patch
see
https://semver.org/
Return values
string

x | y | z ou une chaîne vide si pas de différence ou erreur.

filtre_svp_affichage_filtrer_paquets_dist()

Appel a un pipeline pour filtrer eventuellement l'affichage de certains plugins (ie si on a zen-garden actif, les themes ne sont plus affiches dans la gestion des plugins, mais dans le zen garden)

filtre_svp_affichage_filtrer_paquets_dist(int $id_paquet) : bool
Parameters
$id_paquet : int
Return values
bool

teleporter_http_deballe_tgz_dist()

Déballer le fichier au format tgz dans le répertoire $dest en utilisant le dossier temporaire $tmp si besoin

teleporter_http_deballe_tgz_dist(string $archive, string $dest, string $tmp) : bool|string
Parameters
$archive : string

Chemin du fichier tgz

$dest : string

Répertoire où on veut décompresser

$tmp : string

Répertoire de stockage temporaire

Tags
uses
teleporter_http_charger_tgz()
Return values
bool|string

Répertoire où a été décompressé le tgz, false sinon.

teleporter_http_charger_tgz()

Charger un tgz à partir d'un tableau d'options descriptives

teleporter_http_charger_tgz([array<string|int, mixed> $quoi = [] ]) : array<string|int, mixed>|bool|int|string
Parameters
$quoi : array<string|int, mixed> = []

Tableau d'options

Tags
uses
SpipArchiver
used-by
teleporter_http_deballe_tgz_dist()
Return values
array<string|int, mixed>|bool|int|string

En cas de réussite, Tableau décrivant le zip, avec les index suivant :

  • files : la liste des fichiers présents dans le zip,
  • size : la taille décompressée
  • compressed_size : la taille compressée
  • dirname : répertoire où les fichiers devront être décompréssés
  • tmpname : répertoire temporaire où les fichiers sont décompressés
  • target : cible sur laquelle décompresser les fichiers...

teleporter_http_deballe_zip_dist()

Déballer le fichier au format zip dans le répertoire $dest en utilisant le dossier temporaire $tmp si besoin

teleporter_http_deballe_zip_dist(string $archive, string $dest, string $tmp) : bool|string
Parameters
$archive : string

Chemin du fichier zip

$dest : string

Répertoire où on veut décompresser

$tmp : string

Répertoire de stockage temporaire

Tags
uses
teleporter_http_charger_zip()
Return values
bool|string

Répertoire où a été décompressé le zip, false sinon.

teleporter_http_charger_zip()

Charger un zip à partir d'un tableau d'options descriptives

teleporter_http_charger_zip([array<string|int, mixed> $quoi = [] ]) : array<string|int, mixed>|bool|int|string
Parameters
$quoi : array<string|int, mixed> = []

Tableau d'options

Tags
uses
SpipArchiver
used-by
teleporter_http_deballe_zip_dist()
Return values
array<string|int, mixed>|bool|int|string

En cas de réussite, Tableau décrivant le zip, avec les index suivant :

  • files : la liste des fichiers présents dans le zip,
  • size : la taille décompressée
  • compressed_size : la taille compressée
  • dirname : répertoire où les fichiers devront être décompréssés
  • tmpname : répertoire temporaire où les fichiers sont décompressés
  • target : cible sur laquelle décompresser les fichiers...

        
On this page

Search results