[ Index ]
 

Code source de SPIP 1.9.2c

Accédez au Source d'autres logiciels libres

title

Body

[fermer]

/ecrire/action/ -> tester_taille.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  include_spip('inc/meta');
  15  include_spip('inc/headers');
  16  
  17  
  18  // Tester nos capacites a creer des images avec GD2 (taille memoire)
  19  // http://doc.spip.org/@action_tester_taille_dist
  20  function action_tester_taille_dist() {
  21      global $arg;
  22      //$securiser_action = charger_fonction('securiser_action', 'inc');
  23      //$arg = $securiser_action();
  24      $max_size = isset($GLOBALS['meta']['max_taille_vignettes'])?$GLOBALS['meta']['max_taille_vignettes']:0;
  25      $max_size_echec = isset($GLOBALS['meta']['max_taille_vignettes_echec'])?$GLOBALS['meta']['max_taille_vignettes_echec']:0;
  26      $max_size_test = isset($GLOBALS['meta']['max_taille_vignettes_test'])?$GLOBALS['meta']['max_taille_vignettes_test']:0;
  27      $taille = intval($arg);
  28      $file = _DIR_IMG_PACK . 'jauge-vert.gif';
  29      $file_size = 94;
  30      
  31      if (($s = $taille*$taille)>$max_size){
  32          if (!$max_size_echec OR $s < $max_size_echec) {
  33              include_spip('inc/filtres');
  34              // des inclusions representatives d'un hit prive et/ou public pour la conso memoire
  35              include_spip('public/assembler');
  36              include_spip('public/balises');
  37              include_spip('public/boucles');
  38              include_spip('public/cacher');
  39              include_spip('public/compiler');
  40              include_spip('public/composer');
  41              include_spip('public/criteres');
  42              include_spip('public/interfaces');
  43              include_spip('public/parametrer');
  44              include_spip('public/phraser_html');
  45              include_spip('public/references');
  46  
  47              include_spip('inc/presentation');
  48              include_spip('inc/charsets');
  49              include_spip('inc/documents');
  50              include_spip('inc/lang');
  51              include_spip('inc/texte');
  52              $dummy = propre("<doc1>");
  53  
  54              $image_source = _DIR_IMG_PACK."test.png";
  55              $res = spip_query("SELECT valeur FROM spip_meta WHERE nom='max_taille_vignettes_test'");
  56              if ($row = spip_fetch_array($res))
  57                  $max_size_test = $row['valeur'];
  58              if (!$max_size_test OR $max_size_test>$s)
  59                  ecrire_meta('max_taille_vignettes_test',$s,'non');
  60              $result = filtrer('image_recadre',$image_source,$taille,$taille);
  61              // on est ici, donc pas de plantage
  62              if ($max_size_test>$s)
  63                  ecrire_meta('max_taille_vignettes_test',$max_size_test,'non');
  64              else 
  65                  effacer_meta('max_taille_vignettes_test');
  66              $src = extraire_attribut($result,'src');
  67          }
  68          // et maintenant envoyer la vignette de tests
  69          if ($src) {
  70              ecrire_meta('max_taille_vignettes',$taille*$taille,'non');
  71              ecrire_metas();
  72              @unlink($src);
  73          }
  74          else {
  75              if (!$max_size_echec OR $s < $max_size_echec)
  76                  ecrire_meta('max_taille_vignettes_echec',$taille*$taille,'non');
  77              # image echec
  78              $file = _DIR_IMG_PACK . 'jauge-rouge.gif';
  79              $file_size = 84;
  80          }
  81      }
  82      
  83      header('Content-Type: image/gif');
  84      header("Content-Length: $file_size");
  85      header('Cache-Control: max-age=20');
  86      header('Pragma: public');
  87      readfile($file);
  88      exit;
  89  }
  90  
  91  ?>


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