Changeset 82656 in spip-zone


Ignore:
Timestamp:
May 21, 2014, 12:52:36 PM (5 years ago)
Author:
rastapopoulos@…
Message:

Déplacer la liste des sources et son pipeline dans une fonction dédiée, ce qui permet de récupérer cette liste à plusieurs endroits différents.

Du coup on met aussi un static, comme ça si elle est appelée plusieurs fois dans le même hit, ça ne générera qu'une fois la liste et ses objets avec new.

Location:
_plugins_/indexer/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/indexer/trunk/inc/indexer.php

    r82389 r82656  
    2020
    2121$loader->register();
     22
     23/**
     24 * Renvoyer les sources de données disponibles dans le site
     25 *
     26 * Un pipeline "indexer_sources" est appelée avec la liste par défaut, permettant de retirer ou d'ajouter des sources.
     27 *
     28 * @pipeline_appel insexer_sources
     29 * @return Sources Retourne un objet Sources listant les sources enregistrées avec la méthode register()
     30 */
     31function indexer_sources(){
     32        static $sources = null;
     33       
     34        if (is_null($sources)){
     35                $sources = new Indexer\Sources\Sources();
     36                $sources->register('articles', new Spip\Indexer\Sources\Articles());
     37                $sources = pipeline('indexer_sources', $sources);
     38        }
     39       
     40        return $sources;
     41}
  • _plugins_/indexer/trunk/prive/squelettes/contenu/indexer.html

    r82584 r82656  
    1717        die("<p class='erreur'>$message</p>");
    1818    }
    19 
    20     $sources = new Indexer\Sources\Sources();
    21     $sources->register('articles', new Spip\Indexer\Sources\Articles());
    22     $sources = pipeline('indexer_sources', $sources);
     19       
     20        // Appeler la fonction qui liste les sources et qui comporte un pipeline pour étendre
     21    $sources = indexer_sources();
    2322
    2423    $SpipSourcesIndexer = new Spip\Indexer\Sources\SpipSourcesIndexer($indexer, $sources);
Note: See TracChangeset for help on using the changeset viewer.