Ignore:
Timestamp:
12/04/10 15:43:02 (9 years ago)
Author:
mistic100
Message:

gestion des langues, ajout de l'anglais, correction de bugs mineurs

Location:
extensions/PHP_Optimisateur
Files:
7 added
7 edited

Legend:

Unmodified
Added
Removed
  • extensions/PHP_Optimisateur/files/display_config.php

    r7991 r7993  
    66 
    77echo '<div class="config"> 
    8         <h2>Configuration</h2> 
    9         <ul> 
    10                 <li> 
    11                         <span class="title">Répertoires</span> 
    12                         <ul> 
    13                                 <li><b>Répertoire source :</b> '.$DIRsource.'</li> 
    14                                 <li><b>Répertoire de sortie :</b> '.$DIRsortie.'</li> 
    15                         </ul> 
    16                 </li> 
    17                 <li> 
    18                         <span class="title">Options</span> 
    19                         <ul> 
    20                                 <li><b>Créer le dossier haute définition :</b> '.bool_to_string($DIRhighORNOT).'</li> 
    21                                 <li><b>Redimensionner les images HD :</b> '.bool_to_string($DIMhdORNOT).'</li> 
    22                                 <li><b>Renommer les fichiers :</b> '.bool_to_string($renameORNOT).'</li> 
    23                                 <li><b>Ajouter les fichiers index.php :</b> '.bool_to_string($indexORNOT).'</li> 
    24                                 <li><b>Préfixe des miniatures :</b> '.$prefixe_mini.'</li> 
    25                         </ul> 
    26                 </li> 
    27                 <li> 
    28                         <span class="title">Tailles et qualité</span> 
    29                         <ul> 
    30                                 <li><b>Taille maximale des images HD :</b> '.$DIMhd.'</li> 
    31                                 <li><b>Taille des images normales :</b> '.$DIMnormal.'</li> 
    32                                 <li><b>Taille des miniatures :</b> '.$DIMthumbnail.'</li> 
    33                                 <li><b>Qualité des images HD :</b> '.$Qhd.'</li> 
    34                                 <li><b>Qualité des images normales :</b> '.$Qnormal.'</li> 
    35                                 <li><b>Qualité des miniatures :</b> '.$Qthumbnail.'</li> 
    36                                 <li><b>Résolution des images HD :</b> '.$DPI.'</li> 
    37                         </ul> 
    38                 </li> 
    39                 <li> 
    40                         <span class="title">Copyright</span> 
    41                         <ul> 
    42                                 <li><b>Texte :</b> '.$copyright.'</li> 
    43                                 <li><b>Sur les images HD :</b> '.bool_to_string($copyONhd).'</li> 
    44                                 <li><b>Sur les images normales :</b> '.bool_to_string($copyONnormal).'</li> 
    45                                 <li><b>Position :</b> '.$copyPOS.'</li> 
    46                                 <li><b>Taille (ratio image/texte) :</b> '.$copySIZE.'</li> 
    47                                 <li><b>Couleur :</b> rgb('.$copyCOLOR.') <span style="vertical-align:middle;border:1px solid #7f7f7f;width:1.5em;height:0.8em;display:inline-block;background:rgb('.str_replace(' ',',',$copyCOLOR).');">&nbsp;</span></li> 
    48                                 <li><b>Police :</b> '.$copyFONT.'</li> 
    49                         </ul> 
    50                 </li> 
    51                 <li> 
    52                         <span class="title">Plugins pré-processing</span> 
    53                         <ul>'; 
    54                                 foreach ($PluginsBefore as $name => $config) { 
    55                                         echo '<li> 
    56                                                 <b>'.$name.' :</b> 
    57                                                 <ul>'; 
    58                                                         foreach ($config as $key => $value) { 
    59                                                                 echo '<li>'.$key.' &raquo; '.bool_to_string($value).'</li>'; 
    60                                                         } 
    61                                                 echo '</ul> 
    62                                         </li>'; 
    63                                 } 
    64                         echo '</ul> 
    65                 </li> 
    66                 <li> 
    67                         <span class="title">Plugins processing</span> 
    68                         <ul>'; 
    69                                 foreach ($PluginsProcess as $name => $config) { 
    70                                         echo '<li> 
    71                                                 <b>'.$name.' :</b> 
    72                                                 <ul>'; 
    73                                                         foreach ($config as $key => $value) { 
    74                                                                 echo '<li>'.$key.' &raquo; '.bool_to_string($value).'</li>'; 
    75                                                         } 
    76                                                 echo '</ul> 
    77                                         </li>'; 
    78                                 } 
    79                         echo '</ul> 
    80                 </li> 
    81                 <li> 
    82                         <span class="title">Plugins post-processing</span> 
    83                         <ul>'; 
    84                                 foreach ($PluginsAfter as $name => $config) { 
    85                                         echo '<li> 
    86                                                 <b>'.$name.' :</b> 
    87                                                 <ul>'; 
    88                                                         foreach ($config as $key => $value) { 
    89                                                                 echo '<li>'.$key.' &raquo; '.bool_to_string($value).'</li>'; 
    90                                                         } 
    91                                                 echo '</ul> 
    92                                         </li>'; 
    93                                 } 
    94                         echo '</ul> 
    95                 </li> 
    96         </ul> 
    97 </div>'; 
     8                <h2>'.l10n('Configuration').'</h2> 
     9                <ul> 
     10                        <li> 
     11                                <span class="title">'.l10n('Folders').'</span> 
     12                                <table> 
     13                                        <tr> 
     14                                                <td><b>'.l10n('FolderIn').' :</b></td> 
     15                                                <td>'.$DIRsource.'</td> 
     16                                        </tr> 
     17                                        <tr> 
     18                                                <td><b>'.l10n('FolderOut').' :</b></td> 
     19                                                <td>'.$DIRsortie.'</td> 
     20                                        </tr> 
     21                                </table> 
     22                        </li> 
     23                        <li> 
     24                                <span class="title">'.l10n('Options').'</span> 
     25                                <table> 
     26                                        <tr> 
     27                                                <td><b>'.l10n('DIRhighORNOT').' :</b></td> 
     28                                                <td>'.bool_to_string($DIRhighORNOT).'</td> 
     29                                        </tr> 
     30                                        <tr> 
     31                                                <td><b>'.l10n('DIMhdORNOT').' :</b></td> 
     32                                                <td>'.bool_to_string($DIMhdORNOT).'</td> 
     33                                        </tr> 
     34                                        <tr> 
     35                                                <td><b>'.l10n('renameORNOT').' :</b></td> 
     36                                                <td>'.bool_to_string($renameORNOT).'</td> 
     37                                        </tr> 
     38                                        <tr> 
     39                                                <td><b>'.l10n('indexORNOT').' :</b></td> 
     40                                                <td>'.bool_to_string($indexORNOT).'</td> 
     41                                        </tr> 
     42                                        <tr> 
     43                                                <td><b>'.l10n('prefixe_mini').' :</b></td> 
     44                                                <td>'.$prefixe_mini.'</td> 
     45                                        </tr> 
     46                                </table> 
     47                        </li> 
     48                        <li> 
     49                                <span class="title">'.l10n('Sizes and quality').'</span> 
     50                                <table> 
     51                                        <tr> 
     52                                                <td><b>'.l10n('DIMhd').' :</b></td> 
     53                                                <td>'.$DIMhd.'</td> 
     54                                        </tr> 
     55                                        <tr> 
     56                                                <td><b>'.l10n('DIMnormal').' :</b></td> 
     57                                                <td>'.$DIMnormal.'</td> 
     58                                        </tr> 
     59                                        <tr> 
     60                                                <td><b>'.l10n('DIMthumbnail').' :</b></td> 
     61                                                <td>'.$DIMthumbnail.'</td> 
     62                                        </tr> 
     63                                        <tr> 
     64                                                <td><b>'.l10n('Qhd').' :</b></td> 
     65                                                <td>'.$Qhd.'</td> 
     66                                        </tr> 
     67                                        <tr> 
     68                                                <td><b>'.l10n('Qnormal').' :</b></td> 
     69                                                <td>'.$Qnormal.'</td> 
     70                                        </tr> 
     71                                        <tr> 
     72                                                <td><b>'.l10n('Qthumbnail').' :</b></td> 
     73                                                <td>'.$Qthumbnail.'</td> 
     74                                        </tr> 
     75                                        <tr> 
     76                                                <td><b>'.l10n('DPI').' :</b></td> 
     77                                                <td>'.$DPI.'</td> 
     78                                        </tr> 
     79                                </table> 
     80                        </li> 
     81                        <li> 
     82                                <span class="title">'.l10n('Copyright').'</span> 
     83                                <table> 
     84                                        <tr> 
     85                                                <td><b>'.l10n('Content').' :</b></td> 
     86                                                <td>'.$copyright.'</td> 
     87                                        </tr> 
     88                                        <tr> 
     89                                                <td><b>'.l10n('copyONhd').' :</b></td> 
     90                                                <td>'.bool_to_string($copyONhd).'</td> 
     91                                        </tr> 
     92                                        <tr> 
     93                                                <td><b>'.l10n('copyONnormal').' :</b></td> 
     94                                                <td>'.bool_to_string($copyONnormal).'</td> 
     95                                        </tr> 
     96                                        <tr> 
     97                                                <td><b>'.l10n('copyPOS%s', '').' :</b></td> 
     98                                                <td>'.$copyPOS.'</td> 
     99                                        </tr> 
     100                                        <tr> 
     101                                                <td><b>'.l10n('copySIZE').' :</b></td> 
     102                                                <td>'.$copySIZE.'</td> 
     103                                        </tr> 
     104                                        <tr> 
     105                                                <td><b>'.l10n('copyCOLOR').' :</b></td> 
     106                                                <td>rgb('.$copyCOLOR.') <span style="vertical-align:middle;border:1px solid #7f7f7f;width:1.5em;height:0.8em;display:inline-block;background:rgb('.str_replace(' ',',',$copyCOLOR).');">&nbsp;</span></td> 
     107                                        </tr> 
     108                                        <tr> 
     109                                                <td><b>'.l10n('copyFONT').' :</b></td> 
     110                                                <td>'.$copyFONT.'</td> 
     111                                        </tr> 
     112                                </table> 
     113                        </li> 
     114                        <li> 
     115                                <span class="title">'.l10n('PluginsBefore').'</span> 
     116                                <ul>'; 
     117                                        foreach ($PluginsBefore as $name => $config) { 
     118                                                echo '<li> 
     119                                                        <b>'.$name.' :</b> 
     120                                                        <table>'; 
     121                                                                foreach ($config as $key => $value) { 
     122                                                                        echo '<tr> 
     123                                                                                <td>'.$key.' :</td> 
     124                                                                                <td>'.bool_to_string($value).'</td> 
     125                                                                        </tr>'; 
     126                                                                } 
     127                                                        echo '</table> 
     128                                                </li>'; 
     129                                        } 
     130                                echo '</ul> 
     131                        </li> 
     132                        <li> 
     133                                <span class="title">'.l10n('PluginsProcess').'</span> 
     134                                <ul>'; 
     135                                        foreach ($PluginsProcess as $name => $config) { 
     136                                                echo '<li> 
     137                                                        <b>'.$name.' :</b> 
     138                                                        <table>'; 
     139                                                                foreach ($config as $key => $value) { 
     140                                                                        echo '<tr> 
     141                                                                                <td>'.$key.' :</td> 
     142                                                                                <td>'.bool_to_string($value).'</td> 
     143                                                                        </tr>'; 
     144                                                                } 
     145                                                        echo '</table> 
     146                                                </li>'; 
     147                                        } 
     148                                echo '</ul> 
     149                        </li> 
     150                        <li> 
     151                                <span class="title">'.l10n('PluginsAfter').'</span> 
     152                                <ul>'; 
     153                                        foreach ($PluginsAfter as $name => $config) { 
     154                                                echo '<li> 
     155                                                        <b>'.$name.' :</b> 
     156                                                        <table>'; 
     157                                                                foreach ($config as $key => $value) { 
     158                                                                        echo '<tr> 
     159                                                                                <td>'.$key.' :</td> 
     160                                                                                <td>'.bool_to_string($value).'</td> 
     161                                                                        </tr>'; 
     162                                                                } 
     163                                                        echo '</table> 
     164                                                </li>'; 
     165                                        } 
     166                                echo '</ul> 
     167                        </li> 
     168                </ul> 
     169        </div>'; 
    98170?> 
  • extensions/PHP_Optimisateur/files/functions.php

    r7991 r7993  
    55\***************************************/ 
    66 
     7// Affiche les textes 
     8function l10n($code){ 
     9        global $Lang; 
     10        if (isset($Lang[$code])) { 
     11                $args = func_get_args(); 
     12                if (count($args) > 1) { 
     13                        array_shift($args); 
     14                        return vsprintf($Lang[$code], $args); 
     15                } else { 
     16                        return $Lang[$code]; 
     17                } 
     18        } else { 
     19                return $code; 
     20        } 
     21} 
     22 
     23// Trouve la langue 
     24function GetLanguage(){ 
     25        // tableau avec les langues installées 
     26        $dh = opendir('language'); 
     27        while ($file = readdir($dh)) { 
     28                if ($file !== '.' && $file !== '..' && is_dir('language/'.$file)) 
     29                        $languages[] = $file; 
     30        } 
     31        closedir($dh); 
     32         
     33        // recherche du paramètre get ou session, ou langue du navigateur 
     34        if(isset($_GET['Lang'])) 
     35                $_SESSION['Lang'] = $_GET['Lang']; 
     36        else if(!isset($_SESSION['Lang']) OR $_SESSION['Lang'] == NULL) 
     37                $_SESSION['Lang'] = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2); 
     38        if(!in_array($_SESSION['Lang'], $languages)) 
     39                $_SESSION['Lang'] = 'en'; 
     40 
     41        return array('Lang' => $_SESSION['Lang'], 'languages' => $languages); 
     42} 
     43 
    744// Supprime les accents et tous caractères non conforme 
    845function delete_special_car($string) { 
    946        global $renameORNOT; 
    10         $search = array ('#[éèêë]#','#[ÊËÈÉ]#','#[àâäã]#','#[ÂÄÁÀ]#','#[îïíì]#','#[ÎÏÍÌ]#','#[ûùüú]#','#[ÛÙÚÜ]#','#[ôóòõö]#','#[ÓÒÖÔÕ]#', 
    11                 '#[ç]#','#[Ç]#','#[ñ]#','#[Ñ]#','#[ýÿ]#','#[Ý]#','#[ \&\!\#\"\(\)\{\}\'\=\+\~]#','#[^a-zA-Z0-9_\.\-]#'); 
     47         
     48        $search = array ('#[éèêë]#','#[ÊËÈÉ]#','#[àâäã]#','#[ÂÄÁÀ]#','#[îïíì]#','#[ÎÏÍÌ]#','#[ûùüúµ]#','#[ÛÙÚÜ]#','#[ôóòõö]#','#[ÓÒÖÔÕ]#', 
     49                '#[ç]#','#[Ç]#','#[ñ]#','#[Ñ]#','#[ýÿ]#','#[Ý]#','#[ \&\!\?\#\"\(\)\{\}\[\]\=\+\~\%]#','#[^a-zA-Z0-9_\.\-]#'); 
    1250        $replace = array ('e','E','a','A','i','I','u','U','o','O','c','C',',n','N','y','Y','_',''); 
    1351         
    14         return preg_replace($search, $replace, $string); 
     52        if ($renameORNOT) { 
     53                return preg_replace($search, $replace, $string); 
     54        } else { 
     55                return str_replace(array('%','$'), '_', $string); 
     56        } 
    1557} 
    1658 
     
    5092                $dh = opendir($dir); 
    5193        } else { 
    52                 exit; 
     94                exit('Dossier inexistant'); 
    5395        } 
    5496        while (($file = readdir($dh)) !== false ) { 
     
    97139} 
    98140 
     141// Charge la configuration 
     142function load_config() { 
     143        $config = simplexml_load_file('config.xml'); 
     144        $config = XMLParse($config); 
     145        $config = array_settype($config); 
     146        return $config; 
     147} 
     148 
    99149// Convertit les booléens, entiers et flotants d'un tableau de 'string' 
    100150function array_settype($array) { 
     
    120170// Booléen vers français ou texte 
    121171function bool_to_string($bool, $just_echo=0) { 
     172        global $Lang; 
    122173        # $just_echo pour pouvoir afficher un booléen tel quel 
    123174        if (is_bool($bool)) { 
    124175                if ($bool) { 
    125176                        if ($just_echo) return 'true'; 
    126                         else return 'oui'; 
     177                        else return l10n('yes'); 
    127178                } else { 
    128179                        if ($just_echo) return 'false'; 
    129                         else return 'non'; 
     180                        else return l10n('no'); 
    130181                } 
    131182        } else { 
  • extensions/PHP_Optimisateur/files/header.php

    r7991 r7993  
    55\***************************************/ 
    66 
     7session_start(); 
    78$APPversion = '1.1'; 
     9$user_lang = GetLanguage(); 
     10include('language/'.$user_lang['Lang'].'/'.$user_lang['Lang'].'.php'); 
     11 
    812echo '<?xml version="1.0" encoding="utf-8"?> 
    913<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" 
    1014        "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 
    11 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"> 
     15<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> 
    1216<head> 
    1317        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     
    1620</head> 
    1721<body> 
    18 <div class="title">PHP Optimisateur '.$APPversion.'</div>'; 
     22<div class="title"> 
     23        PHP Optimisateur '.$APPversion; 
     24         
     25        foreach ($user_lang['languages'] as $key) { 
     26                echo '<a class="lang" href="index.php?Lang='.$key.'"><img src="language/'.$key.'/'.$key.'.png"/></a>'; 
     27        } 
     28         
     29echo '</div>'; 
    1930?> 
  • extensions/PHP_Optimisateur/files/style.css

    r7991 r7993  
    2121        float:left; 
    2222} 
     23        div.title { 
     24                float:none; 
     25                width:942px; 
     26                font-weight:bold; 
     27                text-align:center; 
     28                font-size:1.5em; 
     29                background:#333; 
     30                color:#eee; 
     31                border-color:#eee; 
     32        } 
     33        div.files li { 
     34                margin-top:0; 
     35        } 
     36 
     37        div.finish  { 
     38                background:#DAFFBF; 
     39                font-weight:bold; 
     40                font-size:1.2em; 
     41        } 
     42 
     43        div.error { 
     44                background:#FFD0BF; 
     45                font-weight:bold; 
     46                font-size:1.2em; 
     47        } 
    2348 
    2449a { 
     
    2954        margin-bottom:1px; 
    3055} 
    31 a:hover { 
    32         color:#555; 
    33         border-bottom:1px dotted #555; 
    34         margin-bottom:0; 
    35 } 
     56        a:hover { 
     57                color:#555; 
     58                border-bottom:1px dotted #555; 
     59                margin-bottom:0; 
     60        } 
    3661 
    3762h2 { 
     
    4267        margin:0 0 0 20px; 
    4368} 
    44 li { 
    45         margin-top:5px; 
    46 } 
    47 li ul li { 
    48         margin-top:0; 
    49 } 
     69        li { 
     70                margin-top:5px; 
     71        } 
     72                li ul li { 
     73                        margin-top:0; 
     74                } 
    5075 
    51 div.title { 
    52         float:none; 
    53         width:902px; 
    54         padding:10px 30px; 
    55         font-weight:bold; 
    56         text-align:center; 
    57         font-size:1.5em; 
    58         background:#333; 
    59         color:#eee; 
    60         border-color:#eee; 
    61 } 
    62 .files li { 
    63         margin-top:0; 
    64 } 
    6576 
    66 .finish  { 
    67         background:#DAFFBF; 
    68         font-weight:bold; 
    69         font-size:1.2em; 
    70 } 
    71  
    72 .error { 
    73         background:#FFD0BF; 
    74         font-weight:bold; 
    75         font-size:1.2em; 
    76 } 
    7777 
    7878input { 
     
    9696        width:50%; 
    9797} 
    98 tr td:first-child { 
    99         text-align:right; 
    100         padding-right:5px; 
    101 } 
     98        tr td:first-child { 
     99                text-align:right; 
     100                padding-right:5px; 
     101        } 
  • extensions/PHP_Optimisateur/index.php

    r7991 r7993  
    88$TIME_START = microtime(true); 
    99 
     10include('files/functions.php'); 
    1011include('files/header.php'); 
    11 include('files/functions.php'); 
    1212 
    1313 
     
    1616// Fichier de configuration 
    1717if (!file_exists('config.xml')) { 
    18         die('<div class="error">Erreur fatale : Fichier de configuration introuvable. <a href="index.php">Retour</a></div>'); 
     18        $Errors['ErrorFile'] = true; 
     19         
     20} else { 
     21        // Configuration 
     22        extract(load_config()); 
     23 
     24        // Afficher la configuration 
     25        if (!$silentORNOT) { 
     26                include('files/display_config.php'); 
     27        } 
     28 
     29        // Dossiers 
     30        if (!file_exists($DIRsource)) { 
     31                mkdir($DIRsource); 
     32        } 
     33        if (!file_exists($DIRsortie)) { 
     34                mkdir($DIRsortie); 
     35        } 
     36        if (is_dir_empty($DIRsource)) { 
     37                $Errors['ErrorFolderIn'] = true; 
     38        } 
     39        if ($silentORNOT) { 
     40                rrmdir($DIRsortie); // Si mode silencieux 
     41                mkdir($DIRsortie); // vidage automatique du dossier de sortie 
     42        } else if (!is_dir_empty($DIRsortie)) { 
     43                $Errors['ErrorFolderOut'] = true; 
     44        } 
    1945} 
    2046 
    21 // Configuration 
    22 $config = simplexml_load_file('config.xml'); 
    23 $config = XMLParse($config); 
    24 $config = array_settype($config); 
    25 extract($config); 
    26  
    27 // Afficher la configuration 
    28 if (!$silentORNOT) { 
    29         include('files/display_config.php'); 
     47 
     48### ERREURS ### 
     49if (isset($Errors)) { 
     50        $i=0; 
     51        foreach ($Errors as $key => $null) { 
     52                // Dégueulasse les ternaires à la suite ! mais j'aime ça 
     53                echo '<div class="error">'.l10n($key).' '.(($i==0)?'<a href="index.php">'.l10n('Back').'</a> '.(($key!='ErrorFile')?'<a href="setup.php">'.l10n('Config').'</a></div>':'</div>'):'</div>'); 
     54                $i++; 
     55        } 
    3056} 
    3157 
    32 // Dossiers 
    33 if (!file_exists($DIRsource)) { 
    34         mkdir($DIRsource); 
    35 } 
    36 if (!file_exists($DIRsortie)) { 
    37         mkdir($DIRsortie); 
    38 } 
    39 if (is_dir_empty($DIRsource)) { 
    40         die('<div class="error">Erreur fatale : Dossier source vide. <a href="index.php">Retour</a> <a href="setup.php">Configurer</a></div>'); 
    41 } 
    42 if ($silentORNOT) { 
    43         rrmdir($DIRsortie); // Si mode silencieux 
    44         mkdir($DIRsortie); // vidage automatique du dossier de sortie 
    45 } else if (!is_dir_empty($DIRsortie)) { 
    46         die('<div class="error">Erreur fatale : Dossier de sortie non vide. <a href="index.php">Retour</a> <a href="setup.php">Configurer</a></div>'); 
    47 } 
    48  
    4958 
    5059 
    5160### EXECUTION ### 
    52 if (isset($_GET['Process'])) { 
     61if (isset($_GET['Process']) AND !isset($Errors)) { 
    5362 
    5463        ### Supprimer les caractères spéciaux - dossiers & fichiers ### 
    55         if ($renameORNOT) { 
    56                 function recursive_delete_special_car($dir) { 
    57                         $dir = rtrim($dir, '/'); 
    58                         $dh = opendir($dir); 
    59                          
    60                         while (($file = readdir($dh)) !== false ) { 
    61                                 if ($file !== '.' && $file !== '..') { 
    62                                         $path = $dir.'/'.$file; 
    63                                         $new_path = $dir.'/'.delete_special_car($file); 
    64                                         rename($path, $new_path); 
    65                                          
    66                                         if (is_dir($new_path)) { 
    67                                                 recursive_delete_special_car($new_path); 
    68                                         } 
     64        // Les caractères '%' et '$' sont systématiquement échappés, ca génère des bugs dans les noms de fichiers 
     65        function recursive_delete_special_car($dir) { 
     66                $dir = rtrim($dir, '/'); 
     67                $dh = opendir($dir); 
     68                 
     69                while (($file = readdir($dh)) !== false ) { 
     70                        if ($file !== '.' && $file !== '..') { 
     71                                $path = $dir.'/'.$file; 
     72                                $new_path = $dir.'/'.delete_special_car($file); 
     73                                rename($path, $new_path); 
     74                                 
     75                                if (is_dir($new_path)) { 
     76                                        recursive_delete_special_car($new_path); 
    6977                                } 
    7078                        } 
    71                         closedir($dh); 
    72                 } 
    73  
    74                 recursive_delete_special_car($DIRsource); 
    75         } 
     79                } 
     80                closedir($dh); 
     81        } 
     82 
     83        recursive_delete_special_car($DIRsource); 
    7684 
    7785 
     
    150158        if (!$silentORNOT) { 
    151159                echo '<div class="files"> 
    152                         <h2>Fichiers source</h2> 
     160                        <h2>'.l10n('Source files').'</h2> 
    153161                        <ul>'; 
    154162                                foreach ($FilesSource as $value) { 
     
    156164                                } 
    157165                        echo '</ul> 
    158                         <i>'.count($FilesSource).' fichiers</i> 
     166                        <i>'.l10n('%d files', count($FilesSource)).'</i> 
    159167                </div>'; 
    160168        } 
     
    188196 
    189197 
    190         echo '<div class="finish">Opération terminée : '.intval((microtime(true)-$TIME_START)) .' secondes. <a href="index.php">Retour</a> <a href="setup.php">Configurer</a></div>'; 
     198        echo '<div class="finish">'.l10n('Finish %d seconds', intval((microtime(true)-$TIME_START))).' <a href="index.php">'.l10n('Back').'</a> <a href="setup.php">'.l10n('Config').'</a></div>'; 
    191199 
    192200         
    193201         
    194 } else { 
    195         echo '<div class="finish">Prêt à commencer. <a href="index.php?Process=true">Exécuter</a> <a href="setup.php">Configurer</a></div>'; 
     202} else if (!isset($Errors)) { 
     203        echo '<div class="finish">'.l10n('Ready').' <a href="index.php?Process=true">'.l10n('Launch').'</a> <a href="setup.php">'.l10n('Config').'</a></div>'; 
    196204} 
    197205 
  • extensions/PHP_Optimisateur/setup.php

    r7991 r7993  
    1515        if(!isset($_POST['PluginsProcess'])) $_POST['PluginsProcess'] = null; 
    1616        if(!isset($_POST['PluginsAfter'])) $_POST['PluginsAfter'] = null; 
     17        if (!preg_match('#(.*)/$#', $_POST['DIRsource'])) $_POST['DIRsource'] .= '/'; 
     18        if (!preg_match('#(.*)/$#', $_POST['DIRsortie'])) $_POST['DIRsortie'] .= '/'; 
    1719         
    1820        // Contenu du fichier 
     
    2830include('files/header.php'); 
    2931 
    30  
    3132// Fichier de configuration 
    3233if (!file_exists('config.xml')) { 
    33         die('<div class="error">Erreur fatale : Fichier de configuration introuvable. <a href="index.php">Retour</a></div>'); 
    34 } 
    35  
    36 // Configuration 
    37 $config = simplexml_load_file('config.xml'); 
    38 $config = XMLParse($config); 
    39 $config = array_settype($config); 
    40 extract($config); 
    41  
    42 $copyCOLOR = explode(' ', $copyCOLOR); 
    43 $copyPOS = explode('-', $copyPOS); 
    44  
    45  
    46 ### Gestion des nouveaux plugins ### 
    47 // Ajoute la configuration des plugins non-installés aux tableaux, il faut valider le formulaire pour les installer 
    48 $Plugins = glob('plugins/*.xml'); 
    49 $NewPlugins = array(); 
    50  
    51 foreach ($Plugins as $plugin) { 
    52         // nom du plugin 
    53         preg_match('#plugins/(.*).xml#', $plugin, $matches); 
    54         $plugin_name = $matches[1]; 
    55         // configuration du plugin 
    56         $plugin = XMLparse(simplexml_load_file($plugin)); 
    57         // mode du plugin (effacage pour pas l'inscrire dans la config) 
    58         $plugin_mode = $plugin['mode']; 
    59         unset($plugin['mode']); 
    60          
    61         if (!array_key_exists($plugin_name, ${$plugin_mode})) { 
    62                 ${$plugin_mode}[$plugin_name] = $plugin; 
    63                 $NewPlugins[$plugin_name] = true; 
     34        $Errors['ErrorFile'] = true; 
     35} 
     36 
     37 
     38 
     39### ERREURS ### 
     40if (isset($Errors)) { 
     41        $i=0; 
     42        foreach ($Errors as $key => $null) { 
     43                // Dégueulasse les ternaires à la suite ! mais j'aime ça 
     44                echo '<div class="error">'.l10n($key).' '.(($i==0)?'<a href="setup.php">'.l10n('Back').'</a></div>':'</div>'); 
     45                $i++; 
    6446        } 
    6547} 
    6648 
    6749 
    68 ### Formulaire ### 
    69 echo ' 
    70 <script type="text/javascript"> 
    71         function suivant(enCours, suivant, limite) { 
    72                 if (enCours.value.length == limite) { 
    73                         enCours.form.elements[suivant].select(); 
     50 
     51### EXECUTION ### 
     52if (!isset($Errors)) { 
     53        // Configuration 
     54        extract(load_config()); 
     55 
     56        $copyCOLOR = explode(' ', $copyCOLOR); 
     57        $copyPOS = explode('-', $copyPOS); 
     58 
     59 
     60        ### Gestion des nouveaux plugins ### 
     61        // Ajoute la configuration des plugins non-installés aux tableaux, il faut valider le formulaire pour les installer 
     62        $Plugins = glob('plugins/*.xml'); 
     63        $NewPlugins = array(); 
     64 
     65        foreach ($Plugins as $plugin) { 
     66                // nom du plugin 
     67                preg_match('#plugins/(.*).xml#', $plugin, $matches); 
     68                $plugin_name = $matches[1]; 
     69                // configuration du plugin 
     70                $plugin = XMLparse(simplexml_load_file($plugin)); 
     71                // mode du plugin (effacage pour pas l'inscrire dans la config) 
     72                $plugin_mode = $plugin['mode']; 
     73                unset($plugin['mode']); 
     74                 
     75                if (!array_key_exists($plugin_name, ${$plugin_mode})) { 
     76                        ${$plugin_mode}[$plugin_name] = $plugin; 
     77                        $NewPlugins[$plugin_name] = true; 
    7478                } 
    7579        } 
    76 </script> 
    77          
    78 <form action="setup.php" method="post"> 
    79 <div class="config"> 
    80         <h2>Configuration</h2> 
    81         <ul> 
    82                 <li> 
    83                         <span class="title">Répertoires</span> 
    84                         <table> 
    85                                 <tr> 
    86                                         <td><b>Répertoire source :</b></td> 
    87                                         <td><input type="text" name="DIRsource" value="'.$DIRsource.'"/></td> 
    88                                 </tr> 
    89                                 <tr> 
    90                                         <td><b>Répertoire de sortie :</b></td> 
    91                                         <td><input type="text" name="DIRsortie" value="'.$DIRsortie.'"/></td> 
    92                                 </tr> 
    93                         </table> 
    94                 </li> 
    95                 <li> 
    96                         <span class="title">Options</span> 
    97                         <table> 
    98                                 <tr> 
    99                                         <td><b>Mode silencieux :</b></td> 
    100                                         <td><input type="radio" name="silentORNOT" value="true" '.(($silentORNOT)?'checked':'').'/> oui <input type="radio" name="silentORNOT" value="false" '.((!$silentORNOT)?'checked':'').'/> non</td> 
    101                                 </tr> 
    102                                 <tr> 
    103                                         <td><b>Créer le dossier haute définition :</b></td> 
    104                                         <td><input type="radio" name="DIRhighORNOT" value="true" '.(($DIRhighORNOT)?'checked':'').'/> oui <input type="radio" name="DIRhighORNOT" value="false" '.((!$DIRhighORNOT)?'checked':'').'/> non</td> 
    105                                 </tr> 
    106                                 <tr> 
    107                                         <td><b>Redimensionner les images HD :</b></td> 
    108                                         <td><input type="radio" name="DIMhdORNOT" value="true" '.(($DIMhdORNOT)?'checked':'').'/> oui <input type="radio" name="DIMhdORNOT" value="false" '.((!$DIMhdORNOT)?'checked':'').'/> non</td> 
    109                                 </tr> 
    110                                 <tr> 
    111                                         <td><b>Renommer les fichiers :</b></td> 
    112                                         <td><input type="radio" name="renameORNOT" value="true" '.(($renameORNOT)?'checked':'').'/> oui <input type="radio" name="renameORNOT" value="false" '.((!$renameORNOT)?'checked':'').'/> non</td> 
    113                                 </tr> 
    114                                 <tr> 
    115                                         <td><b>Ajouter les fichiers index.php :</b></td> 
    116                                         <td><input type="radio" name="indexORNOT" value="true" '.(($indexORNOT)?'checked':'').'/> oui <input type="radio" name="indexORNOT" value="false" '.((!$indexORNOT)?'checked':'').'/> non</td> 
    117                                 </tr> 
    118                                 <tr> 
    119                                         <td><b>Préfixe des miniatures :</b></td> 
    120                                         <td><input type="text" name="prefixe_mini" value="'.$prefixe_mini.'" size="8"/></td> 
    121                                 </tr> 
    122                         </table> 
    123                 </li> 
    124                 <li> 
    125                         <span class="title">Tailles et qualité</span> 
    126                         <table> 
    127                                 <tr> 
    128                                         <td><b>Taille maximale des images HD :</b></td> 
    129                                         <td><input type="text" name="DIMhd" value="'.$DIMhd.'" size="4"/></td> 
    130                                 </tr> 
    131                                 <tr> 
    132                                         <td><b>Taille des images normales :</b></td> 
    133                                         <td><input type="text" name="DIMnormal" value="'.$DIMnormal.'" size="3"/></td> 
    134                                 </tr> 
    135                                 <tr> 
    136                                         <td><b>Taille des miniatures :</b></td> 
    137                                         <td><input type="text" name="DIMthumbnail" value="'.$DIMthumbnail.'" size="3"/></td> 
    138                                 </tr> 
    139                                 <tr> 
    140                                         <td><b>Qualité des images HD :</b></td> 
    141                                         <td><input type="text" name="Qhd" value="'.$Qhd.'" size="3"/></td> 
    142                                 </tr> 
    143                                 <tr> 
    144                                         <td><b>Qualité des images normales :</b></td> 
    145                                         <td><input type="text" name="Qnormal" value="'.$Qnormal.'" size="3"/></td> 
    146                                 </tr> 
    147                                 <tr> 
    148                                         <td><b>Qualité des miniatures :</b></td> 
    149                                         <td><input type="text" name="Qthumbnail" value="'.$Qthumbnail.'" size="3"/></td> 
    150                                 </tr> 
    151                                 <tr> 
    152                                         <td><b>Résolution des images HD :</b></td> 
    153                                         <td><input type="text" name="DPI" value="'.$DPI.'" size="3"/></td> 
    154                                 </tr> 
    155                         </table> 
    156                 </li> 
    157                 <li> 
    158                         <span class="title">Copyright</span> 
    159                         <table> 
    160                                 <tr> 
    161                                         <td><b>Texte :</b></td> 
    162                                         <td><input type="text" name="copyright" value="'.$copyright.'"/></td> 
    163                                 </tr> 
    164                                 <tr> 
    165                                         <td><b>Sur les images HD :</b></td> 
    166                                         <td><input type="radio" name="copyONhd" value="true" '.(($copyONhd)?'checked':'').'/> oui <input type="radio" name="copyONhd" value="false" '.((!$copyONhd)?'checked':'').'/> non</td> 
    167                                 </tr> 
    168                                 <tr> 
    169                                         <td><b>Sur les images normales :</b></td> 
    170                                         <td><input type="radio" name="copyONnormal" value="true" '.(($copyONnormal)?'checked':'').'/> oui <input type="radio" name="copyONnormal" value="false" '.((!$copyONnormal)?'checked':'').'/> non</td> 
    171                                 </tr> 
    172                                 <tr> 
    173                                         <td><b>Position verticale :</b></td> 
    174                                         <td><input type="radio" name="copyPOS[0]" value="top" '.(($copyPOS[0]=='top')?'checked':'').'/> haut <input type="radio" name="copyPOS[0]" value="center" '.(($copyPOS[0]=='center')?'checked':'').'/> milieu <input type="radio" name="copyPOS[0]" value="bottom" '.(($copyPOS[0]=='bottom')?'checked':'').'/> bas</td> 
    175                                 </tr> 
    176                                 <tr> 
    177                                         <td><b>Position horizontale :</b></td> 
    178                                         <td><input type="radio" name="copyPOS[1]" value="left" '.(($copyPOS[1]=='left')?'checked':'').'/> gauche <input type="radio" name="copyPOS[1]" value="center" '.(($copyPOS[1]=='center')?'checked':'').'/> milieu <input type="radio" name="copyPOS[1]" value="right" '.(($copyPOS[1]=='right')?'checked':'').'/> droite</td> 
    179                                 </tr> 
    180                                 <tr> 
    181                                         <td><b>Taille (ratio image/texte) :</b></td> 
    182                                         <td><input type="text" name="copySIZE" value="'.$copySIZE.'" size="5"/></td> 
    183                                 </tr> 
    184                                 <tr> 
    185                                         <td><b>Couleur :</b></td> 
    186                                         <td> 
    187                                                 <input type="text" name="copyCOLOR[0]" value="'.$copyCOLOR[0].'" size="3" onFocus="this.select();" onKeyUp="suivant(this,\'copyCOLOR[1]\', 3)"/> 
    188                                                 <input type="text" name="copyCOLOR[1]" value="'.$copyCOLOR[1].'" size="3" onFocus="this.select();" onKeyUp="suivant(this,\'copyCOLOR[2]\', 3)"/> 
    189                                                 <input type="text" name="copyCOLOR[2]" value="'.$copyCOLOR[2].'" size="3" onFocus="this.select();" /> 
    190                                         </td> 
    191                                 </tr> 
    192                                 <tr> 
    193                                         <td><b>Police :</b></td> 
    194                                         <td><input type="text" name="copyFONT" value="'.$copyFONT.'"/></td> 
    195                                 </tr> 
    196                         </table> 
    197                 </li> 
     80 
     81 
     82        ### Formulaire ### 
     83        echo ' 
     84        <script type="text/javascript"> 
     85                function suivant(enCours, suivant, limite) { 
     86                        if (enCours.value.length == limite) { 
     87                                enCours.form.elements[suivant].select(); 
     88                        } 
     89                } 
     90        </script> 
     91                 
     92        <form action="setup.php" method="post"> 
     93        <div class="config"> 
     94                <h2>'.l10n('Configuration').'</h2> 
     95                <ul> 
     96                        <li> 
     97                                <span class="title">'.l10n('Folders').'</span> 
     98                                <table> 
     99                                        <tr> 
     100                                                <td><b>'.l10n('FolderIn').' :</b></td> 
     101                                                <td><input type="text" name="DIRsource" value="'.$DIRsource.'"/></td> 
     102                                        </tr> 
     103                                        <tr> 
     104                                                <td><b>'.l10n('FolderOut').' :</b></td> 
     105                                                <td><input type="text" name="DIRsortie" value="'.$DIRsortie.'"/></td> 
     106                                        </tr> 
     107                                </table> 
     108                        </li> 
     109                        <li> 
     110                                <span class="title">'.l10n('Options').'</span> 
     111                                <table> 
     112                                        <tr> 
     113                                                <td><b>'.l10n('silentORNOT').' :</b></td> 
     114                                                <td><input type="radio" name="silentORNOT" value="true" '.(($silentORNOT)?'checked':'').'/> '.l10n('yes').' <input type="radio" name="silentORNOT" value="false" '.((!$silentORNOT)?'checked':'').'/> '.l10n('no').'</td> 
     115                                        </tr> 
     116                                        <tr> 
     117                                                <td><b>'.l10n('DIRhighORNOT').' :</b></td> 
     118                                                <td><input type="radio" name="DIRhighORNOT" value="true" '.(($DIRhighORNOT)?'checked':'').'/> '.l10n('yes').' <input type="radio" name="DIRhighORNOT" value="false" '.((!$DIRhighORNOT)?'checked':'').'/> '.l10n('no').'</td> 
     119                                        </tr> 
     120                                        <tr> 
     121                                                <td><b>'.l10n('DIMhdORNOT').' :</b></td> 
     122                                                <td><input type="radio" name="DIMhdORNOT" value="true" '.(($DIMhdORNOT)?'checked':'').'/> '.l10n('yes').' <input type="radio" name="DIMhdORNOT" value="false" '.((!$DIMhdORNOT)?'checked':'').'/> '.l10n('no').'</td> 
     123                                        </tr> 
     124                                        <tr> 
     125                                                <td><b>'.l10n('renameORNOT').' :</b></td> 
     126                                                <td><input type="radio" name="renameORNOT" value="true" '.(($renameORNOT)?'checked':'').'/> '.l10n('yes').' <input type="radio" name="renameORNOT" value="false" '.((!$renameORNOT)?'checked':'').'/> '.l10n('no').'</td> 
     127                                        </tr> 
     128                                        <tr> 
     129                                                <td><b>'.l10n('indexORNOT').' :</b></td> 
     130                                                <td><input type="radio" name="indexORNOT" value="true" '.(($indexORNOT)?'checked':'').'/> '.l10n('yes').' <input type="radio" name="indexORNOT" value="false" '.((!$indexORNOT)?'checked':'').'/> '.l10n('no').'</td> 
     131                                        </tr> 
     132                                        <tr> 
     133                                                <td><b>'.l10n('prefixe_mini').' :</b></td> 
     134                                                <td><input type="text" name="prefixe_mini" value="'.$prefixe_mini.'" size="8"/></td> 
     135                                        </tr> 
     136                                </table> 
     137                        </li> 
     138                        <li> 
     139                                <span class="title">'.l10n('Sizes and quality').'</span> 
     140                                <table> 
     141                                        <tr> 
     142                                                <td><b>'.l10n('DIMhd').' :</b></td> 
     143                                                <td><input type="text" name="DIMhd" value="'.$DIMhd.'" size="4"/></td> 
     144                                        </tr> 
     145                                        <tr> 
     146                                                <td><b>'.l10n('DIMnormal').' :</b></td> 
     147                                                <td><input type="text" name="DIMnormal" value="'.$DIMnormal.'" size="3"/></td> 
     148                                        </tr> 
     149                                        <tr> 
     150                                                <td><b>'.l10n('DIMthumbnail').' :</b></td> 
     151                                                <td><input type="text" name="DIMthumbnail" value="'.$DIMthumbnail.'" size="3"/></td> 
     152                                        </tr> 
     153                                        <tr> 
     154                                                <td><b>'.l10n('Qhd').' :</b></td> 
     155                                                <td><input type="text" name="Qhd" value="'.$Qhd.'" size="3"/></td> 
     156                                        </tr> 
     157                                        <tr> 
     158                                                <td><b>'.l10n('Qnormal').' :</b></td> 
     159                                                <td><input type="text" name="Qnormal" value="'.$Qnormal.'" size="3"/></td> 
     160                                        </tr> 
     161                                        <tr> 
     162                                                <td><b>'.l10n('Qthumbnail').' :</b></td> 
     163                                                <td><input type="text" name="Qthumbnail" value="'.$Qthumbnail.'" size="3"/></td> 
     164                                        </tr> 
     165                                        <tr> 
     166                                                <td><b>'.l10n('DPI').' :</b></td> 
     167                                                <td><input type="text" name="DPI" value="'.$DPI.'" size="3"/></td> 
     168                                        </tr> 
     169                                </table> 
     170                        </li> 
     171                        <li> 
     172                                <span class="title">'.l10n('Copyright').'</span> 
     173                                <table> 
     174                                        <tr> 
     175                                                <td><b>'.l10n('Content').' :</b></td> 
     176                                                <td><input type="text" name="copyright" value="'.$copyright.'"/></td> 
     177                                        </tr> 
     178                                        <tr> 
     179                                                <td><b>'.l10n('copyONhd').' :</b></td> 
     180                                                <td><input type="radio" name="copyONhd" value="true" '.(($copyONhd)?'checked':'').'/> '.l10n('yes').' <input type="radio" name="copyONhd" value="false" '.((!$copyONhd)?'checked':'').'/> '.l10n('no').'</td> 
     181                                        </tr> 
     182                                        <tr> 
     183                                                <td><b>'.l10n('copyONnormal').' :</b></td> 
     184                                                <td><input type="radio" name="copyONnormal" value="true" '.(($copyONnormal)?'checked':'').'/> '.l10n('yes').' <input type="radio" name="copyONnormal" value="false" '.((!$copyONnormal)?'checked':'').'/> '.l10n('no').'</td> 
     185                                        </tr> 
     186                                        <tr> 
     187                                                <td><b>'.l10n('copyPOS%s', l10n('copyPOSv')).' :</b></td> 
     188                                                <td><input type="radio" name="copyPOS[0]" value="top" '.(($copyPOS[0]=='top')?'checked':'').'/> '.l10n('top').' <input type="radio" name="copyPOS[0]" value="center" '.(($copyPOS[0]=='center')?'checked':'').'/> '.l10n('center').' <input type="radio" name="copyPOS[0]" value="bottom" '.(($copyPOS[0]=='bottom')?'checked':'').'/> '.l10n('bottom').'</td> 
     189                                        </tr> 
     190                                        <tr> 
     191                                                <td><b>'.l10n('copyPOS%s', l10n('copyPOSh')).' :</b></td> 
     192                                                <td><input type="radio" name="copyPOS[1]" value="left" '.(($copyPOS[1]=='left')?'checked':'').'/> '.l10n('left').' <input type="radio" name="copyPOS[1]" value="center" '.(($copyPOS[1]=='center')?'checked':'').'/> '.l10n('center').' <input type="radio" name="copyPOS[1]" value="right" '.(($copyPOS[1]=='right')?'checked':'').'/> '.l10n('right').'</td> 
     193                                        </tr> 
     194                                        <tr> 
     195                                                <td><b>'.l10n('copySIZE').' :</b></td> 
     196                                                <td><input type="text" name="copySIZE" value="'.$copySIZE.'" size="5"/></td> 
     197                                        </tr> 
     198                                        <tr> 
     199                                                <td><b>'.l10n('copyCOLOR').' :</b></td> 
     200                                                <td> 
     201                                                        <input type="text" name="copyCOLOR[0]" value="'.$copyCOLOR[0].'" size="3" onFocus="this.select();" onKeyUp="suivant(this,\'copyCOLOR[1]\', 3)"/> 
     202                                                        <input type="text" name="copyCOLOR[1]" value="'.$copyCOLOR[1].'" size="3" onFocus="this.select();" onKeyUp="suivant(this,\'copyCOLOR[2]\', 3)"/> 
     203                                                        <input type="text" name="copyCOLOR[2]" value="'.$copyCOLOR[2].'" size="3" onFocus="this.select();" /> 
     204                                                </td> 
     205                                        </tr> 
     206                                        <tr> 
     207                                                <td><b>'.l10n('copyFONT').' :</b></td> 
     208                                                <td><input type="text" name="copyFONT" value="'.$copyFONT.'"/></td> 
     209                                        </tr> 
     210                                </table> 
     211                        </li> 
    198212                </ul> 
    199 </div> 
    200  
    201 <div class="config"> 
    202         <h2>Plugins</h2> 
    203         <ul> 
    204                 <li> 
    205                         <span class="title">Plugins pré-processing</span> 
    206                         <ul>'; 
    207                                 foreach ($PluginsBefore as $name => $config) { 
    208                                         echo '<li> 
    209                                                 <b class="'.((isset($NewPlugins[$name]))?'new':'').'">'.$name.' :</b> 
    210                                                 <table>'; 
    211                                                         foreach ($config as $key => $value) { 
    212                                                                 echo '<tr> 
    213                                                                         <td>'.$key.' :</td> 
    214                                                                         <td><input type="text" name="PluginsBefore['.$name.']['.$key.']" value="'.bool_to_string($value,1).'" size="7"/></td> 
    215                                                                 </tr>'; 
    216                                                         } 
    217                                                 echo '</table> 
    218                                         </li>'; 
    219                                 } 
    220                         echo '</ul> 
    221                 </li> 
    222                 <li> 
    223                         <span class="title">Plugins processing</span> 
    224                         <ul>'; 
    225                                 foreach ($PluginsProcess as $name => $config) { 
    226                                         echo '<li> 
    227                                                 <b class="'.((isset($NewPlugins[$name]))?'new':'').'">'.$name.' :</b> 
    228                                                 <table>'; 
    229                                                         foreach ($config as $key => $value) { 
    230                                                                 echo '<tr> 
    231                                                                         <td>'.$key.' :</td> 
    232                                                                         <td><input type="text" name="PluginsProcess['.$name.']['.$key.']" value="'.bool_to_string($value,1).'" size="7"/></td> 
    233                                                                 </tr>'; 
    234                                                         } 
    235                                                 echo '</table> 
    236                                         </li>'; 
    237                                 } 
    238                         echo '</ul> 
    239                 </li> 
    240                 <li> 
    241                         <span class="title">Plugins post-processing</span> 
    242                         <ul>'; 
    243                                 foreach ($PluginsAfter as $name => $config) { 
    244                                         echo '<li> 
    245                                                 <b class="'.((isset($NewPlugins[$name]))?'new':'').'">'.$name.' :</b> 
    246                                                 <table>'; 
    247                                                         foreach ($config as $key => $value) { 
    248                                                                 echo '<tr> 
    249                                                                         <td>'.$key.' :</td> 
    250                                                                         <td><input type="text" name="PluginsAfter['.$name.']['.$key.']" value="'.bool_to_string($value,1).'" size="7"/></td> 
    251                                                                 </tr>'; 
    252                                                         } 
    253                                                 echo '</table> 
    254                                         </li>'; 
    255                                 } 
    256                         echo '</ul> 
    257                 </li> 
    258         </ul> 
    259 </div> 
    260  
    261 <div class="finish">     
    262         <input type="submit"/> <input type="reset"/> <a href="index.php">Retour</a> 
    263 </div> 
    264 </form>'; 
     213        </div> 
     214 
     215        <div class="config"> 
     216                <h2>'.l10n('Plugins').'</h2> 
     217                <ul> 
     218                        <li> 
     219                                <span class="title">'.l10n('PluginsBefore').'</span> 
     220                                <ul>'; 
     221                                        foreach ($PluginsBefore as $name => $config) { 
     222                                                echo '<li> 
     223                                                        <b class="'.((isset($NewPlugins[$name]))?'new':'').'">'.$name.' :</b> 
     224                                                        <table>'; 
     225                                                                foreach ($config as $key => $value) { 
     226                                                                        echo '<tr> 
     227                                                                                <td>'.$key.' :</td> 
     228                                                                                <td><input type="text" name="PluginsBefore['.$name.']['.$key.']" value="'.bool_to_string($value,1).'" size="7"/></td> 
     229                                                                        </tr>'; 
     230                                                                } 
     231                                                        echo '</table> 
     232                                                </li>'; 
     233                                        } 
     234                                echo '</ul> 
     235                        </li> 
     236                        <li> 
     237                                <span class="title">'.l10n('PluginsProcess').'</span> 
     238                                <ul>'; 
     239                                        foreach ($PluginsProcess as $name => $config) { 
     240                                                echo '<li> 
     241                                                        <b class="'.((isset($NewPlugins[$name]))?'new':'').'">'.$name.' :</b> 
     242                                                        <table>'; 
     243                                                                foreach ($config as $key => $value) { 
     244                                                                        echo '<tr> 
     245                                                                                <td>'.$key.' :</td> 
     246                                                                                <td><input type="text" name="PluginsProcess['.$name.']['.$key.']" value="'.bool_to_string($value,1).'" size="7"/></td> 
     247                                                                        </tr>'; 
     248                                                                } 
     249                                                        echo '</table> 
     250                                                </li>'; 
     251                                        } 
     252                                echo '</ul> 
     253                        </li> 
     254                        <li> 
     255                                <span class="title">'.l10n('PluginsAfter').'</span> 
     256                                <ul>'; 
     257                                        foreach ($PluginsAfter as $name => $config) { 
     258                                                echo '<li> 
     259                                                        <b class="'.((isset($NewPlugins[$name]))?'new':'').'">'.$name.' :</b> 
     260                                                        <table>'; 
     261                                                                foreach ($config as $key => $value) { 
     262                                                                        echo '<tr> 
     263                                                                                <td>'.$key.' :</td> 
     264                                                                                <td><input type="text" name="PluginsAfter['.$name.']['.$key.']" value="'.bool_to_string($value,1).'" size="7"/></td> 
     265                                                                        </tr>'; 
     266                                                                } 
     267                                                        echo '</table> 
     268                                                </li>'; 
     269                                        } 
     270                                echo '</ul> 
     271                        </li> 
     272                </ul> 
     273        </div> 
     274 
     275        <div class="finish">     
     276                <input type="submit"/> <input type="reset"/> <a href="index.php">'.l10n('Back').'</a> 
     277        </div> 
     278        </form>'; 
     279} 
     280 
     281echo '</body> 
     282</html>'; 
    265283?> 
Note: See TracChangeset for help on using the changeset viewer.