[ Index ]
 

Code source de SPIP 1.9.2c

Accédez au Source d'autres logiciels libres

title

Body

[fermer]

/ecrire/action/ -> export_all.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;
  14  
  15  include_spip('inc/export');
  16  include_spip('inc/actions');
  17  include_spip('inc/minipres');
  18  
  19  // http://doc.spip.org/@action_export_all_dist
  20  function action_export_all_dist()
  21  {
  22      global $connect_toutes_rubriques ;
  23  
  24      $securiser_action = charger_fonction('securiser_action', 'inc');
  25      $arg = $securiser_action();
  26  
  27      // determine upload va aussi initialiser connect_toutes_rubrique
  28      $dir = determine_upload();
  29      if ($connect_toutes_rubriques AND file_exists(_DIR_DUMP))
  30          $dir = _DIR_DUMP;
  31  
  32      list($quoi, $gz, $archive) = split(',', $arg);
  33      
  34      $file =  $dir . $archive;
  35      spip_log("action $arg $file");
  36      include_spip('inc/meta');
  37      if ($quoi =='start'){
  38          // creer l'en tete du fichier et retourner dans l'espace prive
  39          include_spip('inc/export');
  40          if (ecrire_fichier($file, export_entete(),false)) {
  41          
  42            ecrire_meta("status_dump", "$gz::$archive::1::0",'non');
  43            ecrire_metas();
  44            include_spip('inc/headers');
  45            redirige_par_entete(generer_url_ecrire('export_all'));
  46          } else {
  47              echo install_debut_html(_T('info_sauvegarde'));
  48            echo "<p>",
  49              _T('avis_erreur_sauvegarde', 
  50                 array('type'=>'.', 'id_objet'=>'. .')),
  51              "</p>\n";
  52            exit;
  53          }
  54      }elseif ($quoi=='end'){
  55          lire_metas();
  56          $tables_sauvegardees = isset($GLOBALS['meta']['status_dump_tables'])?unserialize($GLOBALS['meta']['status_dump_tables']):array();
  57          effacer_meta("status_dump");
  58          effacer_meta("status_dump_tables");
  59          ecrire_metas();
  60          
  61          include_spip('inc/lang');
  62          utiliser_langue_visiteur();
  63          
  64          $size = 0;
  65          if (file_exists($file))
  66              $size = filesize($file);
  67          $n = _T('taille_octets',
  68              array('taille' => number_format($size, 0, ' ', ' ')));
  69          $n = _T('info_sauvegarde_reussi_02',
  70              array('archive' => ':<br /><b>'.joli_repertoire($file)."</b> ($n)"));
  71      
  72          echo install_debut_html(_T('info_sauvegarde'));
  73          if (!$size) {
  74            echo _T('avis_erreur_sauvegarde', array('type'=>'.', 'id_objet'=>'. .'));
  75      
  76          } else {
  77              // ne pas effrayer inutilement: il peut y avoir moins de fichiers
  78              // qu'annonce' si certains etaient vides
  79          
  80              echo "<p style='text-align: left'>".
  81                $n,
  82              " <a href='" . _DIR_RESTREINT . "'>".
  83              _T('info_sauvegarde_reussi_03')
  84              . "</a> "
  85              ._T('info_sauvegarde_reussi_04')
  86              . "</p>\n";
  87              
  88              // afficher la liste des tables qu'on a sauvegarde
  89              $tables_sauvegardees = array_keys($tables_sauvegardees);
  90              sort($tables_sauvegardees);
  91              $n = floor(count($tables_sauvegardees)/2);
  92              echo "<div style='width:49%;float:left;'><ul><li>" . join('</li><li>', array_slice($tables_sauvegardees,0,$n)) . "</li></ul></div>";
  93              echo "<div style='width:49%;float:left;'><ul><li>" . join('</li><li>', array_slice($tables_sauvegardees,$n)) . "</li></ul></div>";
  94          }
  95          echo install_fin_html();
  96      }
  97  }
  98  ?>


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