source: spip-zone/_plugins_/indexer/trunk/prive/squelettes/contenu/indexer.html @ 82656

Last change on this file since 82656 was 82656, checked in by rastapopoulos@…, 7 years ago

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.

File size: 1.3 KB
Line 
1<h1>Test de l'indexer</h1>
2
3<?php
4
5if (_request('run') || _request('continue')) {
6    include_spip('inc/indexer');
7    $indexer = new Indexer\Indexer();
8
9    try {
10        $indexer->registerStorage(
11            new Indexer\Storage\Sphinx(
12                new Sphinx\SphinxQL\SphinxQL(SPHINX_SERVER_HOST, SPHINX_SERVER_PORT), SPHINX_DEFAULT_INDEX)
13        );
14    } catch( \Exception $e ) {
15        if (!$message = $e->getMessage())
16            $message = _L('Erreur inconnue');
17        die("<p class='erreur'>$message</p>");
18    }
19       
20        // Appeler la fonction qui liste les sources et qui comporte un pipeline pour étendre
21    $sources = indexer_sources();
22
23    $SpipSourcesIndexer = new Spip\Indexer\Sources\SpipSourcesIndexer($indexer, $sources);
24    $SpipSourcesIndexer->setTablesLiensAuto();
25
26    if (_request('run')) {
27        $SpipSourcesIndexer->resetIndexesStats();
28    }
29    $res = $SpipSourcesIndexer->indexAll();
30
31    if (!$res) {
32        echo "\n<br/><a id='recharger' href='[(#SELF|parametre_url{run,''}|parametre_url{continue,1})]'>Recharger la page pour continuer l'indexation</a>";
33        echo "<script type='text/javascript'>window.location.replace( $('#recharger').attr('href') );</script>";
34    } else {
35        echo "\n<pre>"; print_r($res); echo "</pre>";
36    }
37}
Note: See TracBrowser for help on using the repository browser.