Changeset 44105 in spip-zone


Ignore:
Timestamp:
Feb 3, 2011, 12:35:33 PM (9 years ago)
Author:
esj@…
Message:

[_outils_/validerPlugins validerPlugins]. Permettre d'appliquer le validateur sur n'importe quel fichier XML, donné en 2e argument du script, dont on peut donner la DTD en 3e argument (le 1er étant toujours le répertoire à explorer). Par exemple:

php toutValider.php plugins/Association/ paquet.xml paquet.dtd

Par ailleurs, je place ici la DTD provisoire pour SVP, incluant les entités XML standard pour plus de commodité, afin d'aider à la mise au point des fichiers paquet.xml à partir d'un fichier plugin.xml.

Location:
_outils_/validerPlugins
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • _outils_/validerPlugins/toutValider.php

    r44091 r44105  
    1818// Mais ca permet un premier diagnostic
    1919
    20 $dtd = '../../prive/plugin.dtd';
    21 if (!file_exists($did)) {
    22   copy('plugin.dtd', $dtd);
     20$dir = $argv[1] ? $argv[1] : 'plugins/';
     21$nom = $argv[2] ? $argv[2] : 'plugin.xml';
     22$dtd = $argv[3] ? $argv[3] : 'plugin.dtd';
     23$pdtd = 'prive/' . $dtd;
     24if (!file_exists('../../' . $pdtd)) {
     25  copy($dtd, '../../' . $pdtd);
    2326  $dtd = false;
    2427}
    25 $match = $argv[1] ? $argv[1] : 'plugins/';
     28
    2629chdir('../../');
    2730require 'ecrire/inc_version.php';
    2831require 'ecrire/exec/valider_xml.php';
    29 $files = preg_files($match,  '/plugin.xml$');
     32$files = preg_files($dir,  '/' . $nom . '$');
    3033$all = array();
    3134foreach(valider_dir($files, 'xml', 'plugins') as $valid)  {
     
    3336  foreach ($erreurs as $k => $v) {
    3437    $msg = preg_replace('@<br[^>]*>|:|,@', '', $v[0]);
    35     $msg = preg_replace(',\s*[(][^)]*[)],', '', $msg);
    36     $erreurs[$k] = str_replace("\n", '', textebrut($msg));
     38#    $msg = preg_replace(',\s*[(][^)]*[)],', '', $msg);
     39    $erreurs[$k] = $msg;#str_replace("\n", '', textebrut($msg));
    3740    $msg = preg_replace(',<b>[^>]*</b>,', '', $msg);
    3841    @++$all[trim(str_replace("\n", '', textebrut($msg)))];
     
    4447asort($all);
    4548foreach ($all as $k => $v) echo sprintf("%4d %s\n", $v, $k);
    46 if (!$dtd) unlink('prive/plugin.dtd');
     49if (!$dtd) unlink($pdtd);
    4750?>
Note: See TracChangeset for help on using the changeset viewer.