Changeset 7993 for extensions/PHP_Optimisateur/setup.php
- Timestamp:
- Dec 4, 2010, 3:43:02 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/PHP_Optimisateur/setup.php
r7991 r7993 15 15 if(!isset($_POST['PluginsProcess'])) $_POST['PluginsProcess'] = null; 16 16 if(!isset($_POST['PluginsAfter'])) $_POST['PluginsAfter'] = null; 17 if (!preg_match('#(.*)/$#', $_POST['DIRsource'])) $_POST['DIRsource'] .= '/'; 18 if (!preg_match('#(.*)/$#', $_POST['DIRsortie'])) $_POST['DIRsortie'] .= '/'; 17 19 18 20 // Contenu du fichier … … 28 30 include('files/header.php'); 29 31 30 31 32 // Fichier de configuration 32 33 if (!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 ### 40 if (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++; 64 46 } 65 47 } 66 48 67 49 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 ### 52 if (!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; 74 78 } 75 79 } 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> 198 212 </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 281 echo '</body> 282 </html>'; 265 283 ?>
Note: See TracChangeset
for help on using the changeset viewer.