diff --git a/medias_fonctions.php b/medias_fonctions.php index 796ee7ee09d57daf97aff8e5a6482cb5e74f922b..80659bc36b0dc7fe0f42809b5e4f7d01d5c37ade 100644 --- a/medias_fonctions.php +++ b/medias_fonctions.php @@ -33,6 +33,28 @@ if (isset($GLOBALS['visiteur_session']['zip_to_clean']) } session_set('zip_to_clean'); } +// capturer un formulaire post plus grand que post_max_size +// on genere un minipres car on ne peut rien faire de mieux +if ($_SERVER['REQUEST_METHOD']=='POST' and strlen($_SERVER['CONTENT_TYPE'])>0 and + substr($_SERVER['CONTENT_TYPE'], 0, 19)=='multipart/form-data' and + $_SERVER['CONTENT_LENGTH']>medias_inigetoctets('post_max_size')){ + include_spip('inc/minipres'); + echo minipres(_T('medias:upload_limit',array('max' => ini_get('post_max_size')))); + exit; +} +function medias_inigetoctets($var){ + $last = ''; + $val = trim(@ini_get($var)); + if ($val!=''){ + $last = strtolower($val[strlen($val)-1]); + } + switch ($last) { // The 'G' modifier is available since PHP 5.1.0 + case 'g': $val *= 1024; + case 'm': $val *= 1024; + case 'k': $val *= 1024; + } + return $val; +} /** * Afficher la puce de statut pour les documents diff --git a/paquet.xml b/paquet.xml index 0a40b0391eb7f59b74a2a8b60dc7185f0a5664c1..20969095dfbcd2a149296b92bdbe6655c6a6785c 100644 --- a/paquet.xml +++ b/paquet.xml @@ -1,7 +1,7 @@ <paquet prefix="medias" categorie="multimedia" - version="2.9.13" + version="2.9.14" etat="stable" compatibilite="[3.0.0;3.1.*]" logo="prive/themes/spip/images/portfolio-32.png"