ad7fc890b4fec41b29d5fc9f56c18520f73e16b4
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2017 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
14 * Gestion de l'installation et de la mise à jour de SPIP
16 * @package SPIP\Core\Upgrade
19 if (!defined('_ECRIRE_INC_VERSION')) {
23 include_spip('inc/actions');
24 include_spip('inc/headers');
27 * Fonction d'installation et de mise à jour du core de SPIP
31 function exec_upgrade_dist() {
34 redirige_url_ecrire("install");
37 // Si reinstallation necessaire, message ad hoc
38 if (_request('reinstall') == 'oui') {
39 include_spip('inc/minipres');
40 $r = minipres(_T('titre_page_upgrade'),
42 . _T('texte_nouvelle_version_spip_1')
44 . _T('texte_nouvelle_version_spip_2',
45 array('connect' => '<tt>' . _FILE_CONNECT
. '</tt>'))
46 . generer_form_ecrire('upgrade', "<input type='hidden' name='reinstall' value='non' />", '',
47 _T('bouton_relancer_installation')));
49 } elseif (_request('fin')) {
50 include_spip('inc/plugin');
51 actualise_plugins_actifs();
52 include_spip('inc/headers');
53 $res = generer_url_ecrire('admin_plugin', 'var_mode=recalcul');
54 echo redirige_formulaire($res);
57 if (!isset($GLOBALS['meta']['version_installee'])) {
58 $GLOBALS['meta']['version_installee'] = 0.0;
60 $GLOBALS['meta']['version_installee'] =
61 (double)str_replace(',', '.', $GLOBALS['meta']['version_installee']);
63 # NB: str_replace car, sur club-internet, il semble que version_installe soit
64 # enregistree au format '1,812' et non '1.812'
67 // (cas de double installation de fichiers SPIP sur une meme base)
68 if ($GLOBALS['spip_version_base'] < $GLOBALS['meta']['version_installee']) {
69 $commentaire = _T('info_mise_a_niveau_base_2');
70 } // Commentaire standard upgrade
72 $commentaire = _T('texte_mise_a_niveau_base_1');
75 $commentaire .= "<br />[" . $GLOBALS['meta']['version_installee'] . "/" . $GLOBALS['spip_version_base'] . "]";
77 $_POST['reinstall'] = 'non'; // pour copy_request dans admin
78 include_spip('inc/headers');
79 $admin = charger_fonction('admin', 'inc');
80 $res = $admin('upgrade', _T('info_mise_a_niveau_base'), $commentaire);
84 // effacer les alea pour forcer leur relecture
85 // si jamais ils ont change pendant l'upgrade
86 unset($GLOBALS['meta']['alea_ephemere']);
87 unset($GLOBALS['meta']['alea_ephemere_ancien']);
88 $res = redirige_action_auteur('purger', 'cache', 'upgrade', 'fin=oui', true);
89 echo redirige_formulaire($res);