Changeset 64648 in spip-zone


Ignore:
Timestamp:
Aug 9, 2012, 10:53:41 AM (7 years ago)
Author:
marcimat@…
Message:

Du PHP Doc sur une partie de SVP

Location:
_core_/plugins/svp
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • _core_/plugins/svp/base/svp_declarer.php

    r59687 r64648  
    11<?php
    2 
    3 // Declaration des tables pourles nouveaux objets de SVP:
    4 // - depot : table spip_depots
    5 // - plugin : table spip_plugins
    6 // - paquet : table spip_paquets
    7 //
     2/**
     3 * Déclarations relatives à la base de données
     4 *
     5 * @plugin SVP pour SPIP
     6 * @license GPL
     7 * @package Plugins\SVP\Pipelines
     8**/
     9
     10/**
     11 * Déclarer les objets éditoriaux de SVP
     12 *
     13 * - Dépot  : table spip_depots
     14 * - Plugin : table spip_plugins
     15 * - Paquet : table spip_paquets
     16 *
     17 * @pipelined declarer_tables_objets_sql
     18 * @param array $tables
     19 *     Description des tables
     20 * @return array
     21 *     Description complétée des tables
     22 */
    823function svp_declarer_tables_objets_sql($tables) {
    924        include_spip('inc/config');
     
    187202
    188203
     204/**
     205 * Déclarer les tables de liaisons de SVP
     206 *
     207 * Déclare la table spip_depots_plugins
     208 *
     209 * @pipelined declarer_tables_auxiliaires
     210 * @param array $tables_auxiliaires
     211 *     Description des tables auxiliaires
     212 * @return array
     213 *     Description complétée des tables auxiliaires
     214 */
    189215function svp_declarer_tables_auxiliaires($tables_auxiliaires) {
    190216        // Tables de liens entre plugins et depots : spip_depots_plugins
     
    204230}
    205231
    206 
     232/**
     233 * Déclare les alias de boucle et traitements automatiques de certaines balises
     234 *
     235 * @pipelined declarer_tables_interfaces
     236 * @param array $interface
     237 *     Déclarations d'interface pour le compilateur
     238 * @return array
     239 *     Déclarations d'interface pour le compilateur
     240 */
    207241function svp_declarer_tables_interfaces($interface) {
    208242        // Les tables : permet d'appeler une boucle avec le *type* de la table uniquement
  • _core_/plugins/svp/inc/svp_outiller.php

    r62466 r64648  
    11<?php
    22
     3/**
     4 * Fichier de fonctions
     5 *
     6 * @plugin SVP pour SPIP
     7 * @license GPL
     8 * @package Plugins\SVP\Fonctions
     9**/
     10
    311if (!defined('_ECRIRE_INC_VERSION')) return;
    412
    513
    6 // Version SPIP minimale quand un plugin ne le precise pas
    7 // -- Version SPIP correspondant a l'apparition des plugins
    814if (!defined('_SVP_VERSION_SPIP_MIN')) {
     15/**
     16 * Version SPIP minimale quand un plugin ne le precise pas
     17 *
     18 * Version SPIP correspondant à l'apparition des plugins */
    919        define('_SVP_VERSION_SPIP_MIN', '1.9.0');
    1020}
    1121
    12 // -- Pour l'instant on ne connait pas la borne sup exacte
    1322if (!defined('_SVP_VERSION_SPIP_MAX')) {
     23/**
     24 * Version SPIP maximale
     25 *
     26 * Pour l'instant on ne connait pas la borne sup exacte */
    1427        define('_SVP_VERSION_SPIP_MAX', '3.1.99');
    1528}
    1629
    17 // Liste des branches significatives de SPIP et de leurs bornes (versions min et max)
    18 // A mettre a jour en fonction des sorties
    19 # define('_INFOS_BRANCHES_SPIP', serialize($infos_branches_spip));
     30/**
     31 * Liste des branches significatives de SPIP et de leurs bornes (versions min et max)
     32 *
     33 * À mettre a jour en fonction des sorties
     34 * @global infos_branches_spip
     35 */
    2036$GLOBALS['infos_branches_spip'] = array(
    2137        '1.9' => array(_SVP_VERSION_SPIP_MIN,'1.9.2'),
     
    2541        '3.1' => array('3.1.0',_SVP_VERSION_SPIP_MAX)
    2642);
    27 
    28 // Liste des licences de plugin
    29 # define('_LICENCES_PLUGIN', serialize($licences_plugin));
     43# define('_INFOS_BRANCHES_SPIP', serialize($infos_branches_spip));
     44
     45/**
     46 * Liste des licences de plugin
     47 *
     48 * @global licences_plugin
     49 */
    3050$GLOBALS['licences_plugin'] = array(
    3151        'apache' => array(
     
    6787                'url' => 'http://creativecommons.org/licenses/by@suffixe@/@version@/')
    6888);
    69 
     89# define('_LICENCES_PLUGIN', serialize($licences_plugin));
    7090
    7191function fusionner_intervalles($intervalle_a, $intervalle_b) {
     
    295315}
    296316
     317/**
     318 * Liste les librairies présentes
     319 *
     320 * Cherche des librairie dans tous les dossiers 'lib' présents dans chaque
     321 * chemin déclaré (plugins, squelettes, SPIP). Un répertoire dans un dossier
     322 * 'lib' est considéré comme une librairie, et le nom de ce répertoire est
     323 * utilisé comme nom de la librairie.
     324 *
     325 * @return array
     326 *     Tableau de couples (nom de la librairie => répertoire de la librairie)
     327**/
    297328function svp_lister_librairies() {
    298329        $libs = array();
     
    311342
    312343/**
    313  * Retourner la chaine de la version x.y.z sous une forme normalisee
    314  * permettant le tri naturel.
    315  *
     344 * Retourne '00x.00y.00z' à partir de 'x.y.z'
     345 *
     346 * Retourne la chaine de la version x.y.z sous une forme normalisée
     347 * permettant le tri naturel. On complète à gauche d'un nombre de zéro
     348 * manquant pour aller à 3 caractères entre chaque point.
     349 *
     350 * @see denormaliser_version()
     351 * @param string $version
     352 *     Numéro de version dénormalisée
    316353 * @return string
     354 *     Numéro de version normalisée
    317355**/
    318356function normaliser_version($version='') {
  • _core_/plugins/svp/svp_administrations.php

    r60089 r64648  
    11<?php
     2
     3/**
     4 * Fichier gérant l'installation et désinstallation du plugin
     5 *
     6 * @plugin SVP pour SPIP
     7 * @license GPL
     8 * @package Plugins\SVP\Installation
     9**/
    210
    311include_spip('base/create');
    412
     13/**
     14 * Installation et mises à jour du plugin
     15 *
     16 * Crée les tables SQL du plugin (spip_depots, spip_plugins, spip_depots_plugins, spip_paquets)
     17 *
     18 * @param string $nom_meta_base_version
     19 *     Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
     20 * @param string $version_cible
     21 *     Version du schéma de données dans ce plugin (déclaré dans paquet.xml)
     22 * @return void
     23**/
    524function svp_upgrade($nom_meta_base_version, $version_cible){
    625
     
    2443}
    2544
     45/**
     46 * Désinstallation du plugin
     47 *
     48 * Supprime les tables SQL du plugin (spip_depots, spip_plugins, spip_depots_plugins, spip_paquets)
     49 *
     50 * @param string $nom_meta_base_version
     51 *     Nom de la meta informant de la version du schéma de données du plugin installé dans SPIP
     52 * @return void
     53**/
    2654function svp_vider_tables($nom_meta_base_version) {
    2755        sql_drop_table("spip_depots");
     
    3563
    3664
    37 // ajoute le prefixe des plugins dans chaque ligne de paquets
     65/**
     66 * Ajoute le préfixe des plugins dans chaque ligne de paquets
     67 *
     68 * Cette mise à jour permet de dupliquer le préfixe des plugins
     69 * dans la ligne des paquets (cette colonne était absente avant)
     70 * pour plus de simplicité ensuite dans les requêtes SQL.
     71 */
    3872function svp_synchroniser_prefixe() {
    3973        $paquets = sql_allfetsel(
  • _core_/plugins/svp/svp_fonctions.php

    r59379 r64648  
    11<?php
    22
     3/**
     4 * Déclarations de fonctions
     5 *
     6 * @plugin SVP pour SPIP
     7 * @license GPL
     8 * @package Plugins\SVP\Fonctions
     9**/
     10
     11/**
     12 * Retourne un texte expliquant l'intervalle de compatibilité avec un plugin ou SPIP
     13 *
     14 * Retourne par exemple "2.0 <= SPIP < 3.1"
     15 *
     16 * @param string $intervalle
     17 *     L'intervalle tel que déclaré dans paquet.xml. Par exemple "[2.1;3.0.*]"
     18 * @param string $logiciel
     19 *     Nom du plugin pour qui est cette intervalle
     20 * @return string
     21 *     Texte expliquant l'intervalle
     22**/
    323function svp_afficher_intervalle($intervalle, $logiciel){
    424        if (!strlen($intervalle)) return '';
     
    2444}
    2545
    26 
     46/**
     47 * Traduit un type d'état de plugin
     48 *
     49 * Si l'état n'existe pas, prendra par défaut 'developpement'
     50 *
     51 * @see plugin_etat_en_clair()
     52 * @param string $etat
     53 *     Le type d'état (stable, test, ...)
     54 * @return string
     55 *     Traduction de l'état dans la langue en cours
     56**/
    2757function svp_afficher_etat($etat) {
    2858        include_spip('plugins/afficher_plugin');
     
    3060}
    3161
    32 
     62/**
     63 * Retourne un texte HTML présentant la liste des dépendances d'un plugin
     64 *
     65 * Des liens vers les plugins dépendants sont présents lorsque les plugins
     66 * en dépendance sont connus dans notre base.
     67 *
     68 * @param string $balise_serialisee
     69 *     Informations des dépendances (tableau sérialisé) tel que stocké
     70 *     en base dans la table spip_paquets
     71 * @param string $dependance
     72 *     Type de dépendances à afficher (necessite ou utilise).
     73 *     Une autre valeur indique qu'on demande la liste des librairies dépendantes.
     74 * @param string $sep
     75 *     Séparateur entre les noms de dépendances
     76 * @return string
     77 *     Texte informant des dépendances
     78**/
    3379function svp_afficher_dependances($balise_serialisee, $dependance='necessite', $sep='<br />') {
    3480        $texte = '';
     
    69115}
    70116
    71 
     117/**
     118 * Teste si un plugin possède des dépendances
     119 *
     120 * @param string $balise_serialisee
     121 *     Informations des dépendances (tableau sérialisé) tel que stocké
     122 *     en base dans la table spip_paquets
     123 * @return bool
     124 *     Le plugin possède t'il des dépendances ?
     125**/
    72126function svp_dependances_existe($balise_serialisee) {
    73127        $dependances = unserialize($balise_serialisee);
     
    81135
    82136
     137/**
     138 * Retourne un texte HTML présentant les crédits d'un plugin
     139 *
     140 * Des liens vers les crédits sont présents lorsqu'ils sont déclarés
     141 * dans le paquet.xml.
     142 *
     143 * @param string $balise_serialisee
     144 *     Informations des crédits (tableau sérialisé) tel que stocké
     145 *     en base dans la table spip_paquets
     146 * @param string $sep
     147 *     Séparateur entre les différents crédits
     148 * @return string
     149 *     Texte informant des crédits
     150**/
    83151function svp_afficher_credits($balise_serialisee, $sep=', ') {
    84152        $texte = '';
     
    103171
    104172
     173/**
     174 * Retourne un texte HTML présentant la liste des langues et traducteurs d'un plugin
     175 *
     176 * Des liens vers les traducteurs sont présents lorsqu'ils sont connus.
     177 *
     178 * @param array $langues
     179 *     Tableau code de langue => traducteurs
     180 * @param string $sep
     181 *     Séparateur entre les différentes langues
     182 * @return string
     183 *     Texte informant des langues et traducteurs
     184**/
    105185function svp_afficher_langues($langues, $sep=', '){
    106186        $texte = '';
     
    126206
    127207
     208/**
     209 * Retourne un texte HTML présentant des statistiques d'un dépot
     210 *
     211 * Liste le nombre de plugins et de paquets d'un dépot
     212 * Indique aussi le nombre de dépots si l'on ne demande pas de dépot particulier.
     213 *
     214 * @param int $id_depot
     215 *     Identifiant du dépot
     216 * @return string
     217 *     Code HTML présentant les statistiques du dépot
     218**/
    128219function svp_afficher_statistiques_globales($id_depot=0){
    129220        $info = '';
     
    318409}
    319410
     411/**
     412 * Traduit un type de catégorie de plugin
     413 *
     414 * @param string $alias
     415 *     Type de catégorie (auteur, communication, date...)
     416 * @return string
     417 *     Titre complet et traduit de la catégorie
     418**/
    320419function svp_traduire_categorie($alias) {
    321 
    322420        $traduction = '';
    323421        if ($alias) {
     
    327425}
    328426
     427/**
     428 * Traduit un type de dépot de plugin
     429 *
     430 * @param string $type
     431 *     Type de dépot (svn, git, manuel)
     432 * @return string
     433 *     Titre complet et traduit du type de dépot
     434**/
    329435function svp_traduire_type_depot($type) {
    330436
     
    337443
    338444/**
    339  * Critere de compatibilite avec une VERSION precise ou une BRANCHE de SPIP :
     445 * Critère de compatibilité avec une version précise ou une branche de SPIP.
     446 *
    340447 * Fonctionne sur les tables spip_paquets et spip_plugins
    341448 *
     449 * Si aucune valeur n'est explicité dans le critère, tous les enregistrements
     450 * sont retournés.
     451 *
     452 * Le ! (NOT) fonctionne sur le critère BRANCHE
     453 *
     454 * @critere compatible_spip
     455 * @example
    342456 *   {compatible_spip}
    343457 *   {compatible_spip 2.0.8} ou {compatible_spip 1.9}
    344458 *   {compatible_spip #ENV{vers}} ou {compatible_spip #ENV{vers, 1.9.2}}
    345459 *   {compatible_spip #GET{vers}} ou {compatible_spip #GET{vers, 2.1}}
    346  *
    347  *   Si aucune valeur explicite (dans le critère, par #ENV, par #SET)
    348  *   tous les enregistrements sont retournés.
    349  *
    350  *   Le ! (NOT) fonctionne sur le critère BRANCHE
     460 * 
     461 * @param string $idb     Identifiant de la boucle
     462 * @param array $boucles  AST du squelette
     463 * @param Critere $crit   Paramètres du critère dans cette boucle
     464 * @return void
    351465 */
    352466function critere_compatible_spip_dist($idb, &$boucles, $crit) {
     
    408522
    409523/**
    410  * Retourner le nombre d'heure entre chaque actualisation
     524 * Retourne le nombre d'heures entre chaque actualisation
    411525 * si le cron est activé.
    412526 *
    413  * @return nb d'heures (sinon 0)
     527 * @return int
     528 *     Nombre d'heures (sinon 0)
    414529**/
    415530function filtre_svp_periode_actualisation_depots() {
     
    420535
    421536/**
    422  * Retourner la chaine de la version x.y.z sous une forme sa forme initiale
    423  * sans remplissage à gauche avec des 0
    424  *
    425  * @return string
     537 * Retourne 'x.y.z' à partir de '00x.00y.00z'
     538 *
     539 * Retourne la chaine de la version x.y.z sous sa forme initiale,
     540 * sans remplissage à gauche avec des 0.
     541 *
     542 * @see normaliser_version()
     543 * @param string $version_normalisee
     544 *     Numéro de version normalisée
     545 * @return string
     546 *     Numéro de version dénormalisée
    426547**/
    427548function denormaliser_version($version_normalisee='') {
     
    442563}
    443564
     565/**
     566 * Teste l'utilisation du répertoire auto des plugins.
     567 *
     568 * Ce répertoire permet de télécharger dedans des plugins
     569 * lorsqu'il est présent.
     570 *
     571 * @return bool
     572 *     Le répertoire de chargement des plugins auto est-il présent
     573 *     et utilisable ?
     574 */
    444575function test_plugins_auto() {
    445576        static $test = null;
  • _core_/plugins/svp/svp_ieconfig.php

    r57807 r64648  
    11<?php
     2
     3/**
     4 * Déclarations des configurations qui peuvent être sauvegardées
     5 *
     6 * @plugin SVP pour SPIP
     7 * @license GPL
     8 * @package Plugins\SVP\Pipelines
     9**/
    210
    311if (!defined("_ECRIRE_INC_VERSION")) return;
    412
     13/**
     14 * Ajoute les metas sauvegardables de SVP pour le plugin IEConfig
     15 *
     16 * @pipelined ieconfig_metas
     17 *
     18 * @param array $table
     19 *     Déclaration des sauvegardes
     20 * @return array
     21 *     Déclaration des sauvegardes complétées
     22**/
    523function svp_ieconfig_metas($table){
    624        $table['svp']['titre'] = _T('svp:titre_page_configurer');
    725        $table['svp']['icone'] = 'svp-16.png';
    826        $table['svp']['metas_serialize'] = 'svp';
    9        
     27
    1028        return $table;
    1129}
  • _core_/plugins/svp/svp_pipelines.php

    r56156 r64648  
    11<?php
    22/**
    3  * Fonction pour le pipeline, n'a rien a effectuer
    4  *
    5  * @return
     3 * Déclarations d'autorisations et utilisations de pipelines
     4 *
     5 * @plugin SVP pour SPIP
     6 * @license GPL
     7 * @package Plugins\SVP\Pipelines
     8**/
     9
     10/**
     11 * Fonction du pipeline autoriser. N'a rien à faire
     12 * @pipelined autoriser
    613 */
    714function svp_autoriser(){}
    815
    916/**
    10  * Autorisation d'iconification d'un depot
     17 * Autoriser l'iconification (mettre un logo) d'un dépot
    1118 *
    12  * @param object $faire
    13  * @param object $type
    14  * @param object $id
    15  * @param object $qui
    16  * @param object $opt
    17  * @return
     19 * @param  string $faire Action demandée
     20 * @param  string $type  Type d'objet sur lequel appliquer l'action
     21 * @param  int    $id    Identifiant de l'objet
     22 * @param  array  $qui   Description de l'auteur demandant l'autorisation
     23 * @param  array  $opt   Options de cette autorisation
     24 * @return bool          true s'il a le droit, false sinon
    1825 */
    1926function autoriser_depot_iconifier_dist($faire, $type, $id, $qui, $opt){
     
    2330
    2431/**
    25  * Ajout de l'onglet Ajouter les plugins dont l'url depend du l'existence ou pas d'un depot
    26  * de plugins
     32 * Ajout de l'onglet 'Ajouter les plugins'
    2733 *
    28  * @param array $flux
    29  * @return array
     34 * L'URL dépend de l'existence ou pas d'un dépot de plugins.
     35 * En absence, on amène sur la page permettant de créer un premier dépot.
     36 *
     37 * @pipelined ajouter_onglets
     38 * @param array $flux Données du pipeline
     39 * @return array      Données du pipeline
    3040 */
    3141function svp_ajouter_onglets($flux){
    32     if ($flux['args']=='plugins') {
     42        if ($flux['args']=='plugins') {
    3343                $compteurs = svp_compter('depot');
    3444                $page = ($compteurs['depot'] == 0) ? 'depots' : 'charger_plugin';
    35         $flux['data']['charger_plugin']= new Bouton(
    36                                                                                                 find_in_theme('images/plugin-add-24.png'),
    37                                                                                                 'plugin_titre_automatique_ajouter',
    38                                                                                                 generer_url_ecrire($page));
     45                $flux['data']['charger_plugin'] =
     46                        new Bouton(
     47                                find_in_theme('images/plugin-add-24.png'),
     48                                'plugin_titre_automatique_ajouter',
     49                                generer_url_ecrire($page));
    3950        }
    40     return $flux;
     51        return $flux;
    4152}
    4253
    4354
    4455/**
    45  * On affiche dans les boucles (PLUGINS) (DEPOTS) et (PAQUETS)
    46  * que les distants par defaut
     56 * Ne pas afficher par défaut les paquets,dépots,plugins locaux dans les boucles
     57 *
     58 * On n'affiche dans les boucles (PLUGINS) (DEPOTS) et (PAQUETS)
     59 * que les éléments distants par défaut (on cache les locaux).
     60 *
    4761 * Utiliser {tout} pour tout avoir.
     62 * Utiliser {tout}{id_depot=0} pour avoir les plugins ou paquets locaux.
    4863 *
    49  * @param
    50  * @return
     64 * @pipelined pre_boucle
     65 * @param Boucle $boucle Description de la boucle
     66 * @return Boucle        Description de la boucle
    5167**/
    5268function svp_pre_boucle($boucle) {
     
    6480                        #!isset($boucle->modificateur['criteres']['id_depot']) &&
    6581                        !isset($boucle->modificateur['tout'])) {
    66                                 $boucle->where[] = array("'>'", "'$m_id_depot'", "'\"0\"'");                           
     82                                $boucle->where[] = array("'>'", "'$m_id_depot'", "'\"0\"'");
    6783                }
    6884        }
     
    88104                #       !$id_depot &&
    89105                        !isset($boucle->modificateur['tout'])) {
    90                                 // Restreindre aux mots cles non techniques
     106                                // Restreindre aux plugins distant (id_depot > 0)
    91107                                $boucle->from["depots_plugins"] =  "spip_depots_plugins";
    92108                                $boucle->where[] = array("'='", "'depots_plugins.id_plugin'", "'$id_table.id_plugin'");
     
    95111        }
    96112
    97        
    98113        return $boucle;
    99114
Note: See TracChangeset for help on using the changeset viewer.