@@ -17,7 +17,7 @@ discard block |
||
| 17 | 17 | */ |
| 18 | 18 | |
| 19 | 19 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 20 | - return; |
|
| 20 | + return; |
|
| 21 | 21 | } |
| 22 | 22 | |
| 23 | 23 | /** |
@@ -37,43 +37,43 @@ discard block |
||
| 37 | 37 | */ |
| 38 | 38 | function action_editer_auteur_dist($arg = null) { |
| 39 | 39 | |
| 40 | - if (is_null($arg)) { |
|
| 41 | - $securiser_action = charger_fonction('securiser_action', 'inc'); |
|
| 42 | - $arg = $securiser_action(); |
|
| 43 | - } |
|
| 44 | - |
|
| 45 | - |
|
| 46 | - // si id_auteur n'est pas un nombre, c'est une creation |
|
| 47 | - if (!$id_auteur = intval($arg)) { |
|
| 48 | - |
|
| 49 | - if (($id_auteur = auteur_inserer()) > 0) { |
|
| 50 | - |
|
| 51 | - # cf. GROS HACK |
|
| 52 | - # recuperer l'eventuel logo charge avant la creation |
|
| 53 | - # ils ont un id = 0-id_auteur de la session |
|
| 54 | - $id_hack = 0 - $GLOBALS['visiteur_session']['id_auteur']; |
|
| 55 | - $chercher_logo = charger_fonction('chercher_logo', 'inc'); |
|
| 56 | - foreach (array('on', 'off') as $type) { |
|
| 57 | - if ($logo = $chercher_logo($id_hack, 'id_auteur', $type)) { |
|
| 58 | - if ($logo = reset($logo)) { |
|
| 59 | - rename($logo, str_replace($id_hack, $id_auteur, $logo)); |
|
| 60 | - } |
|
| 61 | - } |
|
| 62 | - } |
|
| 63 | - } |
|
| 64 | - } |
|
| 65 | - |
|
| 66 | - // Enregistre l'envoi dans la BD |
|
| 67 | - $err = ""; |
|
| 68 | - if ($id_auteur > 0) { |
|
| 69 | - $err = auteur_modifier($id_auteur); |
|
| 70 | - } |
|
| 71 | - |
|
| 72 | - if ($err) { |
|
| 73 | - spip_log("echec editeur auteur: $err", _LOG_ERREUR); |
|
| 74 | - } |
|
| 75 | - |
|
| 76 | - return array($id_auteur, $err); |
|
| 40 | + if (is_null($arg)) { |
|
| 41 | + $securiser_action = charger_fonction('securiser_action', 'inc'); |
|
| 42 | + $arg = $securiser_action(); |
|
| 43 | + } |
|
| 44 | + |
|
| 45 | + |
|
| 46 | + // si id_auteur n'est pas un nombre, c'est une creation |
|
| 47 | + if (!$id_auteur = intval($arg)) { |
|
| 48 | + |
|
| 49 | + if (($id_auteur = auteur_inserer()) > 0) { |
|
| 50 | + |
|
| 51 | + # cf. GROS HACK |
|
| 52 | + # recuperer l'eventuel logo charge avant la creation |
|
| 53 | + # ils ont un id = 0-id_auteur de la session |
|
| 54 | + $id_hack = 0 - $GLOBALS['visiteur_session']['id_auteur']; |
|
| 55 | + $chercher_logo = charger_fonction('chercher_logo', 'inc'); |
|
| 56 | + foreach (array('on', 'off') as $type) { |
|
| 57 | + if ($logo = $chercher_logo($id_hack, 'id_auteur', $type)) { |
|
| 58 | + if ($logo = reset($logo)) { |
|
| 59 | + rename($logo, str_replace($id_hack, $id_auteur, $logo)); |
|
| 60 | + } |
|
| 61 | + } |
|
| 62 | + } |
|
| 63 | + } |
|
| 64 | + } |
|
| 65 | + |
|
| 66 | + // Enregistre l'envoi dans la BD |
|
| 67 | + $err = ""; |
|
| 68 | + if ($id_auteur > 0) { |
|
| 69 | + $err = auteur_modifier($id_auteur); |
|
| 70 | + } |
|
| 71 | + |
|
| 72 | + if ($err) { |
|
| 73 | + spip_log("echec editeur auteur: $err", _LOG_ERREUR); |
|
| 74 | + } |
|
| 75 | + |
|
| 76 | + return array($id_auteur, $err); |
|
| 77 | 77 | } |
| 78 | 78 | |
| 79 | 79 | /** |
@@ -90,42 +90,42 @@ discard block |
||
| 90 | 90 | */ |
| 91 | 91 | function auteur_inserer($source = null, $set = null) { |
| 92 | 92 | |
| 93 | - // Ce qu'on va demander comme modifications |
|
| 94 | - $champs = array(); |
|
| 95 | - $champs['source'] = $source ? $source : 'spip'; |
|
| 96 | - |
|
| 97 | - $champs['login'] = ''; |
|
| 98 | - $champs['statut'] = '5poubelle'; // inutilisable tant qu'il n'a pas ete renseigne et institue |
|
| 99 | - $champs['webmestre'] = 'non'; |
|
| 100 | - if (empty($champs['imessage'])) { |
|
| 101 | - $champs['imessage'] = 'oui'; |
|
| 102 | - } |
|
| 103 | - |
|
| 104 | - if ($set) { |
|
| 105 | - $champs = array_merge($champs, $set); |
|
| 106 | - } |
|
| 107 | - |
|
| 108 | - // Envoyer aux plugins |
|
| 109 | - $champs = pipeline('pre_insertion', |
|
| 110 | - array( |
|
| 111 | - 'args' => array( |
|
| 112 | - 'table' => 'spip_auteurs', |
|
| 113 | - ), |
|
| 114 | - 'data' => $champs |
|
| 115 | - ) |
|
| 116 | - ); |
|
| 117 | - $id_auteur = sql_insertq("spip_auteurs", $champs); |
|
| 118 | - pipeline('post_insertion', |
|
| 119 | - array( |
|
| 120 | - 'args' => array( |
|
| 121 | - 'table' => 'spip_auteurs', |
|
| 122 | - 'id_objet' => $id_auteur |
|
| 123 | - ), |
|
| 124 | - 'data' => $champs |
|
| 125 | - ) |
|
| 126 | - ); |
|
| 127 | - |
|
| 128 | - return $id_auteur; |
|
| 93 | + // Ce qu'on va demander comme modifications |
|
| 94 | + $champs = array(); |
|
| 95 | + $champs['source'] = $source ? $source : 'spip'; |
|
| 96 | + |
|
| 97 | + $champs['login'] = ''; |
|
| 98 | + $champs['statut'] = '5poubelle'; // inutilisable tant qu'il n'a pas ete renseigne et institue |
|
| 99 | + $champs['webmestre'] = 'non'; |
|
| 100 | + if (empty($champs['imessage'])) { |
|
| 101 | + $champs['imessage'] = 'oui'; |
|
| 102 | + } |
|
| 103 | + |
|
| 104 | + if ($set) { |
|
| 105 | + $champs = array_merge($champs, $set); |
|
| 106 | + } |
|
| 107 | + |
|
| 108 | + // Envoyer aux plugins |
|
| 109 | + $champs = pipeline('pre_insertion', |
|
| 110 | + array( |
|
| 111 | + 'args' => array( |
|
| 112 | + 'table' => 'spip_auteurs', |
|
| 113 | + ), |
|
| 114 | + 'data' => $champs |
|
| 115 | + ) |
|
| 116 | + ); |
|
| 117 | + $id_auteur = sql_insertq("spip_auteurs", $champs); |
|
| 118 | + pipeline('post_insertion', |
|
| 119 | + array( |
|
| 120 | + 'args' => array( |
|
| 121 | + 'table' => 'spip_auteurs', |
|
| 122 | + 'id_objet' => $id_auteur |
|
| 123 | + ), |
|
| 124 | + 'data' => $champs |
|
| 125 | + ) |
|
| 126 | + ); |
|
| 127 | + |
|
| 128 | + return $id_auteur; |
|
| 129 | 129 | } |
| 130 | 130 | |
| 131 | 131 | |
@@ -150,66 +150,66 @@ discard block |
||
| 150 | 150 | */ |
| 151 | 151 | function auteur_modifier($id_auteur, $set = null, $force_update = false) { |
| 152 | 152 | |
| 153 | - include_spip('inc/modifier'); |
|
| 154 | - include_spip('inc/filtres'); |
|
| 155 | - $c = collecter_requests( |
|
| 156 | - // white list |
|
| 157 | - objet_info('auteur', 'champs_editables'), |
|
| 158 | - // black list |
|
| 159 | - $force_update ? array() : array('webmestre', 'pass', 'login'), |
|
| 160 | - // donnees eventuellement fournies |
|
| 161 | - $set |
|
| 162 | - ); |
|
| 163 | - |
|
| 164 | - if ($err = objet_modifier_champs('auteur', $id_auteur, |
|
| 165 | - array( |
|
| 166 | - 'data' => $set, |
|
| 167 | - 'nonvide' => array('nom' => _T('ecrire:item_nouvel_auteur')) |
|
| 168 | - ), |
|
| 169 | - $c) |
|
| 170 | - ) { |
|
| 171 | - return $err; |
|
| 172 | - } |
|
| 173 | - $session = $c; |
|
| 174 | - |
|
| 175 | - $err = ''; |
|
| 176 | - if (!$force_update) { |
|
| 177 | - // Modification de statut, changement de rubrique ? |
|
| 178 | - $c = collecter_requests( |
|
| 179 | - // white list |
|
| 180 | - array( |
|
| 181 | - 'statut', |
|
| 182 | - 'new_login', |
|
| 183 | - 'new_pass', |
|
| 184 | - 'login', |
|
| 185 | - 'pass', |
|
| 186 | - 'webmestre', |
|
| 187 | - 'restreintes', |
|
| 188 | - 'id_parent' |
|
| 189 | - ), |
|
| 190 | - // black list |
|
| 191 | - array(), |
|
| 192 | - // donnees eventuellement fournies |
|
| 193 | - $set |
|
| 194 | - ); |
|
| 195 | - if (isset($c['new_login']) and !isset($c['login'])) { |
|
| 196 | - $c['login'] = $c['new_login']; |
|
| 197 | - } |
|
| 198 | - if (isset($c['new_pass']) and !isset($c['pass'])) { |
|
| 199 | - $c['pass'] = $c['new_pass']; |
|
| 200 | - } |
|
| 201 | - $err = auteur_instituer($id_auteur, $c); |
|
| 202 | - $session = array_merge($session, $c); |
|
| 203 | - } |
|
| 204 | - |
|
| 205 | - // .. mettre a jour les sessions de cet auteur |
|
| 206 | - include_spip('inc/session'); |
|
| 207 | - $session['id_auteur'] = $id_auteur; |
|
| 208 | - unset($session['new_login']); |
|
| 209 | - unset($session['new_pass']); |
|
| 210 | - actualiser_sessions($session); |
|
| 211 | - |
|
| 212 | - return $err; |
|
| 153 | + include_spip('inc/modifier'); |
|
| 154 | + include_spip('inc/filtres'); |
|
| 155 | + $c = collecter_requests( |
|
| 156 | + // white list |
|
| 157 | + objet_info('auteur', 'champs_editables'), |
|
| 158 | + // black list |
|
| 159 | + $force_update ? array() : array('webmestre', 'pass', 'login'), |
|
| 160 | + // donnees eventuellement fournies |
|
| 161 | + $set |
|
| 162 | + ); |
|
| 163 | + |
|
| 164 | + if ($err = objet_modifier_champs('auteur', $id_auteur, |
|
| 165 | + array( |
|
| 166 | + 'data' => $set, |
|
| 167 | + 'nonvide' => array('nom' => _T('ecrire:item_nouvel_auteur')) |
|
| 168 | + ), |
|
| 169 | + $c) |
|
| 170 | + ) { |
|
| 171 | + return $err; |
|
| 172 | + } |
|
| 173 | + $session = $c; |
|
| 174 | + |
|
| 175 | + $err = ''; |
|
| 176 | + if (!$force_update) { |
|
| 177 | + // Modification de statut, changement de rubrique ? |
|
| 178 | + $c = collecter_requests( |
|
| 179 | + // white list |
|
| 180 | + array( |
|
| 181 | + 'statut', |
|
| 182 | + 'new_login', |
|
| 183 | + 'new_pass', |
|
| 184 | + 'login', |
|
| 185 | + 'pass', |
|
| 186 | + 'webmestre', |
|
| 187 | + 'restreintes', |
|
| 188 | + 'id_parent' |
|
| 189 | + ), |
|
| 190 | + // black list |
|
| 191 | + array(), |
|
| 192 | + // donnees eventuellement fournies |
|
| 193 | + $set |
|
| 194 | + ); |
|
| 195 | + if (isset($c['new_login']) and !isset($c['login'])) { |
|
| 196 | + $c['login'] = $c['new_login']; |
|
| 197 | + } |
|
| 198 | + if (isset($c['new_pass']) and !isset($c['pass'])) { |
|
| 199 | + $c['pass'] = $c['new_pass']; |
|
| 200 | + } |
|
| 201 | + $err = auteur_instituer($id_auteur, $c); |
|
| 202 | + $session = array_merge($session, $c); |
|
| 203 | + } |
|
| 204 | + |
|
| 205 | + // .. mettre a jour les sessions de cet auteur |
|
| 206 | + include_spip('inc/session'); |
|
| 207 | + $session['id_auteur'] = $id_auteur; |
|
| 208 | + unset($session['new_login']); |
|
| 209 | + unset($session['new_pass']); |
|
| 210 | + actualiser_sessions($session); |
|
| 211 | + |
|
| 212 | + return $err; |
|
| 213 | 213 | } |
| 214 | 214 | |
| 215 | 215 | /** |
@@ -230,9 +230,9 @@ discard block |
||
| 230 | 230 | * @return string |
| 231 | 231 | */ |
| 232 | 232 | function auteur_associer($id_auteur, $objets, $qualif = null) { |
| 233 | - include_spip('action/editer_liens'); |
|
| 233 | + include_spip('action/editer_liens'); |
|
| 234 | 234 | |
| 235 | - return objet_associer(array('auteur' => $id_auteur), $objets, $qualif); |
|
| 235 | + return objet_associer(array('auteur' => $id_auteur), $objets, $qualif); |
|
| 236 | 236 | } |
| 237 | 237 | |
| 238 | 238 | |
@@ -247,7 +247,7 @@ discard block |
||
| 247 | 247 | * @return string |
| 248 | 248 | */ |
| 249 | 249 | function auteur_referent($id_auteur, $c) { |
| 250 | - return auteur_associer($id_auteur, $c); |
|
| 250 | + return auteur_associer($id_auteur, $c); |
|
| 251 | 251 | } |
| 252 | 252 | |
| 253 | 253 | /** |
@@ -266,9 +266,9 @@ discard block |
||
| 266 | 266 | * @return string |
| 267 | 267 | */ |
| 268 | 268 | function auteur_dissocier($id_auteur, $objets) { |
| 269 | - include_spip('action/editer_liens'); |
|
| 269 | + include_spip('action/editer_liens'); |
|
| 270 | 270 | |
| 271 | - return objet_dissocier(array('auteur' => $id_auteur), $objets); |
|
| 271 | + return objet_dissocier(array('auteur' => $id_auteur), $objets); |
|
| 272 | 272 | } |
| 273 | 273 | |
| 274 | 274 | /** |
@@ -289,9 +289,9 @@ discard block |
||
| 289 | 289 | * @return bool|int |
| 290 | 290 | */ |
| 291 | 291 | function auteur_qualifier($id_auteur, $objets, $qualif) { |
| 292 | - include_spip('action/editer_liens'); |
|
| 292 | + include_spip('action/editer_liens'); |
|
| 293 | 293 | |
| 294 | - return objet_qualifier_liens(array('auteur' => $id_auteur), $objets, $qualif); |
|
| 294 | + return objet_qualifier_liens(array('auteur' => $id_auteur), $objets, $qualif); |
|
| 295 | 295 | } |
| 296 | 296 | |
| 297 | 297 | |
@@ -310,133 +310,133 @@ discard block |
||
| 310 | 310 | * @return bool|string |
| 311 | 311 | */ |
| 312 | 312 | function auteur_instituer($id_auteur, $c, $force_webmestre = false) { |
| 313 | - if (!$id_auteur = intval($id_auteur)) { |
|
| 314 | - return false; |
|
| 315 | - } |
|
| 316 | - $erreurs = array(); // contiendra les differentes erreurs a traduire par _T() |
|
| 317 | - $champs = array(); |
|
| 318 | - |
|
| 319 | - // les memoriser pour les faire passer dans le pipeline pre_edition |
|
| 320 | - if (isset($c['login']) and strlen($c['login'])) { |
|
| 321 | - $champs['login'] = $c['login']; |
|
| 322 | - } |
|
| 323 | - if (isset($c['pass']) and strlen($c['pass'])) { |
|
| 324 | - $champs['pass'] = $c['pass']; |
|
| 325 | - } |
|
| 326 | - |
|
| 327 | - $statut = $statut_ancien = sql_getfetsel('statut', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 328 | - |
|
| 329 | - if (isset($c['statut']) |
|
| 330 | - and (autoriser('modifier', 'auteur', $id_auteur, null, array('statut' => $c['statut']))) |
|
| 331 | - ) { |
|
| 332 | - $statut = $champs['statut'] = $c['statut']; |
|
| 333 | - } |
|
| 334 | - |
|
| 335 | - // Restreindre avant de declarer l'auteur |
|
| 336 | - // (section critique sur les droits) |
|
| 337 | - if (isset($c['id_parent']) and $c['id_parent']) { |
|
| 338 | - if (is_array($c['restreintes'])) { |
|
| 339 | - $c['restreintes'][] = $c['id_parent']; |
|
| 340 | - } else { |
|
| 341 | - $c['restreintes'] = array($c['id_parent']); |
|
| 342 | - } |
|
| 343 | - } |
|
| 344 | - |
|
| 345 | - if (isset($c['webmestre']) |
|
| 346 | - and ($force_webmestre or autoriser('modifier', 'auteur', $id_auteur, null, array('webmestre' => '?'))) |
|
| 347 | - ) { |
|
| 348 | - $champs['webmestre'] = $c['webmestre'] == 'oui' ? 'oui' : 'non'; |
|
| 349 | - } |
|
| 350 | - |
|
| 351 | - // si statut change et n'est pas 0minirezo, on force webmestre a non |
|
| 352 | - if (isset($c['statut']) and $c['statut'] !== '0minirezo') { |
|
| 353 | - $champs['webmestre'] = $c['webmestre'] = 'non'; |
|
| 354 | - } |
|
| 355 | - |
|
| 356 | - // Envoyer aux plugins |
|
| 357 | - $champs = pipeline('pre_edition', |
|
| 358 | - array( |
|
| 359 | - 'args' => array( |
|
| 360 | - 'table' => 'spip_auteurs', |
|
| 361 | - 'id_objet' => $id_auteur, |
|
| 362 | - 'action' => 'instituer', |
|
| 363 | - 'statut_ancien' => $statut_ancien, |
|
| 364 | - ), |
|
| 365 | - 'data' => $champs |
|
| 366 | - ) |
|
| 367 | - ); |
|
| 368 | - |
|
| 369 | - if (isset($c['restreintes']) and is_array($c['restreintes']) |
|
| 370 | - and autoriser('modifier', 'auteur', $id_auteur, null, array('restreint' => $c['restreintes'])) |
|
| 371 | - ) { |
|
| 372 | - $rubriques = array_map('intval', $c['restreintes']); |
|
| 373 | - $rubriques = array_unique($rubriques); |
|
| 374 | - $rubriques = array_diff($rubriques, array(0)); |
|
| 375 | - auteur_dissocier($id_auteur, array('rubrique' => '*')); |
|
| 376 | - auteur_associer($id_auteur, array('rubrique' => $rubriques)); |
|
| 377 | - } |
|
| 378 | - |
|
| 379 | - $flag_ecrire_acces = false; |
|
| 380 | - // commencer par traiter les cas particuliers des logins et pass |
|
| 381 | - // avant les autres ecritures en base |
|
| 382 | - if (isset($champs['login']) or isset($champs['pass'])) { |
|
| 383 | - $auth_methode = sql_getfetsel('source', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 384 | - include_spip('inc/auth'); |
|
| 385 | - if (isset($champs['login']) and strlen($champs['login'])) { |
|
| 386 | - if (!auth_modifier_login($auth_methode, $champs['login'], $id_auteur)) { |
|
| 387 | - $erreurs[] = 'ecrire:impossible_modifier_login_auteur'; |
|
| 388 | - } |
|
| 389 | - } |
|
| 390 | - if (isset($champs['pass']) and strlen($champs['pass'])) { |
|
| 391 | - $champs['login'] = sql_getfetsel('login', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 392 | - if (!auth_modifier_pass($auth_methode, $champs['login'], $champs['pass'], $id_auteur)) { |
|
| 393 | - $erreurs[] = 'ecrire:impossible_modifier_pass_auteur'; |
|
| 394 | - } |
|
| 395 | - } |
|
| 396 | - unset($champs['login']); |
|
| 397 | - unset($champs['pass']); |
|
| 398 | - $flag_ecrire_acces = true; |
|
| 399 | - } |
|
| 400 | - |
|
| 401 | - if (!count($champs)) { |
|
| 402 | - return implode(' ', array_map('_T', $erreurs)); |
|
| 403 | - } |
|
| 404 | - sql_updateq('spip_auteurs', $champs, 'id_auteur=' . $id_auteur); |
|
| 405 | - |
|
| 406 | - // .. mettre a jour les fichiers .htpasswd et .htpasswd-admin |
|
| 407 | - if ($flag_ecrire_acces |
|
| 408 | - or isset($champs['statut']) |
|
| 409 | - ) { |
|
| 410 | - include_spip('inc/acces'); |
|
| 411 | - ecrire_acces(); |
|
| 412 | - } |
|
| 413 | - |
|
| 414 | - // Invalider les caches |
|
| 415 | - include_spip('inc/invalideur'); |
|
| 416 | - suivre_invalideur("id='auteur/$id_auteur'"); |
|
| 417 | - |
|
| 418 | - // Pipeline |
|
| 419 | - pipeline('post_edition', |
|
| 420 | - array( |
|
| 421 | - 'args' => array( |
|
| 422 | - 'table' => 'spip_auteurs', |
|
| 423 | - 'id_objet' => $id_auteur, |
|
| 424 | - 'action' => 'instituer', |
|
| 425 | - 'statut_ancien' => $statut_ancien, |
|
| 426 | - ), |
|
| 427 | - 'data' => $champs |
|
| 428 | - ) |
|
| 429 | - ); |
|
| 430 | - |
|
| 431 | - |
|
| 432 | - // Notifications |
|
| 433 | - if ($notifications = charger_fonction('notifications', 'inc')) { |
|
| 434 | - $notifications('instituerauteur', $id_auteur, |
|
| 435 | - array('statut' => $statut, 'statut_ancien' => $statut_ancien) |
|
| 436 | - ); |
|
| 437 | - } |
|
| 438 | - |
|
| 439 | - return implode(' ', array_map('_T', $erreurs)); |
|
| 313 | + if (!$id_auteur = intval($id_auteur)) { |
|
| 314 | + return false; |
|
| 315 | + } |
|
| 316 | + $erreurs = array(); // contiendra les differentes erreurs a traduire par _T() |
|
| 317 | + $champs = array(); |
|
| 318 | + |
|
| 319 | + // les memoriser pour les faire passer dans le pipeline pre_edition |
|
| 320 | + if (isset($c['login']) and strlen($c['login'])) { |
|
| 321 | + $champs['login'] = $c['login']; |
|
| 322 | + } |
|
| 323 | + if (isset($c['pass']) and strlen($c['pass'])) { |
|
| 324 | + $champs['pass'] = $c['pass']; |
|
| 325 | + } |
|
| 326 | + |
|
| 327 | + $statut = $statut_ancien = sql_getfetsel('statut', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 328 | + |
|
| 329 | + if (isset($c['statut']) |
|
| 330 | + and (autoriser('modifier', 'auteur', $id_auteur, null, array('statut' => $c['statut']))) |
|
| 331 | + ) { |
|
| 332 | + $statut = $champs['statut'] = $c['statut']; |
|
| 333 | + } |
|
| 334 | + |
|
| 335 | + // Restreindre avant de declarer l'auteur |
|
| 336 | + // (section critique sur les droits) |
|
| 337 | + if (isset($c['id_parent']) and $c['id_parent']) { |
|
| 338 | + if (is_array($c['restreintes'])) { |
|
| 339 | + $c['restreintes'][] = $c['id_parent']; |
|
| 340 | + } else { |
|
| 341 | + $c['restreintes'] = array($c['id_parent']); |
|
| 342 | + } |
|
| 343 | + } |
|
| 344 | + |
|
| 345 | + if (isset($c['webmestre']) |
|
| 346 | + and ($force_webmestre or autoriser('modifier', 'auteur', $id_auteur, null, array('webmestre' => '?'))) |
|
| 347 | + ) { |
|
| 348 | + $champs['webmestre'] = $c['webmestre'] == 'oui' ? 'oui' : 'non'; |
|
| 349 | + } |
|
| 350 | + |
|
| 351 | + // si statut change et n'est pas 0minirezo, on force webmestre a non |
|
| 352 | + if (isset($c['statut']) and $c['statut'] !== '0minirezo') { |
|
| 353 | + $champs['webmestre'] = $c['webmestre'] = 'non'; |
|
| 354 | + } |
|
| 355 | + |
|
| 356 | + // Envoyer aux plugins |
|
| 357 | + $champs = pipeline('pre_edition', |
|
| 358 | + array( |
|
| 359 | + 'args' => array( |
|
| 360 | + 'table' => 'spip_auteurs', |
|
| 361 | + 'id_objet' => $id_auteur, |
|
| 362 | + 'action' => 'instituer', |
|
| 363 | + 'statut_ancien' => $statut_ancien, |
|
| 364 | + ), |
|
| 365 | + 'data' => $champs |
|
| 366 | + ) |
|
| 367 | + ); |
|
| 368 | + |
|
| 369 | + if (isset($c['restreintes']) and is_array($c['restreintes']) |
|
| 370 | + and autoriser('modifier', 'auteur', $id_auteur, null, array('restreint' => $c['restreintes'])) |
|
| 371 | + ) { |
|
| 372 | + $rubriques = array_map('intval', $c['restreintes']); |
|
| 373 | + $rubriques = array_unique($rubriques); |
|
| 374 | + $rubriques = array_diff($rubriques, array(0)); |
|
| 375 | + auteur_dissocier($id_auteur, array('rubrique' => '*')); |
|
| 376 | + auteur_associer($id_auteur, array('rubrique' => $rubriques)); |
|
| 377 | + } |
|
| 378 | + |
|
| 379 | + $flag_ecrire_acces = false; |
|
| 380 | + // commencer par traiter les cas particuliers des logins et pass |
|
| 381 | + // avant les autres ecritures en base |
|
| 382 | + if (isset($champs['login']) or isset($champs['pass'])) { |
|
| 383 | + $auth_methode = sql_getfetsel('source', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 384 | + include_spip('inc/auth'); |
|
| 385 | + if (isset($champs['login']) and strlen($champs['login'])) { |
|
| 386 | + if (!auth_modifier_login($auth_methode, $champs['login'], $id_auteur)) { |
|
| 387 | + $erreurs[] = 'ecrire:impossible_modifier_login_auteur'; |
|
| 388 | + } |
|
| 389 | + } |
|
| 390 | + if (isset($champs['pass']) and strlen($champs['pass'])) { |
|
| 391 | + $champs['login'] = sql_getfetsel('login', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 392 | + if (!auth_modifier_pass($auth_methode, $champs['login'], $champs['pass'], $id_auteur)) { |
|
| 393 | + $erreurs[] = 'ecrire:impossible_modifier_pass_auteur'; |
|
| 394 | + } |
|
| 395 | + } |
|
| 396 | + unset($champs['login']); |
|
| 397 | + unset($champs['pass']); |
|
| 398 | + $flag_ecrire_acces = true; |
|
| 399 | + } |
|
| 400 | + |
|
| 401 | + if (!count($champs)) { |
|
| 402 | + return implode(' ', array_map('_T', $erreurs)); |
|
| 403 | + } |
|
| 404 | + sql_updateq('spip_auteurs', $champs, 'id_auteur=' . $id_auteur); |
|
| 405 | + |
|
| 406 | + // .. mettre a jour les fichiers .htpasswd et .htpasswd-admin |
|
| 407 | + if ($flag_ecrire_acces |
|
| 408 | + or isset($champs['statut']) |
|
| 409 | + ) { |
|
| 410 | + include_spip('inc/acces'); |
|
| 411 | + ecrire_acces(); |
|
| 412 | + } |
|
| 413 | + |
|
| 414 | + // Invalider les caches |
|
| 415 | + include_spip('inc/invalideur'); |
|
| 416 | + suivre_invalideur("id='auteur/$id_auteur'"); |
|
| 417 | + |
|
| 418 | + // Pipeline |
|
| 419 | + pipeline('post_edition', |
|
| 420 | + array( |
|
| 421 | + 'args' => array( |
|
| 422 | + 'table' => 'spip_auteurs', |
|
| 423 | + 'id_objet' => $id_auteur, |
|
| 424 | + 'action' => 'instituer', |
|
| 425 | + 'statut_ancien' => $statut_ancien, |
|
| 426 | + ), |
|
| 427 | + 'data' => $champs |
|
| 428 | + ) |
|
| 429 | + ); |
|
| 430 | + |
|
| 431 | + |
|
| 432 | + // Notifications |
|
| 433 | + if ($notifications = charger_fonction('notifications', 'inc')) { |
|
| 434 | + $notifications('instituerauteur', $id_auteur, |
|
| 435 | + array('statut' => $statut, 'statut_ancien' => $statut_ancien) |
|
| 436 | + ); |
|
| 437 | + } |
|
| 438 | + |
|
| 439 | + return implode(' ', array_map('_T', $erreurs)); |
|
| 440 | 440 | |
| 441 | 441 | } |
| 442 | 442 | |
@@ -455,7 +455,7 @@ discard block |
||
| 455 | 455 | * @return int |
| 456 | 456 | */ |
| 457 | 457 | function insert_auteur($source = null) { |
| 458 | - return auteur_inserer($source); |
|
| 458 | + return auteur_inserer($source); |
|
| 459 | 459 | } |
| 460 | 460 | |
| 461 | 461 | /** |
@@ -469,7 +469,7 @@ discard block |
||
| 469 | 469 | * @return string|null |
| 470 | 470 | */ |
| 471 | 471 | function auteurs_set($id_auteur, $set = null) { |
| 472 | - return auteur_modifier($id_auteur, $set); |
|
| 472 | + return auteur_modifier($id_auteur, $set); |
|
| 473 | 473 | } |
| 474 | 474 | |
| 475 | 475 | /** |
@@ -484,7 +484,7 @@ discard block |
||
| 484 | 484 | * @return bool|string |
| 485 | 485 | */ |
| 486 | 486 | function instituer_auteur($id_auteur, $c, $force_webmestre = false) { |
| 487 | - return auteur_instituer($id_auteur, $c, $force_webmestre); |
|
| 487 | + return auteur_instituer($id_auteur, $c, $force_webmestre); |
|
| 488 | 488 | } |
| 489 | 489 | |
| 490 | 490 | /** |
@@ -498,5 +498,5 @@ discard block |
||
| 498 | 498 | * @return string|null |
| 499 | 499 | */ |
| 500 | 500 | function revision_auteur($id_auteur, $c = false) { |
| 501 | - return auteur_modifier($id_auteur, $c); |
|
| 501 | + return auteur_modifier($id_auteur, $c); |
|
| 502 | 502 | } |
@@ -95,7 +95,7 @@ discard block |
||
| 95 | 95 | $champs['source'] = $source ? $source : 'spip'; |
| 96 | 96 | |
| 97 | 97 | $champs['login'] = ''; |
| 98 | - $champs['statut'] = '5poubelle'; // inutilisable tant qu'il n'a pas ete renseigne et institue |
|
| 98 | + $champs['statut'] = '5poubelle'; // inutilisable tant qu'il n'a pas ete renseigne et institue |
|
| 99 | 99 | $champs['webmestre'] = 'non'; |
| 100 | 100 | if (empty($champs['imessage'])) { |
| 101 | 101 | $champs['imessage'] = 'oui'; |
@@ -324,7 +324,7 @@ discard block |
||
| 324 | 324 | $champs['pass'] = $c['pass']; |
| 325 | 325 | } |
| 326 | 326 | |
| 327 | - $statut = $statut_ancien = sql_getfetsel('statut', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 327 | + $statut = $statut_ancien = sql_getfetsel('statut', 'spip_auteurs', 'id_auteur='.intval($id_auteur)); |
|
| 328 | 328 | |
| 329 | 329 | if (isset($c['statut']) |
| 330 | 330 | and (autoriser('modifier', 'auteur', $id_auteur, null, array('statut' => $c['statut']))) |
@@ -380,7 +380,7 @@ discard block |
||
| 380 | 380 | // commencer par traiter les cas particuliers des logins et pass |
| 381 | 381 | // avant les autres ecritures en base |
| 382 | 382 | if (isset($champs['login']) or isset($champs['pass'])) { |
| 383 | - $auth_methode = sql_getfetsel('source', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 383 | + $auth_methode = sql_getfetsel('source', 'spip_auteurs', 'id_auteur='.intval($id_auteur)); |
|
| 384 | 384 | include_spip('inc/auth'); |
| 385 | 385 | if (isset($champs['login']) and strlen($champs['login'])) { |
| 386 | 386 | if (!auth_modifier_login($auth_methode, $champs['login'], $id_auteur)) { |
@@ -388,7 +388,7 @@ discard block |
||
| 388 | 388 | } |
| 389 | 389 | } |
| 390 | 390 | if (isset($champs['pass']) and strlen($champs['pass'])) { |
| 391 | - $champs['login'] = sql_getfetsel('login', 'spip_auteurs', 'id_auteur=' . intval($id_auteur)); |
|
| 391 | + $champs['login'] = sql_getfetsel('login', 'spip_auteurs', 'id_auteur='.intval($id_auteur)); |
|
| 392 | 392 | if (!auth_modifier_pass($auth_methode, $champs['login'], $champs['pass'], $id_auteur)) { |
| 393 | 393 | $erreurs[] = 'ecrire:impossible_modifier_pass_auteur'; |
| 394 | 394 | } |
@@ -401,7 +401,7 @@ discard block |
||
| 401 | 401 | if (!count($champs)) { |
| 402 | 402 | return implode(' ', array_map('_T', $erreurs)); |
| 403 | 403 | } |
| 404 | - sql_updateq('spip_auteurs', $champs, 'id_auteur=' . $id_auteur); |
|
| 404 | + sql_updateq('spip_auteurs', $champs, 'id_auteur='.$id_auteur); |
|
| 405 | 405 | |
| 406 | 406 | // .. mettre a jour les fichiers .htpasswd et .htpasswd-admin |
| 407 | 407 | if ($flag_ecrire_acces |
@@ -17,17 +17,17 @@ discard block |
||
| 17 | 17 | */ |
| 18 | 18 | |
| 19 | 19 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 20 | - return; |
|
| 20 | + return; |
|
| 21 | 21 | } |
| 22 | 22 | |
| 23 | 23 | if (!defined('_UPGRADE_TIME_OUT')) { |
| 24 | - /** |
|
| 25 | - * Durée en secondes pour relancer les scripts de mises à jour, x secondes |
|
| 26 | - * avant que la durée d'exécution du script provoque un timeout |
|
| 27 | - * |
|
| 28 | - * @var int |
|
| 29 | - **/ |
|
| 30 | - define('_UPGRADE_TIME_OUT', 20); |
|
| 24 | + /** |
|
| 25 | + * Durée en secondes pour relancer les scripts de mises à jour, x secondes |
|
| 26 | + * avant que la durée d'exécution du script provoque un timeout |
|
| 27 | + * |
|
| 28 | + * @var int |
|
| 29 | + **/ |
|
| 30 | + define('_UPGRADE_TIME_OUT', 20); |
|
| 31 | 31 | } |
| 32 | 32 | |
| 33 | 33 | /** |
@@ -50,40 +50,40 @@ discard block |
||
| 50 | 50 | * @return void |
| 51 | 51 | */ |
| 52 | 52 | function base_upgrade_dist($titre = '', $reprise = '') { |
| 53 | - if (!$titre) { |
|
| 54 | - return; |
|
| 55 | - } // anti-testeur automatique |
|
| 56 | - if ($GLOBALS['spip_version_base'] != $GLOBALS['meta']['version_installee']) { |
|
| 57 | - if (!is_numeric(_request('reinstall'))) { |
|
| 58 | - include_spip('base/create'); |
|
| 59 | - spip_log('recree les tables eventuellement disparues', 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 60 | - creer_base(); |
|
| 61 | - } |
|
| 62 | - |
|
| 63 | - // quand on rentre par ici, c'est toujours une mise a jour de SPIP |
|
| 64 | - // lancement de l'upgrade SPIP |
|
| 65 | - $res = maj_base(); |
|
| 66 | - |
|
| 67 | - if ($res) { |
|
| 68 | - // on arrete tout ici ! |
|
| 69 | - exit; |
|
| 70 | - } |
|
| 71 | - } |
|
| 72 | - spip_log('Fin de mise a jour SQL. Debut m-a-j acces et config', 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 73 | - |
|
| 74 | - // supprimer quelques fichiers temporaires qui peuvent se retrouver invalides |
|
| 75 | - @spip_unlink(_CACHE_RUBRIQUES); |
|
| 76 | - @spip_unlink(_CACHE_PIPELINES); |
|
| 77 | - @spip_unlink(_CACHE_PLUGINS_PATH); |
|
| 78 | - @spip_unlink(_CACHE_PLUGINS_OPT); |
|
| 79 | - @spip_unlink(_CACHE_PLUGINS_FCT); |
|
| 80 | - @spip_unlink(_CACHE_CHEMIN); |
|
| 81 | - @spip_unlink(_DIR_TMP . 'plugin_xml_cache.gz'); |
|
| 82 | - |
|
| 83 | - include_spip('inc/auth'); |
|
| 84 | - auth_synchroniser_distant(); |
|
| 85 | - $config = charger_fonction('config', 'inc'); |
|
| 86 | - $config(); |
|
| 53 | + if (!$titre) { |
|
| 54 | + return; |
|
| 55 | + } // anti-testeur automatique |
|
| 56 | + if ($GLOBALS['spip_version_base'] != $GLOBALS['meta']['version_installee']) { |
|
| 57 | + if (!is_numeric(_request('reinstall'))) { |
|
| 58 | + include_spip('base/create'); |
|
| 59 | + spip_log('recree les tables eventuellement disparues', 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 60 | + creer_base(); |
|
| 61 | + } |
|
| 62 | + |
|
| 63 | + // quand on rentre par ici, c'est toujours une mise a jour de SPIP |
|
| 64 | + // lancement de l'upgrade SPIP |
|
| 65 | + $res = maj_base(); |
|
| 66 | + |
|
| 67 | + if ($res) { |
|
| 68 | + // on arrete tout ici ! |
|
| 69 | + exit; |
|
| 70 | + } |
|
| 71 | + } |
|
| 72 | + spip_log('Fin de mise a jour SQL. Debut m-a-j acces et config', 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 73 | + |
|
| 74 | + // supprimer quelques fichiers temporaires qui peuvent se retrouver invalides |
|
| 75 | + @spip_unlink(_CACHE_RUBRIQUES); |
|
| 76 | + @spip_unlink(_CACHE_PIPELINES); |
|
| 77 | + @spip_unlink(_CACHE_PLUGINS_PATH); |
|
| 78 | + @spip_unlink(_CACHE_PLUGINS_OPT); |
|
| 79 | + @spip_unlink(_CACHE_PLUGINS_FCT); |
|
| 80 | + @spip_unlink(_CACHE_CHEMIN); |
|
| 81 | + @spip_unlink(_DIR_TMP . 'plugin_xml_cache.gz'); |
|
| 82 | + |
|
| 83 | + include_spip('inc/auth'); |
|
| 84 | + auth_synchroniser_distant(); |
|
| 85 | + $config = charger_fonction('config', 'inc'); |
|
| 86 | + $config(); |
|
| 87 | 87 | } |
| 88 | 88 | |
| 89 | 89 | /** |
@@ -104,80 +104,80 @@ discard block |
||
| 104 | 104 | */ |
| 105 | 105 | function maj_base($version_cible = 0, $redirect = '') { |
| 106 | 106 | |
| 107 | - $version_installee = @$GLOBALS['meta']['version_installee']; |
|
| 108 | - // |
|
| 109 | - // Si version nulle ou inexistante, c'est une nouvelle installation |
|
| 110 | - // => ne pas passer par le processus de mise a jour. |
|
| 111 | - // De meme en cas de version superieure: ca devait etre un test, |
|
| 112 | - // il y a eu le message d'avertissement il doit savoir ce qu'il fait |
|
| 113 | - // |
|
| 114 | - // version_installee = 1.702; quand on a besoin de forcer une MAJ |
|
| 115 | - |
|
| 116 | - spip_log( |
|
| 117 | - "Version anterieure: $version_installee. Courante: " . $GLOBALS['spip_version_base'], |
|
| 118 | - 'maj.' . _LOG_INFO_IMPORTANTE |
|
| 119 | - ); |
|
| 120 | - if (!$version_installee or ($GLOBALS['spip_version_base'] < $version_installee)) { |
|
| 121 | - sql_replace( |
|
| 122 | - 'spip_meta', |
|
| 123 | - array( |
|
| 124 | - 'nom' => 'version_installee', |
|
| 125 | - 'valeur' => $GLOBALS['spip_version_base'], |
|
| 126 | - 'impt' => 'non' |
|
| 127 | - ) |
|
| 128 | - ); |
|
| 129 | - return false; |
|
| 130 | - } |
|
| 131 | - if (!upgrade_test()) { |
|
| 132 | - return true; |
|
| 133 | - } |
|
| 134 | - |
|
| 135 | - $cible = ($version_cible ? $version_cible : $GLOBALS['spip_version_base']); |
|
| 136 | - |
|
| 137 | - if ($version_installee <= 1.926) { |
|
| 138 | - $n = floor($version_installee * 10); |
|
| 139 | - while ($n < 19) { |
|
| 140 | - $nom = sprintf('v%03d', $n); |
|
| 141 | - $f = charger_fonction($nom, 'maj/legacy', true); |
|
| 142 | - if ($f) { |
|
| 143 | - spip_log("$f repercute les modifications de la version " . ($n / 10), 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 144 | - $f($version_installee, $GLOBALS['spip_version_base']); |
|
| 145 | - } else { |
|
| 146 | - spip_log("pas de fonction pour la maj $n $nom", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 147 | - } |
|
| 148 | - $n++; |
|
| 149 | - } |
|
| 150 | - include_spip('maj/legacy/v019_pre193'); |
|
| 151 | - maj_legacy_v019_pre193($version_installee, $version_cible); |
|
| 152 | - } |
|
| 153 | - if ($version_installee < 2000) { |
|
| 154 | - if ($version_installee < 2) { |
|
| 155 | - $version_installee = $version_installee * 1000; |
|
| 156 | - } |
|
| 157 | - include_spip('maj/legacy/v019'); |
|
| 158 | - } |
|
| 159 | - if ($cible < 2) { |
|
| 160 | - $cible = $cible * 1000; |
|
| 161 | - } |
|
| 162 | - |
|
| 163 | - if ($version_installee < 2021010100) { |
|
| 164 | - include_spip('maj/legacy/svn10000'); |
|
| 165 | - } |
|
| 166 | - |
|
| 167 | - include_spip('maj/2021'); |
|
| 168 | - |
|
| 169 | - ksort($GLOBALS['maj']); |
|
| 170 | - $res = maj_while($version_installee, $cible, $GLOBALS['maj'], 'version_installee', 'meta', $redirect, true); |
|
| 171 | - if ($res) { |
|
| 172 | - if (!is_array($res)) { |
|
| 173 | - spip_log("Pb d'acces SQL a la mise a jour", 'maj.' . _LOG_INFO_ERREUR); |
|
| 174 | - } else { |
|
| 175 | - echo _T('avis_operation_echec') . ' ' . join(' ', $res); |
|
| 176 | - echo install_fin_html(); |
|
| 177 | - } |
|
| 178 | - } |
|
| 179 | - |
|
| 180 | - return $res; |
|
| 107 | + $version_installee = @$GLOBALS['meta']['version_installee']; |
|
| 108 | + // |
|
| 109 | + // Si version nulle ou inexistante, c'est une nouvelle installation |
|
| 110 | + // => ne pas passer par le processus de mise a jour. |
|
| 111 | + // De meme en cas de version superieure: ca devait etre un test, |
|
| 112 | + // il y a eu le message d'avertissement il doit savoir ce qu'il fait |
|
| 113 | + // |
|
| 114 | + // version_installee = 1.702; quand on a besoin de forcer une MAJ |
|
| 115 | + |
|
| 116 | + spip_log( |
|
| 117 | + "Version anterieure: $version_installee. Courante: " . $GLOBALS['spip_version_base'], |
|
| 118 | + 'maj.' . _LOG_INFO_IMPORTANTE |
|
| 119 | + ); |
|
| 120 | + if (!$version_installee or ($GLOBALS['spip_version_base'] < $version_installee)) { |
|
| 121 | + sql_replace( |
|
| 122 | + 'spip_meta', |
|
| 123 | + array( |
|
| 124 | + 'nom' => 'version_installee', |
|
| 125 | + 'valeur' => $GLOBALS['spip_version_base'], |
|
| 126 | + 'impt' => 'non' |
|
| 127 | + ) |
|
| 128 | + ); |
|
| 129 | + return false; |
|
| 130 | + } |
|
| 131 | + if (!upgrade_test()) { |
|
| 132 | + return true; |
|
| 133 | + } |
|
| 134 | + |
|
| 135 | + $cible = ($version_cible ? $version_cible : $GLOBALS['spip_version_base']); |
|
| 136 | + |
|
| 137 | + if ($version_installee <= 1.926) { |
|
| 138 | + $n = floor($version_installee * 10); |
|
| 139 | + while ($n < 19) { |
|
| 140 | + $nom = sprintf('v%03d', $n); |
|
| 141 | + $f = charger_fonction($nom, 'maj/legacy', true); |
|
| 142 | + if ($f) { |
|
| 143 | + spip_log("$f repercute les modifications de la version " . ($n / 10), 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 144 | + $f($version_installee, $GLOBALS['spip_version_base']); |
|
| 145 | + } else { |
|
| 146 | + spip_log("pas de fonction pour la maj $n $nom", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 147 | + } |
|
| 148 | + $n++; |
|
| 149 | + } |
|
| 150 | + include_spip('maj/legacy/v019_pre193'); |
|
| 151 | + maj_legacy_v019_pre193($version_installee, $version_cible); |
|
| 152 | + } |
|
| 153 | + if ($version_installee < 2000) { |
|
| 154 | + if ($version_installee < 2) { |
|
| 155 | + $version_installee = $version_installee * 1000; |
|
| 156 | + } |
|
| 157 | + include_spip('maj/legacy/v019'); |
|
| 158 | + } |
|
| 159 | + if ($cible < 2) { |
|
| 160 | + $cible = $cible * 1000; |
|
| 161 | + } |
|
| 162 | + |
|
| 163 | + if ($version_installee < 2021010100) { |
|
| 164 | + include_spip('maj/legacy/svn10000'); |
|
| 165 | + } |
|
| 166 | + |
|
| 167 | + include_spip('maj/2021'); |
|
| 168 | + |
|
| 169 | + ksort($GLOBALS['maj']); |
|
| 170 | + $res = maj_while($version_installee, $cible, $GLOBALS['maj'], 'version_installee', 'meta', $redirect, true); |
|
| 171 | + if ($res) { |
|
| 172 | + if (!is_array($res)) { |
|
| 173 | + spip_log("Pb d'acces SQL a la mise a jour", 'maj.' . _LOG_INFO_ERREUR); |
|
| 174 | + } else { |
|
| 175 | + echo _T('avis_operation_echec') . ' ' . join(' ', $res); |
|
| 176 | + echo install_fin_html(); |
|
| 177 | + } |
|
| 178 | + } |
|
| 179 | + |
|
| 180 | + return $res; |
|
| 181 | 181 | } |
| 182 | 182 | |
| 183 | 183 | /** |
@@ -219,52 +219,52 @@ discard block |
||
| 219 | 219 | */ |
| 220 | 220 | function maj_plugin($nom_meta_base_version, $version_cible, $maj, $table_meta = 'meta') { |
| 221 | 221 | |
| 222 | - if ($table_meta !== 'meta') { |
|
| 223 | - installer_table_meta($table_meta); |
|
| 224 | - } |
|
| 225 | - |
|
| 226 | - $current_version = null; |
|
| 227 | - |
|
| 228 | - if ((!isset($GLOBALS[$table_meta][$nom_meta_base_version])) |
|
| 229 | - || (!spip_version_compare($current_version = $GLOBALS[$table_meta][$nom_meta_base_version], $version_cible, '=')) |
|
| 230 | - ) { |
|
| 231 | - // $maj['create'] contient les directives propres a la premiere creation de base |
|
| 232 | - // c'est une operation derogatoire qui fait aboutir directement dans la version_cible |
|
| 233 | - if (isset($maj['create'])) { |
|
| 234 | - if (!isset($GLOBALS[$table_meta][$nom_meta_base_version])) { |
|
| 235 | - // installation : on ne fait que l'operation create |
|
| 236 | - $maj = array('init' => $maj['create']); |
|
| 237 | - // et on lui ajoute un appel a inc/config |
|
| 238 | - // pour creer les metas par defaut |
|
| 239 | - $config = charger_fonction('config', 'inc'); |
|
| 240 | - $maj[$version_cible] = array(array($config)); |
|
| 241 | - } |
|
| 242 | - // dans tous les cas enlever cet index du tableau |
|
| 243 | - unset($maj['create']); |
|
| 244 | - } |
|
| 245 | - // si init, deja dans le bon ordre |
|
| 246 | - if (!isset($maj['init'])) { |
|
| 247 | - include_spip('inc/plugin'); // pour spip_version_compare |
|
| 248 | - uksort($maj, 'spip_version_compare'); |
|
| 249 | - } |
|
| 250 | - |
|
| 251 | - // la redirection se fait par defaut sur la page d'administration des plugins |
|
| 252 | - // sauf lorsque nous sommes sur l'installation de SPIP |
|
| 253 | - // ou define _REDIRECT_MAJ_PLUGIN |
|
| 254 | - $redirect = (defined('_REDIRECT_MAJ_PLUGIN') ? _REDIRECT_MAJ_PLUGIN : generer_url_ecrire('admin_plugin')); |
|
| 255 | - if (defined('_ECRIRE_INSTALL')) { |
|
| 256 | - $redirect = parametre_url(generer_url_ecrire('install'), 'etape', _request('etape')); |
|
| 257 | - } |
|
| 258 | - |
|
| 259 | - $res = maj_while($current_version, $version_cible, $maj, $nom_meta_base_version, $table_meta, $redirect); |
|
| 260 | - if ($res) { |
|
| 261 | - if (!is_array($res)) { |
|
| 262 | - spip_log("Pb d'acces SQL a la mise a jour", 'maj.' . _LOG_INFO_ERREUR); |
|
| 263 | - } else { |
|
| 264 | - echo '<p>' . _T('avis_operation_echec') . ' ' . join(' ', $res) . '</p>'; |
|
| 265 | - } |
|
| 266 | - } |
|
| 267 | - } |
|
| 222 | + if ($table_meta !== 'meta') { |
|
| 223 | + installer_table_meta($table_meta); |
|
| 224 | + } |
|
| 225 | + |
|
| 226 | + $current_version = null; |
|
| 227 | + |
|
| 228 | + if ((!isset($GLOBALS[$table_meta][$nom_meta_base_version])) |
|
| 229 | + || (!spip_version_compare($current_version = $GLOBALS[$table_meta][$nom_meta_base_version], $version_cible, '=')) |
|
| 230 | + ) { |
|
| 231 | + // $maj['create'] contient les directives propres a la premiere creation de base |
|
| 232 | + // c'est une operation derogatoire qui fait aboutir directement dans la version_cible |
|
| 233 | + if (isset($maj['create'])) { |
|
| 234 | + if (!isset($GLOBALS[$table_meta][$nom_meta_base_version])) { |
|
| 235 | + // installation : on ne fait que l'operation create |
|
| 236 | + $maj = array('init' => $maj['create']); |
|
| 237 | + // et on lui ajoute un appel a inc/config |
|
| 238 | + // pour creer les metas par defaut |
|
| 239 | + $config = charger_fonction('config', 'inc'); |
|
| 240 | + $maj[$version_cible] = array(array($config)); |
|
| 241 | + } |
|
| 242 | + // dans tous les cas enlever cet index du tableau |
|
| 243 | + unset($maj['create']); |
|
| 244 | + } |
|
| 245 | + // si init, deja dans le bon ordre |
|
| 246 | + if (!isset($maj['init'])) { |
|
| 247 | + include_spip('inc/plugin'); // pour spip_version_compare |
|
| 248 | + uksort($maj, 'spip_version_compare'); |
|
| 249 | + } |
|
| 250 | + |
|
| 251 | + // la redirection se fait par defaut sur la page d'administration des plugins |
|
| 252 | + // sauf lorsque nous sommes sur l'installation de SPIP |
|
| 253 | + // ou define _REDIRECT_MAJ_PLUGIN |
|
| 254 | + $redirect = (defined('_REDIRECT_MAJ_PLUGIN') ? _REDIRECT_MAJ_PLUGIN : generer_url_ecrire('admin_plugin')); |
|
| 255 | + if (defined('_ECRIRE_INSTALL')) { |
|
| 256 | + $redirect = parametre_url(generer_url_ecrire('install'), 'etape', _request('etape')); |
|
| 257 | + } |
|
| 258 | + |
|
| 259 | + $res = maj_while($current_version, $version_cible, $maj, $nom_meta_base_version, $table_meta, $redirect); |
|
| 260 | + if ($res) { |
|
| 261 | + if (!is_array($res)) { |
|
| 262 | + spip_log("Pb d'acces SQL a la mise a jour", 'maj.' . _LOG_INFO_ERREUR); |
|
| 263 | + } else { |
|
| 264 | + echo '<p>' . _T('avis_operation_echec') . ' ' . join(' ', $res) . '</p>'; |
|
| 265 | + } |
|
| 266 | + } |
|
| 267 | + } |
|
| 268 | 268 | } |
| 269 | 269 | |
| 270 | 270 | /** |
@@ -281,17 +281,17 @@ discard block |
||
| 281 | 281 | * @return void |
| 282 | 282 | */ |
| 283 | 283 | function relance_maj($meta, $table, $redirect = '') { |
| 284 | - include_spip('inc/headers'); |
|
| 285 | - if (!$redirect) { |
|
| 286 | - // recuperer la valeur installee en cours |
|
| 287 | - // on la tronque numeriquement, elle ne sert pas reellement |
|
| 288 | - // sauf pour verifier que ce n'est pas oui ou non |
|
| 289 | - // sinon is_numeric va echouer sur un numero de version 1.2.3 |
|
| 290 | - $installee = intval($GLOBALS[$table][$meta]); |
|
| 291 | - $redirect = generer_url_ecrire('upgrade', "reinstall=$installee&meta=$meta&table=$table", true); |
|
| 292 | - } |
|
| 293 | - echo redirige_formulaire($redirect); |
|
| 294 | - exit(); |
|
| 284 | + include_spip('inc/headers'); |
|
| 285 | + if (!$redirect) { |
|
| 286 | + // recuperer la valeur installee en cours |
|
| 287 | + // on la tronque numeriquement, elle ne sert pas reellement |
|
| 288 | + // sauf pour verifier que ce n'est pas oui ou non |
|
| 289 | + // sinon is_numeric va echouer sur un numero de version 1.2.3 |
|
| 290 | + $installee = intval($GLOBALS[$table][$meta]); |
|
| 291 | + $redirect = generer_url_ecrire('upgrade', "reinstall=$installee&meta=$meta&table=$table", true); |
|
| 292 | + } |
|
| 293 | + echo redirige_formulaire($redirect); |
|
| 294 | + exit(); |
|
| 295 | 295 | } |
| 296 | 296 | |
| 297 | 297 | /** |
@@ -304,26 +304,26 @@ discard block |
||
| 304 | 304 | * @return void |
| 305 | 305 | */ |
| 306 | 306 | function maj_debut_page($installee, $meta, $table) { |
| 307 | - static $done = false; |
|
| 308 | - if ($done) { |
|
| 309 | - return; |
|
| 310 | - } |
|
| 311 | - include_spip('inc/minipres'); |
|
| 312 | - @ini_set('zlib.output_compression', '0'); // pour permettre l'affichage au fur et a mesure |
|
| 313 | - $timeout = _UPGRADE_TIME_OUT * 2; |
|
| 314 | - $titre = _T('titre_page_upgrade'); |
|
| 315 | - $balise_img = charger_filtre('balise_img'); |
|
| 316 | - $titre .= $balise_img(chemin_image('searching.gif')); |
|
| 317 | - echo(install_debut_html($titre)); |
|
| 318 | - // script de rechargement auto sur timeout |
|
| 319 | - $redirect = generer_url_ecrire('upgrade', "reinstall=$installee&meta=$meta&table=$table", true); |
|
| 320 | - echo http_script("window.setTimeout('location.href=\"" . $redirect . "\";'," . ($timeout * 1000) . ')'); |
|
| 321 | - echo "<div style='text-align: left'>\n"; |
|
| 322 | - if (ob_get_level()) { |
|
| 323 | - ob_flush(); |
|
| 324 | - } |
|
| 325 | - flush(); |
|
| 326 | - $done = true; |
|
| 307 | + static $done = false; |
|
| 308 | + if ($done) { |
|
| 309 | + return; |
|
| 310 | + } |
|
| 311 | + include_spip('inc/minipres'); |
|
| 312 | + @ini_set('zlib.output_compression', '0'); // pour permettre l'affichage au fur et a mesure |
|
| 313 | + $timeout = _UPGRADE_TIME_OUT * 2; |
|
| 314 | + $titre = _T('titre_page_upgrade'); |
|
| 315 | + $balise_img = charger_filtre('balise_img'); |
|
| 316 | + $titre .= $balise_img(chemin_image('searching.gif')); |
|
| 317 | + echo(install_debut_html($titre)); |
|
| 318 | + // script de rechargement auto sur timeout |
|
| 319 | + $redirect = generer_url_ecrire('upgrade', "reinstall=$installee&meta=$meta&table=$table", true); |
|
| 320 | + echo http_script("window.setTimeout('location.href=\"" . $redirect . "\";'," . ($timeout * 1000) . ')'); |
|
| 321 | + echo "<div style='text-align: left'>\n"; |
|
| 322 | + if (ob_get_level()) { |
|
| 323 | + ob_flush(); |
|
| 324 | + } |
|
| 325 | + flush(); |
|
| 326 | + $done = true; |
|
| 327 | 327 | } |
| 328 | 328 | |
| 329 | 329 | |
@@ -367,63 +367,63 @@ discard block |
||
| 367 | 367 | * - tableau vide sinon. |
| 368 | 368 | */ |
| 369 | 369 | function maj_while($installee, $cible, $maj, $meta = '', $table = 'meta', $redirect = '', $debut_page = false) { |
| 370 | - # inclusions pour que les procedures d'upgrade disposent des fonctions de base |
|
| 371 | - include_spip('base/create'); |
|
| 372 | - include_spip('base/abstract_sql'); |
|
| 373 | - $trouver_table = charger_fonction('trouver_table', 'base'); |
|
| 374 | - include_spip('inc/plugin'); // pour spip_version_compare |
|
| 375 | - $n = 0; |
|
| 376 | - $time = time(); |
|
| 377 | - |
|
| 378 | - if (!defined('_TIME_OUT')) { |
|
| 379 | - /** |
|
| 380 | - * Définir le timeout qui peut-être utilisé dans les fonctions |
|
| 381 | - * de mises à jour qui durent trop longtemps |
|
| 382 | - * |
|
| 383 | - * À utiliser tel que : `if (time() >= _TIME_OUT)` |
|
| 384 | - * |
|
| 385 | - * @var int |
|
| 386 | - */ |
|
| 387 | - define('_TIME_OUT', $time + _UPGRADE_TIME_OUT); |
|
| 388 | - } |
|
| 389 | - |
|
| 390 | - foreach ($maj as $v => $operations) { |
|
| 391 | - // si une maj pour cette version |
|
| 392 | - if ($v == 'init' or |
|
| 393 | - (spip_version_compare($v, $installee, '>') |
|
| 394 | - and spip_version_compare($v, $cible, '<=')) |
|
| 395 | - ) { |
|
| 396 | - if ($debut_page) { |
|
| 397 | - maj_debut_page($v, $meta, $table); |
|
| 398 | - } |
|
| 399 | - echo "MAJ $v"; |
|
| 400 | - $etape = serie_alter($v, $operations, $meta, $table, $redirect); |
|
| 401 | - $trouver_table(''); // vider le cache des descriptions de table |
|
| 402 | - # echec sur une etape en cours ? |
|
| 403 | - # on sort |
|
| 404 | - if ($etape) { |
|
| 405 | - return array($v, $etape); |
|
| 406 | - } |
|
| 407 | - $n = time() - $time; |
|
| 408 | - spip_log("$table $meta: $v en $n secondes", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 409 | - if ($meta) { |
|
| 410 | - ecrire_meta($meta, $installee = $v, 'oui', $table); |
|
| 411 | - } |
|
| 412 | - echo '<br />'; |
|
| 413 | - } |
|
| 414 | - if (time() >= _TIME_OUT) { |
|
| 415 | - relance_maj($meta, $table, $redirect); |
|
| 416 | - } |
|
| 417 | - } |
|
| 418 | - $trouver_table(''); // vider le cache des descriptions de table |
|
| 419 | - // indispensable pour les chgt de versions qui n'ecrivent pas en base |
|
| 420 | - // tant pis pour la redondance eventuelle avec ci-dessus |
|
| 421 | - if ($meta) { |
|
| 422 | - ecrire_meta($meta, $cible, 'oui', $table); |
|
| 423 | - } |
|
| 424 | - spip_log("MAJ terminee. $meta: $installee", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 425 | - |
|
| 426 | - return array(); |
|
| 370 | + # inclusions pour que les procedures d'upgrade disposent des fonctions de base |
|
| 371 | + include_spip('base/create'); |
|
| 372 | + include_spip('base/abstract_sql'); |
|
| 373 | + $trouver_table = charger_fonction('trouver_table', 'base'); |
|
| 374 | + include_spip('inc/plugin'); // pour spip_version_compare |
|
| 375 | + $n = 0; |
|
| 376 | + $time = time(); |
|
| 377 | + |
|
| 378 | + if (!defined('_TIME_OUT')) { |
|
| 379 | + /** |
|
| 380 | + * Définir le timeout qui peut-être utilisé dans les fonctions |
|
| 381 | + * de mises à jour qui durent trop longtemps |
|
| 382 | + * |
|
| 383 | + * À utiliser tel que : `if (time() >= _TIME_OUT)` |
|
| 384 | + * |
|
| 385 | + * @var int |
|
| 386 | + */ |
|
| 387 | + define('_TIME_OUT', $time + _UPGRADE_TIME_OUT); |
|
| 388 | + } |
|
| 389 | + |
|
| 390 | + foreach ($maj as $v => $operations) { |
|
| 391 | + // si une maj pour cette version |
|
| 392 | + if ($v == 'init' or |
|
| 393 | + (spip_version_compare($v, $installee, '>') |
|
| 394 | + and spip_version_compare($v, $cible, '<=')) |
|
| 395 | + ) { |
|
| 396 | + if ($debut_page) { |
|
| 397 | + maj_debut_page($v, $meta, $table); |
|
| 398 | + } |
|
| 399 | + echo "MAJ $v"; |
|
| 400 | + $etape = serie_alter($v, $operations, $meta, $table, $redirect); |
|
| 401 | + $trouver_table(''); // vider le cache des descriptions de table |
|
| 402 | + # echec sur une etape en cours ? |
|
| 403 | + # on sort |
|
| 404 | + if ($etape) { |
|
| 405 | + return array($v, $etape); |
|
| 406 | + } |
|
| 407 | + $n = time() - $time; |
|
| 408 | + spip_log("$table $meta: $v en $n secondes", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 409 | + if ($meta) { |
|
| 410 | + ecrire_meta($meta, $installee = $v, 'oui', $table); |
|
| 411 | + } |
|
| 412 | + echo '<br />'; |
|
| 413 | + } |
|
| 414 | + if (time() >= _TIME_OUT) { |
|
| 415 | + relance_maj($meta, $table, $redirect); |
|
| 416 | + } |
|
| 417 | + } |
|
| 418 | + $trouver_table(''); // vider le cache des descriptions de table |
|
| 419 | + // indispensable pour les chgt de versions qui n'ecrivent pas en base |
|
| 420 | + // tant pis pour la redondance eventuelle avec ci-dessus |
|
| 421 | + if ($meta) { |
|
| 422 | + ecrire_meta($meta, $cible, 'oui', $table); |
|
| 423 | + } |
|
| 424 | + spip_log("MAJ terminee. $meta: $installee", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 425 | + |
|
| 426 | + return array(); |
|
| 427 | 427 | } |
| 428 | 428 | |
| 429 | 429 | /** |
@@ -446,52 +446,52 @@ discard block |
||
| 446 | 446 | * @return int |
| 447 | 447 | */ |
| 448 | 448 | function serie_alter($serie, $q = array(), $meta = '', $table = 'meta', $redirect = '') { |
| 449 | - $meta2 = $meta . '_maj_' . $serie; |
|
| 450 | - $etape = 0; |
|
| 451 | - if (isset($GLOBALS[$table][$meta2])) { |
|
| 452 | - $etape = intval($GLOBALS[$table][$meta2]); |
|
| 453 | - } |
|
| 454 | - foreach ($q as $i => $r) { |
|
| 455 | - if ($i >= $etape) { |
|
| 456 | - $msg = "maj $table $meta2 etape $i"; |
|
| 457 | - if (is_array($r) |
|
| 458 | - and function_exists($f = array_shift($r)) |
|
| 459 | - ) { |
|
| 460 | - // note: $r (arguments de la fonction $f) peut avoir des données tabulaires |
|
| 461 | - spip_log("$msg: $f " . @join(',', $r), 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 462 | - // pour les fonctions atomiques sql_xx |
|
| 463 | - // on enregistre le meta avant de lancer la fonction, |
|
| 464 | - // de maniere a eviter de boucler sur timeout |
|
| 465 | - // mais pour les fonctions complexes, |
|
| 466 | - // il faut les rejouer jusqu'a achevement. |
|
| 467 | - // C'est a elle d'assurer qu'elles progressent a chaque rappel |
|
| 468 | - if (strncmp($f, 'sql_', 4) == 0) { |
|
| 469 | - ecrire_meta($meta2, $i + 1, 'non', $table); |
|
| 470 | - } |
|
| 471 | - echo " <span title='$i'>.</span>"; |
|
| 472 | - call_user_func_array($f, $r); |
|
| 473 | - // si temps imparti depasse, on relance sans ecrire en meta |
|
| 474 | - // car on est peut etre sorti sur timeout si c'est une fonction longue |
|
| 475 | - if (time() >= _TIME_OUT) { |
|
| 476 | - relance_maj($meta, $table, $redirect); |
|
| 477 | - } |
|
| 478 | - ecrire_meta($meta2, $i + 1, 'non', $table); |
|
| 479 | - spip_log("$meta2: ok", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 480 | - } else { |
|
| 481 | - if (!is_array($r)) { |
|
| 482 | - spip_log("maj $i format incorrect", 'maj.' . _LOG_ERREUR); |
|
| 483 | - } else { |
|
| 484 | - spip_log("maj $i fonction $f non definie", 'maj.' . _LOG_ERREUR); |
|
| 485 | - } |
|
| 486 | - // en cas d'erreur serieuse, on s'arrete |
|
| 487 | - // mais on permet de passer par dessus en rechargeant la page. |
|
| 488 | - return $i + 1; |
|
| 489 | - } |
|
| 490 | - } |
|
| 491 | - } |
|
| 492 | - effacer_meta($meta2, $table); |
|
| 493 | - |
|
| 494 | - return 0; |
|
| 449 | + $meta2 = $meta . '_maj_' . $serie; |
|
| 450 | + $etape = 0; |
|
| 451 | + if (isset($GLOBALS[$table][$meta2])) { |
|
| 452 | + $etape = intval($GLOBALS[$table][$meta2]); |
|
| 453 | + } |
|
| 454 | + foreach ($q as $i => $r) { |
|
| 455 | + if ($i >= $etape) { |
|
| 456 | + $msg = "maj $table $meta2 etape $i"; |
|
| 457 | + if (is_array($r) |
|
| 458 | + and function_exists($f = array_shift($r)) |
|
| 459 | + ) { |
|
| 460 | + // note: $r (arguments de la fonction $f) peut avoir des données tabulaires |
|
| 461 | + spip_log("$msg: $f " . @join(',', $r), 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 462 | + // pour les fonctions atomiques sql_xx |
|
| 463 | + // on enregistre le meta avant de lancer la fonction, |
|
| 464 | + // de maniere a eviter de boucler sur timeout |
|
| 465 | + // mais pour les fonctions complexes, |
|
| 466 | + // il faut les rejouer jusqu'a achevement. |
|
| 467 | + // C'est a elle d'assurer qu'elles progressent a chaque rappel |
|
| 468 | + if (strncmp($f, 'sql_', 4) == 0) { |
|
| 469 | + ecrire_meta($meta2, $i + 1, 'non', $table); |
|
| 470 | + } |
|
| 471 | + echo " <span title='$i'>.</span>"; |
|
| 472 | + call_user_func_array($f, $r); |
|
| 473 | + // si temps imparti depasse, on relance sans ecrire en meta |
|
| 474 | + // car on est peut etre sorti sur timeout si c'est une fonction longue |
|
| 475 | + if (time() >= _TIME_OUT) { |
|
| 476 | + relance_maj($meta, $table, $redirect); |
|
| 477 | + } |
|
| 478 | + ecrire_meta($meta2, $i + 1, 'non', $table); |
|
| 479 | + spip_log("$meta2: ok", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 480 | + } else { |
|
| 481 | + if (!is_array($r)) { |
|
| 482 | + spip_log("maj $i format incorrect", 'maj.' . _LOG_ERREUR); |
|
| 483 | + } else { |
|
| 484 | + spip_log("maj $i fonction $f non definie", 'maj.' . _LOG_ERREUR); |
|
| 485 | + } |
|
| 486 | + // en cas d'erreur serieuse, on s'arrete |
|
| 487 | + // mais on permet de passer par dessus en rechargeant la page. |
|
| 488 | + return $i + 1; |
|
| 489 | + } |
|
| 490 | + } |
|
| 491 | + } |
|
| 492 | + effacer_meta($meta2, $table); |
|
| 493 | + |
|
| 494 | + return 0; |
|
| 495 | 495 | } |
| 496 | 496 | |
| 497 | 497 | |
@@ -512,11 +512,11 @@ discard block |
||
| 512 | 512 | * |
| 513 | 513 | **/ |
| 514 | 514 | function upgrade_types_documents() { |
| 515 | - if (include_spip('base/medias') |
|
| 516 | - and function_exists('creer_base_types_doc') |
|
| 517 | - ) { |
|
| 518 | - creer_base_types_doc(); |
|
| 519 | - } |
|
| 515 | + if (include_spip('base/medias') |
|
| 516 | + and function_exists('creer_base_types_doc') |
|
| 517 | + ) { |
|
| 518 | + creer_base_types_doc(); |
|
| 519 | + } |
|
| 520 | 520 | } |
| 521 | 521 | |
| 522 | 522 | /** |
@@ -525,18 +525,18 @@ discard block |
||
| 525 | 525 | * @return bool True si possible. |
| 526 | 526 | **/ |
| 527 | 527 | function upgrade_test() { |
| 528 | - sql_drop_table('spip_test', true); |
|
| 529 | - sql_create('spip_test', array('a' => 'int')); |
|
| 530 | - sql_alter('TABLE spip_test ADD b INT'); |
|
| 531 | - sql_insertq('spip_test', array('b' => 1), array('field' => array('b' => 'int'))); |
|
| 532 | - $result = sql_select('b', 'spip_test'); |
|
| 533 | - // ne pas garder le resultat de la requete sinon sqlite3 |
|
| 534 | - // ne peut pas supprimer la table spip_test lors du sql_alter qui suit |
|
| 535 | - // car cette table serait alors 'verouillee' |
|
| 536 | - $result = $result ? true : false; |
|
| 537 | - sql_alter('TABLE spip_test DROP b'); |
|
| 538 | - |
|
| 539 | - return $result; |
|
| 528 | + sql_drop_table('spip_test', true); |
|
| 529 | + sql_create('spip_test', array('a' => 'int')); |
|
| 530 | + sql_alter('TABLE spip_test ADD b INT'); |
|
| 531 | + sql_insertq('spip_test', array('b' => 1), array('field' => array('b' => 'int'))); |
|
| 532 | + $result = sql_select('b', 'spip_test'); |
|
| 533 | + // ne pas garder le resultat de la requete sinon sqlite3 |
|
| 534 | + // ne peut pas supprimer la table spip_test lors du sql_alter qui suit |
|
| 535 | + // car cette table serait alors 'verouillee' |
|
| 536 | + $result = $result ? true : false; |
|
| 537 | + sql_alter('TABLE spip_test DROP b'); |
|
| 538 | + |
|
| 539 | + return $result; |
|
| 540 | 540 | } |
| 541 | 541 | |
| 542 | 542 | /** |
@@ -551,19 +551,19 @@ discard block |
||
| 551 | 551 | * @return void |
| 552 | 552 | **/ |
| 553 | 553 | function maj_version($version, $test = true) { |
| 554 | - if ($test) { |
|
| 555 | - if ($version >= 1.922) { |
|
| 556 | - ecrire_meta('version_installee', $version, 'oui'); |
|
| 557 | - } else { |
|
| 558 | - // on le fait manuellement, car ecrire_meta utilise le champs impt qui est absent sur les vieilles versions |
|
| 559 | - $GLOBALS['meta']['version_installee'] = $version; |
|
| 560 | - sql_updateq('spip_meta', array('valeur' => $version), 'nom=' . sql_quote('version_installee')); |
|
| 561 | - } |
|
| 562 | - spip_log("mise a jour de la base en $version", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 563 | - } else { |
|
| 564 | - echo _T('alerte_maj_impossible', array('version' => $version)); |
|
| 565 | - exit; |
|
| 566 | - } |
|
| 554 | + if ($test) { |
|
| 555 | + if ($version >= 1.922) { |
|
| 556 | + ecrire_meta('version_installee', $version, 'oui'); |
|
| 557 | + } else { |
|
| 558 | + // on le fait manuellement, car ecrire_meta utilise le champs impt qui est absent sur les vieilles versions |
|
| 559 | + $GLOBALS['meta']['version_installee'] = $version; |
|
| 560 | + sql_updateq('spip_meta', array('valeur' => $version), 'nom=' . sql_quote('version_installee')); |
|
| 561 | + } |
|
| 562 | + spip_log("mise a jour de la base en $version", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 563 | + } else { |
|
| 564 | + echo _T('alerte_maj_impossible', array('version' => $version)); |
|
| 565 | + exit; |
|
| 566 | + } |
|
| 567 | 567 | } |
| 568 | 568 | |
| 569 | 569 | /** |
@@ -579,7 +579,7 @@ discard block |
||
| 579 | 579 | * @return bool true si la mise à jour doit se réaliser |
| 580 | 580 | **/ |
| 581 | 581 | function upgrade_vers($version, $version_installee, $version_cible = 0) { |
| 582 | - return ($version_installee < $version |
|
| 583 | - and (($version_cible >= $version) or ($version_cible == 0)) |
|
| 584 | - ); |
|
| 582 | + return ($version_installee < $version |
|
| 583 | + and (($version_cible >= $version) or ($version_cible == 0)) |
|
| 584 | + ); |
|
| 585 | 585 | } |
@@ -56,7 +56,7 @@ discard block |
||
| 56 | 56 | if ($GLOBALS['spip_version_base'] != $GLOBALS['meta']['version_installee']) { |
| 57 | 57 | if (!is_numeric(_request('reinstall'))) { |
| 58 | 58 | include_spip('base/create'); |
| 59 | - spip_log('recree les tables eventuellement disparues', 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 59 | + spip_log('recree les tables eventuellement disparues', 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 60 | 60 | creer_base(); |
| 61 | 61 | } |
| 62 | 62 | |
@@ -69,7 +69,7 @@ discard block |
||
| 69 | 69 | exit; |
| 70 | 70 | } |
| 71 | 71 | } |
| 72 | - spip_log('Fin de mise a jour SQL. Debut m-a-j acces et config', 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 72 | + spip_log('Fin de mise a jour SQL. Debut m-a-j acces et config', 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 73 | 73 | |
| 74 | 74 | // supprimer quelques fichiers temporaires qui peuvent se retrouver invalides |
| 75 | 75 | @spip_unlink(_CACHE_RUBRIQUES); |
@@ -78,7 +78,7 @@ discard block |
||
| 78 | 78 | @spip_unlink(_CACHE_PLUGINS_OPT); |
| 79 | 79 | @spip_unlink(_CACHE_PLUGINS_FCT); |
| 80 | 80 | @spip_unlink(_CACHE_CHEMIN); |
| 81 | - @spip_unlink(_DIR_TMP . 'plugin_xml_cache.gz'); |
|
| 81 | + @spip_unlink(_DIR_TMP.'plugin_xml_cache.gz'); |
|
| 82 | 82 | |
| 83 | 83 | include_spip('inc/auth'); |
| 84 | 84 | auth_synchroniser_distant(); |
@@ -114,8 +114,8 @@ discard block |
||
| 114 | 114 | // version_installee = 1.702; quand on a besoin de forcer une MAJ |
| 115 | 115 | |
| 116 | 116 | spip_log( |
| 117 | - "Version anterieure: $version_installee. Courante: " . $GLOBALS['spip_version_base'], |
|
| 118 | - 'maj.' . _LOG_INFO_IMPORTANTE |
|
| 117 | + "Version anterieure: $version_installee. Courante: ".$GLOBALS['spip_version_base'], |
|
| 118 | + 'maj.'._LOG_INFO_IMPORTANTE |
|
| 119 | 119 | ); |
| 120 | 120 | if (!$version_installee or ($GLOBALS['spip_version_base'] < $version_installee)) { |
| 121 | 121 | sql_replace( |
@@ -140,10 +140,10 @@ discard block |
||
| 140 | 140 | $nom = sprintf('v%03d', $n); |
| 141 | 141 | $f = charger_fonction($nom, 'maj/legacy', true); |
| 142 | 142 | if ($f) { |
| 143 | - spip_log("$f repercute les modifications de la version " . ($n / 10), 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 143 | + spip_log("$f repercute les modifications de la version ".($n / 10), 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 144 | 144 | $f($version_installee, $GLOBALS['spip_version_base']); |
| 145 | 145 | } else { |
| 146 | - spip_log("pas de fonction pour la maj $n $nom", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 146 | + spip_log("pas de fonction pour la maj $n $nom", 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 147 | 147 | } |
| 148 | 148 | $n++; |
| 149 | 149 | } |
@@ -170,9 +170,9 @@ discard block |
||
| 170 | 170 | $res = maj_while($version_installee, $cible, $GLOBALS['maj'], 'version_installee', 'meta', $redirect, true); |
| 171 | 171 | if ($res) { |
| 172 | 172 | if (!is_array($res)) { |
| 173 | - spip_log("Pb d'acces SQL a la mise a jour", 'maj.' . _LOG_INFO_ERREUR); |
|
| 173 | + spip_log("Pb d'acces SQL a la mise a jour", 'maj.'._LOG_INFO_ERREUR); |
|
| 174 | 174 | } else { |
| 175 | - echo _T('avis_operation_echec') . ' ' . join(' ', $res); |
|
| 175 | + echo _T('avis_operation_echec').' '.join(' ', $res); |
|
| 176 | 176 | echo install_fin_html(); |
| 177 | 177 | } |
| 178 | 178 | } |
@@ -259,9 +259,9 @@ discard block |
||
| 259 | 259 | $res = maj_while($current_version, $version_cible, $maj, $nom_meta_base_version, $table_meta, $redirect); |
| 260 | 260 | if ($res) { |
| 261 | 261 | if (!is_array($res)) { |
| 262 | - spip_log("Pb d'acces SQL a la mise a jour", 'maj.' . _LOG_INFO_ERREUR); |
|
| 262 | + spip_log("Pb d'acces SQL a la mise a jour", 'maj.'._LOG_INFO_ERREUR); |
|
| 263 | 263 | } else { |
| 264 | - echo '<p>' . _T('avis_operation_echec') . ' ' . join(' ', $res) . '</p>'; |
|
| 264 | + echo '<p>'._T('avis_operation_echec').' '.join(' ', $res).'</p>'; |
|
| 265 | 265 | } |
| 266 | 266 | } |
| 267 | 267 | } |
@@ -317,7 +317,7 @@ discard block |
||
| 317 | 317 | echo(install_debut_html($titre)); |
| 318 | 318 | // script de rechargement auto sur timeout |
| 319 | 319 | $redirect = generer_url_ecrire('upgrade', "reinstall=$installee&meta=$meta&table=$table", true); |
| 320 | - echo http_script("window.setTimeout('location.href=\"" . $redirect . "\";'," . ($timeout * 1000) . ')'); |
|
| 320 | + echo http_script("window.setTimeout('location.href=\"".$redirect."\";',".($timeout * 1000).')'); |
|
| 321 | 321 | echo "<div style='text-align: left'>\n"; |
| 322 | 322 | if (ob_get_level()) { |
| 323 | 323 | ob_flush(); |
@@ -405,7 +405,7 @@ discard block |
||
| 405 | 405 | return array($v, $etape); |
| 406 | 406 | } |
| 407 | 407 | $n = time() - $time; |
| 408 | - spip_log("$table $meta: $v en $n secondes", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 408 | + spip_log("$table $meta: $v en $n secondes", 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 409 | 409 | if ($meta) { |
| 410 | 410 | ecrire_meta($meta, $installee = $v, 'oui', $table); |
| 411 | 411 | } |
@@ -421,7 +421,7 @@ discard block |
||
| 421 | 421 | if ($meta) { |
| 422 | 422 | ecrire_meta($meta, $cible, 'oui', $table); |
| 423 | 423 | } |
| 424 | - spip_log("MAJ terminee. $meta: $installee", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 424 | + spip_log("MAJ terminee. $meta: $installee", 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 425 | 425 | |
| 426 | 426 | return array(); |
| 427 | 427 | } |
@@ -446,7 +446,7 @@ discard block |
||
| 446 | 446 | * @return int |
| 447 | 447 | */ |
| 448 | 448 | function serie_alter($serie, $q = array(), $meta = '', $table = 'meta', $redirect = '') { |
| 449 | - $meta2 = $meta . '_maj_' . $serie; |
|
| 449 | + $meta2 = $meta.'_maj_'.$serie; |
|
| 450 | 450 | $etape = 0; |
| 451 | 451 | if (isset($GLOBALS[$table][$meta2])) { |
| 452 | 452 | $etape = intval($GLOBALS[$table][$meta2]); |
@@ -458,7 +458,7 @@ discard block |
||
| 458 | 458 | and function_exists($f = array_shift($r)) |
| 459 | 459 | ) { |
| 460 | 460 | // note: $r (arguments de la fonction $f) peut avoir des données tabulaires |
| 461 | - spip_log("$msg: $f " . @join(',', $r), 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 461 | + spip_log("$msg: $f ".@join(',', $r), 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 462 | 462 | // pour les fonctions atomiques sql_xx |
| 463 | 463 | // on enregistre le meta avant de lancer la fonction, |
| 464 | 464 | // de maniere a eviter de boucler sur timeout |
@@ -476,12 +476,12 @@ discard block |
||
| 476 | 476 | relance_maj($meta, $table, $redirect); |
| 477 | 477 | } |
| 478 | 478 | ecrire_meta($meta2, $i + 1, 'non', $table); |
| 479 | - spip_log("$meta2: ok", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 479 | + spip_log("$meta2: ok", 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 480 | 480 | } else { |
| 481 | 481 | if (!is_array($r)) { |
| 482 | - spip_log("maj $i format incorrect", 'maj.' . _LOG_ERREUR); |
|
| 482 | + spip_log("maj $i format incorrect", 'maj.'._LOG_ERREUR); |
|
| 483 | 483 | } else { |
| 484 | - spip_log("maj $i fonction $f non definie", 'maj.' . _LOG_ERREUR); |
|
| 484 | + spip_log("maj $i fonction $f non definie", 'maj.'._LOG_ERREUR); |
|
| 485 | 485 | } |
| 486 | 486 | // en cas d'erreur serieuse, on s'arrete |
| 487 | 487 | // mais on permet de passer par dessus en rechargeant la page. |
@@ -557,9 +557,9 @@ discard block |
||
| 557 | 557 | } else { |
| 558 | 558 | // on le fait manuellement, car ecrire_meta utilise le champs impt qui est absent sur les vieilles versions |
| 559 | 559 | $GLOBALS['meta']['version_installee'] = $version; |
| 560 | - sql_updateq('spip_meta', array('valeur' => $version), 'nom=' . sql_quote('version_installee')); |
|
| 560 | + sql_updateq('spip_meta', array('valeur' => $version), 'nom='.sql_quote('version_installee')); |
|
| 561 | 561 | } |
| 562 | - spip_log("mise a jour de la base en $version", 'maj.' . _LOG_INFO_IMPORTANTE); |
|
| 562 | + spip_log("mise a jour de la base en $version", 'maj.'._LOG_INFO_IMPORTANTE); |
|
| 563 | 563 | } else { |
| 564 | 564 | echo _T('alerte_maj_impossible', array('version' => $version)); |
| 565 | 565 | exit; |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | * @package SPIP\Core\SQL\Upgrade |
| 17 | 17 | **/ |
| 18 | 18 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 19 | - return; |
|
| 19 | + return; |
|
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /** |
@@ -26,214 +26,214 @@ discard block |
||
| 26 | 26 | * @param float $version_cible Version de destination |
| 27 | 27 | **/ |
| 28 | 28 | function maj_legacy_v018_dist($version_installee, $version_cible) { |
| 29 | - if (upgrade_vers(1.801, $version_installee, $version_cible)) { |
|
| 30 | - sql_query("ALTER TABLE spip_rubriques ADD statut_tmp VARCHAR(10) NOT NULL, ADD date_tmp datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"); |
|
| 31 | - include_spip('inc/rubriques'); |
|
| 32 | - calculer_rubriques(); |
|
| 33 | - maj_version(1.801); |
|
| 34 | - } |
|
| 35 | - |
|
| 36 | - // Nouvelles tables d'invalidation |
|
| 37 | - if (upgrade_vers(1.802, $version_installee, $version_cible)) { |
|
| 38 | - sql_query("DROP TABLE spip_id_article_caches"); |
|
| 39 | - sql_query("DROP TABLE spip_id_auteur_caches"); |
|
| 40 | - sql_query("DROP TABLE spip_id_breve_caches"); |
|
| 41 | - sql_query("DROP TABLE spip_id_document_caches"); |
|
| 42 | - sql_query("DROP TABLE spip_id_forum_caches"); |
|
| 43 | - sql_query("DROP TABLE spip_id_groupe_caches"); |
|
| 44 | - sql_query("DROP TABLE spip_id_message_caches"); |
|
| 45 | - sql_query("DROP TABLE spip_id_mot_caches"); |
|
| 46 | - sql_query("DROP TABLE spip_id_rubrique_caches"); |
|
| 47 | - sql_query("DROP TABLE spip_id_signature_caches"); |
|
| 48 | - sql_query("DROP TABLE spip_id_syndic_article_caches"); |
|
| 49 | - sql_query("DROP TABLE spip_id_syndic_caches"); |
|
| 50 | - sql_query("DROP TABLE spip_id_type_caches"); |
|
| 51 | - sql_query("DROP TABLE spip_inclure_caches"); |
|
| 52 | - maj_version(1.802); |
|
| 53 | - } |
|
| 54 | - if (upgrade_vers(1.803, $version_installee, $version_cible)) { |
|
| 55 | - |
|
| 56 | - # 27 AOUT 2004 : conservons cette table pour autoriser les retours |
|
| 57 | - # de SPIP 1.8a6 CVS vers 1.7.2 |
|
| 58 | - # sql_query("DROP TABLE spip_forum_cache"); |
|
| 59 | - |
|
| 60 | - sql_query("DROP TABLE spip_inclure_caches"); |
|
| 61 | - maj_version(1.803); |
|
| 62 | - } |
|
| 63 | - if (upgrade_vers(1.804, $version_installee, $version_cible)) { |
|
| 64 | - // recreer la table spip_caches |
|
| 65 | - sql_query("DROP TABLE spip_caches"); |
|
| 66 | - creer_base(); |
|
| 67 | - maj_version(1.804); |
|
| 68 | - } |
|
| 69 | - |
|
| 70 | - /** |
|
| 71 | - * Recalculer tous les threads |
|
| 72 | - * |
|
| 73 | - * Fonction du plugin forum recopiee ici pour assurer la montee |
|
| 74 | - * de version dans tous les cas de figure |
|
| 75 | - **/ |
|
| 76 | - function maj_v018_calculer_threads() { |
|
| 77 | - // fixer les id_thread des debuts de discussion |
|
| 78 | - sql_update('spip_forum', array('id_thread' => 'id_forum'), "id_parent=0"); |
|
| 79 | - // reparer les messages qui n'ont pas l'id_secteur de leur parent |
|
| 80 | - do { |
|
| 81 | - $discussion = "0"; |
|
| 82 | - $precedent = 0; |
|
| 83 | - $r = sql_select("fille.id_forum AS id, maman.id_thread AS thread", 'spip_forum AS fille, spip_forum AS maman', |
|
| 84 | - "fille.id_parent = maman.id_forum AND fille.id_thread <> maman.id_thread", '', "thread"); |
|
| 85 | - while ($row = sql_fetch($r)) { |
|
| 86 | - if ($row['thread'] == $precedent) { |
|
| 87 | - $discussion .= "," . $row['id']; |
|
| 88 | - } else { |
|
| 89 | - if ($precedent) { |
|
| 90 | - sql_updateq("spip_forum", array("id_thread" => $precedent), "id_forum IN ($discussion)"); |
|
| 91 | - } |
|
| 92 | - $precedent = $row['thread']; |
|
| 93 | - $discussion = $row['id']; |
|
| 94 | - } |
|
| 95 | - } |
|
| 96 | - sql_updateq("spip_forum", array("id_thread" => $precedent), "id_forum IN ($discussion)"); |
|
| 97 | - } while ($discussion != "0"); |
|
| 98 | - } |
|
| 99 | - |
|
| 100 | - if (upgrade_vers(1.805, $version_installee, $version_cible)) { |
|
| 101 | - sql_query("ALTER TABLE spip_forum ADD id_thread bigint(21) DEFAULT '0' NOT NULL"); |
|
| 102 | - maj_v018_calculer_threads(); |
|
| 103 | - maj_version(1.805); |
|
| 104 | - } |
|
| 105 | - |
|
| 106 | - // tables d'orthographe |
|
| 107 | - #if ($version_installee < 1.806) |
|
| 108 | - # maj_version(1.806); |
|
| 109 | - |
|
| 110 | - // URLs propres (inc_version = 0.12) |
|
| 111 | - if (upgrade_vers(1.807, $version_installee, $version_cible)) { |
|
| 112 | - foreach (array('articles', 'breves', 'rubriques', 'mots') as $objets) { |
|
| 113 | - sql_query("ALTER TABLE spip_$objets ADD url_propre VARCHAR(255) NOT NULL"); |
|
| 114 | - sql_query("ALTER TABLE spip_$objets ADD INDEX url_propre (url_propre)"); |
|
| 115 | - } |
|
| 116 | - maj_version(1.807); |
|
| 117 | - } |
|
| 118 | - |
|
| 119 | - // referers de la veille |
|
| 120 | - if (upgrade_vers(1.808, $version_installee, $version_cible)) { |
|
| 121 | - sql_query("ALTER TABLE spip_referers ADD visites_veille INT UNSIGNED NOT NULL"); |
|
| 122 | - maj_version(1.808); |
|
| 123 | - } |
|
| 124 | - |
|
| 125 | - |
|
| 126 | - // corrections diverses |
|
| 127 | - if (upgrade_vers(1.809, $version_installee, $version_cible)) { |
|
| 128 | - // plus de retour possible vers 1.7.2 |
|
| 129 | - sql_query("DROP TABLE spip_forum_cache"); |
|
| 130 | - |
|
| 131 | - // les requetes ci-dessous ne s'appliqueront que si on est passe |
|
| 132 | - // par une certaine version de developpement - oublie de le faire |
|
| 133 | - // plus tot, car le code d'alors recreait purement et simplement |
|
| 134 | - // cette table |
|
| 135 | - sql_query("ALTER TABLE spip_versions DROP chapo"); |
|
| 136 | - sql_query("ALTER TABLE spip_versions DROP texte"); |
|
| 137 | - sql_query("ALTER TABLE spip_versions DROP ps"); |
|
| 138 | - sql_query("ALTER TABLE spip_versions DROP extra"); |
|
| 139 | - sql_query("ALTER TABLE spip_versions ADD champs text NOT NULL"); |
|
| 140 | - |
|
| 141 | - maj_version(1.809); |
|
| 142 | - } |
|
| 143 | - |
|
| 144 | - // Annuler les brouillons de forum jamais valides |
|
| 145 | - if (upgrade_vers(1.810, $version_installee, $version_cible)) { |
|
| 146 | - sql_delete("spip_forum", "statut='redac'"); |
|
| 147 | - maj_version(1.810); |
|
| 148 | - } |
|
| 149 | - |
|
| 150 | - if (upgrade_vers(1.811, $version_installee, $version_cible)) { |
|
| 151 | - sql_query("ALTER TABLE spip_syndic ADD extra longblob NULL"); |
|
| 152 | - maj_version(1.811); |
|
| 153 | - } |
|
| 154 | - |
|
| 155 | - if (upgrade_vers(1.812, $version_installee, $version_cible)) { |
|
| 156 | - sql_query("ALTER TABLE spip_documents ADD idx ENUM('', '1', 'non', 'oui', 'idx') DEFAULT '' NOT NULL"); |
|
| 157 | - maj_version(1.812); |
|
| 158 | - } |
|
| 159 | - |
|
| 160 | - // Mise a jour des types MIME |
|
| 161 | - if (upgrade_vers(1.813, $version_installee, $version_cible)) { |
|
| 162 | - # rien a faire car c'est creer_base() qui s'en charge |
|
| 163 | - maj_version(1.813); |
|
| 164 | - } |
|
| 165 | - |
|
| 166 | - // URLs propres auteurs |
|
| 167 | - if (upgrade_vers(1.814, $version_installee, $version_cible)) { |
|
| 168 | - sql_query("ALTER TABLE spip_auteurs ADD url_propre VARCHAR(255) NOT NULL"); |
|
| 169 | - sql_query("ALTER TABLE spip_auteurs ADD INDEX url_propre (url_propre)"); |
|
| 170 | - maj_version(1.814); |
|
| 171 | - } |
|
| 172 | - |
|
| 173 | - // Mots-cles sur les documents |
|
| 174 | - // + liens documents <-> sites et articles syndiques (podcasting) |
|
| 175 | - if (upgrade_vers(1.815, $version_installee, $version_cible)) { |
|
| 176 | - sql_query("ALTER TABLE spip_documents ADD distant VARCHAR(3) DEFAULT 'non'"); |
|
| 177 | - maj_version(1.815); |
|
| 178 | - } |
|
| 179 | - |
|
| 180 | - // Indexation des documents (rien a faire sauf reinstaller inc_auxbase) |
|
| 181 | - if (upgrade_vers(1.816, $version_installee, $version_cible)) { |
|
| 182 | - maj_version(1.816); |
|
| 183 | - } |
|
| 184 | - |
|
| 185 | - // Texte et descriptif des groupes de mots-cles |
|
| 186 | - if (upgrade_vers(1.817, $version_installee, $version_cible)) { |
|
| 187 | - sql_query("ALTER TABLE spip_groupes_mots ADD descriptif text NOT NULL AFTER titre"); |
|
| 188 | - sql_query("ALTER TABLE spip_groupes_mots ADD COLUMN texte longblob NOT NULL AFTER descriptif"); |
|
| 189 | - maj_version(1.817); |
|
| 190 | - } |
|
| 191 | - |
|
| 192 | - // Conformite des noms de certains champs (0minirezo => minirezo) |
|
| 193 | - if (upgrade_vers(1.818, $version_installee, $version_cible)) { |
|
| 194 | - sql_query("ALTER TABLE spip_groupes_mots CHANGE COLUMN 0minirezo minirezo char(3) NOT NULL"); |
|
| 195 | - sql_query("ALTER TABLE spip_groupes_mots CHANGE COLUMN 1comite comite char(3) NOT NULL"); |
|
| 196 | - sql_query("ALTER TABLE spip_groupes_mots CHANGE COLUMN 6forum forum char(3) NOT NULL"); |
|
| 197 | - maj_version(1.818); |
|
| 198 | - } |
|
| 199 | - |
|
| 200 | - // Options de syndication : miroir + oubli |
|
| 201 | - if (upgrade_vers(1.819, $version_installee, $version_cible)) { |
|
| 202 | - sql_query("ALTER TABLE spip_syndic ADD miroir VARCHAR(3) DEFAULT 'non'"); |
|
| 203 | - sql_query("ALTER TABLE spip_syndic ADD oubli VARCHAR(3) DEFAULT 'non'"); |
|
| 204 | - maj_version(1.819); |
|
| 205 | - } |
|
| 206 | - |
|
| 207 | - // Un bug dans les 1.730 (il manquait le "ADD") |
|
| 208 | - if (upgrade_vers(1.820, $version_installee, $version_cible)) { |
|
| 209 | - sql_query("ALTER TABLE spip_articles ADD INDEX idx (idx)"); |
|
| 210 | - sql_query("ALTER TABLE spip_auteurs ADD INDEX idx (idx)"); |
|
| 211 | - sql_query("ALTER TABLE spip_breves ADD INDEX idx (idx)"); |
|
| 212 | - sql_query("ALTER TABLE spip_mots ADD INDEX idx (idx)"); |
|
| 213 | - sql_query("ALTER TABLE spip_rubriques ADD INDEX idx (idx)"); |
|
| 214 | - sql_query("ALTER TABLE spip_syndic ADD INDEX idx (idx)"); |
|
| 215 | - sql_query("ALTER TABLE spip_forum ADD INDEX idx (idx)"); |
|
| 216 | - sql_query("ALTER TABLE spip_signatures ADD INDEX idx (idx)"); |
|
| 217 | - maj_version(1.820); |
|
| 218 | - } |
|
| 219 | - |
|
| 220 | - // reindexer les articles (on avait oublie les auteurs) |
|
| 221 | - if (upgrade_vers(1.821, $version_installee, $version_cible)) { |
|
| 222 | - sql_query("UPDATE spip_articles SET idx='1' WHERE idx='oui'"); |
|
| 223 | - maj_version(1.821); |
|
| 224 | - } |
|
| 225 | - // le 'type' des mots doit etre du texte, sinon on depasse en champ multi |
|
| 226 | - if (upgrade_vers(1.822, $version_installee, $version_cible)) { |
|
| 227 | - sql_query("ALTER TABLE spip_mots DROP INDEX type"); |
|
| 228 | - sql_query("ALTER TABLE spip_mots CHANGE type type TEXT NOT NULL"); |
|
| 229 | - maj_version(1.822); |
|
| 230 | - } |
|
| 231 | - // ajouter une table de fonctions pour ajax |
|
| 232 | - if (upgrade_vers(1.825, $version_installee, $version_cible)) { |
|
| 233 | - maj_version(1.825); |
|
| 234 | - } |
|
| 235 | - if (upgrade_vers(1.826, $version_installee, $version_cible)) { |
|
| 236 | - sql_query("ALTER TABLE spip_ajax_fonc DROP fonction"); |
|
| 237 | - maj_version(1.826); |
|
| 238 | - } |
|
| 29 | + if (upgrade_vers(1.801, $version_installee, $version_cible)) { |
|
| 30 | + sql_query("ALTER TABLE spip_rubriques ADD statut_tmp VARCHAR(10) NOT NULL, ADD date_tmp datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"); |
|
| 31 | + include_spip('inc/rubriques'); |
|
| 32 | + calculer_rubriques(); |
|
| 33 | + maj_version(1.801); |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + // Nouvelles tables d'invalidation |
|
| 37 | + if (upgrade_vers(1.802, $version_installee, $version_cible)) { |
|
| 38 | + sql_query("DROP TABLE spip_id_article_caches"); |
|
| 39 | + sql_query("DROP TABLE spip_id_auteur_caches"); |
|
| 40 | + sql_query("DROP TABLE spip_id_breve_caches"); |
|
| 41 | + sql_query("DROP TABLE spip_id_document_caches"); |
|
| 42 | + sql_query("DROP TABLE spip_id_forum_caches"); |
|
| 43 | + sql_query("DROP TABLE spip_id_groupe_caches"); |
|
| 44 | + sql_query("DROP TABLE spip_id_message_caches"); |
|
| 45 | + sql_query("DROP TABLE spip_id_mot_caches"); |
|
| 46 | + sql_query("DROP TABLE spip_id_rubrique_caches"); |
|
| 47 | + sql_query("DROP TABLE spip_id_signature_caches"); |
|
| 48 | + sql_query("DROP TABLE spip_id_syndic_article_caches"); |
|
| 49 | + sql_query("DROP TABLE spip_id_syndic_caches"); |
|
| 50 | + sql_query("DROP TABLE spip_id_type_caches"); |
|
| 51 | + sql_query("DROP TABLE spip_inclure_caches"); |
|
| 52 | + maj_version(1.802); |
|
| 53 | + } |
|
| 54 | + if (upgrade_vers(1.803, $version_installee, $version_cible)) { |
|
| 55 | + |
|
| 56 | + # 27 AOUT 2004 : conservons cette table pour autoriser les retours |
|
| 57 | + # de SPIP 1.8a6 CVS vers 1.7.2 |
|
| 58 | + # sql_query("DROP TABLE spip_forum_cache"); |
|
| 59 | + |
|
| 60 | + sql_query("DROP TABLE spip_inclure_caches"); |
|
| 61 | + maj_version(1.803); |
|
| 62 | + } |
|
| 63 | + if (upgrade_vers(1.804, $version_installee, $version_cible)) { |
|
| 64 | + // recreer la table spip_caches |
|
| 65 | + sql_query("DROP TABLE spip_caches"); |
|
| 66 | + creer_base(); |
|
| 67 | + maj_version(1.804); |
|
| 68 | + } |
|
| 69 | + |
|
| 70 | + /** |
|
| 71 | + * Recalculer tous les threads |
|
| 72 | + * |
|
| 73 | + * Fonction du plugin forum recopiee ici pour assurer la montee |
|
| 74 | + * de version dans tous les cas de figure |
|
| 75 | + **/ |
|
| 76 | + function maj_v018_calculer_threads() { |
|
| 77 | + // fixer les id_thread des debuts de discussion |
|
| 78 | + sql_update('spip_forum', array('id_thread' => 'id_forum'), "id_parent=0"); |
|
| 79 | + // reparer les messages qui n'ont pas l'id_secteur de leur parent |
|
| 80 | + do { |
|
| 81 | + $discussion = "0"; |
|
| 82 | + $precedent = 0; |
|
| 83 | + $r = sql_select("fille.id_forum AS id, maman.id_thread AS thread", 'spip_forum AS fille, spip_forum AS maman', |
|
| 84 | + "fille.id_parent = maman.id_forum AND fille.id_thread <> maman.id_thread", '', "thread"); |
|
| 85 | + while ($row = sql_fetch($r)) { |
|
| 86 | + if ($row['thread'] == $precedent) { |
|
| 87 | + $discussion .= "," . $row['id']; |
|
| 88 | + } else { |
|
| 89 | + if ($precedent) { |
|
| 90 | + sql_updateq("spip_forum", array("id_thread" => $precedent), "id_forum IN ($discussion)"); |
|
| 91 | + } |
|
| 92 | + $precedent = $row['thread']; |
|
| 93 | + $discussion = $row['id']; |
|
| 94 | + } |
|
| 95 | + } |
|
| 96 | + sql_updateq("spip_forum", array("id_thread" => $precedent), "id_forum IN ($discussion)"); |
|
| 97 | + } while ($discussion != "0"); |
|
| 98 | + } |
|
| 99 | + |
|
| 100 | + if (upgrade_vers(1.805, $version_installee, $version_cible)) { |
|
| 101 | + sql_query("ALTER TABLE spip_forum ADD id_thread bigint(21) DEFAULT '0' NOT NULL"); |
|
| 102 | + maj_v018_calculer_threads(); |
|
| 103 | + maj_version(1.805); |
|
| 104 | + } |
|
| 105 | + |
|
| 106 | + // tables d'orthographe |
|
| 107 | + #if ($version_installee < 1.806) |
|
| 108 | + # maj_version(1.806); |
|
| 109 | + |
|
| 110 | + // URLs propres (inc_version = 0.12) |
|
| 111 | + if (upgrade_vers(1.807, $version_installee, $version_cible)) { |
|
| 112 | + foreach (array('articles', 'breves', 'rubriques', 'mots') as $objets) { |
|
| 113 | + sql_query("ALTER TABLE spip_$objets ADD url_propre VARCHAR(255) NOT NULL"); |
|
| 114 | + sql_query("ALTER TABLE spip_$objets ADD INDEX url_propre (url_propre)"); |
|
| 115 | + } |
|
| 116 | + maj_version(1.807); |
|
| 117 | + } |
|
| 118 | + |
|
| 119 | + // referers de la veille |
|
| 120 | + if (upgrade_vers(1.808, $version_installee, $version_cible)) { |
|
| 121 | + sql_query("ALTER TABLE spip_referers ADD visites_veille INT UNSIGNED NOT NULL"); |
|
| 122 | + maj_version(1.808); |
|
| 123 | + } |
|
| 124 | + |
|
| 125 | + |
|
| 126 | + // corrections diverses |
|
| 127 | + if (upgrade_vers(1.809, $version_installee, $version_cible)) { |
|
| 128 | + // plus de retour possible vers 1.7.2 |
|
| 129 | + sql_query("DROP TABLE spip_forum_cache"); |
|
| 130 | + |
|
| 131 | + // les requetes ci-dessous ne s'appliqueront que si on est passe |
|
| 132 | + // par une certaine version de developpement - oublie de le faire |
|
| 133 | + // plus tot, car le code d'alors recreait purement et simplement |
|
| 134 | + // cette table |
|
| 135 | + sql_query("ALTER TABLE spip_versions DROP chapo"); |
|
| 136 | + sql_query("ALTER TABLE spip_versions DROP texte"); |
|
| 137 | + sql_query("ALTER TABLE spip_versions DROP ps"); |
|
| 138 | + sql_query("ALTER TABLE spip_versions DROP extra"); |
|
| 139 | + sql_query("ALTER TABLE spip_versions ADD champs text NOT NULL"); |
|
| 140 | + |
|
| 141 | + maj_version(1.809); |
|
| 142 | + } |
|
| 143 | + |
|
| 144 | + // Annuler les brouillons de forum jamais valides |
|
| 145 | + if (upgrade_vers(1.810, $version_installee, $version_cible)) { |
|
| 146 | + sql_delete("spip_forum", "statut='redac'"); |
|
| 147 | + maj_version(1.810); |
|
| 148 | + } |
|
| 149 | + |
|
| 150 | + if (upgrade_vers(1.811, $version_installee, $version_cible)) { |
|
| 151 | + sql_query("ALTER TABLE spip_syndic ADD extra longblob NULL"); |
|
| 152 | + maj_version(1.811); |
|
| 153 | + } |
|
| 154 | + |
|
| 155 | + if (upgrade_vers(1.812, $version_installee, $version_cible)) { |
|
| 156 | + sql_query("ALTER TABLE spip_documents ADD idx ENUM('', '1', 'non', 'oui', 'idx') DEFAULT '' NOT NULL"); |
|
| 157 | + maj_version(1.812); |
|
| 158 | + } |
|
| 159 | + |
|
| 160 | + // Mise a jour des types MIME |
|
| 161 | + if (upgrade_vers(1.813, $version_installee, $version_cible)) { |
|
| 162 | + # rien a faire car c'est creer_base() qui s'en charge |
|
| 163 | + maj_version(1.813); |
|
| 164 | + } |
|
| 165 | + |
|
| 166 | + // URLs propres auteurs |
|
| 167 | + if (upgrade_vers(1.814, $version_installee, $version_cible)) { |
|
| 168 | + sql_query("ALTER TABLE spip_auteurs ADD url_propre VARCHAR(255) NOT NULL"); |
|
| 169 | + sql_query("ALTER TABLE spip_auteurs ADD INDEX url_propre (url_propre)"); |
|
| 170 | + maj_version(1.814); |
|
| 171 | + } |
|
| 172 | + |
|
| 173 | + // Mots-cles sur les documents |
|
| 174 | + // + liens documents <-> sites et articles syndiques (podcasting) |
|
| 175 | + if (upgrade_vers(1.815, $version_installee, $version_cible)) { |
|
| 176 | + sql_query("ALTER TABLE spip_documents ADD distant VARCHAR(3) DEFAULT 'non'"); |
|
| 177 | + maj_version(1.815); |
|
| 178 | + } |
|
| 179 | + |
|
| 180 | + // Indexation des documents (rien a faire sauf reinstaller inc_auxbase) |
|
| 181 | + if (upgrade_vers(1.816, $version_installee, $version_cible)) { |
|
| 182 | + maj_version(1.816); |
|
| 183 | + } |
|
| 184 | + |
|
| 185 | + // Texte et descriptif des groupes de mots-cles |
|
| 186 | + if (upgrade_vers(1.817, $version_installee, $version_cible)) { |
|
| 187 | + sql_query("ALTER TABLE spip_groupes_mots ADD descriptif text NOT NULL AFTER titre"); |
|
| 188 | + sql_query("ALTER TABLE spip_groupes_mots ADD COLUMN texte longblob NOT NULL AFTER descriptif"); |
|
| 189 | + maj_version(1.817); |
|
| 190 | + } |
|
| 191 | + |
|
| 192 | + // Conformite des noms de certains champs (0minirezo => minirezo) |
|
| 193 | + if (upgrade_vers(1.818, $version_installee, $version_cible)) { |
|
| 194 | + sql_query("ALTER TABLE spip_groupes_mots CHANGE COLUMN 0minirezo minirezo char(3) NOT NULL"); |
|
| 195 | + sql_query("ALTER TABLE spip_groupes_mots CHANGE COLUMN 1comite comite char(3) NOT NULL"); |
|
| 196 | + sql_query("ALTER TABLE spip_groupes_mots CHANGE COLUMN 6forum forum char(3) NOT NULL"); |
|
| 197 | + maj_version(1.818); |
|
| 198 | + } |
|
| 199 | + |
|
| 200 | + // Options de syndication : miroir + oubli |
|
| 201 | + if (upgrade_vers(1.819, $version_installee, $version_cible)) { |
|
| 202 | + sql_query("ALTER TABLE spip_syndic ADD miroir VARCHAR(3) DEFAULT 'non'"); |
|
| 203 | + sql_query("ALTER TABLE spip_syndic ADD oubli VARCHAR(3) DEFAULT 'non'"); |
|
| 204 | + maj_version(1.819); |
|
| 205 | + } |
|
| 206 | + |
|
| 207 | + // Un bug dans les 1.730 (il manquait le "ADD") |
|
| 208 | + if (upgrade_vers(1.820, $version_installee, $version_cible)) { |
|
| 209 | + sql_query("ALTER TABLE spip_articles ADD INDEX idx (idx)"); |
|
| 210 | + sql_query("ALTER TABLE spip_auteurs ADD INDEX idx (idx)"); |
|
| 211 | + sql_query("ALTER TABLE spip_breves ADD INDEX idx (idx)"); |
|
| 212 | + sql_query("ALTER TABLE spip_mots ADD INDEX idx (idx)"); |
|
| 213 | + sql_query("ALTER TABLE spip_rubriques ADD INDEX idx (idx)"); |
|
| 214 | + sql_query("ALTER TABLE spip_syndic ADD INDEX idx (idx)"); |
|
| 215 | + sql_query("ALTER TABLE spip_forum ADD INDEX idx (idx)"); |
|
| 216 | + sql_query("ALTER TABLE spip_signatures ADD INDEX idx (idx)"); |
|
| 217 | + maj_version(1.820); |
|
| 218 | + } |
|
| 219 | + |
|
| 220 | + // reindexer les articles (on avait oublie les auteurs) |
|
| 221 | + if (upgrade_vers(1.821, $version_installee, $version_cible)) { |
|
| 222 | + sql_query("UPDATE spip_articles SET idx='1' WHERE idx='oui'"); |
|
| 223 | + maj_version(1.821); |
|
| 224 | + } |
|
| 225 | + // le 'type' des mots doit etre du texte, sinon on depasse en champ multi |
|
| 226 | + if (upgrade_vers(1.822, $version_installee, $version_cible)) { |
|
| 227 | + sql_query("ALTER TABLE spip_mots DROP INDEX type"); |
|
| 228 | + sql_query("ALTER TABLE spip_mots CHANGE type type TEXT NOT NULL"); |
|
| 229 | + maj_version(1.822); |
|
| 230 | + } |
|
| 231 | + // ajouter une table de fonctions pour ajax |
|
| 232 | + if (upgrade_vers(1.825, $version_installee, $version_cible)) { |
|
| 233 | + maj_version(1.825); |
|
| 234 | + } |
|
| 235 | + if (upgrade_vers(1.826, $version_installee, $version_cible)) { |
|
| 236 | + sql_query("ALTER TABLE spip_ajax_fonc DROP fonction"); |
|
| 237 | + maj_version(1.826); |
|
| 238 | + } |
|
| 239 | 239 | } |
@@ -17,7 +17,7 @@ discard block |
||
| 17 | 17 | **/ |
| 18 | 18 | |
| 19 | 19 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 20 | - return; |
|
| 20 | + return; |
|
| 21 | 21 | } |
| 22 | 22 | |
| 23 | 23 | /** |
@@ -28,29 +28,29 @@ discard block |
||
| 28 | 28 | **/ |
| 29 | 29 | function maj_legacy_v010_dist($version_installee, $version_cible) { |
| 30 | 30 | |
| 31 | - if (upgrade_vers(1.01, $version_installee, $version_cible)) { |
|
| 32 | - sql_query("UPDATE spip_forum SET statut='publie' WHERE statut=''"); |
|
| 33 | - maj_version(1.01); |
|
| 34 | - } |
|
| 35 | - |
|
| 36 | - if (upgrade_vers(1.02, $version_installee, $version_cible)) { |
|
| 37 | - sql_query("ALTER TABLE spip_forum ADD id_auteur BIGINT DEFAULT '0' NOT NULL"); |
|
| 38 | - maj_version(1.02); |
|
| 39 | - } |
|
| 40 | - |
|
| 41 | - if (upgrade_vers(1.03, $version_installee, $version_cible)) { |
|
| 42 | - sql_query("DROP TABLE spip_maj"); |
|
| 43 | - maj_version(1.03); |
|
| 44 | - } |
|
| 45 | - |
|
| 46 | - if (upgrade_vers(1.04, $version_installee, $version_cible)) { |
|
| 47 | - sql_query("ALTER TABLE spip_articles ADD accepter_forum VARCHAR(3)"); |
|
| 48 | - maj_version(1.04); |
|
| 49 | - } |
|
| 50 | - |
|
| 51 | - if (upgrade_vers(1.05, $version_installee, $version_cible)) { |
|
| 52 | - sql_query("DROP TABLE spip_petition"); |
|
| 53 | - sql_query("DROP TABLE spip_signatures_petition"); |
|
| 54 | - maj_version(1.05); |
|
| 55 | - } |
|
| 31 | + if (upgrade_vers(1.01, $version_installee, $version_cible)) { |
|
| 32 | + sql_query("UPDATE spip_forum SET statut='publie' WHERE statut=''"); |
|
| 33 | + maj_version(1.01); |
|
| 34 | + } |
|
| 35 | + |
|
| 36 | + if (upgrade_vers(1.02, $version_installee, $version_cible)) { |
|
| 37 | + sql_query("ALTER TABLE spip_forum ADD id_auteur BIGINT DEFAULT '0' NOT NULL"); |
|
| 38 | + maj_version(1.02); |
|
| 39 | + } |
|
| 40 | + |
|
| 41 | + if (upgrade_vers(1.03, $version_installee, $version_cible)) { |
|
| 42 | + sql_query("DROP TABLE spip_maj"); |
|
| 43 | + maj_version(1.03); |
|
| 44 | + } |
|
| 45 | + |
|
| 46 | + if (upgrade_vers(1.04, $version_installee, $version_cible)) { |
|
| 47 | + sql_query("ALTER TABLE spip_articles ADD accepter_forum VARCHAR(3)"); |
|
| 48 | + maj_version(1.04); |
|
| 49 | + } |
|
| 50 | + |
|
| 51 | + if (upgrade_vers(1.05, $version_installee, $version_cible)) { |
|
| 52 | + sql_query("DROP TABLE spip_petition"); |
|
| 53 | + sql_query("DROP TABLE spip_signatures_petition"); |
|
| 54 | + maj_version(1.05); |
|
| 55 | + } |
|
| 56 | 56 | } |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | * @package SPIP\Core\SQL\Upgrade |
| 17 | 17 | **/ |
| 18 | 18 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 19 | - return; |
|
| 19 | + return; |
|
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /** |
@@ -27,37 +27,37 @@ discard block |
||
| 27 | 27 | **/ |
| 28 | 28 | function maj_legacy_v016_dist($version_installee, $version_cible) { |
| 29 | 29 | |
| 30 | - if (upgrade_vers(1.600, $version_installee, $version_cible)) { |
|
| 30 | + if (upgrade_vers(1.600, $version_installee, $version_cible)) { |
|
| 31 | 31 | #8/08/07 plus d'indexation dans le core |
| 32 | 32 | # include_spip('inc/indexation'); |
| 33 | 33 | # purger_index(); |
| 34 | 34 | # creer_liste_indexation(); |
| 35 | - maj_version(1.600); |
|
| 36 | - } |
|
| 35 | + maj_version(1.600); |
|
| 36 | + } |
|
| 37 | 37 | |
| 38 | - if (upgrade_vers(1.601, $version_installee, $version_cible)) { |
|
| 39 | - sql_query("ALTER TABLE spip_forum ADD INDEX id_syndic (id_syndic)"); |
|
| 40 | - maj_version(1.601); |
|
| 41 | - } |
|
| 38 | + if (upgrade_vers(1.601, $version_installee, $version_cible)) { |
|
| 39 | + sql_query("ALTER TABLE spip_forum ADD INDEX id_syndic (id_syndic)"); |
|
| 40 | + maj_version(1.601); |
|
| 41 | + } |
|
| 42 | 42 | |
| 43 | - if (upgrade_vers(1.603, $version_installee, $version_cible)) { |
|
| 44 | - // supprimer les fichiers deplaces |
|
| 45 | - spip_unlink('inc_meta_cache.php'); |
|
| 46 | - spip_unlink('inc_meta_cache.php3'); |
|
| 47 | - spip_unlink('data/engines-list.ini'); |
|
| 48 | - maj_version(1.603); |
|
| 49 | - } |
|
| 43 | + if (upgrade_vers(1.603, $version_installee, $version_cible)) { |
|
| 44 | + // supprimer les fichiers deplaces |
|
| 45 | + spip_unlink('inc_meta_cache.php'); |
|
| 46 | + spip_unlink('inc_meta_cache.php3'); |
|
| 47 | + spip_unlink('data/engines-list.ini'); |
|
| 48 | + maj_version(1.603); |
|
| 49 | + } |
|
| 50 | 50 | |
| 51 | - if (upgrade_vers(1.604, $version_installee, $version_cible)) { |
|
| 52 | - sql_query("ALTER TABLE spip_auteurs ADD lang VARCHAR(10) DEFAULT '' NOT NULL"); |
|
| 53 | - $u = sql_query("SELECT * FROM spip_auteurs WHERE prefs LIKE '%spip_lang%'"); |
|
| 54 | - while ($row = sql_fetch($u)) { |
|
| 55 | - $prefs = unserialize($row['prefs']); |
|
| 56 | - $l = $prefs['spip_lang']; |
|
| 57 | - unset($prefs['spip_lang']); |
|
| 58 | - sql_query("UPDATE spip_auteurs SET lang=" . sql_quote($l) . ", prefs='" . sql_quote(serialize($prefs)) . "' WHERE id_auteur=" . $row['id_auteur']); |
|
| 59 | - } |
|
| 60 | - $u = sql_query("SELECT lang FROM spip_auteurs"); |
|
| 61 | - maj_version(1.604, $u); |
|
| 62 | - } |
|
| 51 | + if (upgrade_vers(1.604, $version_installee, $version_cible)) { |
|
| 52 | + sql_query("ALTER TABLE spip_auteurs ADD lang VARCHAR(10) DEFAULT '' NOT NULL"); |
|
| 53 | + $u = sql_query("SELECT * FROM spip_auteurs WHERE prefs LIKE '%spip_lang%'"); |
|
| 54 | + while ($row = sql_fetch($u)) { |
|
| 55 | + $prefs = unserialize($row['prefs']); |
|
| 56 | + $l = $prefs['spip_lang']; |
|
| 57 | + unset($prefs['spip_lang']); |
|
| 58 | + sql_query("UPDATE spip_auteurs SET lang=" . sql_quote($l) . ", prefs='" . sql_quote(serialize($prefs)) . "' WHERE id_auteur=" . $row['id_auteur']); |
|
| 59 | + } |
|
| 60 | + $u = sql_query("SELECT lang FROM spip_auteurs"); |
|
| 61 | + maj_version(1.604, $u); |
|
| 62 | + } |
|
| 63 | 63 | } |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | * @package SPIP\Core\SQL\Upgrade |
| 17 | 17 | **/ |
| 18 | 18 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 19 | - return; |
|
| 19 | + return; |
|
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /** |
@@ -26,125 +26,125 @@ discard block |
||
| 26 | 26 | * @param float $version_cible Version de destination |
| 27 | 27 | **/ |
| 28 | 28 | function maj_legacy_v009_dist($version_installee, $version_cible) { |
| 29 | - if (upgrade_vers(0.98, $version_installee, $version_cible)) { |
|
| 30 | - |
|
| 31 | - sql_query("ALTER TABLE spip_articles ADD maj TIMESTAMP"); |
|
| 32 | - sql_query("ALTER TABLE spip_articles ADD export VARCHAR(10) DEFAULT 'oui'"); |
|
| 33 | - sql_query("ALTER TABLE spip_articles ADD images TEXT DEFAULT ''"); |
|
| 34 | - sql_query("ALTER TABLE spip_articles ADD date_redac datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"); |
|
| 35 | - sql_query("ALTER TABLE spip_articles DROP INDEX id_article"); |
|
| 36 | - sql_query("ALTER TABLE spip_articles ADD INDEX id_rubrique (id_rubrique)"); |
|
| 37 | - sql_query("ALTER TABLE spip_articles ADD visites INTEGER DEFAULT '0' NOT NULL"); |
|
| 38 | - sql_query("ALTER TABLE spip_articles ADD referers BLOB NOT NULL"); |
|
| 39 | - |
|
| 40 | - sql_query("ALTER TABLE spip_auteurs ADD maj TIMESTAMP"); |
|
| 41 | - sql_query("ALTER TABLE spip_auteurs ADD pgp BLOB NOT NULL"); |
|
| 42 | - |
|
| 43 | - sql_query("ALTER TABLE spip_auteurs_articles ADD INDEX id_auteur (id_auteur), ADD INDEX id_article (id_article)"); |
|
| 44 | - |
|
| 45 | - sql_query("ALTER TABLE spip_rubriques ADD maj TIMESTAMP"); |
|
| 46 | - sql_query("ALTER TABLE spip_rubriques ADD export VARCHAR(10) DEFAULT 'oui', ADD id_import BIGINT DEFAULT '0'"); |
|
| 47 | - |
|
| 48 | - sql_query("ALTER TABLE spip_breves ADD maj TIMESTAMP"); |
|
| 49 | - sql_query("ALTER TABLE spip_breves DROP INDEX id_breve"); |
|
| 50 | - sql_query("ALTER TABLE spip_breves DROP INDEX id_breve_2"); |
|
| 51 | - sql_query("ALTER TABLE spip_breves ADD INDEX id_rubrique (id_rubrique)"); |
|
| 52 | - |
|
| 53 | - sql_query("ALTER TABLE spip_forum ADD ip VARCHAR(16)"); |
|
| 54 | - sql_query("ALTER TABLE spip_forum ADD maj TIMESTAMP"); |
|
| 55 | - sql_query("ALTER TABLE spip_forum DROP INDEX id_forum"); |
|
| 56 | - sql_query("ALTER TABLE spip_forum ADD INDEX id_parent (id_parent), ADD INDEX id_rubrique (id_rubrique), ADD INDEX id_article(id_article), ADD INDEX id_breve(id_breve)"); |
|
| 57 | - maj_version(0.98); |
|
| 58 | - } |
|
| 59 | - |
|
| 60 | - if (upgrade_vers(0.99, $version_installee, $version_cible)) { |
|
| 61 | - |
|
| 62 | - $result = sql_query("SELECT DISTINCT id_article FROM spip_forum WHERE id_article!=0 AND id_parent=0"); |
|
| 63 | - |
|
| 64 | - while ($row = sql_fetch($result)) { |
|
| 65 | - unset($forums_article); |
|
| 66 | - $id_article = $row['id_article']; |
|
| 67 | - $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_article=$id_article"); |
|
| 68 | - for (; ;) { |
|
| 69 | - unset($forums); |
|
| 70 | - while ($row2 = sql_fetch($result2)) { |
|
| 71 | - $forums[] = $row2['id_forum']; |
|
| 72 | - } |
|
| 73 | - if (!$forums) { |
|
| 74 | - break; |
|
| 75 | - } |
|
| 76 | - $forums = join(',', $forums); |
|
| 77 | - $forums_article[] = $forums; |
|
| 78 | - $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_parent IN ($forums)"); |
|
| 79 | - } |
|
| 80 | - $forums_article = join(',', $forums_article); |
|
| 81 | - sql_query("UPDATE spip_forum SET id_article=$id_article WHERE id_forum IN ($forums_article)"); |
|
| 82 | - } |
|
| 83 | - |
|
| 84 | - $result = sql_query("SELECT DISTINCT id_breve FROM spip_forum WHERE id_breve!=0 AND id_parent=0"); |
|
| 85 | - |
|
| 86 | - while ($row = sql_fetch($result)) { |
|
| 87 | - unset($forums_breve); |
|
| 88 | - $id_breve = $row['id_breve']; |
|
| 89 | - $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_breve=$id_breve"); |
|
| 90 | - for (; ;) { |
|
| 91 | - unset($forums); |
|
| 92 | - while ($row2 = sql_fetch($result2)) { |
|
| 93 | - $forums[] = $row2['id_forum']; |
|
| 94 | - } |
|
| 95 | - if (!$forums) { |
|
| 96 | - break; |
|
| 97 | - } |
|
| 98 | - $forums = join(',', $forums); |
|
| 99 | - $forums_breve[] = $forums; |
|
| 100 | - $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_parent IN ($forums)"); |
|
| 101 | - } |
|
| 102 | - $forums_breve = join(',', $forums_breve); |
|
| 103 | - sql_query("UPDATE spip_forum SET id_breve=$id_breve WHERE id_forum IN ($forums_breve)"); |
|
| 104 | - } |
|
| 105 | - |
|
| 106 | - $result = sql_query("SELECT DISTINCT id_rubrique FROM spip_forum WHERE id_rubrique!=0 AND id_parent=0"); |
|
| 107 | - |
|
| 108 | - while ($row = sql_fetch($result)) { |
|
| 109 | - unset($forums_rubrique); |
|
| 110 | - $id_rubrique = $row['id_rubrique']; |
|
| 111 | - $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_rubrique=$id_rubrique"); |
|
| 112 | - for (; ;) { |
|
| 113 | - |
|
| 114 | - unset($forums); |
|
| 115 | - while ($row2 = sql_fetch($result2)) { |
|
| 116 | - $forums[] = $row2['id_forum']; |
|
| 117 | - } |
|
| 118 | - if (!$forums) { |
|
| 119 | - break; |
|
| 120 | - } |
|
| 121 | - $forums = join(',', $forums); |
|
| 122 | - $forums_rubrique[] = $forums; |
|
| 123 | - $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_parent IN ($forums)"); |
|
| 124 | - } |
|
| 125 | - $forums_rubrique = join(',', $forums_rubrique); |
|
| 126 | - sql_query("UPDATE spip_forum SET id_rubrique=$id_rubrique WHERE id_forum IN ($forums_rubrique)"); |
|
| 127 | - |
|
| 128 | - } |
|
| 129 | - maj_version(0.99); |
|
| 130 | - } |
|
| 131 | - |
|
| 132 | - if (upgrade_vers(0.997, $version_installee, $version_cible)) { |
|
| 133 | - sql_query("DROP TABLE spip_index"); |
|
| 134 | - maj_version(0.997); |
|
| 135 | - } |
|
| 136 | - |
|
| 137 | - if (upgrade_vers(0.999, $version_installee, $version_cible)) { |
|
| 138 | - |
|
| 139 | - sql_query("ALTER TABLE spip_auteurs CHANGE pass pass tinyblob NOT NULL"); |
|
| 140 | - sql_query("ALTER TABLE spip_auteurs ADD htpass tinyblob NOT NULL"); |
|
| 141 | - $result = sql_query("SELECT id_auteur, pass FROM spip_auteurs WHERE pass!=''"); |
|
| 142 | - |
|
| 143 | - while ($r = sql_fetch($result)) { |
|
| 144 | - $htpass = generer_htpass($r['pass']); |
|
| 145 | - $pass = md5($pass); |
|
| 146 | - sql_query("UPDATE spip_auteurs SET pass='$pass', htpass='$htpass' WHERE id_auteur=" . $r['id_auteur']); |
|
| 147 | - } |
|
| 148 | - maj_version(0.999); |
|
| 149 | - } |
|
| 29 | + if (upgrade_vers(0.98, $version_installee, $version_cible)) { |
|
| 30 | + |
|
| 31 | + sql_query("ALTER TABLE spip_articles ADD maj TIMESTAMP"); |
|
| 32 | + sql_query("ALTER TABLE spip_articles ADD export VARCHAR(10) DEFAULT 'oui'"); |
|
| 33 | + sql_query("ALTER TABLE spip_articles ADD images TEXT DEFAULT ''"); |
|
| 34 | + sql_query("ALTER TABLE spip_articles ADD date_redac datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"); |
|
| 35 | + sql_query("ALTER TABLE spip_articles DROP INDEX id_article"); |
|
| 36 | + sql_query("ALTER TABLE spip_articles ADD INDEX id_rubrique (id_rubrique)"); |
|
| 37 | + sql_query("ALTER TABLE spip_articles ADD visites INTEGER DEFAULT '0' NOT NULL"); |
|
| 38 | + sql_query("ALTER TABLE spip_articles ADD referers BLOB NOT NULL"); |
|
| 39 | + |
|
| 40 | + sql_query("ALTER TABLE spip_auteurs ADD maj TIMESTAMP"); |
|
| 41 | + sql_query("ALTER TABLE spip_auteurs ADD pgp BLOB NOT NULL"); |
|
| 42 | + |
|
| 43 | + sql_query("ALTER TABLE spip_auteurs_articles ADD INDEX id_auteur (id_auteur), ADD INDEX id_article (id_article)"); |
|
| 44 | + |
|
| 45 | + sql_query("ALTER TABLE spip_rubriques ADD maj TIMESTAMP"); |
|
| 46 | + sql_query("ALTER TABLE spip_rubriques ADD export VARCHAR(10) DEFAULT 'oui', ADD id_import BIGINT DEFAULT '0'"); |
|
| 47 | + |
|
| 48 | + sql_query("ALTER TABLE spip_breves ADD maj TIMESTAMP"); |
|
| 49 | + sql_query("ALTER TABLE spip_breves DROP INDEX id_breve"); |
|
| 50 | + sql_query("ALTER TABLE spip_breves DROP INDEX id_breve_2"); |
|
| 51 | + sql_query("ALTER TABLE spip_breves ADD INDEX id_rubrique (id_rubrique)"); |
|
| 52 | + |
|
| 53 | + sql_query("ALTER TABLE spip_forum ADD ip VARCHAR(16)"); |
|
| 54 | + sql_query("ALTER TABLE spip_forum ADD maj TIMESTAMP"); |
|
| 55 | + sql_query("ALTER TABLE spip_forum DROP INDEX id_forum"); |
|
| 56 | + sql_query("ALTER TABLE spip_forum ADD INDEX id_parent (id_parent), ADD INDEX id_rubrique (id_rubrique), ADD INDEX id_article(id_article), ADD INDEX id_breve(id_breve)"); |
|
| 57 | + maj_version(0.98); |
|
| 58 | + } |
|
| 59 | + |
|
| 60 | + if (upgrade_vers(0.99, $version_installee, $version_cible)) { |
|
| 61 | + |
|
| 62 | + $result = sql_query("SELECT DISTINCT id_article FROM spip_forum WHERE id_article!=0 AND id_parent=0"); |
|
| 63 | + |
|
| 64 | + while ($row = sql_fetch($result)) { |
|
| 65 | + unset($forums_article); |
|
| 66 | + $id_article = $row['id_article']; |
|
| 67 | + $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_article=$id_article"); |
|
| 68 | + for (; ;) { |
|
| 69 | + unset($forums); |
|
| 70 | + while ($row2 = sql_fetch($result2)) { |
|
| 71 | + $forums[] = $row2['id_forum']; |
|
| 72 | + } |
|
| 73 | + if (!$forums) { |
|
| 74 | + break; |
|
| 75 | + } |
|
| 76 | + $forums = join(',', $forums); |
|
| 77 | + $forums_article[] = $forums; |
|
| 78 | + $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_parent IN ($forums)"); |
|
| 79 | + } |
|
| 80 | + $forums_article = join(',', $forums_article); |
|
| 81 | + sql_query("UPDATE spip_forum SET id_article=$id_article WHERE id_forum IN ($forums_article)"); |
|
| 82 | + } |
|
| 83 | + |
|
| 84 | + $result = sql_query("SELECT DISTINCT id_breve FROM spip_forum WHERE id_breve!=0 AND id_parent=0"); |
|
| 85 | + |
|
| 86 | + while ($row = sql_fetch($result)) { |
|
| 87 | + unset($forums_breve); |
|
| 88 | + $id_breve = $row['id_breve']; |
|
| 89 | + $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_breve=$id_breve"); |
|
| 90 | + for (; ;) { |
|
| 91 | + unset($forums); |
|
| 92 | + while ($row2 = sql_fetch($result2)) { |
|
| 93 | + $forums[] = $row2['id_forum']; |
|
| 94 | + } |
|
| 95 | + if (!$forums) { |
|
| 96 | + break; |
|
| 97 | + } |
|
| 98 | + $forums = join(',', $forums); |
|
| 99 | + $forums_breve[] = $forums; |
|
| 100 | + $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_parent IN ($forums)"); |
|
| 101 | + } |
|
| 102 | + $forums_breve = join(',', $forums_breve); |
|
| 103 | + sql_query("UPDATE spip_forum SET id_breve=$id_breve WHERE id_forum IN ($forums_breve)"); |
|
| 104 | + } |
|
| 105 | + |
|
| 106 | + $result = sql_query("SELECT DISTINCT id_rubrique FROM spip_forum WHERE id_rubrique!=0 AND id_parent=0"); |
|
| 107 | + |
|
| 108 | + while ($row = sql_fetch($result)) { |
|
| 109 | + unset($forums_rubrique); |
|
| 110 | + $id_rubrique = $row['id_rubrique']; |
|
| 111 | + $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_rubrique=$id_rubrique"); |
|
| 112 | + for (; ;) { |
|
| 113 | + |
|
| 114 | + unset($forums); |
|
| 115 | + while ($row2 = sql_fetch($result2)) { |
|
| 116 | + $forums[] = $row2['id_forum']; |
|
| 117 | + } |
|
| 118 | + if (!$forums) { |
|
| 119 | + break; |
|
| 120 | + } |
|
| 121 | + $forums = join(',', $forums); |
|
| 122 | + $forums_rubrique[] = $forums; |
|
| 123 | + $result2 = sql_query("SELECT id_forum FROM spip_forum WHERE id_parent IN ($forums)"); |
|
| 124 | + } |
|
| 125 | + $forums_rubrique = join(',', $forums_rubrique); |
|
| 126 | + sql_query("UPDATE spip_forum SET id_rubrique=$id_rubrique WHERE id_forum IN ($forums_rubrique)"); |
|
| 127 | + |
|
| 128 | + } |
|
| 129 | + maj_version(0.99); |
|
| 130 | + } |
|
| 131 | + |
|
| 132 | + if (upgrade_vers(0.997, $version_installee, $version_cible)) { |
|
| 133 | + sql_query("DROP TABLE spip_index"); |
|
| 134 | + maj_version(0.997); |
|
| 135 | + } |
|
| 136 | + |
|
| 137 | + if (upgrade_vers(0.999, $version_installee, $version_cible)) { |
|
| 138 | + |
|
| 139 | + sql_query("ALTER TABLE spip_auteurs CHANGE pass pass tinyblob NOT NULL"); |
|
| 140 | + sql_query("ALTER TABLE spip_auteurs ADD htpass tinyblob NOT NULL"); |
|
| 141 | + $result = sql_query("SELECT id_auteur, pass FROM spip_auteurs WHERE pass!=''"); |
|
| 142 | + |
|
| 143 | + while ($r = sql_fetch($result)) { |
|
| 144 | + $htpass = generer_htpass($r['pass']); |
|
| 145 | + $pass = md5($pass); |
|
| 146 | + sql_query("UPDATE spip_auteurs SET pass='$pass', htpass='$htpass' WHERE id_auteur=" . $r['id_auteur']); |
|
| 147 | + } |
|
| 148 | + maj_version(0.999); |
|
| 149 | + } |
|
| 150 | 150 | } |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | * @package SPIP\Core\SQL\Upgrade |
| 17 | 17 | **/ |
| 18 | 18 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 19 | - return; |
|
| 19 | + return; |
|
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /** |
@@ -27,9 +27,9 @@ discard block |
||
| 27 | 27 | **/ |
| 28 | 28 | function maj_legacy_v011_dist($version_installee, $version_cible) { |
| 29 | 29 | |
| 30 | - if (upgrade_vers(1.1, $version_installee, $version_cible)) { |
|
| 31 | - sql_query("DROP TABLE spip_petition"); |
|
| 32 | - sql_query("DROP TABLE spip_signatures_petition"); |
|
| 33 | - maj_version(1.1); |
|
| 34 | - } |
|
| 30 | + if (upgrade_vers(1.1, $version_installee, $version_cible)) { |
|
| 31 | + sql_query("DROP TABLE spip_petition"); |
|
| 32 | + sql_query("DROP TABLE spip_signatures_petition"); |
|
| 33 | + maj_version(1.1); |
|
| 34 | + } |
|
| 35 | 35 | } |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | * @package SPIP\Core\SQL\Upgrade |
| 17 | 17 | **/ |
| 18 | 18 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 19 | - return; |
|
| 19 | + return; |
|
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /** |
@@ -26,311 +26,311 @@ discard block |
||
| 26 | 26 | * @param float $version_cible Version de destination |
| 27 | 27 | **/ |
| 28 | 28 | function maj_legacy_v014_dist($version_installee, $version_cible) { |
| 29 | - if (upgrade_vers(1.404, $version_installee, $version_cible)) { |
|
| 30 | - sql_query("UPDATE spip_mots SET type='Mots sans groupe...' WHERE type=''"); |
|
| 31 | - |
|
| 32 | - $result = sql_query("SELECT * FROM spip_mots GROUP BY type"); |
|
| 33 | - while ($row = sql_fetch($result)) { |
|
| 34 | - $type = addslashes($row['type']); |
|
| 35 | - // Old style, doit echouer |
|
| 36 | - spip_log('ne pas tenir compte de l erreur spip_groupes_mots ci-dessous:', 'mysql'); |
|
| 37 | - sql_query("INSERT INTO spip_groupes_mots (titre, unseul, obligatoire, articles, breves, rubriques, syndic, 0minirezo, 1comite, 6forum) VALUES (\"$type\", 'non', 'non', 'oui', 'oui', 'non', 'oui', 'oui', 'oui', 'non')"); |
|
| 38 | - // New style, devrait marcher |
|
| 39 | - sql_query("INSERT INTO spip_groupes_mots (titre, unseul, obligatoire, articles, breves, rubriques, syndic, minirezo, comite, forum) VALUES (\"$type\", 'non', 'non', 'oui', 'oui', 'non', 'oui', 'oui', 'oui', 'non')"); |
|
| 40 | - } |
|
| 41 | - sql_delete("spip_mots", "titre='kawax'"); |
|
| 42 | - maj_version(1.404); |
|
| 43 | - } |
|
| 44 | - |
|
| 45 | - if (upgrade_vers(1.405, $version_installee, $version_cible)) { |
|
| 46 | - sql_query("ALTER TABLE spip_mots ADD id_groupe bigint(21) NOT NULL"); |
|
| 47 | - |
|
| 48 | - $result = sql_query("SELECT * FROM spip_groupes_mots"); |
|
| 49 | - while ($row = sql_fetch($result)) { |
|
| 50 | - $id_groupe = addslashes($row['id_groupe']); |
|
| 51 | - $type = addslashes($row['titre']); |
|
| 52 | - sql_query("UPDATE spip_mots SET id_groupe = '$id_groupe' WHERE type='$type'"); |
|
| 53 | - } |
|
| 54 | - maj_version(1.405); |
|
| 55 | - } |
|
| 56 | - |
|
| 57 | - if (upgrade_vers(1.408, $version_installee, $version_cible)) { |
|
| 58 | - // Images articles passent dans spip_documents |
|
| 59 | - $result = sql_query("SELECT id_article, images FROM spip_articles WHERE LENGTH(images) > 0"); |
|
| 60 | - |
|
| 61 | - |
|
| 62 | - $types = array('jpg' => 1, 'png' => 2, 'gif' => 3); |
|
| 63 | - |
|
| 64 | - while ($row = @sql_fetch($result)) { |
|
| 65 | - $id_article = $row['id_article']; |
|
| 66 | - $images = $row['images']; |
|
| 67 | - $images = explode(",", $images); |
|
| 68 | - reset($images); |
|
| 69 | - $replace = '_orig_'; |
|
| 70 | - foreach ($images as $val) { |
|
| 71 | - $image = explode("|", $val); |
|
| 72 | - $fichier = $image[0]; |
|
| 73 | - $largeur = $image[1]; |
|
| 74 | - $hauteur = $image[2]; |
|
| 75 | - preg_match(",-([0-9]+)\.(gif|jpg|png)$,i", $fichier, $match); |
|
| 76 | - $id_type = intval($types[$match[2]]); |
|
| 77 | - $num_img = $match[1]; |
|
| 78 | - $fichier = _DIR_IMG . $fichier; |
|
| 79 | - $taille = @filesize($fichier); |
|
| 80 | - // ici on n'a pas les fonctions absctract ! |
|
| 81 | - sql_query("INSERT INTO spip_documents (titre, id_type, fichier, mode, largeur, hauteur, taille) VALUES ('image $largeur x $hauteur', $id_type, '$fichier', 'vignette', '$largeur', '$hauteur', '$taille')"); |
|
| 82 | - $id_document = mysqli_insert_id(_mysql_link()); |
|
| 83 | - if ($id_document > 0) { |
|
| 84 | - sql_query("INSERT INTO spip_documents_articles (id_document, id_article) VALUES ($id_document, $id_article)"); |
|
| 85 | - $replace = "REPLACE($replace, '<IMG$num_img|', '<IM_$id_document|')"; |
|
| 86 | - } else { |
|
| 87 | - echo _T('texte_erreur_mise_niveau_base', array('fichier' => $fichier, 'id_article' => $id_article)); |
|
| 88 | - exit; |
|
| 89 | - } |
|
| 90 | - } |
|
| 91 | - $replace = "REPLACE($replace, '<IM_', '<IMG')"; |
|
| 92 | - $replace_chapo = str_replace('_orig_', 'chapo', $replace); |
|
| 93 | - $replace_descriptif = str_replace('_orig_', 'descriptif', $replace); |
|
| 94 | - $replace_texte = str_replace('_orig_', 'texte', $replace); |
|
| 95 | - $replace_ps = str_replace('_orig_', 'ps', $replace); |
|
| 96 | - sql_query("UPDATE spip_articles SET chapo=$replace_chapo, descriptif=$replace_descriptif, texte=$replace_texte, ps=$replace_ps WHERE id_article=$id_article"); |
|
| 97 | - |
|
| 98 | - } |
|
| 99 | - sql_query("ALTER TABLE spip_articles DROP images"); |
|
| 100 | - maj_version(1.408); |
|
| 101 | - } |
|
| 102 | - |
|
| 103 | - if (upgrade_vers(1.414, $version_installee, $version_cible)) { |
|
| 104 | - // Forum par defaut "en dur" dans les spip_articles |
|
| 105 | - // -> non, prio (priori), pos (posteriori), abo (abonnement) |
|
| 106 | - $accepter_forum = substr($GLOBALS['meta']["forums_publics"], 0, 3); |
|
| 107 | - $result = sql_query("ALTER TABLE spip_articles CHANGE accepter_forum accepter_forum CHAR(3) NOT NULL"); |
|
| 108 | - |
|
| 109 | - $result = sql_query("UPDATE spip_articles SET accepter_forum='$accepter_forum' WHERE accepter_forum != 'non'"); |
|
| 110 | - |
|
| 111 | - maj_version(1.414); |
|
| 112 | - } |
|
| 113 | - |
|
| 114 | - /* |
|
| 29 | + if (upgrade_vers(1.404, $version_installee, $version_cible)) { |
|
| 30 | + sql_query("UPDATE spip_mots SET type='Mots sans groupe...' WHERE type=''"); |
|
| 31 | + |
|
| 32 | + $result = sql_query("SELECT * FROM spip_mots GROUP BY type"); |
|
| 33 | + while ($row = sql_fetch($result)) { |
|
| 34 | + $type = addslashes($row['type']); |
|
| 35 | + // Old style, doit echouer |
|
| 36 | + spip_log('ne pas tenir compte de l erreur spip_groupes_mots ci-dessous:', 'mysql'); |
|
| 37 | + sql_query("INSERT INTO spip_groupes_mots (titre, unseul, obligatoire, articles, breves, rubriques, syndic, 0minirezo, 1comite, 6forum) VALUES (\"$type\", 'non', 'non', 'oui', 'oui', 'non', 'oui', 'oui', 'oui', 'non')"); |
|
| 38 | + // New style, devrait marcher |
|
| 39 | + sql_query("INSERT INTO spip_groupes_mots (titre, unseul, obligatoire, articles, breves, rubriques, syndic, minirezo, comite, forum) VALUES (\"$type\", 'non', 'non', 'oui', 'oui', 'non', 'oui', 'oui', 'oui', 'non')"); |
|
| 40 | + } |
|
| 41 | + sql_delete("spip_mots", "titre='kawax'"); |
|
| 42 | + maj_version(1.404); |
|
| 43 | + } |
|
| 44 | + |
|
| 45 | + if (upgrade_vers(1.405, $version_installee, $version_cible)) { |
|
| 46 | + sql_query("ALTER TABLE spip_mots ADD id_groupe bigint(21) NOT NULL"); |
|
| 47 | + |
|
| 48 | + $result = sql_query("SELECT * FROM spip_groupes_mots"); |
|
| 49 | + while ($row = sql_fetch($result)) { |
|
| 50 | + $id_groupe = addslashes($row['id_groupe']); |
|
| 51 | + $type = addslashes($row['titre']); |
|
| 52 | + sql_query("UPDATE spip_mots SET id_groupe = '$id_groupe' WHERE type='$type'"); |
|
| 53 | + } |
|
| 54 | + maj_version(1.405); |
|
| 55 | + } |
|
| 56 | + |
|
| 57 | + if (upgrade_vers(1.408, $version_installee, $version_cible)) { |
|
| 58 | + // Images articles passent dans spip_documents |
|
| 59 | + $result = sql_query("SELECT id_article, images FROM spip_articles WHERE LENGTH(images) > 0"); |
|
| 60 | + |
|
| 61 | + |
|
| 62 | + $types = array('jpg' => 1, 'png' => 2, 'gif' => 3); |
|
| 63 | + |
|
| 64 | + while ($row = @sql_fetch($result)) { |
|
| 65 | + $id_article = $row['id_article']; |
|
| 66 | + $images = $row['images']; |
|
| 67 | + $images = explode(",", $images); |
|
| 68 | + reset($images); |
|
| 69 | + $replace = '_orig_'; |
|
| 70 | + foreach ($images as $val) { |
|
| 71 | + $image = explode("|", $val); |
|
| 72 | + $fichier = $image[0]; |
|
| 73 | + $largeur = $image[1]; |
|
| 74 | + $hauteur = $image[2]; |
|
| 75 | + preg_match(",-([0-9]+)\.(gif|jpg|png)$,i", $fichier, $match); |
|
| 76 | + $id_type = intval($types[$match[2]]); |
|
| 77 | + $num_img = $match[1]; |
|
| 78 | + $fichier = _DIR_IMG . $fichier; |
|
| 79 | + $taille = @filesize($fichier); |
|
| 80 | + // ici on n'a pas les fonctions absctract ! |
|
| 81 | + sql_query("INSERT INTO spip_documents (titre, id_type, fichier, mode, largeur, hauteur, taille) VALUES ('image $largeur x $hauteur', $id_type, '$fichier', 'vignette', '$largeur', '$hauteur', '$taille')"); |
|
| 82 | + $id_document = mysqli_insert_id(_mysql_link()); |
|
| 83 | + if ($id_document > 0) { |
|
| 84 | + sql_query("INSERT INTO spip_documents_articles (id_document, id_article) VALUES ($id_document, $id_article)"); |
|
| 85 | + $replace = "REPLACE($replace, '<IMG$num_img|', '<IM_$id_document|')"; |
|
| 86 | + } else { |
|
| 87 | + echo _T('texte_erreur_mise_niveau_base', array('fichier' => $fichier, 'id_article' => $id_article)); |
|
| 88 | + exit; |
|
| 89 | + } |
|
| 90 | + } |
|
| 91 | + $replace = "REPLACE($replace, '<IM_', '<IMG')"; |
|
| 92 | + $replace_chapo = str_replace('_orig_', 'chapo', $replace); |
|
| 93 | + $replace_descriptif = str_replace('_orig_', 'descriptif', $replace); |
|
| 94 | + $replace_texte = str_replace('_orig_', 'texte', $replace); |
|
| 95 | + $replace_ps = str_replace('_orig_', 'ps', $replace); |
|
| 96 | + sql_query("UPDATE spip_articles SET chapo=$replace_chapo, descriptif=$replace_descriptif, texte=$replace_texte, ps=$replace_ps WHERE id_article=$id_article"); |
|
| 97 | + |
|
| 98 | + } |
|
| 99 | + sql_query("ALTER TABLE spip_articles DROP images"); |
|
| 100 | + maj_version(1.408); |
|
| 101 | + } |
|
| 102 | + |
|
| 103 | + if (upgrade_vers(1.414, $version_installee, $version_cible)) { |
|
| 104 | + // Forum par defaut "en dur" dans les spip_articles |
|
| 105 | + // -> non, prio (priori), pos (posteriori), abo (abonnement) |
|
| 106 | + $accepter_forum = substr($GLOBALS['meta']["forums_publics"], 0, 3); |
|
| 107 | + $result = sql_query("ALTER TABLE spip_articles CHANGE accepter_forum accepter_forum CHAR(3) NOT NULL"); |
|
| 108 | + |
|
| 109 | + $result = sql_query("UPDATE spip_articles SET accepter_forum='$accepter_forum' WHERE accepter_forum != 'non'"); |
|
| 110 | + |
|
| 111 | + maj_version(1.414); |
|
| 112 | + } |
|
| 113 | + |
|
| 114 | + /* |
|
| 115 | 115 | if ($version_installee == 1.415) { |
| 116 | 116 | sql_query("ALTER TABLE spip_documents DROP inclus"); |
| 117 | 117 | maj_version (1.415); |
| 118 | 118 | } |
| 119 | 119 | */ |
| 120 | 120 | |
| 121 | - if (upgrade_vers(1.417, $version_installee, $version_cible)) { |
|
| 122 | - sql_query("ALTER TABLE spip_syndic_articles DROP date_index"); |
|
| 123 | - maj_version(1.417); |
|
| 124 | - } |
|
| 125 | - |
|
| 126 | - if (upgrade_vers(1.418, $version_installee, $version_cible)) { |
|
| 127 | - $result = sql_query("SELECT * FROM spip_auteurs WHERE statut = '0minirezo' AND email != '' ORDER BY id_auteur LIMIT 1"); |
|
| 128 | - |
|
| 129 | - if ($webmaster = sql_fetch($result)) { |
|
| 130 | - ecrire_meta('email_webmaster', $webmaster['email']); |
|
| 131 | - } |
|
| 132 | - maj_version(1.418); |
|
| 133 | - } |
|
| 134 | - |
|
| 135 | - if (upgrade_vers(1.419, $version_installee, $version_cible)) { |
|
| 136 | - sql_query("ALTER TABLE spip_auteurs ADD alea_actuel TINYTEXT DEFAULT ''"); |
|
| 137 | - sql_query("ALTER TABLE spip_auteurs ADD alea_futur TINYTEXT DEFAULT ''"); |
|
| 138 | - sql_query("UPDATE spip_auteurs SET alea_futur = FLOOR(32000*RAND())"); |
|
| 139 | - maj_version(1.419); |
|
| 140 | - } |
|
| 141 | - |
|
| 142 | - if (upgrade_vers(1.420, $version_installee, $version_cible)) { |
|
| 143 | - sql_query("UPDATE spip_auteurs SET alea_actuel='' WHERE statut='nouveau'"); |
|
| 144 | - maj_version(1.420); |
|
| 145 | - } |
|
| 146 | - |
|
| 147 | - if (upgrade_vers(1.421, $version_installee, $version_cible)) { |
|
| 148 | - sql_query("ALTER TABLE spip_articles ADD auteur_modif bigint(21) DEFAULT '0' NOT NULL"); |
|
| 149 | - sql_query("ALTER TABLE spip_articles ADD date_modif datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"); |
|
| 150 | - maj_version(1.421); |
|
| 151 | - } |
|
| 152 | - |
|
| 153 | - if (upgrade_vers(1.432, $version_installee, $version_cible)) { |
|
| 154 | - sql_query("ALTER TABLE spip_articles DROP referers"); |
|
| 155 | - sql_query("ALTER TABLE spip_articles ADD referers INTEGER DEFAULT '0' NOT NULL"); |
|
| 156 | - sql_query("ALTER TABLE spip_articles ADD popularite INTEGER DEFAULT '0' NOT NULL"); |
|
| 157 | - maj_version(1.432); |
|
| 158 | - } |
|
| 159 | - |
|
| 160 | - if (upgrade_vers(1.436, $version_installee, $version_cible)) { |
|
| 161 | - sql_query("ALTER TABLE spip_documents ADD date datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"); |
|
| 162 | - maj_version(1.436); |
|
| 163 | - } |
|
| 164 | - |
|
| 165 | - if (upgrade_vers(1.437, $version_installee, $version_cible)) { |
|
| 166 | - sql_query("ALTER TABLE spip_visites ADD maj TIMESTAMP"); |
|
| 167 | - sql_query("ALTER TABLE spip_visites_referers ADD maj TIMESTAMP"); |
|
| 168 | - maj_version(1.437); |
|
| 169 | - } |
|
| 170 | - |
|
| 171 | - if (upgrade_vers(1.438, $version_installee, $version_cible)) { |
|
| 172 | - sql_query("ALTER TABLE spip_articles ADD INDEX id_secteur (id_secteur)"); |
|
| 173 | - sql_query("ALTER TABLE spip_articles ADD INDEX statut (statut, date)"); |
|
| 174 | - maj_version(1.438); |
|
| 175 | - } |
|
| 176 | - |
|
| 177 | - if (upgrade_vers(1.439, $version_installee, $version_cible)) { |
|
| 178 | - sql_query("ALTER TABLE spip_syndic ADD INDEX statut (statut, date_syndic)"); |
|
| 179 | - sql_query("ALTER TABLE spip_syndic_articles ADD INDEX statut (statut)"); |
|
| 180 | - sql_query("ALTER TABLE spip_syndic_articles CHANGE url url VARCHAR(255) NOT NULL"); |
|
| 181 | - sql_query("ALTER TABLE spip_syndic_articles ADD INDEX url (url)"); |
|
| 182 | - maj_version(1.439); |
|
| 183 | - } |
|
| 184 | - |
|
| 185 | - if (upgrade_vers(1.440, $version_installee, $version_cible)) { |
|
| 186 | - sql_query("ALTER TABLE spip_visites_temp CHANGE ip ip INTEGER UNSIGNED NOT NULL"); |
|
| 187 | - maj_version(1.440); |
|
| 188 | - } |
|
| 189 | - |
|
| 190 | - if (upgrade_vers(1.441, $version_installee, $version_cible)) { |
|
| 191 | - sql_query("ALTER TABLE spip_visites_temp CHANGE date date DATE NOT NULL"); |
|
| 192 | - sql_query("ALTER TABLE spip_visites CHANGE date date DATE NOT NULL"); |
|
| 193 | - sql_query("ALTER TABLE spip_visites_referers CHANGE date date DATE NOT NULL"); |
|
| 194 | - maj_version(1.441); |
|
| 195 | - } |
|
| 196 | - |
|
| 197 | - if (upgrade_vers(1.442, $version_installee, $version_cible)) { |
|
| 198 | - sql_query("ALTER TABLE spip_auteurs ADD prefs TINYTEXT NOT NULL"); |
|
| 199 | - maj_version(1.442); |
|
| 200 | - } |
|
| 201 | - |
|
| 202 | - if (upgrade_vers(1.443, $version_installee, $version_cible)) { |
|
| 203 | - sql_query("ALTER TABLE spip_auteurs CHANGE login login VARCHAR(255) BINARY NOT NULL"); |
|
| 204 | - sql_query("ALTER TABLE spip_auteurs CHANGE statut statut VARCHAR(255) NOT NULL"); |
|
| 205 | - sql_query("ALTER TABLE spip_auteurs ADD INDEX login (login)"); |
|
| 206 | - sql_query("ALTER TABLE spip_auteurs ADD INDEX statut (statut)"); |
|
| 207 | - maj_version(1.443); |
|
| 208 | - } |
|
| 209 | - |
|
| 210 | - if (upgrade_vers(1.444, $version_installee, $version_cible)) { |
|
| 211 | - sql_query("ALTER TABLE spip_syndic ADD moderation VARCHAR(3) NOT NULL"); |
|
| 212 | - maj_version(1.444); |
|
| 213 | - } |
|
| 214 | - |
|
| 215 | - if (upgrade_vers(1.457, $version_installee, $version_cible)) { |
|
| 216 | - sql_query("DROP TABLE spip_visites"); |
|
| 217 | - sql_query("DROP TABLE spip_visites_temp"); |
|
| 218 | - sql_query("DROP TABLE spip_visites_referers"); |
|
| 219 | - creer_base(); // crade, a ameliorer :-(( |
|
| 220 | - maj_version(1.457); |
|
| 221 | - } |
|
| 222 | - |
|
| 223 | - if (upgrade_vers(1.458, $version_installee, $version_cible)) { |
|
| 224 | - sql_query("ALTER TABLE spip_auteurs ADD cookie_oubli TINYTEXT NOT NULL"); |
|
| 225 | - maj_version(1.458); |
|
| 226 | - } |
|
| 227 | - |
|
| 228 | - if (upgrade_vers(1.459, $version_installee, $version_cible)) { |
|
| 229 | - $result = sql_query("SELECT type FROM spip_mots GROUP BY type"); |
|
| 230 | - while ($row = sql_fetch($result)) { |
|
| 231 | - $type = addslashes($row['type']); |
|
| 232 | - $res = sql_query("SELECT * FROM spip_groupes_mots WHERE titre='$type'"); |
|
| 233 | - if (sql_count($res) == 0) { |
|
| 234 | - sql_query("INSERT INTO spip_groupes_mots (titre, unseul, obligatoire, articles, breves, rubriques, syndic, minirezo, comite, forum) VALUES ('$type', 'non', 'non', 'oui', 'oui', 'non', 'oui', 'oui', 'oui', 'non')"); |
|
| 235 | - if ($id_groupe = mysqli_insert_id(_mysql_link())) { |
|
| 236 | - sql_query("UPDATE spip_mots SET id_groupe = '$id_groupe' WHERE type='$type'"); |
|
| 237 | - } |
|
| 238 | - } |
|
| 239 | - } |
|
| 240 | - sql_query("UPDATE spip_articles SET popularite=0"); |
|
| 241 | - maj_version(1.459); |
|
| 242 | - } |
|
| 243 | - |
|
| 244 | - if (upgrade_vers(1.460, $version_installee, $version_cible)) { |
|
| 245 | - // remettre les mots dans les groupes dupliques par erreur |
|
| 246 | - // dans la precedente version du paragraphe de maj 1.459 |
|
| 247 | - // et supprimer ceux-ci |
|
| 248 | - $result = sql_query("SELECT * FROM spip_groupes_mots ORDER BY id_groupe"); |
|
| 249 | - while ($row = sql_fetch($result)) { |
|
| 250 | - $titre = addslashes($row['titre']); |
|
| 251 | - if (!$vu[$titre]) { |
|
| 252 | - $vu[$titre] = true; |
|
| 253 | - $id_groupe = $row['id_groupe']; |
|
| 254 | - sql_query("UPDATE spip_mots SET id_groupe=$id_groupe WHERE type='$titre'"); |
|
| 255 | - sql_delete("spip_groupes_mots", "titre='$titre' AND id_groupe<>$id_groupe"); |
|
| 256 | - } |
|
| 257 | - } |
|
| 258 | - maj_version(1.460); |
|
| 259 | - } |
|
| 260 | - |
|
| 261 | - if (upgrade_vers(1.462, $version_installee, $version_cible)) { |
|
| 262 | - sql_query("UPDATE spip_types_documents SET inclus='embed' WHERE inclus!='non' AND extension IN ('aiff', 'asf', 'avi', 'mid', 'mov', 'mp3', 'mpg', 'ogg', 'qt', 'ra', 'ram', 'rm', 'swf', 'wav', 'wmv')"); |
|
| 263 | - maj_version(1.462); |
|
| 264 | - } |
|
| 265 | - |
|
| 266 | - if (upgrade_vers(1.463, $version_installee, $version_cible)) { |
|
| 267 | - sql_query("ALTER TABLE spip_articles CHANGE popularite popularite DOUBLE"); |
|
| 268 | - sql_query("ALTER TABLE spip_visites_temp ADD maj TIMESTAMP"); |
|
| 269 | - sql_query("ALTER TABLE spip_referers_temp ADD maj TIMESTAMP"); |
|
| 270 | - maj_version(1.463); |
|
| 271 | - } |
|
| 272 | - |
|
| 273 | - // l'upgrade < 1.462 ci-dessus etait fausse, d'ou correctif |
|
| 274 | - if (upgrade_vers(1.464, $version_installee, $version_cible) and ($version_installee >= 1.462)) { |
|
| 275 | - $res = sql_query("SELECT id_type, extension FROM spip_types_documents WHERE id_type NOT IN (1,2,3)"); |
|
| 276 | - while ($row = sql_fetch($res)) { |
|
| 277 | - $extension = $row['extension']; |
|
| 278 | - $id_type = $row['id_type']; |
|
| 279 | - sql_query("UPDATE spip_documents SET id_type=$id_type WHERE fichier like '%.$extension'"); |
|
| 280 | - } |
|
| 281 | - maj_version(1.464); |
|
| 282 | - } |
|
| 283 | - |
|
| 284 | - if (upgrade_vers(1.465, $version_installee, $version_cible)) { |
|
| 285 | - sql_query("ALTER TABLE spip_articles CHANGE popularite popularite DOUBLE NOT NULL"); |
|
| 286 | - maj_version(1.465); |
|
| 287 | - } |
|
| 288 | - |
|
| 289 | - if (upgrade_vers(1.466, $version_installee, $version_cible)) { |
|
| 290 | - sql_query("ALTER TABLE spip_auteurs ADD source VARCHAR(10) DEFAULT 'spip' NOT NULL"); |
|
| 291 | - maj_version(1.466); |
|
| 292 | - } |
|
| 293 | - |
|
| 294 | - if (upgrade_vers(1.468, $version_installee, $version_cible)) { |
|
| 295 | - sql_query("ALTER TABLE spip_auteurs ADD INDEX en_ligne (en_ligne)"); |
|
| 296 | - sql_query("ALTER TABLE spip_forum ADD INDEX statut (statut, date_heure)"); |
|
| 297 | - maj_version(1.468); |
|
| 298 | - } |
|
| 299 | - |
|
| 300 | - if (upgrade_vers(1.470, $version_installee, $version_cible)) { |
|
| 301 | - if ($version_installee >= 1.467) { // annule les "listes de diff" |
|
| 302 | - sql_query("DROP TABLE spip_listes"); |
|
| 303 | - sql_query("ALTER TABLE spip_auteurs DROP abonne"); |
|
| 304 | - sql_query("ALTER TABLE spip_auteurs DROP abonne_pass"); |
|
| 305 | - } |
|
| 306 | - maj_version(1.470); |
|
| 307 | - } |
|
| 308 | - |
|
| 309 | - if (upgrade_vers(1.471, $version_installee, $version_cible)) { |
|
| 310 | - if ($version_installee >= 1.470) { // annule les "maj" |
|
| 311 | - sql_query("ALTER TABLE spip_auteurs_articles DROP maj TIMESTAMP"); |
|
| 312 | - sql_query("ALTER TABLE spip_auteurs_rubriques DROP maj TIMESTAMP"); |
|
| 313 | - sql_query("ALTER TABLE spip_auteurs_messages DROP maj TIMESTAMP"); |
|
| 314 | - sql_query("ALTER TABLE spip_documents_articles DROP maj TIMESTAMP"); |
|
| 315 | - sql_query("ALTER TABLE spip_documents_rubriques DROP maj TIMESTAMP"); |
|
| 316 | - sql_query("ALTER TABLE spip_documents_breves DROP maj TIMESTAMP"); |
|
| 317 | - sql_query("ALTER TABLE spip_mots_articles DROP maj TIMESTAMP"); |
|
| 318 | - sql_query("ALTER TABLE spip_mots_breves DROP maj TIMESTAMP"); |
|
| 319 | - sql_query("ALTER TABLE spip_mots_rubriques DROP maj TIMESTAMP"); |
|
| 320 | - sql_query("ALTER TABLE spip_mots_syndic DROP maj TIMESTAMP"); |
|
| 321 | - sql_query("ALTER TABLE spip_mots_forum DROP maj TIMESTAMP"); |
|
| 322 | - } |
|
| 323 | - maj_version(1.471); |
|
| 324 | - } |
|
| 325 | - |
|
| 326 | - if (upgrade_vers(1.472, $version_installee, $version_cible)) { |
|
| 327 | - sql_query("ALTER TABLE spip_referers ADD visites_jour INTEGER UNSIGNED NOT NULL"); |
|
| 328 | - maj_version(1.472); |
|
| 329 | - } |
|
| 330 | - |
|
| 331 | - if (upgrade_vers(1.473, $version_installee, $version_cible)) { |
|
| 332 | - sql_query("UPDATE spip_syndic_articles SET url = REPLACE(url, '&', '&')"); |
|
| 333 | - sql_query("UPDATE spip_syndic SET url_site = REPLACE(url_site, '&', '&')"); |
|
| 334 | - maj_version(1.473); |
|
| 335 | - } |
|
| 121 | + if (upgrade_vers(1.417, $version_installee, $version_cible)) { |
|
| 122 | + sql_query("ALTER TABLE spip_syndic_articles DROP date_index"); |
|
| 123 | + maj_version(1.417); |
|
| 124 | + } |
|
| 125 | + |
|
| 126 | + if (upgrade_vers(1.418, $version_installee, $version_cible)) { |
|
| 127 | + $result = sql_query("SELECT * FROM spip_auteurs WHERE statut = '0minirezo' AND email != '' ORDER BY id_auteur LIMIT 1"); |
|
| 128 | + |
|
| 129 | + if ($webmaster = sql_fetch($result)) { |
|
| 130 | + ecrire_meta('email_webmaster', $webmaster['email']); |
|
| 131 | + } |
|
| 132 | + maj_version(1.418); |
|
| 133 | + } |
|
| 134 | + |
|
| 135 | + if (upgrade_vers(1.419, $version_installee, $version_cible)) { |
|
| 136 | + sql_query("ALTER TABLE spip_auteurs ADD alea_actuel TINYTEXT DEFAULT ''"); |
|
| 137 | + sql_query("ALTER TABLE spip_auteurs ADD alea_futur TINYTEXT DEFAULT ''"); |
|
| 138 | + sql_query("UPDATE spip_auteurs SET alea_futur = FLOOR(32000*RAND())"); |
|
| 139 | + maj_version(1.419); |
|
| 140 | + } |
|
| 141 | + |
|
| 142 | + if (upgrade_vers(1.420, $version_installee, $version_cible)) { |
|
| 143 | + sql_query("UPDATE spip_auteurs SET alea_actuel='' WHERE statut='nouveau'"); |
|
| 144 | + maj_version(1.420); |
|
| 145 | + } |
|
| 146 | + |
|
| 147 | + if (upgrade_vers(1.421, $version_installee, $version_cible)) { |
|
| 148 | + sql_query("ALTER TABLE spip_articles ADD auteur_modif bigint(21) DEFAULT '0' NOT NULL"); |
|
| 149 | + sql_query("ALTER TABLE spip_articles ADD date_modif datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"); |
|
| 150 | + maj_version(1.421); |
|
| 151 | + } |
|
| 152 | + |
|
| 153 | + if (upgrade_vers(1.432, $version_installee, $version_cible)) { |
|
| 154 | + sql_query("ALTER TABLE spip_articles DROP referers"); |
|
| 155 | + sql_query("ALTER TABLE spip_articles ADD referers INTEGER DEFAULT '0' NOT NULL"); |
|
| 156 | + sql_query("ALTER TABLE spip_articles ADD popularite INTEGER DEFAULT '0' NOT NULL"); |
|
| 157 | + maj_version(1.432); |
|
| 158 | + } |
|
| 159 | + |
|
| 160 | + if (upgrade_vers(1.436, $version_installee, $version_cible)) { |
|
| 161 | + sql_query("ALTER TABLE spip_documents ADD date datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"); |
|
| 162 | + maj_version(1.436); |
|
| 163 | + } |
|
| 164 | + |
|
| 165 | + if (upgrade_vers(1.437, $version_installee, $version_cible)) { |
|
| 166 | + sql_query("ALTER TABLE spip_visites ADD maj TIMESTAMP"); |
|
| 167 | + sql_query("ALTER TABLE spip_visites_referers ADD maj TIMESTAMP"); |
|
| 168 | + maj_version(1.437); |
|
| 169 | + } |
|
| 170 | + |
|
| 171 | + if (upgrade_vers(1.438, $version_installee, $version_cible)) { |
|
| 172 | + sql_query("ALTER TABLE spip_articles ADD INDEX id_secteur (id_secteur)"); |
|
| 173 | + sql_query("ALTER TABLE spip_articles ADD INDEX statut (statut, date)"); |
|
| 174 | + maj_version(1.438); |
|
| 175 | + } |
|
| 176 | + |
|
| 177 | + if (upgrade_vers(1.439, $version_installee, $version_cible)) { |
|
| 178 | + sql_query("ALTER TABLE spip_syndic ADD INDEX statut (statut, date_syndic)"); |
|
| 179 | + sql_query("ALTER TABLE spip_syndic_articles ADD INDEX statut (statut)"); |
|
| 180 | + sql_query("ALTER TABLE spip_syndic_articles CHANGE url url VARCHAR(255) NOT NULL"); |
|
| 181 | + sql_query("ALTER TABLE spip_syndic_articles ADD INDEX url (url)"); |
|
| 182 | + maj_version(1.439); |
|
| 183 | + } |
|
| 184 | + |
|
| 185 | + if (upgrade_vers(1.440, $version_installee, $version_cible)) { |
|
| 186 | + sql_query("ALTER TABLE spip_visites_temp CHANGE ip ip INTEGER UNSIGNED NOT NULL"); |
|
| 187 | + maj_version(1.440); |
|
| 188 | + } |
|
| 189 | + |
|
| 190 | + if (upgrade_vers(1.441, $version_installee, $version_cible)) { |
|
| 191 | + sql_query("ALTER TABLE spip_visites_temp CHANGE date date DATE NOT NULL"); |
|
| 192 | + sql_query("ALTER TABLE spip_visites CHANGE date date DATE NOT NULL"); |
|
| 193 | + sql_query("ALTER TABLE spip_visites_referers CHANGE date date DATE NOT NULL"); |
|
| 194 | + maj_version(1.441); |
|
| 195 | + } |
|
| 196 | + |
|
| 197 | + if (upgrade_vers(1.442, $version_installee, $version_cible)) { |
|
| 198 | + sql_query("ALTER TABLE spip_auteurs ADD prefs TINYTEXT NOT NULL"); |
|
| 199 | + maj_version(1.442); |
|
| 200 | + } |
|
| 201 | + |
|
| 202 | + if (upgrade_vers(1.443, $version_installee, $version_cible)) { |
|
| 203 | + sql_query("ALTER TABLE spip_auteurs CHANGE login login VARCHAR(255) BINARY NOT NULL"); |
|
| 204 | + sql_query("ALTER TABLE spip_auteurs CHANGE statut statut VARCHAR(255) NOT NULL"); |
|
| 205 | + sql_query("ALTER TABLE spip_auteurs ADD INDEX login (login)"); |
|
| 206 | + sql_query("ALTER TABLE spip_auteurs ADD INDEX statut (statut)"); |
|
| 207 | + maj_version(1.443); |
|
| 208 | + } |
|
| 209 | + |
|
| 210 | + if (upgrade_vers(1.444, $version_installee, $version_cible)) { |
|
| 211 | + sql_query("ALTER TABLE spip_syndic ADD moderation VARCHAR(3) NOT NULL"); |
|
| 212 | + maj_version(1.444); |
|
| 213 | + } |
|
| 214 | + |
|
| 215 | + if (upgrade_vers(1.457, $version_installee, $version_cible)) { |
|
| 216 | + sql_query("DROP TABLE spip_visites"); |
|
| 217 | + sql_query("DROP TABLE spip_visites_temp"); |
|
| 218 | + sql_query("DROP TABLE spip_visites_referers"); |
|
| 219 | + creer_base(); // crade, a ameliorer :-(( |
|
| 220 | + maj_version(1.457); |
|
| 221 | + } |
|
| 222 | + |
|
| 223 | + if (upgrade_vers(1.458, $version_installee, $version_cible)) { |
|
| 224 | + sql_query("ALTER TABLE spip_auteurs ADD cookie_oubli TINYTEXT NOT NULL"); |
|
| 225 | + maj_version(1.458); |
|
| 226 | + } |
|
| 227 | + |
|
| 228 | + if (upgrade_vers(1.459, $version_installee, $version_cible)) { |
|
| 229 | + $result = sql_query("SELECT type FROM spip_mots GROUP BY type"); |
|
| 230 | + while ($row = sql_fetch($result)) { |
|
| 231 | + $type = addslashes($row['type']); |
|
| 232 | + $res = sql_query("SELECT * FROM spip_groupes_mots WHERE titre='$type'"); |
|
| 233 | + if (sql_count($res) == 0) { |
|
| 234 | + sql_query("INSERT INTO spip_groupes_mots (titre, unseul, obligatoire, articles, breves, rubriques, syndic, minirezo, comite, forum) VALUES ('$type', 'non', 'non', 'oui', 'oui', 'non', 'oui', 'oui', 'oui', 'non')"); |
|
| 235 | + if ($id_groupe = mysqli_insert_id(_mysql_link())) { |
|
| 236 | + sql_query("UPDATE spip_mots SET id_groupe = '$id_groupe' WHERE type='$type'"); |
|
| 237 | + } |
|
| 238 | + } |
|
| 239 | + } |
|
| 240 | + sql_query("UPDATE spip_articles SET popularite=0"); |
|
| 241 | + maj_version(1.459); |
|
| 242 | + } |
|
| 243 | + |
|
| 244 | + if (upgrade_vers(1.460, $version_installee, $version_cible)) { |
|
| 245 | + // remettre les mots dans les groupes dupliques par erreur |
|
| 246 | + // dans la precedente version du paragraphe de maj 1.459 |
|
| 247 | + // et supprimer ceux-ci |
|
| 248 | + $result = sql_query("SELECT * FROM spip_groupes_mots ORDER BY id_groupe"); |
|
| 249 | + while ($row = sql_fetch($result)) { |
|
| 250 | + $titre = addslashes($row['titre']); |
|
| 251 | + if (!$vu[$titre]) { |
|
| 252 | + $vu[$titre] = true; |
|
| 253 | + $id_groupe = $row['id_groupe']; |
|
| 254 | + sql_query("UPDATE spip_mots SET id_groupe=$id_groupe WHERE type='$titre'"); |
|
| 255 | + sql_delete("spip_groupes_mots", "titre='$titre' AND id_groupe<>$id_groupe"); |
|
| 256 | + } |
|
| 257 | + } |
|
| 258 | + maj_version(1.460); |
|
| 259 | + } |
|
| 260 | + |
|
| 261 | + if (upgrade_vers(1.462, $version_installee, $version_cible)) { |
|
| 262 | + sql_query("UPDATE spip_types_documents SET inclus='embed' WHERE inclus!='non' AND extension IN ('aiff', 'asf', 'avi', 'mid', 'mov', 'mp3', 'mpg', 'ogg', 'qt', 'ra', 'ram', 'rm', 'swf', 'wav', 'wmv')"); |
|
| 263 | + maj_version(1.462); |
|
| 264 | + } |
|
| 265 | + |
|
| 266 | + if (upgrade_vers(1.463, $version_installee, $version_cible)) { |
|
| 267 | + sql_query("ALTER TABLE spip_articles CHANGE popularite popularite DOUBLE"); |
|
| 268 | + sql_query("ALTER TABLE spip_visites_temp ADD maj TIMESTAMP"); |
|
| 269 | + sql_query("ALTER TABLE spip_referers_temp ADD maj TIMESTAMP"); |
|
| 270 | + maj_version(1.463); |
|
| 271 | + } |
|
| 272 | + |
|
| 273 | + // l'upgrade < 1.462 ci-dessus etait fausse, d'ou correctif |
|
| 274 | + if (upgrade_vers(1.464, $version_installee, $version_cible) and ($version_installee >= 1.462)) { |
|
| 275 | + $res = sql_query("SELECT id_type, extension FROM spip_types_documents WHERE id_type NOT IN (1,2,3)"); |
|
| 276 | + while ($row = sql_fetch($res)) { |
|
| 277 | + $extension = $row['extension']; |
|
| 278 | + $id_type = $row['id_type']; |
|
| 279 | + sql_query("UPDATE spip_documents SET id_type=$id_type WHERE fichier like '%.$extension'"); |
|
| 280 | + } |
|
| 281 | + maj_version(1.464); |
|
| 282 | + } |
|
| 283 | + |
|
| 284 | + if (upgrade_vers(1.465, $version_installee, $version_cible)) { |
|
| 285 | + sql_query("ALTER TABLE spip_articles CHANGE popularite popularite DOUBLE NOT NULL"); |
|
| 286 | + maj_version(1.465); |
|
| 287 | + } |
|
| 288 | + |
|
| 289 | + if (upgrade_vers(1.466, $version_installee, $version_cible)) { |
|
| 290 | + sql_query("ALTER TABLE spip_auteurs ADD source VARCHAR(10) DEFAULT 'spip' NOT NULL"); |
|
| 291 | + maj_version(1.466); |
|
| 292 | + } |
|
| 293 | + |
|
| 294 | + if (upgrade_vers(1.468, $version_installee, $version_cible)) { |
|
| 295 | + sql_query("ALTER TABLE spip_auteurs ADD INDEX en_ligne (en_ligne)"); |
|
| 296 | + sql_query("ALTER TABLE spip_forum ADD INDEX statut (statut, date_heure)"); |
|
| 297 | + maj_version(1.468); |
|
| 298 | + } |
|
| 299 | + |
|
| 300 | + if (upgrade_vers(1.470, $version_installee, $version_cible)) { |
|
| 301 | + if ($version_installee >= 1.467) { // annule les "listes de diff" |
|
| 302 | + sql_query("DROP TABLE spip_listes"); |
|
| 303 | + sql_query("ALTER TABLE spip_auteurs DROP abonne"); |
|
| 304 | + sql_query("ALTER TABLE spip_auteurs DROP abonne_pass"); |
|
| 305 | + } |
|
| 306 | + maj_version(1.470); |
|
| 307 | + } |
|
| 308 | + |
|
| 309 | + if (upgrade_vers(1.471, $version_installee, $version_cible)) { |
|
| 310 | + if ($version_installee >= 1.470) { // annule les "maj" |
|
| 311 | + sql_query("ALTER TABLE spip_auteurs_articles DROP maj TIMESTAMP"); |
|
| 312 | + sql_query("ALTER TABLE spip_auteurs_rubriques DROP maj TIMESTAMP"); |
|
| 313 | + sql_query("ALTER TABLE spip_auteurs_messages DROP maj TIMESTAMP"); |
|
| 314 | + sql_query("ALTER TABLE spip_documents_articles DROP maj TIMESTAMP"); |
|
| 315 | + sql_query("ALTER TABLE spip_documents_rubriques DROP maj TIMESTAMP"); |
|
| 316 | + sql_query("ALTER TABLE spip_documents_breves DROP maj TIMESTAMP"); |
|
| 317 | + sql_query("ALTER TABLE spip_mots_articles DROP maj TIMESTAMP"); |
|
| 318 | + sql_query("ALTER TABLE spip_mots_breves DROP maj TIMESTAMP"); |
|
| 319 | + sql_query("ALTER TABLE spip_mots_rubriques DROP maj TIMESTAMP"); |
|
| 320 | + sql_query("ALTER TABLE spip_mots_syndic DROP maj TIMESTAMP"); |
|
| 321 | + sql_query("ALTER TABLE spip_mots_forum DROP maj TIMESTAMP"); |
|
| 322 | + } |
|
| 323 | + maj_version(1.471); |
|
| 324 | + } |
|
| 325 | + |
|
| 326 | + if (upgrade_vers(1.472, $version_installee, $version_cible)) { |
|
| 327 | + sql_query("ALTER TABLE spip_referers ADD visites_jour INTEGER UNSIGNED NOT NULL"); |
|
| 328 | + maj_version(1.472); |
|
| 329 | + } |
|
| 330 | + |
|
| 331 | + if (upgrade_vers(1.473, $version_installee, $version_cible)) { |
|
| 332 | + sql_query("UPDATE spip_syndic_articles SET url = REPLACE(url, '&', '&')"); |
|
| 333 | + sql_query("UPDATE spip_syndic SET url_site = REPLACE(url_site, '&', '&')"); |
|
| 334 | + maj_version(1.473); |
|
| 335 | + } |
|
| 336 | 336 | } |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | * @package SPIP\Core\SQL\Upgrade |
| 17 | 17 | **/ |
| 18 | 18 | if (!defined('_ECRIRE_INC_VERSION')) { |
| 19 | - return; |
|
| 19 | + return; |
|
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /** |
@@ -26,61 +26,61 @@ discard block |
||
| 26 | 26 | * @param float $version_cible Version de destination |
| 27 | 27 | **/ |
| 28 | 28 | function maj_legacy_v019_pre193($version_installee, $version_cible) { |
| 29 | - // Syndication : ajout de l'option resume=oui/non et de la langue |
|
| 30 | - if (upgrade_vers(1.901, $version_installee, $version_cible)) { |
|
| 31 | - sql_query("ALTER TABLE spip_syndic ADD `resume` VARCHAR(3) DEFAULT 'oui'"); |
|
| 32 | - sql_query("ALTER TABLE spip_syndic_articles ADD `lang` VARCHAR(10) DEFAULT '' NOT NULL"); |
|
| 33 | - maj_version(1.901); |
|
| 34 | - } |
|
| 29 | + // Syndication : ajout de l'option resume=oui/non et de la langue |
|
| 30 | + if (upgrade_vers(1.901, $version_installee, $version_cible)) { |
|
| 31 | + sql_query("ALTER TABLE spip_syndic ADD `resume` VARCHAR(3) DEFAULT 'oui'"); |
|
| 32 | + sql_query("ALTER TABLE spip_syndic_articles ADD `lang` VARCHAR(10) DEFAULT '' NOT NULL"); |
|
| 33 | + maj_version(1.901); |
|
| 34 | + } |
|
| 35 | 35 | |
| 36 | - // Syndication : ajout de source, url_source, tags |
|
| 37 | - if (upgrade_vers(1.902, $version_installee, $version_cible)) { |
|
| 38 | - sql_query("ALTER TABLE spip_syndic_articles ADD `url_source` TINYTEXT DEFAULT '' NOT NULL"); |
|
| 39 | - sql_query("ALTER TABLE spip_syndic_articles ADD `source` TINYTEXT DEFAULT '' NOT NULL"); |
|
| 40 | - sql_query("ALTER TABLE spip_syndic_articles ADD `tags` TEXT DEFAULT '' NOT NULL"); |
|
| 41 | - maj_version(1.902); |
|
| 42 | - } |
|
| 36 | + // Syndication : ajout de source, url_source, tags |
|
| 37 | + if (upgrade_vers(1.902, $version_installee, $version_cible)) { |
|
| 38 | + sql_query("ALTER TABLE spip_syndic_articles ADD `url_source` TINYTEXT DEFAULT '' NOT NULL"); |
|
| 39 | + sql_query("ALTER TABLE spip_syndic_articles ADD `source` TINYTEXT DEFAULT '' NOT NULL"); |
|
| 40 | + sql_query("ALTER TABLE spip_syndic_articles ADD `tags` TEXT DEFAULT '' NOT NULL"); |
|
| 41 | + maj_version(1.902); |
|
| 42 | + } |
|
| 43 | 43 | |
| 44 | - // URLs propres des sites (sait-on jamais) |
|
| 45 | - // + oubli des KEY url_propre sur les auteurs si installation neuve |
|
| 46 | - if (upgrade_vers(1.903, $version_installee, $version_cible)) { |
|
| 47 | - sql_query("ALTER TABLE spip_syndic ADD `url_propre` VARCHAR(255) NOT NULL"); |
|
| 48 | - sql_query("ALTER TABLE spip_syndic ADD INDEX `url_propre` (`url_propre`)"); |
|
| 49 | - sql_query("ALTER TABLE spip_auteurs ADD INDEX `url_propre` (`url_propre`)"); |
|
| 50 | - maj_version(1.903); |
|
| 51 | - } |
|
| 44 | + // URLs propres des sites (sait-on jamais) |
|
| 45 | + // + oubli des KEY url_propre sur les auteurs si installation neuve |
|
| 46 | + if (upgrade_vers(1.903, $version_installee, $version_cible)) { |
|
| 47 | + sql_query("ALTER TABLE spip_syndic ADD `url_propre` VARCHAR(255) NOT NULL"); |
|
| 48 | + sql_query("ALTER TABLE spip_syndic ADD INDEX `url_propre` (`url_propre`)"); |
|
| 49 | + sql_query("ALTER TABLE spip_auteurs ADD INDEX `url_propre` (`url_propre`)"); |
|
| 50 | + maj_version(1.903); |
|
| 51 | + } |
|
| 52 | 52 | |
| 53 | - // suppression des anciennes tables temporaires des visites |
|
| 54 | - // (maintenant stockees sous forme de fichiers) |
|
| 55 | - if (upgrade_vers(1.904, $version_installee, $version_cible)) { |
|
| 56 | - sql_query("DROP TABLE IF EXISTS spip_visites_temp"); |
|
| 57 | - sql_query("DROP TABLE IF EXISTS spip_referers_temp"); |
|
| 58 | - maj_version(1.904); |
|
| 59 | - } |
|
| 53 | + // suppression des anciennes tables temporaires des visites |
|
| 54 | + // (maintenant stockees sous forme de fichiers) |
|
| 55 | + if (upgrade_vers(1.904, $version_installee, $version_cible)) { |
|
| 56 | + sql_query("DROP TABLE IF EXISTS spip_visites_temp"); |
|
| 57 | + sql_query("DROP TABLE IF EXISTS spip_referers_temp"); |
|
| 58 | + maj_version(1.904); |
|
| 59 | + } |
|
| 60 | 60 | |
| 61 | - // fusion des 10 tables index en une seule |
|
| 62 | - // pour fonctions futures evoluees du moteur de recherche |
|
| 63 | - if (upgrade_vers(1.905, $version_installee, $version_cible)) { |
|
| 64 | - // agrandir le champ "valeur" de spip_meta pour pouvoir y stocker |
|
| 65 | - // des choses plus sympa |
|
| 66 | - sql_query("ALTER TABLE spip_meta DROP INDEX `valeur`"); |
|
| 67 | - sql_query("ALTER TABLE spip_meta CHANGE `valeur` `valeur` TEXT"); |
|
| 68 | - // table des correspondances table->id_table |
|
| 69 | - $liste_tables = array(); |
|
| 70 | - $liste_tables[1] = 'spip_articles'; |
|
| 71 | - $liste_tables[2] = 'spip_auteurs'; |
|
| 72 | - $liste_tables[3] = 'spip_breves'; |
|
| 73 | - $liste_tables[4] = 'spip_documents'; |
|
| 74 | - $liste_tables[5] = 'spip_forum'; |
|
| 75 | - $liste_tables[6] = 'spip_mots'; |
|
| 76 | - $liste_tables[7] = 'spip_rubriques'; |
|
| 77 | - $liste_tables[8] = 'spip_signatures'; |
|
| 78 | - $liste_tables[9] = 'spip_syndic'; |
|
| 61 | + // fusion des 10 tables index en une seule |
|
| 62 | + // pour fonctions futures evoluees du moteur de recherche |
|
| 63 | + if (upgrade_vers(1.905, $version_installee, $version_cible)) { |
|
| 64 | + // agrandir le champ "valeur" de spip_meta pour pouvoir y stocker |
|
| 65 | + // des choses plus sympa |
|
| 66 | + sql_query("ALTER TABLE spip_meta DROP INDEX `valeur`"); |
|
| 67 | + sql_query("ALTER TABLE spip_meta CHANGE `valeur` `valeur` TEXT"); |
|
| 68 | + // table des correspondances table->id_table |
|
| 69 | + $liste_tables = array(); |
|
| 70 | + $liste_tables[1] = 'spip_articles'; |
|
| 71 | + $liste_tables[2] = 'spip_auteurs'; |
|
| 72 | + $liste_tables[3] = 'spip_breves'; |
|
| 73 | + $liste_tables[4] = 'spip_documents'; |
|
| 74 | + $liste_tables[5] = 'spip_forum'; |
|
| 75 | + $liste_tables[6] = 'spip_mots'; |
|
| 76 | + $liste_tables[7] = 'spip_rubriques'; |
|
| 77 | + $liste_tables[8] = 'spip_signatures'; |
|
| 78 | + $liste_tables[9] = 'spip_syndic'; |
|
| 79 | 79 | |
| 80 | - ecrire_meta('index_table', serialize($liste_tables)); |
|
| 80 | + ecrire_meta('index_table', serialize($liste_tables)); |
|
| 81 | 81 | |
| 82 | 82 | ## devenu inutile car suppression totale de l'indexation |
| 83 | - /* |
|
| 83 | + /* |
|
| 84 | 84 | sql_query("INSERT INTO spip_index (`hash`,`points`,`id_objet`,`id_table`) SELECT `hash`,`points`,`id_article` as id_objet,'1' as id_table FROM spip_index_articles"); |
| 85 | 85 | sql_query("DROP TABLE IF EXISTS spip_index_articles"); |
| 86 | 86 | |
@@ -108,234 +108,234 @@ discard block |
||
| 108 | 108 | sql_query("INSERT INTO spip_index (`hash`,`points`,`id_objet`,`id_table`) SELECT `hash`,`points`,`id_syndic` as id_objet,'9' as `id_table FROM spip_index_syndic"); |
| 109 | 109 | sql_query("DROP TABLE IF EXISTS spip_index_syndic"); |
| 110 | 110 | */ |
| 111 | - maj_version(1.905); |
|
| 112 | - } |
|
| 111 | + maj_version(1.905); |
|
| 112 | + } |
|
| 113 | 113 | |
| 114 | 114 | |
| 115 | - // cette table est desormais geree par le plugin "podcast_client", on la |
|
| 116 | - // supprime si le plugin n'est pas active ; risque inherent a l'utilisation |
|
| 117 | - // de versions alpha :-) |
|
| 118 | - if (upgrade_vers(1.906, $version_installee, $version_cible)) { |
|
| 119 | - if (!@in_array('podcast_client', $GLOBALS['plugins'])) { |
|
| 120 | - sql_query("DROP TABLE spip_documents_syndic"); |
|
| 121 | - } |
|
| 122 | - maj_version(1.906); |
|
| 123 | - } |
|
| 124 | - if (upgrade_vers(1.907, $version_installee, $version_cible)) { |
|
| 125 | - sql_query("ALTER TABLE spip_forum ADD INDEX `idx` (`idx`)"); |
|
| 126 | - maj_version(1.907); |
|
| 127 | - } |
|
| 128 | - // Oups ! on stockait les tags de syndication sous la forme rel="category" |
|
| 129 | - // au lieu de rel="directory" - http://microformats.org/wiki/rel-directory |
|
| 130 | - if (upgrade_vers(1.908, $version_installee, $version_cible)) { |
|
| 131 | - sql_query("UPDATE spip_syndic_articles SET `tags` = REPLACE(`tags`, 'rel=\"category\">', 'rel=\"directory\">') WHERE `tags` like '%category%'"); |
|
| 132 | - maj_version(1.908); |
|
| 133 | - } |
|
| 134 | - if (upgrade_vers(1.909, $version_installee, $version_cible)) { |
|
| 135 | - sql_query("ALTER IGNORE TABLE spip_mots_articles ADD PRIMARY KEY (`id_article`, `id_mot`)"); |
|
| 136 | - sql_query("ALTER IGNORE TABLE spip_mots_breves ADD PRIMARY KEY (`id_breve`, `id_mot`)"); |
|
| 137 | - sql_query("ALTER IGNORE TABLE spip_mots_rubriques ADD PRIMARY KEY (`id_rubrique`, `id_mot`)"); |
|
| 138 | - sql_query("ALTER IGNORE TABLE spip_mots_syndic ADD PRIMARY KEY (`id_syndic`, `id_mot`)"); |
|
| 139 | - sql_query("ALTER IGNORE TABLE spip_mots_documents ADD PRIMARY KEY (`id_document`, `id_mot`)"); |
|
| 140 | - sql_query("ALTER IGNORE TABLE spip_mots_forum ADD PRIMARY KEY (`id_forum`, `id_mot`)"); |
|
| 141 | - maj_version(1.909); |
|
| 142 | - } |
|
| 115 | + // cette table est desormais geree par le plugin "podcast_client", on la |
|
| 116 | + // supprime si le plugin n'est pas active ; risque inherent a l'utilisation |
|
| 117 | + // de versions alpha :-) |
|
| 118 | + if (upgrade_vers(1.906, $version_installee, $version_cible)) { |
|
| 119 | + if (!@in_array('podcast_client', $GLOBALS['plugins'])) { |
|
| 120 | + sql_query("DROP TABLE spip_documents_syndic"); |
|
| 121 | + } |
|
| 122 | + maj_version(1.906); |
|
| 123 | + } |
|
| 124 | + if (upgrade_vers(1.907, $version_installee, $version_cible)) { |
|
| 125 | + sql_query("ALTER TABLE spip_forum ADD INDEX `idx` (`idx`)"); |
|
| 126 | + maj_version(1.907); |
|
| 127 | + } |
|
| 128 | + // Oups ! on stockait les tags de syndication sous la forme rel="category" |
|
| 129 | + // au lieu de rel="directory" - http://microformats.org/wiki/rel-directory |
|
| 130 | + if (upgrade_vers(1.908, $version_installee, $version_cible)) { |
|
| 131 | + sql_query("UPDATE spip_syndic_articles SET `tags` = REPLACE(`tags`, 'rel=\"category\">', 'rel=\"directory\">') WHERE `tags` like '%category%'"); |
|
| 132 | + maj_version(1.908); |
|
| 133 | + } |
|
| 134 | + if (upgrade_vers(1.909, $version_installee, $version_cible)) { |
|
| 135 | + sql_query("ALTER IGNORE TABLE spip_mots_articles ADD PRIMARY KEY (`id_article`, `id_mot`)"); |
|
| 136 | + sql_query("ALTER IGNORE TABLE spip_mots_breves ADD PRIMARY KEY (`id_breve`, `id_mot`)"); |
|
| 137 | + sql_query("ALTER IGNORE TABLE spip_mots_rubriques ADD PRIMARY KEY (`id_rubrique`, `id_mot`)"); |
|
| 138 | + sql_query("ALTER IGNORE TABLE spip_mots_syndic ADD PRIMARY KEY (`id_syndic`, `id_mot`)"); |
|
| 139 | + sql_query("ALTER IGNORE TABLE spip_mots_documents ADD PRIMARY KEY (`id_document`, `id_mot`)"); |
|
| 140 | + sql_query("ALTER IGNORE TABLE spip_mots_forum ADD PRIMARY KEY (`id_forum`, `id_mot`)"); |
|
| 141 | + maj_version(1.909); |
|
| 142 | + } |
|
| 143 | 143 | |
| 144 | - if (upgrade_vers(1.910, $version_installee, $version_cible)) { |
|
| 145 | - sql_query("ALTER IGNORE TABLE spip_auteurs_articles ADD PRIMARY KEY (`id_auteur`, `id_article`)"); |
|
| 146 | - sql_query("ALTER IGNORE TABLE spip_auteurs_rubriques ADD PRIMARY KEY (`id_auteur`, `id_rubrique`)"); |
|
| 147 | - sql_query("ALTER IGNORE TABLE spip_auteurs_messages ADD PRIMARY KEY (`id_auteur`, `id_message`)"); |
|
| 148 | - maj_version(1.910); |
|
| 149 | - } |
|
| 144 | + if (upgrade_vers(1.910, $version_installee, $version_cible)) { |
|
| 145 | + sql_query("ALTER IGNORE TABLE spip_auteurs_articles ADD PRIMARY KEY (`id_auteur`, `id_article`)"); |
|
| 146 | + sql_query("ALTER IGNORE TABLE spip_auteurs_rubriques ADD PRIMARY KEY (`id_auteur`, `id_rubrique`)"); |
|
| 147 | + sql_query("ALTER IGNORE TABLE spip_auteurs_messages ADD PRIMARY KEY (`id_auteur`, `id_message`)"); |
|
| 148 | + maj_version(1.910); |
|
| 149 | + } |
|
| 150 | 150 | |
| 151 | - if (upgrade_vers(1.911, $version_installee, $version_cible)) { |
|
| 151 | + if (upgrade_vers(1.911, $version_installee, $version_cible)) { |
|
| 152 | 152 | |
| 153 | - sql_query("ALTER IGNORE TABLE spip_auteurs_articles DROP INDEX `id_auteur`"); |
|
| 154 | - sql_query("ALTER IGNORE TABLE spip_auteurs_rubriques DROP INDEX `id_auteur`"); |
|
| 155 | - sql_query("ALTER IGNORE TABLE spip_auteurs_messages DROP INDEX `id_auteur`"); |
|
| 156 | - sql_query("ALTER IGNORE TABLE spip_mots_articles DROP INDEX `id_article`"); |
|
| 157 | - sql_query("ALTER IGNORE TABLE spip_mots_breves DROP INDEX `id_breve`"); |
|
| 158 | - sql_query("ALTER IGNORE TABLE spip_mots_rubriques DROP INDEX `id_rubrique`"); |
|
| 159 | - sql_query("ALTER IGNORE TABLE spip_mots_syndic DROP INDEX `id_syndic`"); |
|
| 160 | - sql_query("ALTER IGNORE TABLE spip_mots_forum DROP INDEX `id_forum`"); |
|
| 161 | - sql_query("ALTER IGNORE TABLE spip_mots_documents DROP INDEX `id_document`"); |
|
| 153 | + sql_query("ALTER IGNORE TABLE spip_auteurs_articles DROP INDEX `id_auteur`"); |
|
| 154 | + sql_query("ALTER IGNORE TABLE spip_auteurs_rubriques DROP INDEX `id_auteur`"); |
|
| 155 | + sql_query("ALTER IGNORE TABLE spip_auteurs_messages DROP INDEX `id_auteur`"); |
|
| 156 | + sql_query("ALTER IGNORE TABLE spip_mots_articles DROP INDEX `id_article`"); |
|
| 157 | + sql_query("ALTER IGNORE TABLE spip_mots_breves DROP INDEX `id_breve`"); |
|
| 158 | + sql_query("ALTER IGNORE TABLE spip_mots_rubriques DROP INDEX `id_rubrique`"); |
|
| 159 | + sql_query("ALTER IGNORE TABLE spip_mots_syndic DROP INDEX `id_syndic`"); |
|
| 160 | + sql_query("ALTER IGNORE TABLE spip_mots_forum DROP INDEX `id_forum`"); |
|
| 161 | + sql_query("ALTER IGNORE TABLE spip_mots_documents DROP INDEX `id_document`"); |
|
| 162 | 162 | # 18 juillet 2007: table depreciee |
| 163 | 163 | # sql_query("ALTER IGNORE TABLE spip_caches DROP INDEX fichier"); |
| 164 | - maj_version(1.911); |
|
| 165 | - } |
|
| 164 | + maj_version(1.911); |
|
| 165 | + } |
|
| 166 | 166 | |
| 167 | - // Le logo du site n'est plus le logo par defaut des rubriques |
|
| 168 | - // mais pour assurer la compatibilite ascendante, on le duplique |
|
| 169 | - if (upgrade_vers(1.912, $version_installee, $version_cible)) { |
|
| 170 | - @copy(_DIR_LOGOS . 'rubon0.gif', _DIR_LOGOS . 'siteon0.gif'); |
|
| 171 | - @copy(_DIR_LOGOS . 'ruboff0.gif', _DIR_LOGOS . 'siteoff0.gif'); |
|
| 172 | - @copy(_DIR_LOGOS . 'rubon0.jpg', _DIR_LOGOS . 'siteon0.jpg'); |
|
| 173 | - @copy(_DIR_LOGOS . 'ruboff0.jpg', _DIR_LOGOS . 'siteoff0.jpg'); |
|
| 174 | - @copy(_DIR_LOGOS . 'rubon0.png', _DIR_LOGOS . 'siteon0.png'); |
|
| 175 | - @copy(_DIR_LOGOS . 'ruboff0.png', _DIR_LOGOS . 'siteoff0.png'); |
|
| 176 | - maj_version(1.912); |
|
| 177 | - } |
|
| 167 | + // Le logo du site n'est plus le logo par defaut des rubriques |
|
| 168 | + // mais pour assurer la compatibilite ascendante, on le duplique |
|
| 169 | + if (upgrade_vers(1.912, $version_installee, $version_cible)) { |
|
| 170 | + @copy(_DIR_LOGOS . 'rubon0.gif', _DIR_LOGOS . 'siteon0.gif'); |
|
| 171 | + @copy(_DIR_LOGOS . 'ruboff0.gif', _DIR_LOGOS . 'siteoff0.gif'); |
|
| 172 | + @copy(_DIR_LOGOS . 'rubon0.jpg', _DIR_LOGOS . 'siteon0.jpg'); |
|
| 173 | + @copy(_DIR_LOGOS . 'ruboff0.jpg', _DIR_LOGOS . 'siteoff0.jpg'); |
|
| 174 | + @copy(_DIR_LOGOS . 'rubon0.png', _DIR_LOGOS . 'siteon0.png'); |
|
| 175 | + @copy(_DIR_LOGOS . 'ruboff0.png', _DIR_LOGOS . 'siteoff0.png'); |
|
| 176 | + maj_version(1.912); |
|
| 177 | + } |
|
| 178 | 178 | |
| 179 | - // suppression de auteur_modif qui n'est plus utilise nulle part |
|
| 180 | - if (upgrade_vers(1.913, $version_installee, $version_cible)) { |
|
| 181 | - sql_query("ALTER TABLE spip_articles DROP `auteur_modif`"); |
|
| 182 | - maj_version(1.913); |
|
| 183 | - } |
|
| 179 | + // suppression de auteur_modif qui n'est plus utilise nulle part |
|
| 180 | + if (upgrade_vers(1.913, $version_installee, $version_cible)) { |
|
| 181 | + sql_query("ALTER TABLE spip_articles DROP `auteur_modif`"); |
|
| 182 | + maj_version(1.913); |
|
| 183 | + } |
|
| 184 | 184 | |
| 185 | - // Ajout de SVG |
|
| 186 | - if (upgrade_vers(1.914, $version_installee, $version_cible)) { |
|
| 187 | - sql_query("INSERT IGNORE INTO spip_types_documents (`extension`, `titre`, `inclus`) VALUES ('svg', 'Scalable Vector Graphics', 'embed')"); |
|
| 188 | - sql_query("UPDATE spip_types_documents SET `mime_type`='image/svg+xml' WHERE `extension`='svg'"); |
|
| 189 | - maj_version(1.914); |
|
| 190 | - } |
|
| 185 | + // Ajout de SVG |
|
| 186 | + if (upgrade_vers(1.914, $version_installee, $version_cible)) { |
|
| 187 | + sql_query("INSERT IGNORE INTO spip_types_documents (`extension`, `titre`, `inclus`) VALUES ('svg', 'Scalable Vector Graphics', 'embed')"); |
|
| 188 | + sql_query("UPDATE spip_types_documents SET `mime_type`='image/svg+xml' WHERE `extension`='svg'"); |
|
| 189 | + maj_version(1.914); |
|
| 190 | + } |
|
| 191 | 191 | |
| 192 | - // Ajout de plein de type mime |
|
| 193 | - if (upgrade_vers(1.915, $version_installee, $version_cible)) { |
|
| 194 | - maj_version(1.915); |
|
| 195 | - } |
|
| 196 | - // refaire l'upgrade 1.905 qui a pu foirer en partie a cause de la requete ALTER sur spip_meta |
|
| 197 | - if (upgrade_vers(1.916, $version_installee, $version_cible)) { |
|
| 198 | - // agrandir le champ "valeur" de spip_meta pour pouvoir y stocker |
|
| 199 | - // des choses plus sympa |
|
| 200 | - sql_query("ALTER TABLE spip_meta DROP INDEX `valeur`"); |
|
| 201 | - sql_query("ALTER TABLE spip_meta CHANGE `valeur` `valeur` TEXT"); |
|
| 192 | + // Ajout de plein de type mime |
|
| 193 | + if (upgrade_vers(1.915, $version_installee, $version_cible)) { |
|
| 194 | + maj_version(1.915); |
|
| 195 | + } |
|
| 196 | + // refaire l'upgrade 1.905 qui a pu foirer en partie a cause de la requete ALTER sur spip_meta |
|
| 197 | + if (upgrade_vers(1.916, $version_installee, $version_cible)) { |
|
| 198 | + // agrandir le champ "valeur" de spip_meta pour pouvoir y stocker |
|
| 199 | + // des choses plus sympa |
|
| 200 | + sql_query("ALTER TABLE spip_meta DROP INDEX `valeur`"); |
|
| 201 | + sql_query("ALTER TABLE spip_meta CHANGE `valeur` `valeur` TEXT"); |
|
| 202 | 202 | #8/08/07 plus d'indexation dans le core |
| 203 | - //include_spip('inc/indexation'); |
|
| 204 | - //update_index_tables(); |
|
| 205 | - maj_version(1.916); |
|
| 206 | - } |
|
| 207 | - if (upgrade_vers(1.917, $version_installee, $version_cible)) { |
|
| 208 | - sql_query("ALTER TABLE spip_documents DROP `inclus`"); |
|
| 209 | - maj_version(1.917); |
|
| 210 | - } |
|
| 203 | + //include_spip('inc/indexation'); |
|
| 204 | + //update_index_tables(); |
|
| 205 | + maj_version(1.916); |
|
| 206 | + } |
|
| 207 | + if (upgrade_vers(1.917, $version_installee, $version_cible)) { |
|
| 208 | + sql_query("ALTER TABLE spip_documents DROP `inclus`"); |
|
| 209 | + maj_version(1.917); |
|
| 210 | + } |
|
| 211 | 211 | |
| 212 | - // Permettre d'enregistrer un numero IP dans les revisions d'articles |
|
| 213 | - // a la place de l'id_auteur |
|
| 214 | - if (upgrade_vers(1.918, $version_installee, $version_cible)) { |
|
| 215 | - sql_query("ALTER TABLE spip_versions CHANGE `id_auteur` `id_auteur` VARCHAR(23)"); |
|
| 216 | - maj_version(1.918); |
|
| 217 | - } |
|
| 212 | + // Permettre d'enregistrer un numero IP dans les revisions d'articles |
|
| 213 | + // a la place de l'id_auteur |
|
| 214 | + if (upgrade_vers(1.918, $version_installee, $version_cible)) { |
|
| 215 | + sql_query("ALTER TABLE spip_versions CHANGE `id_auteur` `id_auteur` VARCHAR(23)"); |
|
| 216 | + maj_version(1.918); |
|
| 217 | + } |
|
| 218 | 218 | |
| 219 | - if (upgrade_vers(1.919, $version_installee, $version_cible)) { |
|
| 220 | - sql_query("ALTER TABLE spip_ajax_fonc DROP `id_auteur`"); |
|
| 221 | - maj_version('1.919'); |
|
| 222 | - } |
|
| 219 | + if (upgrade_vers(1.919, $version_installee, $version_cible)) { |
|
| 220 | + sql_query("ALTER TABLE spip_ajax_fonc DROP `id_auteur`"); |
|
| 221 | + maj_version('1.919'); |
|
| 222 | + } |
|
| 223 | 223 | |
| 224 | - if (upgrade_vers(1.920, $version_installee, $version_cible)) { |
|
| 225 | - sql_query("ALTER IGNORE TABLE spip_documents_articles ADD PRIMARY KEY (`id_article`, `id_document`)"); |
|
| 226 | - sql_query("ALTER IGNORE TABLE spip_documents_breves ADD PRIMARY KEY (`id_breve`, `id_document`)"); |
|
| 227 | - sql_query("ALTER IGNORE TABLE spip_documents_rubriques ADD PRIMARY KEY (`id_rubrique`, `id_document`)"); |
|
| 228 | - sql_query("ALTER IGNORE TABLE spip_documents_articles DROP INDEX `id_article`"); |
|
| 229 | - sql_query("ALTER IGNORE TABLE spip_documents_breves DROP INDEX `id_breve`"); |
|
| 230 | - sql_query("ALTER IGNORE TABLE spip_documents_rubriques DROP INDEX `id_rubrique`"); |
|
| 231 | - maj_version('1.920'); |
|
| 232 | - } |
|
| 233 | - if (upgrade_vers(1.922, $version_installee, $version_cible)) { |
|
| 234 | - sql_query("ALTER TABLE spip_meta ADD `impt` ENUM('non', 'oui') DEFAULT 'oui' NOT NULL AFTER `valeur`"); |
|
| 235 | - $meta_serveur = array( |
|
| 236 | - 'version_installee', |
|
| 237 | - 'adresse_site', |
|
| 238 | - 'alea_ephemere_ancien', |
|
| 239 | - 'alea_ephemere', |
|
| 240 | - 'alea_ephemere_date', |
|
| 241 | - 'langue_site', |
|
| 242 | - 'langues_proposees', |
|
| 243 | - 'date_calcul_rubriques', |
|
| 244 | - 'derniere_modif', |
|
| 245 | - 'optimiser_table', |
|
| 246 | - 'drapeau_edition', |
|
| 247 | - 'creer_preview', |
|
| 248 | - 'taille_preview', |
|
| 249 | - 'creer_htpasswd', |
|
| 250 | - 'creer_htaccess', |
|
| 251 | - 'gd_formats_read', |
|
| 252 | - 'gd_formats', |
|
| 253 | - 'netpbm_formats', |
|
| 254 | - 'formats_graphiques', |
|
| 255 | - 'image_process', |
|
| 256 | - 'plugin_header', |
|
| 257 | - 'plugin' |
|
| 258 | - ); |
|
| 259 | - foreach ($meta_serveur as $nom) { |
|
| 260 | - sql_query("UPDATE spip_meta SET `impt`='non' WHERE `nom`=" . sql_quote($nom)); |
|
| 261 | - } |
|
| 262 | - maj_version('1.922'); |
|
| 263 | - } |
|
| 264 | - if (upgrade_vers(1.923, $version_installee, $version_cible)) { |
|
| 265 | - if (isset($GLOBALS['meta']['IMPORT_tables_noimport'])) { |
|
| 266 | - $IMPORT_tables_noimport = unserialize($GLOBALS['meta']['IMPORT_tables_noimport']); |
|
| 267 | - foreach ($IMPORT_tables_noimport as $key => $table) { |
|
| 268 | - if ($table == 'spip_meta') { |
|
| 269 | - unset($IMPORT_tables_noimport[$key]); |
|
| 270 | - } |
|
| 271 | - } |
|
| 272 | - ecrire_meta('IMPORT_tables_noimport', serialize($IMPORT_tables_noimport), 'non'); |
|
| 273 | - } |
|
| 274 | - maj_version('1.923'); |
|
| 275 | - } |
|
| 224 | + if (upgrade_vers(1.920, $version_installee, $version_cible)) { |
|
| 225 | + sql_query("ALTER IGNORE TABLE spip_documents_articles ADD PRIMARY KEY (`id_article`, `id_document`)"); |
|
| 226 | + sql_query("ALTER IGNORE TABLE spip_documents_breves ADD PRIMARY KEY (`id_breve`, `id_document`)"); |
|
| 227 | + sql_query("ALTER IGNORE TABLE spip_documents_rubriques ADD PRIMARY KEY (`id_rubrique`, `id_document`)"); |
|
| 228 | + sql_query("ALTER IGNORE TABLE spip_documents_articles DROP INDEX `id_article`"); |
|
| 229 | + sql_query("ALTER IGNORE TABLE spip_documents_breves DROP INDEX `id_breve`"); |
|
| 230 | + sql_query("ALTER IGNORE TABLE spip_documents_rubriques DROP INDEX `id_rubrique`"); |
|
| 231 | + maj_version('1.920'); |
|
| 232 | + } |
|
| 233 | + if (upgrade_vers(1.922, $version_installee, $version_cible)) { |
|
| 234 | + sql_query("ALTER TABLE spip_meta ADD `impt` ENUM('non', 'oui') DEFAULT 'oui' NOT NULL AFTER `valeur`"); |
|
| 235 | + $meta_serveur = array( |
|
| 236 | + 'version_installee', |
|
| 237 | + 'adresse_site', |
|
| 238 | + 'alea_ephemere_ancien', |
|
| 239 | + 'alea_ephemere', |
|
| 240 | + 'alea_ephemere_date', |
|
| 241 | + 'langue_site', |
|
| 242 | + 'langues_proposees', |
|
| 243 | + 'date_calcul_rubriques', |
|
| 244 | + 'derniere_modif', |
|
| 245 | + 'optimiser_table', |
|
| 246 | + 'drapeau_edition', |
|
| 247 | + 'creer_preview', |
|
| 248 | + 'taille_preview', |
|
| 249 | + 'creer_htpasswd', |
|
| 250 | + 'creer_htaccess', |
|
| 251 | + 'gd_formats_read', |
|
| 252 | + 'gd_formats', |
|
| 253 | + 'netpbm_formats', |
|
| 254 | + 'formats_graphiques', |
|
| 255 | + 'image_process', |
|
| 256 | + 'plugin_header', |
|
| 257 | + 'plugin' |
|
| 258 | + ); |
|
| 259 | + foreach ($meta_serveur as $nom) { |
|
| 260 | + sql_query("UPDATE spip_meta SET `impt`='non' WHERE `nom`=" . sql_quote($nom)); |
|
| 261 | + } |
|
| 262 | + maj_version('1.922'); |
|
| 263 | + } |
|
| 264 | + if (upgrade_vers(1.923, $version_installee, $version_cible)) { |
|
| 265 | + if (isset($GLOBALS['meta']['IMPORT_tables_noimport'])) { |
|
| 266 | + $IMPORT_tables_noimport = unserialize($GLOBALS['meta']['IMPORT_tables_noimport']); |
|
| 267 | + foreach ($IMPORT_tables_noimport as $key => $table) { |
|
| 268 | + if ($table == 'spip_meta') { |
|
| 269 | + unset($IMPORT_tables_noimport[$key]); |
|
| 270 | + } |
|
| 271 | + } |
|
| 272 | + ecrire_meta('IMPORT_tables_noimport', serialize($IMPORT_tables_noimport), 'non'); |
|
| 273 | + } |
|
| 274 | + maj_version('1.923'); |
|
| 275 | + } |
|
| 276 | 276 | |
| 277 | - if (upgrade_vers(1.924, $version_installee, $version_cible)) { |
|
| 278 | - sql_query('DROP TABLE spip_ajax_fonc'); |
|
| 279 | - maj_version('1.924'); |
|
| 280 | - } |
|
| 277 | + if (upgrade_vers(1.924, $version_installee, $version_cible)) { |
|
| 278 | + sql_query('DROP TABLE spip_ajax_fonc'); |
|
| 279 | + maj_version('1.924'); |
|
| 280 | + } |
|
| 281 | 281 | |
| 282 | - if (upgrade_vers(1.925, $version_installee, $version_cible)) { |
|
| 283 | - include_spip('inc/flock'); |
|
| 284 | - /* deplacement des sessions */ |
|
| 285 | - $f_session = preg_files('data', 'session_'); |
|
| 286 | - $repertoire = _DIR_SESSIONS; |
|
| 287 | - if (!@file_exists($repertoire)) { |
|
| 288 | - $repertoire = preg_replace(',' . _DIR_TMP . ',', '', $repertoire); |
|
| 289 | - $repertoire = sous_repertoire(_DIR_TMP, $repertoire); |
|
| 290 | - } |
|
| 291 | - foreach ($f_session as $f) { |
|
| 292 | - $d = basename($f); |
|
| 293 | - @copy($f, $repertoire . $d); |
|
| 294 | - } |
|
| 295 | - /* deplacement des visites */ |
|
| 296 | - $f_visites = preg_files('data/visites'); |
|
| 297 | - $repertoire = sous_repertoire(_DIR_TMP, 'visites'); |
|
| 298 | - foreach ($f_visites as $f) { |
|
| 299 | - $d = basename($f); |
|
| 300 | - @copy($f, $repertoire . $d); |
|
| 301 | - } |
|
| 302 | - /* deplacement des upload */ |
|
| 303 | - $auteurs = array(); |
|
| 304 | - $req = sql_query("SELECT `login` FROM spip_auteurs WHERE `statut` = '0minirezo'"); |
|
| 305 | - while ($row = sql_fetch($req)) { |
|
| 306 | - $auteurs[] = $row['login']; |
|
| 307 | - } |
|
| 308 | - $f_upload = preg_files('upload', -1, 10000, $auteurs); |
|
| 309 | - $repertoire = _DIR_TRANSFERT; |
|
| 310 | - if (!@file_exists($repertoire)) { |
|
| 311 | - $repertoire = preg_replace(',' . _DIR_TMP . ',', '', $repertoire); |
|
| 312 | - $repertoire = sous_repertoire(_DIR_TMP, $repertoire); |
|
| 313 | - } |
|
| 314 | - foreach ($auteurs as $login) { |
|
| 315 | - if (is_dir('upload/' . $login)) { |
|
| 316 | - $sous_repertoire = sous_repertoire(_DIR_TRANSFERT, $login); |
|
| 317 | - } |
|
| 318 | - } |
|
| 319 | - foreach ($f_upload as $f) { |
|
| 320 | - @copy($f, _DIR_TMP . $f); |
|
| 321 | - } |
|
| 322 | - /* deplacement des dumps */ |
|
| 323 | - $f_session = preg_files('data', 'dump'); |
|
| 324 | - $repertoire = _DIR_DUMP; |
|
| 325 | - if (!@file_exists($repertoire)) { |
|
| 326 | - $repertoire = preg_replace(',' . _DIR_TMP . ',', '', $repertoire); |
|
| 327 | - $repertoire = sous_repertoire(_DIR_TMP, $repertoire); |
|
| 328 | - } |
|
| 329 | - foreach ($f_session as $f) { |
|
| 330 | - $d = basename($f); |
|
| 331 | - @copy($f, $repertoire . $d); |
|
| 332 | - } |
|
| 333 | - maj_version('1.925'); |
|
| 334 | - } |
|
| 335 | - // Ajout de MP4 |
|
| 336 | - if (upgrade_vers(1.926, $version_installee, $version_cible)) { |
|
| 337 | - sql_query("INSERT IGNORE INTO spip_types_documents (`extension`, `titre`, `inclus`) VALUES ('mp4', 'MPEG4', 'embed')"); |
|
| 338 | - sql_query("UPDATE spip_types_documents SET `mime_type`='application/mp4' WHERE `extension`='mp4'"); |
|
| 339 | - maj_version('1.926'); |
|
| 340 | - } |
|
| 282 | + if (upgrade_vers(1.925, $version_installee, $version_cible)) { |
|
| 283 | + include_spip('inc/flock'); |
|
| 284 | + /* deplacement des sessions */ |
|
| 285 | + $f_session = preg_files('data', 'session_'); |
|
| 286 | + $repertoire = _DIR_SESSIONS; |
|
| 287 | + if (!@file_exists($repertoire)) { |
|
| 288 | + $repertoire = preg_replace(',' . _DIR_TMP . ',', '', $repertoire); |
|
| 289 | + $repertoire = sous_repertoire(_DIR_TMP, $repertoire); |
|
| 290 | + } |
|
| 291 | + foreach ($f_session as $f) { |
|
| 292 | + $d = basename($f); |
|
| 293 | + @copy($f, $repertoire . $d); |
|
| 294 | + } |
|
| 295 | + /* deplacement des visites */ |
|
| 296 | + $f_visites = preg_files('data/visites'); |
|
| 297 | + $repertoire = sous_repertoire(_DIR_TMP, 'visites'); |
|
| 298 | + foreach ($f_visites as $f) { |
|
| 299 | + $d = basename($f); |
|
| 300 | + @copy($f, $repertoire . $d); |
|
| 301 | + } |
|
| 302 | + /* deplacement des upload */ |
|
| 303 | + $auteurs = array(); |
|
| 304 | + $req = sql_query("SELECT `login` FROM spip_auteurs WHERE `statut` = '0minirezo'"); |
|
| 305 | + while ($row = sql_fetch($req)) { |
|
| 306 | + $auteurs[] = $row['login']; |
|
| 307 | + } |
|
| 308 | + $f_upload = preg_files('upload', -1, 10000, $auteurs); |
|
| 309 | + $repertoire = _DIR_TRANSFERT; |
|
| 310 | + if (!@file_exists($repertoire)) { |
|
| 311 | + $repertoire = preg_replace(',' . _DIR_TMP . ',', '', $repertoire); |
|
| 312 | + $repertoire = sous_repertoire(_DIR_TMP, $repertoire); |
|
| 313 | + } |
|
| 314 | + foreach ($auteurs as $login) { |
|
| 315 | + if (is_dir('upload/' . $login)) { |
|
| 316 | + $sous_repertoire = sous_repertoire(_DIR_TRANSFERT, $login); |
|
| 317 | + } |
|
| 318 | + } |
|
| 319 | + foreach ($f_upload as $f) { |
|
| 320 | + @copy($f, _DIR_TMP . $f); |
|
| 321 | + } |
|
| 322 | + /* deplacement des dumps */ |
|
| 323 | + $f_session = preg_files('data', 'dump'); |
|
| 324 | + $repertoire = _DIR_DUMP; |
|
| 325 | + if (!@file_exists($repertoire)) { |
|
| 326 | + $repertoire = preg_replace(',' . _DIR_TMP . ',', '', $repertoire); |
|
| 327 | + $repertoire = sous_repertoire(_DIR_TMP, $repertoire); |
|
| 328 | + } |
|
| 329 | + foreach ($f_session as $f) { |
|
| 330 | + $d = basename($f); |
|
| 331 | + @copy($f, $repertoire . $d); |
|
| 332 | + } |
|
| 333 | + maj_version('1.925'); |
|
| 334 | + } |
|
| 335 | + // Ajout de MP4 |
|
| 336 | + if (upgrade_vers(1.926, $version_installee, $version_cible)) { |
|
| 337 | + sql_query("INSERT IGNORE INTO spip_types_documents (`extension`, `titre`, `inclus`) VALUES ('mp4', 'MPEG4', 'embed')"); |
|
| 338 | + sql_query("UPDATE spip_types_documents SET `mime_type`='application/mp4' WHERE `extension`='mp4'"); |
|
| 339 | + maj_version('1.926'); |
|
| 340 | + } |
|
| 341 | 341 | } |