Documentation du code de SPIP et de ses plugins

Mashup Factory

Application

Table of Contents

Constants

_EXTRAIRE_IDIOME  = ',<:(?:([a-z0-9_]+):)?([a-z0-9_]*):/?>,iS'
Extrait les composants d'un idiome de langue utilisable dans un YAML '@<:(?:([a-z0-9_]+):)?([a-z0-9_]+):>@isS'.
_EXTRAIRE_MULTI  = '@<multi>(.*?)</multi>@sS'
Restaure cette constante à partir de SPIP 4.2.

Functions

action_executer_feed_dist()  : array<string|int, mixed>
Cette action permet à l'utilisateur de reconstruire, de façon sécurisée, le dataset cible correspondant au feed.
action_recharger_feeds_dist()  : void
Cette action permet à l'utilisateur de recharger en base de données, de façon sécurisée, les feeds d'un plugin utilisateur donné à partir de leur fichier YAML.
action_supprimer_feed_dist()  : array<string|int, mixed>
Cette action permet à l'utilisateur de supprimer, de façon sécurisée, un feed créé par formulaire. Cela consiste à supprimer le dossier du feed et l'ensemble de ses ressources (config.yaml et les fichiers sources éventuels).
action_vider_feed_dist()  : array<string|int, mixed>
Cette action permet à l'utilisateur de vider, de façon sécurisée, le dataset cible correspondant au feed.
ezmashup_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.
ezmashup_declarer_tables_principales()  : array<string|int, mixed>
Déclaration des nouvelles tables de la base de données propres au plugin.
ezmashup_cache_configurer()  : array<string, mixed>
Renvoie la configuration spécifique des caches gérés par Mashup Factory pour les targets (fichiers contenant les données du mashup).
ezmashup_normaliser_idiome()  : string
Compile les traductions du nom, slogan et description d'une boussole, d'un groupe ou d'uns site.
ezmashup_upgrade()  : void
Installation du schéma de données propre au plugin et gestion des migrations suivant les évolutions du schéma.
ezmashup_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.
ezmashup_autoriser()  : mixed
Fonction appelée par le pipeline.
autoriser_ezmashup_dist()  : bool
Autorisation minimale d'accès à toutes les pages du plugin Mashup Factory ou d'un plugin utilisateur.
autoriser_feed_creer_dist()  : bool
Autorisation de créer des feeds (page feeds ou autre page spécifique d'un plugin utilisateur).
autoriser_feeds_voir_dist()  : bool
Autorisation de voir la liste des feeds (page feeds ou autre page spécifique d'un plugin utilisateur).
autoriser_feeds_charger_dist()  : bool
Autorisation de charger les feeds d'un plugin utilisateur dans la table `spip_feeds`.
autoriser_feed_actionner_dist()  : bool
Autorisation de peupler ou de vider le dataset cible d'un feed et pour les feeds éditables, de supprimer ou d'éditer d'un feed.
balise_FEED_CATEGORIES_dist()  : Champ
Compile la balise `#FEED_CATEGORIES` qui fournit la configuration d'une ou des catégories affectées aux différents feeds, pour un plugin utilisateur donné.
balise_EZMASHUP_PLUGINS_dist()  : Champ
Compile la balise `#EZMASHUP_PLUGINS` qui fournit les plugins utilisateur actifs implémentant des feeds.
ezmashup_lister_plugins()  : array<string|int, mixed>
Renvoie la liste des préfixes des plugins actifs ou tous les plugins utilisant Mashup Factory.
feed_taglist_afficher()  : string
Construit la liste des tags non techniques du feed pour un affichage.
formulaires_admin_feeds_charger_dist()  : array<string|int, mixed>
Chargement du formulaire d'administration des feeds.
formulaires_admin_feeds_traiter_dist()  : array<string|int, mixed>
Traitement du formulaire d'administration des feeds.

Constants

_EXTRAIRE_IDIOME

Extrait les composants d'un idiome de langue utilisable dans un YAML '@<:(?:([a-z0-9_]+):)?([a-z0-9_]+):>@isS'.

public mixed _EXTRAIRE_IDIOME = ',<:(?:([a-z0-9_]+):)?([a-z0-9_]*):/?>,iS'

_EXTRAIRE_MULTI

Restaure cette constante à partir de SPIP 4.2.

public mixed _EXTRAIRE_MULTI = '@<multi>(.*?)</multi>@sS'

Functions

action_executer_feed_dist()

Cette action permet à l'utilisateur de reconstruire, de façon sécurisée, le dataset cible correspondant au feed.

action_executer_feed_dist([null|string $arguments = null ]) : array<string|int, mixed>

Cette action est réservée aux utilisateurs pouvant exécuter un feed. Elle nécessite l'id du feed et le préfixe du plugin utilisateur.

Parameters
$arguments : null|string = null

Arguments de l'action ou null si l'action est appelée par une URL

Tags
uses
feed_executer()
throws
Exception
Return values
array<string|int, mixed>

Tableau de retour contenant l'erreur éventuelle

action_recharger_feeds_dist()

Cette action permet à l'utilisateur de recharger en base de données, de façon sécurisée, les feeds d'un plugin utilisateur donné à partir de leur fichier YAML.

action_recharger_feeds_dist([null|string $arguments = null ]) : void

Cette action est réservée aux utilisateurs pouvant utiliser le plugin Mashup Factory. Elle nécessite le préfixe du plugin utilisateur comme seul argument.

Parameters
$arguments : null|string = null

Arguments de l'action ou null si l'action est appelée par une URL

Tags
uses
feed_charger()

action_supprimer_feed_dist()

Cette action permet à l'utilisateur de supprimer, de façon sécurisée, un feed créé par formulaire. Cela consiste à supprimer le dossier du feed et l'ensemble de ses ressources (config.yaml et les fichiers sources éventuels).

action_supprimer_feed_dist([null|string $arguments = null ]) : array<string|int, mixed>

Les données du feed sont au préalable vidées et le feed lui-même est déchargé de la base.

Cette action est réservée aux utilisateurs pouvant actionner un feed. Elle nécessite l'id du feed et le préfixe du plugin utilisateur.

Parameters
$arguments : null|string = null

Arguments de l'action ou null si l'action est appelée par une URL

Tags
uses
feed_supprimer()
throws
Exception
Return values
array<string|int, mixed>

Tableau de retour contenant l'erreur éventuelle

action_vider_feed_dist()

Cette action permet à l'utilisateur de vider, de façon sécurisée, le dataset cible correspondant au feed.

action_vider_feed_dist([null|string $arguments = null ]) : array<string|int, mixed>

Cette action est réservée aux utilisateurs pouvant exécuter un feed. Elle nécessite l'id du feed et le préfixe du plugin utilisateur.

Parameters
$arguments : null|string = null

Arguments de l'action ou null si l'action est appelée par une URL

Tags
uses
feed_vider()
throws
Exception
Return values
array<string|int, mixed>

Tableau de retour contenant l'erreur éventuelle

ezmashup_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.

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

Le plugin se contente de déclarer les alias des tables et quelques traitements.

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

ezmashup_declarer_tables_principales()

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

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

Le plugin déclare une nouvelle table :

  • spip_feeds, qui contient les éléments descriptifs des feeds du mashup (services).
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

ezmashup_cache_configurer()

Renvoie la configuration spécifique des caches gérés par Mashup Factory pour les targets (fichiers contenant les données du mashup).

ezmashup_cache_configurer(string $plugin) : array<string, 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, mixed>

Tableau de la configuration brute du plugin Taxonomie.

ezmashup_normaliser_idiome()

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

ezmashup_normaliser_idiome(string $plugin, string $idiome) : string

La fonction renvoie une balise pour chaque traduction.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$idiome : string

Identifiant de la boussole

Return values
string

Les traductions de l'idiome en multi ou le texte fourni en entrée si celui-ci n'est pas un idiome

ezmashup_upgrade()

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

ezmashup_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

ezmashup_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.

ezmashup_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

autoriser_ezmashup_dist()

Autorisation minimale d'accès à toutes les pages du plugin Mashup Factory ou d'un plugin utilisateur.

autoriser_ezmashup_dist(string $faire, string $type, int $id, null|array<string|int, mixed>|int $qui, null|array<string|int, mixed> $options) : bool

Il faut :

  • fournir un préfixe valide de plugin actif.
  • et, par défaut, être un administrateur complet. Néanmoins, un plugin utilisateur peut personnaliser cette autorisation au travers d'un service dédié.

Cette autorisation est à la base des autres autorisations du plugin.

Parameters
$faire : string

L'action : ezmashup

$type : string

Le type d'objet ou nom de table : chaine vide

$id : int

Id de l'objet sur lequel on veut agir : 0, inutilisé

$qui : null|array<string|int, mixed>|int

L'initiateur de l'action:

  • si null on prend alors visiteur_session
  • un id_auteur (on regarde dans la base)
  • un tableau auteur complet, y compris [restreint]
$options : null|array<string|int, mixed>

Tableau d'options sous forme de tableau associatif : plugin, préfixe du plugin utilisateur

Tags
uses
ezmashup_plugin_autoriser()
Return values
bool

truesi l'auteur est autorisée à exécuter l'action, false sinon.

autoriser_feed_creer_dist()

Autorisation de créer des feeds (page feeds ou autre page spécifique d'un plugin utilisateur).

autoriser_feed_creer_dist(string $faire, string $type, int $id, null|array<string|int, mixed>|int $qui, null|array<string|int, mixed> $options) : bool

Il faut :

  • posséder l'autorisation minimale ezmashup.
Parameters
$faire : string

L'action : creer

$type : string

Le type d'objet ou nom de table : feed (ce n'est pas un objet au sens SPIP)

$id : int

Id de l'objet sur lequel on veut agir : 0, inutilisé

$qui : null|array<string|int, mixed>|int

L'initiateur de l'action:

  • si null on prend alors visiteur_session
  • un id_auteur (on regarde dans la base)
  • un tableau auteur complet, y compris [restreint]
$options : null|array<string|int, mixed>

Tableau d'options sous forme de tableau associatif : plugin, préfixe du plugin utilisateur

Return values
bool

truesi l'auteur est autorisée à exécuter l'action, false sinon.

autoriser_feeds_voir_dist()

Autorisation de voir la liste des feeds (page feeds ou autre page spécifique d'un plugin utilisateur).

autoriser_feeds_voir_dist(string $faire, string $type, int $id, null|array<string|int, mixed>|int $qui, null|array<string|int, mixed> $options) : bool

Il faut :

  • posséder l'autorisation minimale ezmashup.
Parameters
$faire : string

L'action : voir

$type : string

Le type d'objet ou nom de table : _feeds (ce n'est pas un objet au sens SPIP)

$id : int

Id de l'objet sur lequel on veut agir : 0, inutilisé

$qui : null|array<string|int, mixed>|int

L'initiateur de l'action:

  • si null on prend alors visiteur_session
  • un id_auteur (on regarde dans la base)
  • un tableau auteur complet, y compris [restreint]
$options : null|array<string|int, mixed>

Tableau d'options sous forme de tableau associatif : plugin, préfixe du plugin utilisateur

Return values
bool

truesi l'auteur est autorisée à exécuter l'action, false sinon.

autoriser_feeds_charger_dist()

Autorisation de charger les feeds d'un plugin utilisateur dans la table `spip_feeds`.

autoriser_feeds_charger_dist(string $faire, string $type, int $id, null|array<string|int, mixed>|int $qui, null|array<string|int, mixed> $options) : bool

Il faut :

  • posséder l'autorisation minimale ezmashup.
Parameters
$faire : string

Action demandée : modifier

$type : string

Le type d'objet ou nom de table : _feeds (ce n'est pas un objet au sens SPIP)

$id : int

Identifiant de l'objet : 0, inutilisé

$qui : null|array<string|int, mixed>|int

L'initiateur de l'action:

  • si null on prend alors visiteur_session
  • un id_auteur (on regarde dans la base)
  • un tableau auteur complet, y compris [restreint]
$options : null|array<string|int, mixed>

Tableau d'options sous forme de tableau associatif : plugin, préfixe du plugin utilisateur

Return values
bool

truesi l'auteur est autorisée à exécuter l'action, false sinon.

autoriser_feed_actionner_dist()

Autorisation de peupler ou de vider le dataset cible d'un feed et pour les feeds éditables, de supprimer ou d'éditer d'un feed.

autoriser_feed_actionner_dist(string $faire, string $type, int $id, null|array<string|int, mixed>|int $qui, null|array<string|int, mixed> $options) : bool

Il faut :

  • posséder l'autorisation minimale ezmashup.
  • fournir un identifiant de feed existant.
Parameters
$faire : string

Action demandée : actionner (pour peupler, vider, éditer, ou supprimer)

$type : string

Type d'objet sur lequel appliquer l'action : feed

$id : int

Identifiant de l'objet : celui du feed sur lequel appliquer l'action

$qui : null|array<string|int, mixed>|int

L'initiateur de l'action:

  • si null on prend alors visiteur_session
  • un id_auteur (on regarde dans la base)
  • un tableau auteur complet, y compris [restreint]
$options : null|array<string|int, mixed>

Tableau d'options sous forme de tableau associatif : plugin, préfixe du plugin utilisateur

Return values
bool

truesi l'auteur est autorisée à exécuter l'action, false sinon.

balise_FEED_CATEGORIES_dist()

Compile la balise `#FEED_CATEGORIES` qui fournit la configuration d'une ou des catégories affectées aux différents feeds, pour un plugin utilisateur donné.

balise_FEED_CATEGORIES_dist(Champ $p) : Champ

La signature de la balise est : #FEED_CATEGORIES{plugin[, categorie_id, information]}.

Parameters
$p : Champ

Pile au niveau de la balise.

Tags
balise
example
#FEED_CATEGORIES{isocode}, renvoie la description complète des catégories des feeds du plugin `isocode`.
#FEED_CATEGORIES{isocode, map}, renvoie la description de la catégorie `map` des feeds du plugin `isocode`.
#FEED_CATEGORIES{isocode, map, name}, renvoie le nom de la catégorie `map` des feeds du plugin `isocode`.
Return values
Champ

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

balise_EZMASHUP_PLUGINS_dist()

Compile la balise `#EZMASHUP_PLUGINS` qui fournit les plugins utilisateur actifs implémentant des feeds.

balise_EZMASHUP_PLUGINS_dist(Champ $p) : Champ

La signature de la balise est : #EZMASHUP_PLUGINS{[actifs_seuls]}.

Parameters
$p : Champ

Pile au niveau de la balise.

Tags
balise
example
#EZMASHUP_PLUGINS, renvoie la liste des préfixes de plugins actifs utilisant Mashup Factory.
#EZMASHUP_PLUGINS{oui}, renvoie la liste des préfixes de plugins actifs utilisant Mashup Factory.
#EZMASHUP_PLUGINS{non}, renvoie la liste des préfixes de tous plugins utilisant Mashup Factory.
Return values
Champ

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

ezmashup_lister_plugins()

Renvoie la liste des préfixes des plugins actifs ou tous les plugins utilisant Mashup Factory.

ezmashup_lister_plugins([mixed $actifs_seuls = 'oui' ]) : array<string|int, mixed>

L'utilisation du plugin Mashup Factory est repérée via les consignations dans la table spip_meta.

Parameters
$actifs_seuls : mixed = 'oui'
Return values
array<string|int, mixed>

Liste des préfixes en minuscules

feed_taglist_afficher()

Construit la liste des tags non techniques du feed pour un affichage.

feed_taglist_afficher(array<string|int, mixed> $tags[, null|string $separateur = ',' ]) : string

Les tags non techniques commencent par un _.

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

Tableau des tags du feed

$separateur : null|string = ','

Séparateur des tags dans la liste affichée (par défaut une virgule)

Return values
string

Liste des tags non techniques au format chaine

formulaires_admin_feeds_charger_dist()

Chargement du formulaire d'administration des feeds.

formulaires_admin_feeds_charger_dist(string $plugin[, null|string $categorie_id = '' ][, null|string $feed_id = '' ][, null|string $module = '' ]) : array<string|int, mixed>

Il est obligatoire de fournir un préfixe de plugin utilisateur sinon le formulaire n'est pas utilisable.

Parameters
$plugin : string

Préfixe du plugin utilisateur

$categorie_id : null|string = ''

Identifiant de la catégorie ou vide si on veut afficher tous les feeds

$feed_id : null|string = ''

Identificant du feed servant à l'affichage du bloc de détails

$module : null|string = ''

Identificant du module dans lequel piocher les items de langue

Return values
array<string|int, mixed>

Environnement du formulaire

formulaires_admin_feeds_traiter_dist()

Traitement du formulaire d'administration des feeds.

formulaires_admin_feeds_traiter_dist(string $plugin[, null|string $categorie_id = '' ][, null|string $feed_id = '' ][, null|string $module = '' ]) : array<string|int, mixed>
Parameters
$plugin : string

Préfixe du plugin utilisateur

$categorie_id : null|string = ''

Identifiant de la catégorie ou vide si on veut afficher tous les feeds

$feed_id : null|string = ''

Identificant du feed servant à l'affichage du bloc de détails

$module : null|string = ''

Identificant du module dans lequel piocher les items de langue

Return values
array<string|int, mixed>

Retour du traitement : rien de spécial car pour l'instant, il n'est pas utilisé


        
On this page

Search results