diff --git a/base/medias.php b/base/medias.php index 6b22d115734fea97dc1e7e8a546e2dbefc10b8ed..207a7c2353156f24fe7b9f8bd666bfa91fabf957 100644 --- a/base/medias.php +++ b/base/medias.php @@ -187,6 +187,8 @@ function creer_base_types_doc($serveur='') { include_spip('base/typedoc'); include_spip('base/abstract_sql'); + $insertions = array(); + foreach ($tables_mime as $extension => $type_mime) { if (isset($tables_images[$extension])) { $titre = $tables_images[$extension]; @@ -212,17 +214,27 @@ function creer_base_types_doc($serveur='') { $media = "audio"; elseif (preg_match(",^video/,",$type_mime) OR in_array($type_mime,array('application/ogg','application/x-shockwave-flash','application/mp4'))) $media = "video"; - - // Init ou Re-init ==> replace pas insert - sql_replace('spip_types_documents', - array('mime_type' => $type_mime, - 'titre' => $titre, - 'inclus' => $inclus, - 'extension' => $extension, - 'media' => $media, - 'upload' => 'oui' - ), - '', $serveur); + + $insertions[] = array( + 'mime_type' => $type_mime, + 'titre' => $titre, + 'inclus' => $inclus, + 'extension' => $extension, + 'media' => $media, + 'upload' => 'oui' + ); + } + + if ($insertions) { + + // Re-init : replace + if (sql_countsel('spip_types_documents')) { + sql_replace_multi('spip_types_documents', $insertions, '', $serveur); + // Init : insert + } else { + sql_insertq_multi('spip_types_documents', $insertions, '', $serveur); + } + } } diff --git a/paquet.xml b/paquet.xml index 2760decfe555b5e73b2762f490efb8be1596fbe6..1af2b220b930cf02090c77bf97fb1c7768bba578 100644 --- a/paquet.xml +++ b/paquet.xml @@ -1,7 +1,7 @@ <paquet prefix="medias" categorie="multimedia" - version="2.4.0" + version="2.4.1" etat="test" compatibilite="[3.0.0-alpha2;[" logo="prive/themes/spip/images/portfolio-32.png"