[ Index ]
 

Code source de SPIP 1.9.2c

Accédez au Source d'autres logiciels libres

title

Body

[fermer]

/ecrire/install/ -> etape_6.php (source)

   1  <?php
   2  
   3  /***************************************************************************\
   4   *  SPIP, Systeme de publication pour l'internet                           *
   5   *                                                                         *
   6   *  Copyright (c) 2001-2007                                                *
   7   *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
   8   *                                                                         *
   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  \***************************************************************************/
  12  
  13  if (!defined("_ECRIRE_INC_VERSION")) return;    #securite
  14  
  15  include_spip('inc/headers');
  16  
  17  // http://doc.spip.org/@inc_install_6
  18  function install_etape_6_dist()
  19  {
  20      global $email,$login,$nom,$pass, $pass_verif,$spip_lang_right;
  21  
  22      if($login!='' AND ($pass!=$pass_verif OR strlen($pass)<5 OR strlen($login)<3)) {
  23          echo minipres(
  24              'AUTO',
  25              "<h2>"._T('info_passes_identiques')."</h2>\n".
  26              "<p>"._T('avis_connexion_echec_2')."</p>"
  27          );
  28          exit;
  29      }
  30  
  31      echo install_debut_html('AUTO', ' onLoad="document.getElementById(\'suivant\').focus();return false;"');
  32  
  33      echo info_etape(_T('info_derniere_etape'),
  34              "<b>"._T('info_code_acces')."</b><br />" .
  35              _T('info_utilisation_spip')
  36      );
  37  
  38      if (@file_exists(_FILE_CONNECT_INS . _FILE_TMP . '.php'))
  39          include(_FILE_CONNECT_INS . _FILE_TMP . '.php');
  40      else
  41          redirige_par_entete(generer_url_ecrire('install'));
  42  
  43      if (@file_exists(_FILE_CHMOD_INS . _FILE_TMP . '.php'))
  44          include(_FILE_CHMOD_INS . _FILE_TMP . '.php');
  45      else
  46          redirige_par_entete(generer_url_ecrire('install'));
  47  
  48      if (!@rename(_FILE_CONNECT_INS . _FILE_TMP . '.php',
  49              _DIR_ETC . 'connect.php')) {
  50          copy(_FILE_CONNECT_INS . _FILE_TMP . '.php', 
  51               _DIR_ETC . 'connect.php');
  52          @unlink(_FILE_CONNECT_INS . _FILE_TMP . '.php');
  53      }
  54  
  55      # maintenant on connait le vrai charset du site s'il est deja configure
  56      # sinon par defaut inc/meta reglera _DEFAULT_CHARSET
  57      # (les donnees arrivent de toute facon postees en _DEFAULT_CHARSET)
  58      include_spip('inc/meta');
  59      lire_metas();
  60  
  61      if ($login) {
  62          include_spip('inc/charsets');
  63  
  64          $nom = (importer_charset($nom, _DEFAULT_CHARSET));
  65          $login = (importer_charset($login, _DEFAULT_CHARSET));
  66          $email = (importer_charset($email, _DEFAULT_CHARSET));
  67          # pour le passwd, bizarrement il faut le convertir comme s'il avait
  68          # ete tape en iso-8859-1 ; car c'est en fait ce que voit md5.js
  69          $pass = unicode2charset(utf_8_to_unicode($pass), 'iso-8859-1');
  70          $result = spip_query("SELECT id_auteur FROM spip_auteurs WHERE login=" . _q($login));
  71  
  72          unset($id_auteur);
  73          if ($row = spip_fetch_array($result)) $id_auteur = $row['id_auteur'];
  74  
  75          $mdpass = md5($pass);
  76          $htpass = generer_htpass($pass);
  77  
  78          if ($id_auteur) {
  79              spip_query("UPDATE spip_auteurs SET nom=" . _q($nom) . ", email=" . _q($email) . ", login=" . _q($login) . ", pass='$mdpass', alea_actuel='', alea_futur=FLOOR(32000*RAND()), htpass='$htpass', statut='0minirezo' WHERE id_auteur=$id_auteur");
  80          }
  81          else {
  82              spip_query("INSERT INTO spip_auteurs (nom, email, login, pass, htpass, alea_futur, statut) VALUES(" . _q($nom) . "," . _q($email) . "," . _q($login) . ",'$mdpass','$htpass',FLOOR(32000*RAND()),'0minirezo')");
  83          }
  84  
  85          // inserer email comme email webmaster principal
  86          spip_query("REPLACE spip_meta (nom, valeur) VALUES ('email_webmaster', " . _q($email) . ")");
  87      }
  88  
  89      include_spip('inc/config');
  90      init_config();
  91  
  92      include_spip('inc/acces');
  93      $htpasswd = _DIR_TMP . _AUTH_USER_FILE;
  94      @unlink($htpasswd);
  95      @unlink($htpasswd."-admin");
  96      ecrire_acces();
  97      ecrire_metas();
  98  
  99      if (!@rename(_FILE_CHMOD_INS . _FILE_TMP . '.php',
 100              _DIR_ETC . 'chmod.php')) {
 101          copy(_FILE_CHMOD_INS . _FILE_TMP . '.php', 
 102               _DIR_ETC . 'chmod.php');
 103          @unlink(_FILE_CHMOD_INS . _FILE_TMP . '.php');
 104      }
 105  
 106      echo "<form action='./' method='post'><div>";
 107      echo bouton_suivant();
 108      echo "</div></form>";
 109      echo install_fin_html();
 110  }
 111  
 112  ?>


Généré le : Wed Nov 21 10:20:27 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics