Documentation du code de SPIP et de ses plugins

Albums

Fonctions

Table of Contents

Functions

critere_ALBUMS_orphelins_dist()  : mixed
critère `{orphelins}`
inc_bigup_medias_formulaire_ajouter_album_dist()  : Formulaire
Activer bigup sur le formulaire d'ajout d'album
albums_decrire_dispositions()  : array<string|int, mixed>
Description des dispositions connues pour le modèle album.
albums_declarer_tables_interfaces()  : array<string|int, mixed>
Déclaration des alias de tables et filtres automatiques de champs
albums_declarer_tables_objets_sql()  : array<string|int, mixed>
Déclaration des objets éditoriaux
albums_declarer_tables_auxiliaires()  : array<string|int, mixed>
Déclaration des tables secondaires (liaisons)
supprimer_albums()  : mixed
Supprimer proprement un ou plusieurs albums
vider_albums()  : array<string|int, mixed>
Vider un ou plusieurs albums de leurs documents.
transvaser_album()  : int|bool
Transvaser les documents entre un album et un objet éditorial auquel il est associé
albums_lister_modeles()  : array<string|int, mixed>
Lister les formulaire yaml des modèles «album» disponibles dans les dossiers modeles/
infos_modele_album()  : array<string|int, mixed>
Charger les informations d'un formulaire yaml de modèle «album»
balise_ALBUM_DOC_dist()  : object
Compile la balise `#ALBUM_DOC` qui retourne le code HTML d'un modèle de document ajusté pour les albums.
calculer_album_doc()  : string
Fonction privée pour calculer le HTML de la balise #ALBUM_DOC
balise_ALBUM_PARAMS_dist()  : object
Compile la balise `#ALBUM_PARAMS` qui retourne soit un ensemble de valeurs utiles au modèle album, soit une seule.
calculer_album_params()  : array<string|int, mixed>|string
Fonction privée pour calculer la balise `#ALBUM_PARAMS`
nettoyer_contexte_modele_album()  : void
Nettoyer le contexte pour ne garder que les trucs en rapport avec le modèle
calculer_id_modele_album()  : string
Renvoie un identifiant unique pour le modèle
albums_classe_ratio()  : string
Renvoie une classe correspondant à un ratio
critere_DOCUMENTS_documents_album_dist()  : void
Compile le critère `{documents_album}`
filtre_inserer_attributs_album()  : string
Ajoute les attributs nécessaires à une boîte album dans le privé

Functions

critere_ALBUMS_orphelins_dist()

critère `{orphelins}`

critere_ALBUMS_orphelins_dist(string $idb, object &$boucles, object $crit) : mixed

Sélectionne les albums sans lien avec un objet éditorial

Parameters
$idb : string
$boucles : object
$crit : object
Tags
critere

inc_bigup_medias_formulaire_ajouter_album_dist()

Activer bigup sur le formulaire d'ajout d'album

inc_bigup_medias_formulaire_ajouter_album_dist(array<string|int, mixed> $args, Formulaire $formulaire) : Formulaire
Parameters
$args : array<string|int, mixed>
$formulaire : Formulaire
Return values
Formulaire

albums_decrire_dispositions()

Description des dispositions connues pour le modèle album.

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

On indique les traitements images éventuels, le modèle de doc à utiliser, etc. (parité avec les noms des paramètres du modèle album)

Return values
array<string|int, mixed>

Tableau associatif avec la description de chaque disposition, clé * pour les valeurs de fallback.

  • (string) modele_doc : modèle de document à utiliser
  • (int|null|bool) largeur : largeur max des images. null = rien par défaut, false = redimensionnement interdit
  • (int|null|bool) hauteur : hauteur max des images. null = rien par défaut, false = redimensionnement interdit
  • (string|null) recadrer_ratio : ratio pour recadrer
  • (bool) images : indique si la disposition est prévue plus particulièrement pour des images

albums_declarer_tables_interfaces()

Déclaration des alias de tables et filtres automatiques de champs

albums_declarer_tables_interfaces(array<string|int, mixed> $interfaces) : array<string|int, mixed>
Parameters
$interfaces : array<string|int, mixed>

Déclarations d'interface pour le compilateur

Tags
pipeline

declarer_tables_interfaces

Return values
array<string|int, mixed>

Déclarations d'interface pour le compilateur

albums_declarer_tables_objets_sql()

Déclaration des objets éditoriaux

albums_declarer_tables_objets_sql(array<string|int, mixed> $tables) : array<string|int, mixed>
Parameters
$tables : array<string|int, mixed>

Description des tables

Tags
pipeline

declarer_tables_objets_sql

Return values
array<string|int, mixed>

Description complétée des tables

albums_declarer_tables_auxiliaires()

Déclaration des tables secondaires (liaisons)

albums_declarer_tables_auxiliaires(array<string|int, mixed> $tables) : array<string|int, mixed>
Parameters
$tables : array<string|int, mixed>

Description des tables

Tags
pipeline

declarer_tables_auxiliaires

Return values
array<string|int, mixed>

Description complétée des tables

supprimer_albums()

Supprimer proprement un ou plusieurs albums

supprimer_albums(mixed $ids_albums[, bool $supprimer_docs_orphelins = false ]) : mixed
  • suppression des liens faisant référence à l'album dans spip_documents_liens
  • suppression des liens faisant référence à l'album dans spip_albums_liens
  • suppression de l'album
Parameters
$ids_albums : mixed
$supprimer_docs_orphelins : bool = false

true pour supprimer les documents rendus orphelins

Tags
used-by
action_supprimer_album_dist()

vider_albums()

Vider un ou plusieurs albums de leurs documents.

vider_albums(mixed $ids_albums[, bool $supprimer_docs_orphelins = false ]) : array<string|int, mixed>
Parameters
$ids_albums : mixed
$supprimer_docs_orphelins : bool = false

true pour supprimer les documents rendus orphelins

Tags
note

Impossible de retirer en une fois tous les documents d'un album via le bouton d'action dissocier_document du plugin Médias. Il faut lui passer en paramètre un des 3 modes pour les documents :

  • les images en mode image : I/image
  • les images en mode document : I/document
  • les documents en mode document : 'D/document'

Cf. fonction dissocier_document dans action/dissocier_document.php.

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

tableau des albums vidés et ceux laissés intacts [succes => [x,y,z]],[erreurs => [x,y,z]]

transvaser_album()

Transvaser les documents entre un album et un objet éditorial auquel il est associé

transvaser_album(int|string $id_album, string $objet, int $id_objet[, bool $remplir = true ][, bool $supprimer = false ]) : int|bool
Parameters
$id_album : int|string

Identifiant de l'album 0 pour créer un nouvel album vide, dans le cas d'un remplissage

$objet : string

Type d'objet

$id_objet : int

Identifiant de l'objet

$remplir : bool = true

Définit le sens du transvasement (on remplit l'album ou on le vide) true : portfolio -> album false : album -> portfolio

$supprimer : bool = false

true : supprimer l'album dans le cas d'un vidage

Tags
note

On ne fait que modifier des liens existants au lieu de dissocier puis réassocier les documents au moyen des fonctions de Médias (dissocier_document et associer_document)

Return values
int|bool

nb de liens changés si ok, false en cas d'erreur

albums_lister_modeles()

Lister les formulaire yaml des modèles «album» disponibles dans les dossiers modeles/

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

Les premiers modèles retournés sont les modèles du plugin (album.yaml et album_liste.yaml)

Tags
staticvar

array $liste_modeles_albums

Return values
array<string|int, mixed>

infos_modele_album()

Charger les informations d'un formulaire yaml de modèle «album»

infos_modele_album(mixed $fichier) : array<string|int, mixed>
Parameters
$fichier : mixed
Tags
staticvar

array $infos_modeles_album

Return values
array<string|int, mixed>

balise_ALBUM_DOC_dist()

Compile la balise `#ALBUM_DOC` qui retourne le code HTML d'un modèle de document ajusté pour les albums.

balise_ALBUM_DOC_dist(object $p) : object

Utilise en général un modèle standard #DOC auquel on ajoute des attributs et applique des traitements d'images.

Le choix du modèle et les traitements dépendent de la disposition de l'album et du contexte.

S'utilise uniquement dans une boucle documents ou documents_liens.

Parameters
$p : object

Pile au niveau de la balise

Tags
uses
calculer_album_doc()
balise
example
#ALBUM_DOC
Return values
object

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

calculer_album_doc()

Fonction privée pour calculer le HTML de la balise #ALBUM_DOC

calculer_album_doc(array<string|int, mixed> $document, array<string|int, mixed> $contexte) : string
Parameters
$document : array<string|int, mixed>

Tableau d'infos sur le document array<int id_document, string media, int largeur, int hauteur>

$contexte : array<string|int, mixed>

Contexte d'appel du modèle, sans les trucs par défaut inutiles (date, date_redac, etc.)

Tags
uses
calculer_album_params()
uses
calculer_id_modele_album()
used-by
balise_ALBUM_DOC_dist()
Return values
string

balise_ALBUM_PARAMS_dist()

Compile la balise `#ALBUM_PARAMS` qui retourne soit un ensemble de valeurs utiles au modèle album, soit une seule.

balise_ALBUM_PARAMS_dist(object $p) : object
Parameters
$p : object

Pile au niveau de la balise

Tags
uses
calculer_album_params()
balise
example
ALBUM_PARAMS
ALBUM_PARAMS{disposition}
Return values
object

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

calculer_album_params()

Fonction privée pour calculer la balise `#ALBUM_PARAMS`

calculer_album_params([array<string|int, mixed> $contexte = [] ][, string|null $param = null ]) : array<string|int, mixed>|string

En fonction du contexte, de la config et des défauts, on choisit la disposition, le modèle pour les documents, les valeurs pour les traitements à appliquer aux images, etc.

Chaque disposition a ses propres traitements d'image et options par défaut.

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

Environnement du modèle, sans les trucs par défaut inutiles (date, date_redac, etc.)

$param : string|null = null
Tags
uses
albums_decrire_dispositions()
used-by
calculer_album_doc()
used-by
balise_ALBUM_PARAMS_dist()
Return values
array<string|int, mixed>|string

Soit un tableau de params : array<string disposition, string modele_doc, string recadrer_ratio, string recadrer_sens, int largeur, int hauteur, bool images> Soit la valeur d'un param

nettoyer_contexte_modele_album()

Nettoyer le contexte pour ne garder que les trucs en rapport avec le modèle

nettoyer_contexte_modele_album([array<string|int, mixed>|null $contexte = [] ]) : void

Permet de calculer un hash

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

calculer_id_modele_album()

Renvoie un identifiant unique pour le modèle

calculer_id_modele_album(array<string|int, mixed>|null $contexte) : string

Dépend de la façon dont sont sélectionnés les documents : soit via id_album, soit id_patate, etc.

Parameters
$contexte : array<string|int, mixed>|null
Tags
used-by
calculer_album_doc()
Return values
string
  • Si album : <id_album>
  • Si objet : _<id_objet>
  • si documents : documents_

albums_classe_ratio()

Renvoie une classe correspondant à un ratio

albums_classe_ratio(string $ratio) : string

Indique le format le plus proche : carré, portrait ou paysage Ainsi que le ratio entier le plus proche : 2:1, 3:1

Pour le ratio on arrondit à l'entier le plus proche, ex. : 2.21:12:12

Parameters
$ratio : string

Ratio sous la forme 1:1

Return values
string

format-square, format-landscape_2, format-portrait_3, etc.

critere_DOCUMENTS_documents_album_dist()

Compile le critère `{documents_album}`

critere_DOCUMENTS_documents_album_dist(string $idb, object &$boucles, object $crit) : void

Rustine pour forcer une jointure en LEFT avec les documents liés. Des fois le compilo fait du caca : plusieurs jointures sur la même table, et ça pète les conditions dans le WHERE.

Parameters
$idb : string

Identifiant de la boucle

$boucles : object

AST du squelette

$crit : object

Paramètres du critère dans cette boucle

filtre_inserer_attributs_album()

Ajoute les attributs nécessaires à une boîte album dans le privé

filtre_inserer_attributs_album(string $texte, string $id_album) : string

Rustine car |inserer_attribut ne fonctionne pas dans tous les cas

Parameters
$texte : string
$id_album : string
Return values
string

        
On this page

Search results