Documentation du code de SPIP et de ses plugins

Mashup Factory

API Documentation

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.
_EZMASHUP_COEFF_MAX_DISTANT  = 5
_EZMASHUP_TARGET_SQL_DATE_FIELD_TYPES  = ['DATE']
_EZMASHUP_TARGET_SQL_DATETIME_FIELD_TYPES  = ['DATETIME', 'TIMESTAMP']
_EZMASHUP_TARGET_SQL_NUMERIC_FIELD_TYPES  = ['BIT', 'TINYINT', 'BOOL', 'BOOLEAN', 'SMALLINT', 'MEDIUMINT', 'INT', 'INTEGER', 'BIGINT', 'FLOAT', 'DOUBLE', 'DECIMAL', 'DEC']
_EZMASHUP_TARGET_SQL_TIME_FIELD_TYPES  = ['TIME']
_EZMASHUP_TARGET_SQL_YEAR_FIELD_TYPES  = ['YEAR']

Functions

action_peupler_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 éditable.
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|int, mixed>
Renvoie la configuration spécifique des caches gérés par Mashup Factory pour les datasets cible, le fichier config.yaml et les datasets source.
ezmashup_plugin_autoriser()  : bool
Renvoie l'autorisation d'un plugin utilisateur de Mashup Factory, soit celle de base, soit celle d'une action donnée.
ezmashup_feed_initialiser_dossier()  : string
Renvoie la configuration par défaut du dossier relatif où trouver les feeds.
ezmashup_feed_rechercher_yaml()  : array<string|int, mixed>
Trouve, pour un plugin utilisateur, les fichiers de configuration YAML des feeds éditables et non éditables.
ezmashup_feed_completer_peuplement()  : void
Finalise le peuplement d'un feed uniquement si celui-ci s'est correctement déroulée.
ezmashup_feed_completer_vidage()  : void
Finalise le vidage d'un feed uniquement si celui-ci s'est correctement déroulé.
ezmashup_target_initialiser_dossier()  : string
Renvoie la configuration par défaut du dossier relatif où stocker les datasets cible de type fichier.
ezmashup_target_completer_consigne()  : array<string|int, mixed>
Complète éventuellement le contenu de la consigne de peuplement d'un dataset cible.
ezmashup_record_completer()  : array<string|int, mixed>
Complète un record de la cible déjà rempli avec les champs basiques et statiques. Mashup Factory déroule : - construction d'un champ `label` multilingue (avant ou après les traitements spécifiques au feed) - traitements spécifiques au feed - suppression des champs non utilisés dans le stockage de la cible.
ezmashup_record_fusionner()  : array<string|int, mixed>
Fusionne un record déjà rempli avec le record en cours de traitment possédant la même clé primaire dans la liste des records.
ezmashup_record_list_completer()  : array<string|int, mixed>
Finalise la liste des records : tous les traitements automatiques et configurés ont été effectués.
ezmashup_record_completer_traduction()  : string
Complète un texte sous forme de balise multi avec une liste de traductions.
ezmashup_item_completer()  : array<string|int, mixed>
Complète un item de la source venant d'être extrait ou en vérifie la conformité.
ezmashup_feed_categorie_lister()  : array<string|int, mixed>
Renvoie la liste des catégories et leur description.
ezmashup_feed_categorie_initialiser_defaut()  : string
Renvoie l'identifiant de la catégorie par défaut d'un plugin utilisateur.
ezmashup_feed_action_completer_liste()  : array<string|int, mixed>
Complète la liste des actions personnalisables.
ezmashup_feed_action_definir_url()  : string
Renvoie l'URL d'une action d'administration sur un feed nécessitant de se rendre sur une page donnée (formulaire).
ezmashup_normaliser_idiome()  : string
Compile les traductions d'un idiome.
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_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 ou décharger les feeds d'un plugin utilisateur dans la table `spip_feeds`.
autoriser_feed_executer_dist()  : bool
Autorisation de peupler ou de vider le dataset cible d'un feed.
autoriser_feed_creer_dist()  : bool
Autorisation de créer des feeds (page feeds ou autre page spécifique d'un plugin utilisateur).
autoriser_feed_modifier_dist()  : bool
Autorisation, pour les feeds éditables, de supprimer ou d'éditer 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é.
feed_categorie_repertorier()  : array<string|int, mixed>|string
Renvoie tout ou partie de la liste des catégories de feed et de leur description.
feed_source_lister()  : string
Construit la liste des types de source du feed pour un affichage.
feed_tag_lister()  : string
Construit la liste des tags non techniques du feed pour un affichage.
balise_FEED_URL_ACTION_dist()  : Champ
Compile la balise `#FEED_URL_ACTION` qui fournit l'url de la page de création ou d'édition d'un feed éditable.
feed_action_definir_url()  : string
Fournit l'url de la page de création ou d'édition d'un feed éditable.
balise_FEED_ACTIONS_dist()  : Champ
Compile la balise `#FEED_ACTIONS` qui fournit, pour un plugin utilisateur, la configuration de liste des actions possibles sur les feeds éventuellement filtrée sur un ou plusieurs critères.
feed_action_repertorier()  : array<string|int, mixed>|string
Renvoie tout ou partie de la liste des actions sur les feeds et de leur configuration.
feed_action_liste_autorisee()  : bool
Vérifie si une liste d'actions sur les feeds possède au moins une action autorisée.
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 de tous les plugins utilisant Mashup Factory.
ezmashup_liste_ezcollection()  : array<string|int, mixed>
Déclare les collections accessibles via l'API ezREST.
feeds_collectionner()  : array<string|int, mixed>
Récupère les configurations des feeds ainsi que leur statu de peuplement.
feeds_conditionner_categorie()  : string
Calcule la condition du filtre `categorie` pour lequel il est possible de passer une liste d'identifiants séparés par une virgule.
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.
dataset_source_extraire()  : array<string|int, mixed>
Extrait le contenu de tous les datasets source basiques ou d'un dataset source addon donné.
dataset_source_normaliser_configuration()  : array<string|int, mixed>
Normalise la description d'un dataset source donné.
dataset_source_requeter()  : string
Renvoie, à partir de l'url fournie, le contenu brut récupéré d'une source de type API ou page web, ou une erreur sinon.
dataset_source_decoder()  : array<string|int, mixed>
Décode un contenu d'une source pour en extraire un tableau de données.
dataset_target_peupler()  : array<string|int, mixed>
Constitue, à partir de l'ensemble des sources primaires du feed, un tableau des éléments prêt à être inséré dans une table de la base de données.
dataset_target_supprimer()  : bool
Supprime, un dataset cible d'un feed donné.
dataset_target_stocker()  : int
Stocke les enregistrements cible comme indiqué dans la configuration du feed, pour créer le dataset cible.
dataset_target_consigner()  : void
Consigne le peuplement d'un feed dans la meta propre au plugin utilisateur.
dataset_target_informer()  : array<string|int, mixed>
Lit la consignation du peuplement d'un feed ou de tous les feeds d'un plugin utilisateur à partir de sa meta.
dataset_target_deconsigner()  : void
Supprime la consignation du peuplement d'un feed.
feed_peupler()  : array<string|int, mixed>
Exécute, pour un feed donné d'un plugin utilisateur, le processus de mashup pour créer le dataset cible à partir du ou des datasets source.
feed_vider()  : array<string|int, mixed>
Vide, pour un feed donné, les données du dataset cible.
feed_lire()  : array<string|int, mixed>
Retourne, pour un feed donné, la description complète.
feed_repertorier()  : array<string|int, mixed>
Renvoie, pour un plugin utilisateur donné ou pour tous les plugins, une liste de description brute de feeds éventuellement filtrée sur certains champs.
feed_charger()  : array<string|int, mixed>
Charge ou recharge en base de données les configurations des feeds à partir des fichiers YAML.
feed_decharger()  : array<string|int, mixed>
Vide, pour un plugin utilisateur donné, le feed concerné ou à défaut tous les feeds de la table `spip_feeds`, les données des datasets cible associés et les consignations.
feed_supprimer()  : array<string|int, mixed>
Supprime un feed éditable.
feed_ressource_existe()  : string
Vérifie si un fichier ressource existe dans le dossier d'accueil du feed éditable concerné.
feed_ressource_lire()  : array<string|int, mixed>|bool|string
Lit et décode un fichier ressource dans le dossier d'accueil des feeds éditables du plugin utilisateur.
feed_ressource_ecrire()  : string
Encode un tableau et écrit le résultat dans un fichier ressource du d'accueil des feeds éditable du plugin utilisateur.
record_remplir()  : array<string|int, mixed>
Remplit un enregistrement avec l'ensemble des types de champs configurés dans le feed.
record_initialiser()  : array<string|int, mixed>
Initialise le record d'un dataset cible avec des valeurs par défaut et remplit les champs statiques avec leur valeur finale.
record_normaliser_champs_sql()  : array<string|int, mixed>
Renvoie la description normalisée SQL de la table.

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'

_EZMASHUP_TARGET_SQL_DATE_FIELD_TYPES

public mixed _EZMASHUP_TARGET_SQL_DATE_FIELD_TYPES = ['DATE']

_EZMASHUP_TARGET_SQL_DATETIME_FIELD_TYPES

public mixed _EZMASHUP_TARGET_SQL_DATETIME_FIELD_TYPES = ['DATETIME', 'TIMESTAMP']

_EZMASHUP_TARGET_SQL_NUMERIC_FIELD_TYPES

public mixed _EZMASHUP_TARGET_SQL_NUMERIC_FIELD_TYPES = ['BIT', 'TINYINT', 'BOOL', 'BOOLEAN', 'SMALLINT', 'MEDIUMINT', 'INT', 'INTEGER', 'BIGINT', 'FLOAT', 'DOUBLE', 'DECIMAL', 'DEC']

_EZMASHUP_TARGET_SQL_TIME_FIELD_TYPES

public mixed _EZMASHUP_TARGET_SQL_TIME_FIELD_TYPES = ['TIME']

_EZMASHUP_TARGET_SQL_YEAR_FIELD_TYPES

public mixed _EZMASHUP_TARGET_SQL_YEAR_FIELD_TYPES = ['YEAR']

Functions

action_peupler_feed_dist()

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

action_peupler_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_peupler()
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 éditable.

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

Cela consiste à supprimer le dossier du feed et l'ensemble de ses ressources (config.yaml et fichiers sources éventuels).

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 modifier 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.
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 datasets cible, le fichier config.yaml et les datasets source.

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

Préfixe du plugin utilisateur..

Return values
array<string|int, mixed>

Tableau de la configuration brute du plugin Taxonomie.

ezmashup_plugin_autoriser()

Renvoie l'autorisation d'un plugin utilisateur de Mashup Factory, soit celle de base, soit celle d'une action donnée.

ezmashup_plugin_autoriser(string $plugin, null|array<string|int, mixed>|int $qui[, null|string $action = '' ][, null|array<string|int, mixed> $feed = [] ]) : bool

Le plugin Mashup Factory autorise uniquement les administrateurs complets sauf pour les actions créer et modifier qui sont non autorisées par défaut.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$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]
$action : null|string = ''

Type d'action appliquée à un feed ou à tous les feeds

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

Description du feed concerné par l'action ou vide si inutile

Tags
uses
ezmashup_chercher_service()
used-by
autoriser_ezmashup_dist()
used-by
autoriser_feeds_voir_dist()
used-by
autoriser_feed_executer_dist()
used-by
autoriser_feed_creer_dist()
used-by
autoriser_feed_modifier_dist()
Return values
bool

truesi l'auteur est autorisée à l'utilisation de base du plugin Mashup Factory, false sinon.

ezmashup_feed_initialiser_dossier()

Renvoie la configuration par défaut du dossier relatif où trouver les feeds.

ezmashup_feed_initialiser_dossier(string $plugin) : string

Le service de Mashup Factory considère que par défaut le dossier relatif des feeds est feeds/.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

Tags
uses
ezmashup_chercher_service()
used-by
ezmashup_feed_rechercher_yaml()
used-by
feed_charger()
Return values
string

Chemin relatif du dossier où chercher les feeds.

ezmashup_feed_rechercher_yaml()

Trouve, pour un plugin utilisateur, les fichiers de configuration YAML des feeds éditables et non éditables.

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

Cherche les feeds non éditables dans le path (cas le plus fréquent) et dans _DIR_ETC pour les feeds éditables.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

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

Liste des fichiers YAML trouvés

ezmashup_feed_completer_peuplement()

Finalise le peuplement d'un feed uniquement si celui-ci s'est correctement déroulée.

ezmashup_feed_completer_peuplement(string $plugin, array<string|int, mixed> $feed) : void

Le plugin Mashup Factory supprime les caches ezREST des feeds de façon à s'assurer que toute requête les concernant remonte les informations à jour et cohérentes avec le contenu des feeds.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$feed : array<string|int, mixed>

Configuration du feed

Tags
uses
cache_reponse_vider()
uses
ezmashup_chercher_service()
used-by
feed_peupler()

ezmashup_feed_completer_vidage()

Finalise le vidage d'un feed uniquement si celui-ci s'est correctement déroulé.

ezmashup_feed_completer_vidage(string $plugin, array<string|int, mixed> $feed) : void

Le plugin Mashup Factory ne fait rien de particulier actuellement.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$feed : array<string|int, mixed>

Configuration du feed

Tags
uses
ezmashup_chercher_service()
used-by
feed_vider()

ezmashup_target_initialiser_dossier()

Renvoie la configuration par défaut du dossier relatif où stocker les datasets cible de type fichier.

ezmashup_target_initialiser_dossier(string $plugin) : string

Le service de Mashup Factory considère que par défaut le dossier relatif des feeds est targets/. Il est inclus dans l'arborescence _DIR_ETC/ezmashup/.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

Tags
uses
ezmashup_chercher_service()
used-by
dataset_target_supprimer()
Return values
string

Chemin relatif du dossier où sont stockés les cibles de type fichier.

ezmashup_target_completer_consigne()

Complète éventuellement le contenu de la consigne de peuplement d'un dataset cible.

ezmashup_target_completer_consigne(string $plugin, array<string|int, mixed> $consigne, array<string|int, mixed> $enregistrements, array<string|int, mixed> $feed) : array<string|int, mixed>
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$consigne : array<string|int, mixed>

Consigne initialisé par défaut par Mashup Factory

$enregistrements : array<string|int, mixed>

Liste des enregistrement du dataset cible

$feed : array<string|int, mixed>

Configuration du feed

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

Consigne éventuellement mise à jour.

ezmashup_record_completer()

Complète un record de la cible déjà rempli avec les champs basiques et statiques. Mashup Factory déroule : - construction d'un champ `label` multilingue (avant ou après les traitements spécifiques au feed) - traitements spécifiques au feed - suppression des champs non utilisés dans le stockage de la cible.

ezmashup_record_completer(string $plugin, array<string|int, mixed> $enregistrement, array<string|int, mixed> $feed) : array<string|int, mixed>
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$enregistrement : array<string|int, mixed>

Enregistrement du dataset cible en cours de traitement

$feed : array<string|int, mixed>

Configuration du feed

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

Enregistrement mis à jour.

ezmashup_record_fusionner()

Fusionne un record déjà rempli avec le record en cours de traitment possédant la même clé primaire dans la liste des records.

ezmashup_record_fusionner(string $plugin, array<string|int, mixed> $enregistrement_en_cours, array<string|int, mixed> $enregistrement_en_liste, array<string|int, mixed> $feed) : array<string|int, mixed>

Si aucun traitement particulier n'est proposé par le plugin utilisateur, Mashup Factory renvoie vide pour indiquer l'erreur de doublon de clé primaire.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$enregistrement_en_cours : array<string|int, mixed>

Enregistrement du dataset cible en cours de constitution

$enregistrement_en_liste : array<string|int, mixed>

Enregistrement du dataset cible déjà dans la liste

$feed : array<string|int, mixed>

Configuration du feed

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

Item mis à jour

ezmashup_record_list_completer()

Finalise la liste des records : tous les traitements automatiques et configurés ont été effectués.

ezmashup_record_list_completer(string $plugin, array<string|int, mixed> $enregistrements, array<string|int, mixed> $feed) : array<string|int, mixed>

Par défaut, Mashup Factory calcule, si besoin, le champ profondeur pour les hiérarchies.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$enregistrements : array<string|int, mixed>

Liste des enregistrement du dataset cible

$feed : array<string|int, mixed>

Configuration du feed

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

Enregistrement mis à jour

ezmashup_record_completer_traduction()

Complète un texte sous forme de balise multi avec une liste de traductions.

ezmashup_record_completer_traduction(string $multi_in, array<string|int, mixed> $traductions) : string

Les nouvelles traductions, si elles sont non vides, sont soit ajoutées, soit écrasent la traduction courante.

Parameters
$multi_in : string

Chaine au format <multi>.

$traductions : array<string|int, mixed>

Tableau des traductions à ajouter (format [langue] = texte).

Return values
string

Chaine complétée au format <multi>.

ezmashup_item_completer()

Complète un item de la source venant d'être extrait ou en vérifie la conformité.

ezmashup_item_completer(string $plugin, array<string|int, mixed> $item, array<string|int, mixed> $feed) : array<string|int, mixed>

Si le plugin utilisateur détecte que l'item n'est pas valide (condition propre au plugin), il peut renvoyer vide, ce qui exclura l'item.

Le plugin Mashup Factory ne fait rien par défaut.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$item : array<string|int, mixed>

Item d'un dataset source

$feed : array<string|int, mixed>

Configuration du feed

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

Item mis à jour

ezmashup_feed_categorie_lister()

Renvoie la liste des catégories et leur description.

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

Le plugin Mashup Factory fournit une liste limitée à la catégorie d'identifiant default.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

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

Liste des catégories et de leur description au format [id] = tableau de description avec le nom, la description et l'icone.

ezmashup_feed_categorie_initialiser_defaut()

Renvoie l'identifiant de la catégorie par défaut d'un plugin utilisateur.

ezmashup_feed_categorie_initialiser_defaut(string $plugin) : string

Le plugin Mashup Factory choisit la première catégorie de la liste.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

Tags
uses
ezmashup_chercher_service()
used-by
feed_charger()
Return values
string

Identifiant de la catégorie par défaut.

ezmashup_feed_action_completer_liste()

Complète la liste des actions personnalisables.

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

Le plugin Mashup Factory fournit la liste des actions principales permettant d'agir sur les feeds éditables ou non. Cette liste est en général suffisante mais elle peut être compléter voire modifiée par un plugin utilisateur : charger, peupler, vider, creer, editer, supprimer et voir.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

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

Liste des actions et de leur description au format [id] = tableau de description avec le nom, le type, l'icone, l'autorisation, la présence dans un menu, etc.

ezmashup_feed_action_definir_url()

Renvoie l'URL d'une action d'administration sur un feed nécessitant de se rendre sur une page donnée (formulaire).

ezmashup_feed_action_definir_url(string $plugin, string $action, array<string|int, mixed> $feed, string $page_admin) : string

Les actions d'administration sont actuellement limitée à peupler, vider, éditer ou supprimer mais seules les actions de création et d'édition de feed nécessitent une redirection vers le formulaire idoine.

Le plugin Mashup Factory ne fait rien par défaut.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$action : string

Action d'aministration venant d'être exécutée avec succès (creer, editer)

$feed : array<string|int, mixed>

Description complète du feed si édition ou vide si création

$page_admin : string

URL de la page d'admin d'où provient l'action.

Tags
uses
ezmashup_chercher_service()
used-by
feed_action_definir_url()
Return values
string

URL de traitement de l'action.

ezmashup_normaliser_idiome()

Compile les traductions d'un idiome.

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

Préfixe du plugin utilisateur.

$idiome : string

Idiome ou texte brut

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.
  • éventuellement, avoir une autorisation d'accès spécifique (service propre au plugin) Par défaut, en l'absence de personnalisation par un plugin, Mashup Factory limite l'autorisation aux administrateurs complets.

Cette autorisation est à la base des autres autorisations du plugin. Il n'est jamais utile de l'appeler dans une fonction autre que les autorisations dérivées.

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_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
  • éventuellement, avoir une autorisation de visualisation des feeds spécifique (service propre au plugin).
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

Tags
uses
ezmashup_plugin_autoriser()
Return values
bool

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

autoriser_feeds_charger_dist()

Autorisation de charger ou dé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.
  • éventuellement, avoir une autorisation de chargement spécifique (service propre au plugin)
Parameters
$faire : string

Action demandée : charger

$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_executer_dist()

Autorisation de peupler ou de vider le dataset cible d'un feed.

autoriser_feed_executer_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
  • que le feed soit actif
  • et éventuellement, avoir une autorisation d'exécution spécifique (service propre au plugin)
Parameters
$faire : string

Action demandée : executer (pour peupler, vider)

$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

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.
  • éventuellement, avoir une autorisation de création spécifique (service propre au plugin)

Par défaut, Mashup Factory renvoie false pour cette autorisation.

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

Tags
uses
ezmashup_plugin_autoriser()
Return values
bool

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

autoriser_feed_modifier_dist()

Autorisation, pour les feeds éditables, de supprimer ou d'éditer un feed.

autoriser_feed_modifier_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
  • que le feed soit actif et éditable
  • et éventuellement, avoir une autorisation de modification spécifique (service propre au plugin)

Par défaut, Mashup Factory renvoie false pour cette autorisation.

Parameters
$faire : string

Action demandée : modifier (pour é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

Tags
uses
ezmashup_plugin_autoriser()
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[, id_categorie, 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.

feed_categorie_repertorier()

Renvoie tout ou partie de la liste des catégories de feed et de leur description.

feed_categorie_repertorier(string $plugin[, null|string $id_categorie = '' ][, null|string $information = '' ]) : array<string|int, mixed>|string

Il est possible de demander toutes les catégories ou juste une seule désignée par son identifiant voire une seule information sur une catégorie donnée.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_categorie : null|string = ''

Identifiant de la catégorie ou chaine vide pour toutes les catégories.

$information : null|string = ''

Information de la description d'une catégorie (name, description, icon).

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

Liste des descriptions de catégorie, une description d'une seule catégorie voire une information.

feed_source_lister()

Construit la liste des types de source du feed pour un affichage.

feed_source_lister(array<string|int, mixed> $sources[, null|string $separateur = ',' ]) : string
Parameters
$sources : array<string|int, mixed>

Tableau des sources du feed

$separateur : null|string = ','

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

Return values
string

Liste des types de source au format chaine

feed_tag_lister()

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

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

Les tags 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

balise_FEED_URL_ACTION_dist()

Compile la balise `#FEED_URL_ACTION` qui fournit l'url de la page de création ou d'édition d'un feed éditable.

balise_FEED_URL_ACTION_dist(Champ $p) : Champ

La signature de la balise est : #FEED_URL_ACTION{plugin, action[, id_feed, page_admin]}.

Parameters
$p : Champ

Pile au niveau de la balise

Tags
balise
example
#FEED_URL_ACTION{isocode, creer}.
#FEED_URL_ACTION{isocode, editer, id_du_feed, page_admin}.
Return values
Champ

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

feed_action_definir_url()

Fournit l'url de la page de création ou d'édition d'un feed éditable.

feed_action_definir_url(string $plugin, string $action[, null|string $id_feed = '' ][, null|string $page_admin = '' ]) : string
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$action : string

Action de création (creer) ou d'édition (editer) du feed.

$id_feed : null|string = ''

Identifiant du feed, uniquement pour l'édition.

$page_admin : null|string = ''

URL de la page d'admin d'où provient l'action.

Tags
uses
feed_lire()
uses
ezmashup_feed_action_definir_url()
uses
ezmashup_log_creer_message()
Return values
string

URL de la page de traitement correspondant à l'action ou vide si erreur. Les erreurs sont tracées mais pas retournées.

balise_FEED_ACTIONS_dist()

Compile la balise `#FEED_ACTIONS` qui fournit, pour un plugin utilisateur, la configuration de liste des actions possibles sur les feeds éventuellement filtrée sur un ou plusieurs critères.

balise_FEED_ACTIONS_dist(Champ $p) : Champ

La signature de la balise est : #FEED_ACTIONS{plugin[, filtres]}.

Parameters
$p : Champ

Pile au niveau de la balise.

Tags
balise
example
#FEED_ACTIONS{isocode}, renvoie la description complète des actions possibles.
Return values
Champ

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

feed_action_repertorier()

Renvoie tout ou partie de la liste des actions sur les feeds et de leur configuration.

feed_action_repertorier(string $plugin[, null|array<string|int, mixed> $filtres = [] ]) : array<string|int, mixed>|string

Il est possible de filtrer les actions suivant un ou plusieurs critères.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

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

Filtres éventuels sur un ou plusieurs champs d'une action. Seule l'égalité est gérée.

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

Liste des configurations d'actions éventuellement filtrée.

feed_action_liste_autorisee()

Vérifie si une liste d'actions sur les feeds possède au moins une action autorisée.

feed_action_liste_autorisee(string $plugin, string $id_feed, array<string|int, mixed> $actions) : bool
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du feed, uniquement pour l'édition

$actions : array<string|int, mixed>

Liste des actions pour lesquelles vérifier l'autorisation.

Return values
bool

true si au moins une action est autorisée, false sinon

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 de tous les plugins utilisant Mashup Factory.

ezmashup_lister_plugins([string $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 : string = 'oui'

Indique de renvoyer seulement les plugins actifs (oui) ou tous les plugins

Return values
array<string|int, mixed>

Liste des préfixes en minuscules

ezmashup_liste_ezcollection()

Déclare les collections accessibles via l'API ezREST.

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

Par défaut, le plugin propose uniquement la liste des feeds disponibles.

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.

feeds_collectionner()

Récupère les configurations des feeds ainsi que leur statu de peuplement.

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

Il est possible de filtrer la liste avec les critères facultatifs categorie ou plugin.

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

feeds_conditionner_categorie()

Calcule la condition du filtre `categorie` pour lequel il est possible de passer une liste d'identifiants séparés par une virgule.

feeds_conditionner_categorie(string $valeur) : string
Parameters
$valeur : string

Valeur du critère categorie.

Return values
string

La condition SQL sur le champ category de la table spip_feeds.

formulaires_admin_feeds_charger_dist()

Chargement du formulaire d'administration des feeds.

formulaires_admin_feeds_charger_dist(string $plugin[, null|string $id_categorie = '' ][, null|string $id_feed_affiche = '' ][, null|string $module = '' ][, null|string $page_admin = '' ]) : 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

$id_categorie : null|string = ''

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

$id_feed_affiche : 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 (ezmashup par défaut)

$page_admin : null|string = ''

URL de la page d'admin dans laquelle le présent formulaire est inclus

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 $id_categorie = '' ][, null|string $id_feed_affiche = '' ][, null|string $module = '' ][, null|string $page_admin = '' ]) : array<string|int, mixed>

Soit l'action demandée est lancée immédiatement (peupler, vider, supprimer), soit l'action (creer) renvoie vers une page dans laquelle elle sera réellement traitée.

Parameters
$plugin : string

Préfixe du plugin utilisateur

$id_categorie : null|string = ''

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

$id_feed_affiche : 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 (ezmashup par défaut)

$page_admin : null|string = ''

URL de la page d'admin dans laquelle le présent formulaire est inclus

Return values
array<string|int, mixed>

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

dataset_source_extraire()

Extrait le contenu de tous les datasets source basiques ou d'un dataset source addon donné.

dataset_source_extraire(string $id_source, array<string|int, mixed> $feed[, null|array<string|int, mixed> &$erreur = [] ]) : array<string|int, mixed>

Le contenu est renvoyé sous la forme d'une liste d'items qui seront traités par la suite pour être insérés dans le dataset cible concerné.

Parameters
$id_source : string

Identifiant d'une source addon donnée ou vide pour toutes les sources primaires.

$feed : array<string|int, mixed>

Description complète du feed.

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

Tableau constitutif d'une erreur ou vide si aucune erreur à remonter

Tags
throws
Exception
Return values
array<string|int, mixed>

Tableau des items extraits de la source. Un tableau vide est constitutif d'une erreur.

dataset_source_normaliser_configuration()

Normalise la description d'un dataset source donné.

dataset_source_normaliser_configuration(array<string|int, mixed> $dataset[, null|array<string|int, mixed> $options = [] ]) : array<string|int, mixed>

Il est possible de fournir le dataset par défaut qui servira à la normalisation (cas du dataset '*').

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

Dataset à normaliser

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

Options pour compléter la normalisation

  • array dataset_defaut: Dataset par défaut à utiliser. Ce dataset doit déjà être normalisé Si aucun dataset fourni, la fonction utilise le dataset par défaut de base où tous les champs sont 'vides'.
  • string dossier_feed : Chemin relatif du dossier de rangement du feed
  • string ìnclude_feed : Chemin relatif de l'include des fonctions spécifiques du feed
Return values
array<string|int, mixed>

Dataset normalisé

dataset_source_requeter()

Renvoie, à partir de l'url fournie, le contenu brut récupéré d'une source de type API ou page web, ou une erreur sinon.

dataset_source_requeter(string $url, array<string|int, mixed> $options[, null|array<string|int, mixed> &$erreur = [] ]) : string
Parameters
$url : string

URL complète de la requête

$options : array<string|int, mixed>

Options de la requête

  • bool transcoder : true si on veut transcoder la page dans le charset du site
  • int taille_max : Arrêter le contenu au-delà (0 = seulement les entetes ==> requête HEAD). Par defaut taille_max = 1Mo ou 16Mo si copie dans un fichier
$erreur : null|array<string|int, mixed> = []

Tableau constitutif d'une erreur ou vide si aucune erreur à remonter

Tags
uses
recuperer_url()
throws
Exception
Return values
string

La chaine renvoyée en réponse à la requête ou vide si une erreur s'est produit.

dataset_source_decoder()

Décode un contenu d'une source pour en extraire un tableau de données.

dataset_source_decoder(string $contenu, string $type_source, string $id_source, array<string|int, mixed> $feed[, null|array<string|int, mixed> &$erreur = [] ]) : array<string|int, mixed>

La fonction utilise l'API de décodage fournie par le plugin Encoder Factory.

Parameters
$contenu : string

Chaine extraite de la source à décoder selon le format et les paramètres associés.

$type_source : string

Type de source basique (sources_basic) ou additionnelle (sources_addon).

$id_source : string

Identifiant de la source.

$feed : array<string|int, mixed>

Description complète du feed.

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

Tableau constitutif d'une erreur ou vide si aucune erreur à remonter

Tags
throws
Exception
Return values
array<string|int, mixed>

Tableau des données résultant du décodage ou vide ce qui est constitutif d'une erreur.

dataset_target_peupler()

Constitue, à partir de l'ensemble des sources primaires du feed, un tableau des éléments prêt à être inséré dans une table de la base de données.

dataset_target_peupler(string $plugin, array<string|int, mixed> $feed[, null|array<string|int, mixed> &$erreur = [] ]) : array<string|int, mixed>
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$feed : array<string|int, mixed>

Description complète du feed.

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

Tableau constitutif d'une erreur ou vide si aucune erreur à remonter

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

La liste des enregistrements à stocker dans la cible concernée ou vide si erreur

dataset_target_supprimer()

Supprime, un dataset cible d'un feed donné.

dataset_target_supprimer(string $plugin, array<string|int, mixed> $feed[, null|array<string|int, mixed> &$erreur = [] ]) : bool

La meta consignant les informations de peuplement est aussi effacée.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$feed : array<string|int, mixed>

Description complète du feed.

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

Tableau constitutif d'une erreur ou vide si aucune erreur à remonter

Tags
uses
dataset_target_deconsigner()
uses
ezmashup_target_initialiser_dossier()
used-by
feed_peupler()
used-by
feed_vider()
Return values
bool

true si la suppression s'est bien passée, false sinon

dataset_target_stocker()

Stocke les enregistrements cible comme indiqué dans la configuration du feed, pour créer le dataset cible.

dataset_target_stocker(string $plugin, array<string|int, mixed> $enregistrements, array<string|int, mixed> $feed[, null|array<string|int, mixed> &$erreur = [] ]) : int
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$enregistrements : array<string|int, mixed>

Liste des enregistrements prêts à être insérés dans la table concernée.

$feed : array<string|int, mixed>

Description complète du feed.

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

Tableau constitutif d'une erreur ou vide si aucune erreur à remonter

Return values
int

Nombre d'enregistrements réellement stocké, si le stockage s'est bien passé, 0 sinon

dataset_target_consigner()

Consigne le peuplement d'un feed dans la meta propre au plugin utilisateur.

dataset_target_consigner(string $plugin, array<string|int, mixed> $enregistrements, int $nb_insertions, array<string|int, mixed> $feed) : void
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$enregistrements : array<string|int, mixed>

Liste des enregistrements devant être insérés dans la table concernée (tous ne le seront pas nécessairement).

$nb_insertions : int

Nombre réels d'enregistrements stockés dans la target

$feed : array<string|int, mixed>

Description complète du feed.

dataset_target_informer()

Lit la consignation du peuplement d'un feed ou de tous les feeds d'un plugin utilisateur à partir de sa meta.

dataset_target_informer(string $plugin[, null|string $id_feed = '' ]) : array<string|int, mixed>
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : null|string = ''

Identifiant du feed.

Return values
array<string|int, mixed>

Tableau de la ou des consignations.

dataset_target_deconsigner()

Supprime la consignation du peuplement d'un feed.

dataset_target_deconsigner(string $plugin, string $id_feed) : void
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du feed.

Tags
used-by
dataset_target_supprimer()

feed_peupler()

Exécute, pour un feed donné d'un plugin utilisateur, le processus de mashup pour créer le dataset cible à partir du ou des datasets source.

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

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du feed.

Tags
uses
feed_lire()
uses
dataset_target_peupler()
uses
dataset_target_supprimer()
uses
dataset_target_stocker()
uses
dataset_target_consigner()
uses
ezmashup_feed_completer_peuplement()
uses
ezmashup_log_creer_message()
throws
Exception
used-by
action_peupler_feed_dist()
Return values
array<string|int, mixed>

Tableau résultat de l'action : soit une erreur, soit une information sur le déroulement correct. Les index sont :

  • int level : la gravité telle que définie pour les logs de spip
  • string code : le code de l'information ou de l'erreur qui représente aussi l'item de langue
  • array parameters : tableau associatif des paramètres de l'erreur à fournir à l'item de langue

feed_vider()

Vide, pour un feed donné, les données du dataset cible.

feed_vider(string $plugin, string $id_feed) : array<string|int, mixed>

Dans le cas d'une cible au format fichier, le fichier est supprimé; dans le cas d'une table SQL, celle-ci est vidée des enregistrements concernant le feed.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du feed.

Tags
uses
feed_lire()
uses
dataset_target_supprimer()
uses
ezmashup_feed_completer_vidage()
uses
ezmashup_log_creer_message()
throws
Exception
used-by
action_vider_feed_dist()
used-by
feed_decharger()
Return values
array<string|int, mixed>

Tableau résultat de l'action : soit une erreur, soit une information sur le déroulement correct. Les index sont :

  • int level : la gravité telle que définie pour les logs de spip
  • string code : le code de l'information ou de l'erreur qui représente aussi l'item de langue
  • array parameters : tableau associatif des paramètres de l'erreur à fournir à l'item de langue

feed_lire()

Retourne, pour un feed donné, la description complète.

feed_lire(string $plugin, string $id_feed[, null|bool $traiter_typo = false ]) : array<string|int, mixed>

Les champs JSON sont systématiquement décodés et champs textuels peuvent subir, sur demande, un traitement typo.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du feed.

$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. Par défaut l'indicateur vaut false. Les champs encodés en JSON sont eux toujours décodés.

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

La description complète d'un feed donné. Les champs de type tableau sont systématiquement décodés et si demandé, les champs textuels peuvent être traités avec la fonction typo(). Si le couple (plugin, identifiant du feed) est invalide, la fonction retourne un tableau vide.

feed_repertorier()

Renvoie, pour un plugin utilisateur donné ou pour tous les plugins, une liste de description brute de feeds éventuellement filtrée sur certains champs.

feed_repertorier([null|string $plugin = '' ][, null|array<string|int, mixed> $filtres = [] ][, null|array<string|int, mixed> $champs_exclus = [] ]) : array<string|int, mixed>

Les champs JSON ne sont pas décodés.

Parameters
$plugin : null|string = ''

Préfixe du plugin utilisateur ou vide si tous les plugins.

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

Tableau associatif [champ] = valeur de critères de filtres sur les descriptions de feed. Les opérateurs possibles sont l'égalité et la non égalité.

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

Liste des champs du feed à exclure de la description renvoyée.

Return values
array<string|int, mixed>

Tableau des descriptions des feeds indexé par l'id du feed ou tableau vide sinon.

feed_charger()

Charge ou recharge en base de données les configurations des feeds à partir des fichiers YAML.

feed_charger(string $plugin[, null|bool $recharger = false ]) : array<string|int, mixed>

La fonction optimise le chargement en effectuant uniquement les traitements nécessaires en fonction des modifications, ajouts et suppressions de feeds identifiés en comparant les md5 des fichiers YAML.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$recharger : null|bool = false

Si true force le rechargement de tous les feeds, sinon le chargement se base sur le md5 des fichiers YAML. Par défaut vaut false.

Tags
uses
ezmashup_feed_initialiser_dossier()
uses
ezmashup_feed_rechercher_yaml()
uses
feed_categorie_repertorier()
uses
ezmashup_feed_categorie_initialiser_defaut()
uses
ezmashup_find_all_in_path()
uses
feed_repertorier()
uses
ezmashup_log_creer_message()
used-by
action_recharger_feeds_dist()
Return values
array<string|int, mixed>

Tableau résultat de l'action : soit une erreur, soit une information sur le déroulement correct. Les index sont :

  • int level : la gravité telle que définie pour les logs de spip
  • string code : le code de l'information ou de l'erreur qui représente aussi l'item de langue
  • array parameters : tableau associatif des paramètres de l'erreur à fournir à l'item de langue

feed_decharger()

Vide, pour un plugin utilisateur donné, le feed concerné ou à défaut tous les feeds de la table `spip_feeds`, les données des datasets cible associés et les consignations.

feed_decharger(string $plugin[, null|string $id_feed = '' ]) : array<string|int, mixed>
Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : null|string = ''

Identifiant du feed.

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

Tableau résultat de l'action : soit une erreur, soit une information sur le déroulement correct. Les index sont :

  • int level : la gravité telle que définie pour les logs de spip
  • string code : le code de l'information ou de l'erreur qui représente aussi l'item de langue
  • array parameters : tableau associatif des paramètres de l'erreur à fournir à l'item de langue

feed_supprimer()

Supprime un feed éditable.

feed_supprimer(string $plugin, string $id_feed) : array<string|int, mixed>

Cela consiste à supprimer le dossier du feed et l'ensemble de ses ressources (config.yaml et les fichiers sources éventuels).

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

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du type de noisette.

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

Tableau résultat de l'action : soit une erreur, soit une information sur le déroulement correct. Les index sont :

  • int level : la gravité telle que définie pour les logs de spip
  • string code : le code de l'information ou de l'erreur qui représente aussi l'item de langue
  • array parameters : tableau associatif des paramètres de l'erreur à fournir à l'item de langue

feed_ressource_existe()

Vérifie si un fichier ressource existe dans le dossier d'accueil du feed éditable concerné.

feed_ressource_existe(string $plugin, string $id_feed, array<string|int, mixed> $ressource) : string

Le fichier peut-être le config.yaml du feed ou une source de données.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du type de noisette.

$ressource : array<string|int, mixed>

Identifie la ressource :

  • index type : config pour le fichier config.yaml, source pour un fichier source au format YAML, JSON ou CSV
  • index format : définit le format de la ressource, csv, json, yaml ou xml
  • index id : chaine représentant l'id de la source
Return values
string

Le chemin complet du fichier si valide, la chaine vide sinon.

feed_ressource_lire()

Lit et décode un fichier ressource dans le dossier d'accueil des feeds éditables du plugin utilisateur.

feed_ressource_lire(string $plugin, string $id_feed, array<string|int, mixed> $ressource) : array<string|int, mixed>|bool|string

Le fichier peut-être le config.yaml du feed ou une source de données.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du type de noisette.

$ressource : array<string|int, mixed>

Identifie la ressource :

  • index type : config pour le fichier config.yaml, source pour un fichier source de format YAML, JSON ou CSV
  • index format : définit le format de la ressource, csv, json, yaml ou xml
  • index decodage : pour un fichier csv permet de préciser le délimiteur
  • index id : chaine représentant l'id de la source
Tags
throws
Exception
Return values
array<string|int, mixed>|bool|string

Contenu du fichier sous la forme d'un tableau, d'une chaine ou false si une erreur s'est produite.

feed_ressource_ecrire()

Encode un tableau et écrit le résultat dans un fichier ressource du d'accueil des feeds éditable du plugin utilisateur.

feed_ressource_ecrire(string $plugin, string $id_feed, array<string|int, mixed> $ressource, array<string|int, mixed>|string $contenu) : string

Le fichier peut-être le config.yaml du feed ou une source de données.

Parameters
$plugin : string

Préfixe du plugin utilisateur.

$id_feed : string

Identifiant du type de noisette.

$ressource : array<string|int, mixed>

Identifie la ressource :

  • index type : config pour le fichier config.yaml, source pour un fichier source de format YAML, JSON ou CSV
  • index format : définit le format de la ressource, csv, json, yaml ou xml
  • index decodage : pour un fichier csv permet de préciser le délimiteur
  • index id : chaine représentant l'id de la source
$contenu : array<string|int, mixed>|string

Données à inscrire dans le fichier déjà encodé ou non. C'est Cache Factory qui s'en occupera.

Return values
string

Le chemin complet si la ressource a bien été écrite, chaine vide sinon.

record_remplir()

Remplit un enregistrement avec l'ensemble des types de champs configurés dans le feed.

record_remplir(array<string|int, mixed> $item_source, array<string|int, mixed> $feed[, null|array<string|int, mixed> &$erreur = [] ]) : array<string|int, mixed>
Parameters
$item_source : array<string|int, mixed>

Description d'un item de la source dont certains champs seront insérés dans l'enregistrement cible

$feed : array<string|int, mixed>

Description complète du feed.

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

Tableau constitutif d'une erreur ou vide si aucune erreur à remonter

Return values
array<string|int, mixed>

Enregistrement de la cible mis à jour ou vide si erreur.

record_initialiser()

Initialise le record d'un dataset cible avec des valeurs par défaut et remplit les champs statiques avec leur valeur finale.

record_initialiser(array<string|int, mixed> $feed[, null|array<string|int, mixed> &$erreur = [] ]) : array<string|int, mixed>
Parameters
$feed : array<string|int, mixed>

Description complète du feed.

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

Tableau constitutif d'une erreur ou vide si aucune erreur à remonter

Return values
array<string|int, mixed>

Enregistrement par défaut de la cible initialisé ou vide si erreur.

record_normaliser_champs_sql()

Renvoie la description normalisée SQL de la table.

record_normaliser_champs_sql(string $table) : array<string|int, mixed>
Parameters
$table : string

Nom de la table SQL sans le préfixe spip_.

Return values
array<string|int, mixed>

Description de la table SQL normalisée.


        
On this page

Search results