Documentation du code de SPIP et de ses plugins

SPIP: Supported Versions

SupportedVersions
in package

Supported Versions filters class.

Table of Contents

Properties

$config  : array<string|int, mixed>|null
Configuration du calendrier (SVG, CSS, Dates).
$now  : DateTime
Date courante.
$releasesFile  : string
Chemin relatif du fichier JSON des versions à afficher
$defaultConfig  : array<string|int, mixed>
Configuration par défaut.
$maxDate  : DateTime
Date de fin du calendrier.
$minDate  : DateTime
Date de début du calendrier.
$releases  : array<string|int, mixed>
Liste des versions issues du fichier $releasesFile.
$years  : array<string|int, string>
Liste des années (format 'Y-m-d') du calendrier

Methods

branchesByState()  : array<string|int, mixed>
Filtre sélectionnant les données de branches en fonction de leur état.
branchesToShow()  : array<string|int, mixed>
Filtre sélectionnant les données des branches à afficher.
configuration()  : string
Transforme un tableau en chaine.
getBranchesFromState()  : array<string|int, mixed>
Filtre fournissant les branches correspondant à un état de publication donné.
getBranchValues()  : array<string|int, mixed>
Filtre fournissant les informations de la branche liée à la release passée en paramètre.
height()  : int
Filtre donnant la hauteur du calendrier.
horizCoord()  : int
Filtre qui calcule la position horizontale d'une date dans le calendrier.
phpMatrix()  : array<string|int, mixed>
Filtre fournissant un tableau de compatibilité SPIP/PHP.
rectWidth()  : int|string
Filtre calculant la largeur du rectangle, d'un état d'une branche.
spipLoaderApi()  : int
Version par défaut de l'API pour le script spip_loader.php.
state()  : string
Filtre qui détermine l'état d'une version par rapport à la date du jour.
stateOrGradient()  : string
Filtre calculant la class CSS d'un rectangle SVG de l'état d'une branche.
top()  : int
Filtre servant à calculer la coordonnées 'y' dans le calendrier pour une branche données.
topForText()  : int
Filtre donnant la coordonnées 'y' du nom de la branche dans le calendrier.
width()  : int
Filtre donnant la largeur du calendrier.
years()  : array<string|int, string>
Filtre fournissant les années (format 'Y-m-d') composant le calendrier.
dateHorizCoord()  : int
Renvoie la coordonnée x d'une date dans le calendrier svg.

Properties

$defaultConfig

Configuration par défaut.

private static array<string|int, mixed> $defaultConfig = ['calendar' => ['min_year' => 'P3Y', 'max_year' => 'P5Y'], 'svg' => ['margin_left' => 80, 'margin_right' => 50, 'header_height' => 24, 'year_width' => 120, 'branch_height' => 30, 'footer_height' => 24]]

Methods

branchesByState()

Filtre sélectionnant les données de branches en fonction de leur état.

public static branchesByState(array<string|int, string> $states) : array<string|int, mixed>
Parameters
$states : array<string|int, string>

Listes des états souhaités

Tags
codeCoverageIgnore
see
state()
Return values
array<string|int, mixed>

les branches à afficher

branchesToShow()

Filtre sélectionnant les données des branches à afficher.

public static branchesToShow([bool $eol = false ]) : array<string|int, mixed>

Par défaut, récupère les branches affichables dans l'intervalle du calendrier Sont affichables:

  • Les branches avec une date de release initiale effective ou prévue antérieure à la date de fin de l'intervalle
  • Les branches avec une date de fin postérieure à la date de début de l'intervalle ou non prévue
Parameters
$eol : bool = false

Ajoute les branches 'eol' à la sélection si true

Return values
array<string|int, mixed>

les branches à afficher

configuration()

Transforme un tableau en chaine.

public static configuration(array<string|int, mixed> $extensions[, string $versionMarker = '' ][, string $logicalOperation = 'and' ]) : string
Parameters
$extensions : array<string|int, mixed>

liste des extensions et de leurs versions

$versionMarker : string = ''
$logicalOperation : string = 'and'
Return values
string

getBranchesFromState()

Filtre fournissant les branches correspondant à un état de publication donné.

public static getBranchesFromState(string $state) : array<string|int, mixed>

l'état de publication doit correspondre à l'un des termes suivants: future, stable, security, eol.

Parameters
$state : string

l'état de publication souhaité

Tags
see
state()
Return values
array<string|int, mixed>

getBranchValues()

Filtre fournissant les informations de la branche liée à la release passée en paramètre.

public static getBranchValues(string $release) : array<string|int, mixed>
  • Si le paramètre ne correspond pas à un nommage de branch X.Y ou si la branche X.Y n'existe pas : On retourne un tableau de valeurs vide.

  • Sinon, on retourne toutes les données de la branche.

Parameters
$release : string

la version de la publication dont on souhaite récupérer les données de branche

Return values
array<string|int, mixed>

height()

Filtre donnant la hauteur du calendrier.

public static height(int $header_height) : int

Cf. modeles/supportedversions_calendar.html

Parameters
$header_height : int
Tags
codeCoverageIgnore
Return values
int

horizCoord()

Filtre qui calcule la position horizontale d'une date dans le calendrier.

public static horizCoord(string $date) : int
Parameters
$date : string

une date au format 'Y-m-d'

Tags
uses
dateHorizCoord
Return values
int

phpMatrix()

Filtre fournissant un tableau de compatibilité SPIP/PHP.

public static phpMatrix([bool $eol = false ]) : array<string|int, mixed>

Conditions d'affichage:

  • une date de release initiale effective ou prévue est définie (non vide)
  • une liste de versions compatible pour PHP est fournie (non vide)
  • la date de fin de vie n'est pas communiquée (cas nominal)

Si les versions en fin de vie sont demandées, la date de fin de vie doit être fournie et inférieure à la date du jour

Parameters
$eol : bool = false

true si on souhaite afficher les versions SPIP en fin de vie.

Return values
array<string|int, mixed>

rectWidth()

Filtre calculant la largeur du rectangle, d'un état d'une branche.

public static rectWidth(string $branch, string $state) : int|string
Parameters
$branch : string
$state : string
Return values
int|string

empty string or value

state()

Filtre qui détermine l'état d'une version par rapport à la date du jour.

public static state(array<string|int, string> $valeurs) : string

le tableau de valeurs doit impérativement contenir les clés suivantes:

initial_release: Une date au format 'Y-m-d' indiquant la date de sortie de la première release stable (X.Y.0) Si la date est vide (''), la version n'a pas de date de sortie prévue, l'état est 'not-planned' Si la date est supérieure à la date du jour, l'état est 'future' Sinon elle est 'stable'

active_support: Une date indiquant le moment ou seuls des correctifs de sécurité sont assurés pour la version Si la date est vide (''), la version n'a pas de date de fin de support actif prévue, l'état reste à 'stable' Si la date est supérieure à la date du jour, l'état reste à 'stable' Sinon l'état est 'security'

eol: Une date à partir de laquelle il n'y a plus de mise à jour pour la version Si la date est vide (''), la version n'a pas de date de fin de vie prévue, l'état reste à 'security' Si la date est supérieure à la date du jour, l'état reste à 'security' Sinon l'état est 'eol'

Parameters
$valeurs : array<string|int, string>

tableau correspondant aux dates de la version

Return values
string

stateOrGradient()

Filtre calculant la class CSS d'un rectangle SVG de l'état d'une branche.

public static stateOrGradient(string $branch, string $state) : string

Si la branche est inconnue, renvoie une chaine vide (''). Si l'état n'est pas affichable, renvoie une chaine vide (''). Si cycle de vie de la branche est en dehors des bornes du calendrier, renvoie une chaine vide ('').

  • i.e. : fin de vie avant la date de début, sortie effective ou prévue après la date de fin Si l'état de la branche se termine dans les bornes du calendrier, renvoie l'état.
  • i.e : stable, security, future Si l'état de la branche n'a pas de fin prévue, renvoie l'état et la mention gradient.
  • i.e. : stable-gradient, security-gradient, future-gradient.
Parameters
$branch : string
$state : string
Return values
string

top()

Filtre servant à calculer la coordonnées 'y' dans le calendrier pour une branche données.

public static top(string $branch) : int
Parameters
$branch : string
Return values
int

topForText()

Filtre donnant la coordonnées 'y' du nom de la branche dans le calendrier.

public static topForText(string $branch) : int

Cf. modeles/supportedversions_calendar.html

Parameters
$branch : string
Tags
codeCoverageIgnore
Return values
int

width()

Filtre donnant la largeur du calendrier.

public static width(int $margin_left) : int

Cf. modeles/supportedversions_calendar.html

Parameters
$margin_left : int
Tags
codeCoverageIgnore
Return values
int

years()

Filtre fournissant les années (format 'Y-m-d') composant le calendrier.

public static years() : array<string|int, string>
Return values
array<string|int, string>

liste des années du calendrier (format 'Y-m-d')

dateHorizCoord()

Renvoie la coordonnée x d'une date dans le calendrier svg.

protected static dateHorizCoord(DateTime $date) : int
  • coordonnée 'x' de début du calendrier si la date est antérieure à la date de début du calendrier
  • coordonnée 'x' de fin du calendrier si la date est postérieure à la date de fin du calendrier
Parameters
$date : DateTime
Tags
uses
width
Return values
int

        
On this page

Search results