[SPIP][PLUGINS] v3.0-->v3.2
[lhc/web/www.git] / www / ecrire / install / etape_3b.php
index 08b983c..beefece 100644 (file)
@@ -3,62 +3,69 @@
 /***************************************************************************\
  *  SPIP, Systeme de publication pour l'internet                           *
  *                                                                         *
- *  Copyright (c) 2001-2016                                                *
+ *  Copyright (c) 2001-2017                                                *
  *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
  *                                                                         *
  *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
  *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
 \***************************************************************************/
 
-if (!defined('_ECRIRE_INC_VERSION')) return;
+if (!defined('_ECRIRE_INC_VERSION')) {
+       return;
+}
 
 include_spip('inc/headers');
 
-function install_etape_3b_dist()
-{
+function install_etape_3b_dist() {
        $login = _request('login');
        $email = _request('email');
        $nom = _request('nom');
        $pass = _request('pass');
        $pass_verif = _request('pass_verif');
 
-       $server_db = defined('_INSTALL_SERVER_DB') ?
-               _INSTALL_SERVER_DB
+       $server_db = defined('_INSTALL_SERVER_DB')
+               _INSTALL_SERVER_DB
                : _request('server_db');
 
-       if (!defined('_PASS_LONGUEUR_MINI')) define('_PASS_LONGUEUR_MINI', 6);
-       if (!defined('_LOGIN_TROP_COURT')) define('_LOGIN_TROP_COURT', 4);
-
-               if($login) {
-                       $echec = ($pass!=$pass_verif) ?
-                               _T('info_passes_identiques')
-                               : ((strlen($pass)<_PASS_LONGUEUR_MINI) ?
-                                       _T('info_passe_trop_court_car_pluriel', array('nb'=>_PASS_LONGUEUR_MINI))
-                                       : ((strlen($login)<_LOGIN_TROP_COURT) ?
-                                               _T('info_login_trop_court')
-                                               : ''));
+       if (!defined('_PASS_LONGUEUR_MINI')) {
+               define('_PASS_LONGUEUR_MINI', 6);
+       }
+       if (!defined('_LOGIN_TROP_COURT')) {
+               define('_LOGIN_TROP_COURT', 4);
+       }
+       if ($login) {
+               $echec = ($pass != $pass_verif) ?
+                       _T('info_passes_identiques')
+                       : ((strlen($pass) < _PASS_LONGUEUR_MINI) ?
+                               _T('info_passe_trop_court_car_pluriel', array('nb' => _PASS_LONGUEUR_MINI))
+                               : ((strlen($login) < _LOGIN_TROP_COURT) ?
+                                       _T('info_login_trop_court')
+                                       : ''));
                include_spip('inc/filtres');
-               if (!$echec AND $email AND !email_valide($email))
+               if (!$echec and $email and !email_valide($email)) {
                        $echec = _T('form_email_non_valide');
+               }
                if ($echec) {
                        echo minipres(
-                       'AUTO',
-                       info_progression_etape(3,'etape_','install/', true).
-                       "<div class='error'><h3>$echec</h3>\n".
-                       "<p>"._T('avis_connexion_echec_2')."</p>".
-                       "</div>"
+                               'AUTO',
+                               info_progression_etape(3, 'etape_', 'install/', true) .
+                               "<div class='error'><h3>$echec</h3>\n" .
+                               '<p>' . _T('avis_connexion_echec_2') . '</p>' .
+                               '</div>'
                        );
                        exit;
                }
        }
 
-       if (@file_exists(_FILE_CHMOD_TMP))
+       if (@file_exists(_FILE_CHMOD_TMP)) {
                include(_FILE_CHMOD_TMP);
-       else
+       } else {
                redirige_url_ecrire('install');
+       }
 
-       if (!@file_exists(_FILE_CONNECT_TMP))
+       if (!@file_exists(_FILE_CONNECT_TMP)) {
                redirige_url_ecrire('install');
+       }
 
        # maintenant on connait le vrai charset du site s'il est deja configure
        # sinon par defaut lire_meta reglera _DEFAULT_CHARSET
@@ -79,18 +86,27 @@ function install_etape_3b_dist()
                $htpass = generer_htpass($pass);
                $alea_actuel = creer_uniqid();
                $alea_futur = creer_uniqid();
-               $shapass = _nano_sha256($alea_actuel.$pass);
+               $shapass = _nano_sha256($alea_actuel . $pass);
                // prelablement, creer le champ webmestre si il n'existe pas (install neuve
                // sur une vieille base
-               $t = sql_showtable("spip_auteurs", true);
-               if (!isset($t['field']['webmestre']))
+               $t = sql_showtable('spip_auteurs', true);
+               if (!isset($t['field']['webmestre'])) {
                        @sql_alter("TABLE spip_auteurs ADD webmestre varchar(3)  DEFAULT 'non' NOT NULL");
-
-               $id_auteur = sql_getfetsel("id_auteur", "spip_auteurs", "login=" . sql_quote($login));
-               if ($id_auteur !== NULL) {
-                       sql_updateq('spip_auteurs', array("nom"=> $nom, 'email'=> $email, 'login'=>$login, 'pass'=>$shapass, 'alea_actuel'=>$alea_actuel, 'alea_futur'=> $alea_futur, 'htpass'=>$htpass, 'statut'=>'0minirezo'), "id_auteur=$id_auteur");
                }
-               else {
+
+               $id_auteur = sql_getfetsel('id_auteur', 'spip_auteurs', 'login=' . sql_quote($login));
+               if ($id_auteur !== null) {
+                       sql_updateq('spip_auteurs', array(
+                               'nom' => $nom,
+                               'email' => $email,
+                               'login' => $login,
+                               'pass' => $shapass,
+                               'alea_actuel' => $alea_actuel,
+                               'alea_futur' => $alea_futur,
+                               'htpass' => $htpass,
+                               'statut' => '0minirezo'
+                       ), "id_auteur=$id_auteur");
+               } else {
                        $id_auteur = sql_insertq('spip_auteurs', array(
                                'nom' => $nom,
                                'email' => $email,
@@ -99,22 +115,26 @@ function install_etape_3b_dist()
                                'htpass' => $htpass,
                                'alea_actuel' => $alea_actuel,
                                'alea_futur' => $alea_futur,
-                               'statut' =>'0minirezo'));
+                               'statut' => '0minirezo'
+                       ));
                }
                // le passer webmestre separrement du reste, au cas ou l'alter n'aurait pas fonctionne
                @sql_updateq('spip_auteurs', array('webmestre' => 'oui'), "id_auteur=$id_auteur");
 
                // inserer email comme email webmaster principal
                // (sauf s'il est vide: cas de la re-installation)
-               if ($email)
+               if ($email) {
                        ecrire_meta('email_webmaster', $email);
+               }
 
                // Connecter directement celui qui vient de (re)donner son login
                // mais sans cookie d'admin ni connexion longue
                include_spip('inc/auth');
                if (!$auteur = auth_identifier_login($login, $pass)
-               OR !auth_loger($auteur, true))
+                       or !auth_loger($auteur, true)
+               ) {
                        spip_log("login automatique impossible $auth_spip $session" . count($row));
+               }
        }
 
        // installer les metas
@@ -129,8 +149,5 @@ function install_etape_3b_dist()
 
 
        include_spip('inc/distant');
-       redirige_par_entete(parametre_url(self(),'etape','4','&'));
-       
+       redirige_par_entete(parametre_url(self(), 'etape', '4', '&'));
 }
-
-?>