Documentation du code de SPIP et de ses plugins

SVP

svp_depoter_local.php

Traitement du dépot local

Le dépot local est la liste de paquets qui sont présents sur l'hébergement dans un des répertoires de plugins, actifs ou non actifs.

Dans la base, un dépot local est représenté avec un id_dépot nul. Il n'y a cependant pas de ligne spécifique décrivant le dépot local dans la table SQL spip_depots, mais juste des valeurs id_depot=0 dans la table spip_paquets.

Tags
plugin

SVP pour SPIP

license

GPL

Table of Contents

Functions

svp_actualiser_paquets_locaux()  : string
Met à jour les tables SQL paquets et plugins pour qui concerne les paquets locaux (ceux présents sur le site).
svp_descriptions_paquets_locaux()  : array<string|int, mixed>
Calcule la description de chaque paquet local
svp_base_supprimer_paquets_locaux()  : mixed
Supprime tous les paquets et plugins locaux.
svp_base_modifier_paquets_locaux()  : mixed
Actualise les informations en base sur les paquets locaux en ne modifiant que ce qui a changé.
svp_base_inserer_paquets_locaux()  : mixed
Insère en base tous les paquets locaux transmis
svp_adapter_structure_dependances()  : array<string|int, mixed>
Adapte la structure des dépendances d'un paquet xml lu par SPIP à une structure attendue par SVP.
svp_base_actualiser_paquets_actifs()  : mixed
Fait correspondre l'état des métas des plugins actifs & installés avec ceux en base de données dans spip_paquets pour le dépot local
svp_compiler_multis()  : array<string|int, mixed>
Construit le contenu multilangue (tag <multi>) des balises nom, slogan et description à partir des items de langue contenus dans le fichier paquet-prefixe_langue.php
svp_corriger_obsolete_paquets()  : mixed
Met à jour les informations d'obsolescence des paquets locaux.
svp_supprimer_plugins_orphelins()  : array<string|int, mixed>
Supprime les plugins devenus orphelins dans cette liste.
svp_rechercher_maj_version()  : string
Cherche dans les dépots distants un plugin qui serait plus à jour que le prefixe, version et état que l'on transmet
svp_actualiser_maj_version()  : mixed
Actualise l'information 'maj_version' pour tous les paquets locaux

Functions

svp_actualiser_paquets_locaux()

Met à jour les tables SQL paquets et plugins pour qui concerne les paquets locaux (ceux présents sur le site).

svp_actualiser_paquets_locaux([bool $force = false ][, array<string|int, mixed> &$erreurs_xml = [] ]) : string

On ne met à jour que ce qui a changé, sauf si on force le recalcule de toutes les informations locales avec var_mode=vider_paquets_locaux dans l'URL ou en mettant le paramètre $force à true.

Parameters
$force : bool = false
  • false : n'actualise que les paquets modifiés
  • true : efface et recrée la liste de tous les paquets locaux
$erreurs_xml : array<string|int, mixed> = []

Si des erreurs XML sont présentes, elles se retrouvent dans ce tableau

Tags
uses
svp_descriptions_paquets_locaux()
uses
svp_base_supprimer_paquets_locaux()
uses
svp_base_inserer_paquets_locaux()
uses
svp_base_modifier_paquets_locaux()
uses
svp_base_actualiser_paquets_actifs()
used-by
formulaires_admin_plugin_charger_dist()
Return values
string

Temps d'exécution

svp_descriptions_paquets_locaux()

Calcule la description de chaque paquet local

svp_descriptions_paquets_locaux([array<string|int, mixed> &$erreurs_xml = [] ]) : array<string|int, mixed>

Les paquets peuvent être stockés à 3 endroits : plugins, plugins-dist, plugins-supp définis par les constantes respectives _DIR_PLUGINS, _DIR_PLUGINS_DIST, _DIR_PLUGINS_SUPP

Parameters
$erreurs_xml : array<string|int, mixed> = []

Les erreurs XML éventuelles des paquet.xml se retrouvent dedans s'il y en a

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

Descriptions des paquets (intégrant un hash), stockés par constante, puis par chemin. array[_DIR_PLUGIN*][$chemin] = description

svp_base_modifier_paquets_locaux()

Actualise les informations en base sur les paquets locaux en ne modifiant que ce qui a changé.

svp_base_modifier_paquets_locaux(array<string|int, mixed> $paquets_locaux) : mixed
Parameters
$paquets_locaux : array<string|int, mixed>

Descriptions des paquets (intégrant un hash), stockés par constante, puis par chemin. array[_DIR_PLUGIN*][$chemin] = description

Tags
uses
svp_supprimer_plugins_orphelins()
uses
svp_base_inserer_paquets_locaux()
used-by
svp_actualiser_paquets_locaux()

svp_base_inserer_paquets_locaux()

Insère en base tous les paquets locaux transmis

svp_base_inserer_paquets_locaux(array<string|int, mixed> $paquets_locaux) : mixed

De chaque description est extrait la partie plugin (1 seul plugin par préfixe de plugin connu) et la partie paquet (il peut y avoir plusieurs paquets pour un même préfixe de plugin).

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

Descriptions des paquets (intégrant un hash), stockés par constante, puis par chemin. array[_DIR_PLUGIN*][$chemin] = description

Tags
note

On essaie au mieux de faire des requêtes d'insertions multiples, mieux gérées par les moteurs SQL (particulièrement pour SQLite)

uses
plugins_preparer_sql_paquet()
uses
svp_compiler_multis()
uses
eclater_plugin_paquet()
uses
svp_rechercher_maj_version()
uses
svp_corriger_obsolete_paquets()
used-by
svp_actualiser_paquets_locaux()
used-by
svp_base_modifier_paquets_locaux()

svp_adapter_structure_dependances()

Adapte la structure des dépendances d'un paquet xml lu par SPIP à une structure attendue par SVP.

svp_adapter_structure_dependances(array<string|int, mixed> $paquet) : array<string|int, mixed>

C'est à dire, met les necessite, utilises, lib, procure dans une sous clé 0

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

Description d'un paquet

Tags
note

Cette clé 0 indique la description principale du paquet.xml mais d'autres clés semblent pouvoir exister si la balise <spip> est présente dedans

see
svp_phraser_plugin()

côté SVP

see
plugins_fusion_paquet()

côté SVP

see
plugins_get_infos_dist()

côté SPIP (extractions de tous les paquets d'un dossier)

Return values
array<string|int, mixed>

Description d'un paquet adaptée

svp_base_actualiser_paquets_actifs()

Fait correspondre l'état des métas des plugins actifs & installés avec ceux en base de données dans spip_paquets pour le dépot local

svp_base_actualiser_paquets_actifs() : mixed
Tags
used-by
svp_actualiser_paquets_locaux()

svp_compiler_multis()

Construit le contenu multilangue (tag <multi>) des balises nom, slogan et description à partir des items de langue contenus dans le fichier paquet-prefixe_langue.php

svp_compiler_multis(string $prefixe, string $dir_source) : array<string|int, mixed>
Parameters
$prefixe : string

Préfixe du plugin

$dir_source : string

Chemin d'accès du plugin

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

Tableau clé => texte multilangue entre et Les clés peuvent être 'nom', 'slogan' et 'description', mais seules les clés ayant une explication dans la chaine de langue sont retournées.

svp_corriger_obsolete_paquets()

Met à jour les informations d'obsolescence des paquets locaux.

svp_corriger_obsolete_paquets([array<string|int, mixed> $ids_plugin = [] ]) : mixed

L'obsolescence indique qu'un paquet est plus ancien (de version ou état moins avancé) qu'un autre également présent localement.

Parameters
$ids_plugin : array<string|int, mixed> = []

Liste d'identifiants de plugins En cas d'absence, passera sur tous les paquets locaux

Tags
used-by
svp_base_inserer_paquets_locaux()

svp_supprimer_plugins_orphelins()

Supprime les plugins devenus orphelins dans cette liste.

svp_supprimer_plugins_orphelins(array<string|int, mixed> $ids_plugin) : array<string|int, mixed>
Parameters
$ids_plugin : array<string|int, mixed>

Liste d'identifiants de plugins

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

Liste de plugins non orphelins

svp_rechercher_maj_version()

Cherche dans les dépots distants un plugin qui serait plus à jour que le prefixe, version et état que l'on transmet

svp_rechercher_maj_version(string $prefixe, string $version, int $etatnum[, mixed $compatibilite_spip = null ]) : string
Parameters
$prefixe : string

Préfixe du plugin

$version : string

Version du paquet à comparer

$etatnum : int

État du paquet numérique

$compatibilite_spip : mixed = null
Tags
used-by
svp_base_inserer_paquets_locaux()
used-by
svp_actualiser_maj_version()
Return values
string

Version plus à jour, sinon rien


        
On this page

Search results