Changeset 61405 in spip-zone


Ignore:
Timestamp:
May 18, 2012, 10:43:16 PM (10 years ago)
Author:
kent1@…
Message:

Une première version qui marchotte permettant de scanner plusieurs répertoires à la fois...

Hop hop hop...

Location:
_plugins_/langonet
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/langonet/formulaires/langonet_verifier.html

    r55399 r61405  
    4040                                                        <p class="explication"><:langonet:info_arborescence_scannee:></p>
    4141                                                        [<span class="erreur_message">(#ENV{erreurs}|table_valeur{dossier_scan})</span>]
    42                                                         [(#ENV{dossier_scan, 0}|langonet_creer_select_dossiers)]
     42                                                        [(#ENV{dossier_scan, #ARRAY}|langonet_creer_select_dossiers)]
    4343                                                </li>
    4444                                        </ul>
  • _plugins_/langonet/formulaires/langonet_verifier.php

    r56035 r61405  
    1010
    1111function formulaires_langonet_verifier_charger() {
     12
    1213        return array('verification' => _request('verification'),
    1314                                'fichier_langue' => _request('fichier_langue'),
    14                                 'dossier_scan' => _request('dossier_scan'));
     15                                'dossier_scan' => sinon(_request('dossier_scan'),array()));
    1516}
    1617
     
    2223                }
    2324        }
    24         if (_request('dossier_scan') == '0') {
     25        if (!is_array(_request('dossier_scan')) OR count(_request('dossier_scan')) == '0') {
    2526                $erreurs['dossier_scan'] = _T('langonet:message_nok_champ_obligatoire');
    2627        }
     
    9495        }
    9596        else {
    96                 $retour = formater_resultats($verification, $resultats, $corrections);
     97                $retour = formater_resultats($verification, $resultats, $corrections,$ou_fichier);
    9798        }
    9899        $retour['editable'] = true;
     
    126127// $verification => type de verification effectuee (definition ou utilisation)
    127128// $corrections  => tableau des resultats de la generation du fichier de langue corrige
    128 function formater_resultats($verification, $resultats, $corrections) {
     129function formater_resultats($verification, $resultats, $corrections,$ou_fichier) {
    129130
    130131        include_spip('inc/actions');
     
    234235                        $texte['non'] .= '<div class="error">'  . "\n";
    235236                        if (count($resultats['item_non']) == 1) {
    236                                 $texte['non'] .= _T('langonet:message_ok_non_utilises_1', array('ou_fichier' => $resultats['ou_fichier'], 'langue' => $resultats['langue'])) . "\n";
     237                                if(count($resultats['ou_fichier']) > 1)
     238                                        $texte['non'] .= _T('langonet:message_ok_non_utilises_1s', array('ou_fichier' => implode(', ',$resultats['ou_fichier']), 'langue' => $resultats['langue'])) . "\n";
     239                                else
     240                                        $texte['non'] .= _T('langonet:message_ok_non_utilises_1', array('ou_fichier' => implode(', ',$resultats['ou_fichier']), 'langue' => $resultats['langue'])) . "\n";
    237241                        }
    238242                        else {
    239                                 $texte['non'] .= _T('langonet:message_ok_non_utilises_n', array('nberr' => count($resultats['item_non']), 'ou_fichier' => $resultats['ou_fichier'], 'langue' => $resultats['langue'])) . "\n";
     243                                if(count($resultats['ou_fichier']) > 1)
     244                                        $texte['non'] .= _T('langonet:message_ok_non_utilises_ns', array('nberr' => count($resultats['item_non']), 'ou_fichier' => implode(', ',$resultats['ou_fichier']), 'langue' => $resultats['langue'])) . "\n";
     245                                else
     246                                        $texte['non'] .= _T('langonet:message_ok_non_utilises_n', array('nberr' => count($resultats['item_non']), 'ou_fichier' => implode(', ',$resultats['ou_fichier']), 'langue' => $resultats['langue'])) . "\n";
    240247                        }
    241248                        $texte['non'] .= '<div style="background-color: #fff; margin-top: 10px;">' . "\n";
     
    252259                else {
    253260                        $texte['non'] .= '<div class="success">' . "\n";
    254                         $texte['non'] .= _T('langonet:message_ok_non_utilises_0', array('ou_fichier' => $resultats['ou_fichier'], 'langue' => $resultats['langue'])) . "\n";
     261                        if(count($resultats['ou_fichier']) > 1)
     262                                $texte['non'] .= _T('langonet:message_ok_non_utilises_0s', array('ou_fichier' => implode(', ',$resultats['ou_fichier']), 'langue' => $resultats['langue'])) . "\n";
     263                        else
     264                                $texte['non'] .= _T('langonet:message_ok_non_utilises_0', array('ou_fichier' => implode(', ',$resultats['ou_fichier']), 'langue' => $resultats['langue'])) . "\n";
    255265                        $texte['non'] .= "</div>\n";
    256266                }
     
    439449        // Fichier de log dans tmp/langonet/
    440450        $ou_fichier =  $resultats['ou_fichier'];
    441         $log_prefixe = ($verification == 'fonction_l') ? str_replace("/", "%", $ou_fichier) : basename($resultats['langue'], '.php') . '_';
     451        $log_prefixe = ($verification == 'fonction_l') ? str_replace("/", "%", implode('_',$ou_fichier)) : basename($resultats['langue'], '.php') . '_';
    442452        $log_nom = $log_prefixe . $verification[0] . '_' . date("Ymd_His").'.log';
    443453        $log_rep = sous_repertoire(_DIR_TMP, "langonet");
     
    469479        $log_texte .= "# " .
    470480                entite2utf(_T('langonet:label_arborescence_scannee')) . " : " .
    471                 entite2utf($ou_fichier) .
     481                entite2utf(implode(', ',$ou_fichier)) .
    472482                "\n# $sep\n# " .
    473483                entite2utf(_T('langonet:label_erreur')) . " : " .
  • _plugins_/langonet/inc/langonet_verifier_items.php

    r56035 r61405  
    4141        // On n'analyse que les fichiers php, html, xml ou yaml
    4242        // (voir le fichier regexp.txt).
    43         $files = preg_files(_DIR_RACINE.$ou_fichier, '(?<!/charsets|/lang|/req)(/[^/]*\.(html|php|xml|yaml))$');
     43        $files = array();
     44        foreach($ou_fichier as $rep){
     45                $files = array_merge($files,preg_files(_DIR_RACINE.$rep, '(?<!/charsets|/lang|/req)(/[^/]*\.(html|php|xml|yaml))$'));
     46        }
    4447        $resultats =  langonet_collecter_items($files);
    4548
  • _plugins_/langonet/inc/langonet_verifier_l.php

    r56035 r61405  
    4242
    4343        $item_md5 = $fichier_non = array();
    44         $files = preg_files(_DIR_RACINE.$ou_fichier, _LANGONET_FILES);
     44        foreach($ou_fichier as $rep){
     45                $files = array_merge(preg_files(_DIR_RACINE.$rep, _LANGONET_FILES));
     46        }
    4547        foreach ($files as $_fichier) {
    4648                foreach ($contenu = file($_fichier) as $ligne => $texte) {
  • _plugins_/langonet/lang/langonet_fr.php

    r56572 r61405  
    103103        'message_ok_non_definis_n' => 'Les @nberr@ items de langue du module «<em>@module@</em>» affichés ci-dessous sont utilisés dans des fichiers du répertoire «<em>@ou_fichier@</em>» mais ne sont pas définis dans le fichier de langue «<em>@langue@</em>» :',
    104104        'message_ok_non_utilises_0' => 'Tous les items de langue définis  dans le fichier de langue «<em>@langue@</em>» sont bien utilisés dans les fichiers du répertoire «<em>@ou_fichier@</em>».',
     105        'message_ok_non_utilises_0s' => 'Tous les items de langue définis  dans le fichier de langue «<em>@langue@</em>» sont bien utilisés dans les fichiers des répertoires «<em>@ou_fichier@</em>».',
    105106        'message_ok_non_utilises_1' => 'L\'item de langue ci-dessous est bien défini dans le fichier de langue «<em>@langue@</em>», mais n\'est pas utilisé dans les fichiers du répertoire «<em>@ou_fichier@</em>» :',
     107        'message_ok_non_utilises_1s' => 'L\'item de langue ci-dessous est bien défini dans le fichier de langue «<em>@langue@</em>», mais n\'est pas utilisé dans les fichiers des répertoires «<em>@ou_fichier@</em>» :',
    106108        'message_ok_non_utilises_n' => 'Les @nberr@ items de langue ci-dessous sont bien définis dans le fichier de langue «<em>@langue@</em>», mais ne sont pas utilisés dans les fichiers du répertoire «<em>@ou_fichier@</em>» :',
     109        'message_ok_non_utilises_ns' => 'Les @nberr@ items de langue ci-dessous sont bien définis dans le fichier de langue «<em>@langue@</em>», mais ne sont pas utilisés dans les fichiers des répertoires «<em>@ou_fichier@</em>» :',
    107110        'message_ok_nonmais_definis_0' => 'Les fichiers du répertoire «<em>@ou_fichier@</em>» n\'utilisent aucun item de langue correctement défini dans un autre module que «<em>@module@</em>».',
    108111        'message_ok_nonmais_definis_1' => 'L\'item de langue ci-dessous est utilisé correctement dans des fichiers du répertoire «<em>@ou_fichier@</em>» mais est défini dans un autre module que «<em>@module@</em>». Nous vous invitons à le vérifier :',
  • _plugins_/langonet/langonet_fonctions.php

    r60100 r61405  
    1111function langonet_creer_select_langues($sel_l='0') {
    1212
    13         $retour = creer_selects($sel_l, '0');
     13        $retour = creer_selects($sel_l, array());
    1414        return $retour['fichiers'];
    1515}
     
    2121 * @return array
    2222 */
    23 function langonet_creer_select_dossiers($sel_d='0') {
    24 
     23function langonet_creer_select_dossiers($sel_d=array()) {
    2524        $retour = creer_selects('0', $sel_d);
    2625        return $retour['dossiers'];
     
    3231 * - des arborescences a scanner
    3332 *
    34  * @param string $sel_l
    35  * @param string $sel_d
     33 * @param string $sel_l option du select des langues
     34 * @param array $sel_d option(s) du select des repertoire
    3635 * @return array
    3736 */
    38 
    39 // $sel_l  => option du select des langues
    40 // $sel_d  => option du select des repertoires
    41 function creer_selects($sel_l='0',$sel_d='0') {
    42        
    43 
     37function creer_selects($sel_l='0',$sel_d=array()) {
    4438        // Recuperation des repertoires des plugins
    4539        $rep_plugins = lister_dossiers_plugins();
     
    6559        $sel_lang .= _T('langonet:option_aucun_fichier') . '</option>' . "\n";
    6660        // -- les racines des arborescences a scanner
    67         $sel_dossier = '<select name="dossier_scan" id="dossier_scan">' . "\n";
    68         $sel_dossier .= '<option value="0"';
    69         $sel_dossier .= ($sel_d == '0') ? ' selected="selected">' : '>';
    70         $sel_dossier .= _T('langonet:option_aucun_dossier') . '</option>' . "\n";
     61        $sel_dossier = '<select name="dossier_scan[]" id="dossier_scan" multiple="multiple">' . "\n";
     62        //$sel_dossier .= '<option value="0"';
     63        //$sel_dossier .= (count($sel_d) == '0') ? ' selected="selected">' : '>';
     64        //$sel_dossier .= _T('langonet:option_aucun_dossier') . '</option>' . "\n";
    7165
    7266        // la liste des options :
     
    111105                }
    112106                $sel_dossier .= '<option value="' . $ou_fichier;
    113                 $sel_dossier .= ($sel_d == $ou_fichier) ? '" selected="selected">' : '">';
     107                $sel_dossier .= (in_array($ou_fichier,$sel_d)) ? '" selected="selected">' : '">';
    114108                $sel_dossier .= str_replace('../', '', $reel_dir) . '/</option>' . "\n";
    115109        }
  • _plugins_/langonet/plugin.xml

    r55706 r61405  
    33        <slogan>V&#233;rifier, g&#233;n&#233;rer, rechercher ou afficher les items de langue</slogan>
    44        <auteur>Eric Lupinacci, denisb, esj, kent1</auteur>
    5         <version>0.7.2</version>
     5        <version>0.7.3</version>
    66        <etat>stable</etat>
    77        <licence>GPL 3</licence>
Note: See TracChangeset for help on using the changeset viewer.