Skip to content
Extraits de code Groupes Projets
Valider c849d245 rédigé par kent1@arscenic.info's avatar kent1@arscenic.info
Parcourir les fichiers

PSR, principalement des histoires de quotes

parent ece07248
Branches
Étiquettes
Aucune requête de fusion associée trouvée
Affichage de
avec 303 ajouts et 256 suppressions
...@@ -54,19 +54,19 @@ function medias_declarer_tables_interfaces($interfaces) { ...@@ -54,19 +54,19 @@ function medias_declarer_tables_interfaces($interfaces) {
function medias_declarer_tables_principales($tables_principales) { function medias_declarer_tables_principales($tables_principales) {
$spip_types_documents = array( $spip_types_documents = array(
"extension" => "varchar(10) DEFAULT '' NOT NULL", 'extension' => "varchar(10) DEFAULT '' NOT NULL",
"titre" => "text DEFAULT '' NOT NULL", 'titre' => "text DEFAULT '' NOT NULL",
"descriptif" => "text DEFAULT '' NOT NULL", 'descriptif' => "text DEFAULT '' NOT NULL",
"mime_type" => "varchar(100) DEFAULT '' NOT NULL", 'mime_type' => "varchar(100) DEFAULT '' NOT NULL",
"inclus" => "ENUM('non', 'image', 'embed') DEFAULT 'non' NOT NULL", 'inclus' => "ENUM('non', 'image', 'embed') DEFAULT 'non' NOT NULL",
"upload" => "ENUM('oui', 'non') DEFAULT 'oui' NOT NULL", 'upload' => "ENUM('oui', 'non') DEFAULT 'oui' NOT NULL",
"media_defaut" => "varchar(10) DEFAULT 'file' NOT NULL", 'media_defaut' => "varchar(10) DEFAULT 'file' NOT NULL",
"maj" => "TIMESTAMP" 'maj' => 'TIMESTAMP'
); );
$spip_types_documents_key = array( $spip_types_documents_key = array(
"PRIMARY KEY" => "extension", 'PRIMARY KEY' => 'extension',
"KEY inclus" => "inclus" 'KEY inclus' => 'inclus'
); );
$tables_principales['spip_types_documents'] = $tables_principales['spip_types_documents'] =
...@@ -84,17 +84,17 @@ function medias_declarer_tables_principales($tables_principales) { ...@@ -84,17 +84,17 @@ function medias_declarer_tables_principales($tables_principales) {
function medias_declarer_tables_auxiliaires($tables_auxiliaires) { function medias_declarer_tables_auxiliaires($tables_auxiliaires) {
$spip_documents_liens = array( $spip_documents_liens = array(
"id_document" => "bigint(21) DEFAULT '0' NOT NULL", 'id_document' => "bigint(21) DEFAULT '0' NOT NULL",
"id_objet" => "bigint(21) DEFAULT '0' NOT NULL", 'id_objet' => "bigint(21) DEFAULT '0' NOT NULL",
"objet" => "VARCHAR (25) DEFAULT '' NOT NULL", 'objet' => "VARCHAR (25) DEFAULT '' NOT NULL",
"vu" => "ENUM('non', 'oui') DEFAULT 'non' NOT NULL" 'vu' => "ENUM('non', 'oui') DEFAULT 'non' NOT NULL"
); );
$spip_documents_liens_key = array( $spip_documents_liens_key = array(
"PRIMARY KEY" => "id_document,id_objet,objet", 'PRIMARY KEY' => 'id_document,id_objet,objet',
"KEY id_document" => "id_document", 'KEY id_document' => 'id_document',
"KEY id_objet" => "id_objet", 'KEY id_objet' => 'id_objet',
"KEY objet" => "objet", 'KEY objet' => 'objet',
); );
$tables_auxiliaires['spip_documents_liens'] = array( $tables_auxiliaires['spip_documents_liens'] = array(
...@@ -112,7 +112,7 @@ function medias_declarer_tables_auxiliaires($tables_auxiliaires) { ...@@ -112,7 +112,7 @@ function medias_declarer_tables_auxiliaires($tables_auxiliaires) {
* @return array * @return array
*/ */
function medias_declarer_tables_objets_surnoms($surnoms) { function medias_declarer_tables_objets_surnoms($surnoms) {
$surnoms['type_document'] = "types_documents"; # hum $surnoms['type_document'] = 'types_documents'; # hum
#$surnoms['extension'] = "types_documents"; # hum #$surnoms['extension'] = "types_documents"; # hum
#$surnoms['type'] = "types_documents"; # a ajouter pour id_table_objet('type')=='extension' ? #$surnoms['type'] = "types_documents"; # a ajouter pour id_table_objet('type')=='extension' ?
return $surnoms; return $surnoms;
...@@ -137,34 +137,34 @@ function medias_declarer_tables_objets_sql($tables) { ...@@ -137,34 +137,34 @@ function medias_declarer_tables_objets_sql($tables) {
'date' => 'date', 'date' => 'date',
'principale' => 'oui', 'principale' => 'oui',
'field' => array( 'field' => array(
"id_document" => "bigint(21) NOT NULL", 'id_document' => 'bigint(21) NOT NULL',
"id_vignette" => "bigint(21) DEFAULT '0' NOT NULL", 'id_vignette' => "bigint(21) DEFAULT '0' NOT NULL",
"extension" => "VARCHAR(10) DEFAULT '' NOT NULL", 'extension' => "VARCHAR(10) DEFAULT '' NOT NULL",
"titre" => "text DEFAULT '' NOT NULL", 'titre' => "text DEFAULT '' NOT NULL",
"date" => "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL", 'date' => "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL",
"descriptif" => "text DEFAULT '' NOT NULL", 'descriptif' => "text DEFAULT '' NOT NULL",
"fichier" => "text NOT NULL DEFAULT ''", 'fichier' => "text NOT NULL DEFAULT ''",
"taille" => "bigint", 'taille' => 'bigint',
"largeur" => "integer", 'largeur' => 'integer',
"hauteur" => "integer", 'hauteur' => 'integer',
"media" => "varchar(10) DEFAULT 'file' NOT NULL", 'media' => "varchar(10) DEFAULT 'file' NOT NULL",
"mode" => "varchar(10) DEFAULT 'document' NOT NULL", 'mode' => "varchar(10) DEFAULT 'document' NOT NULL",
"distant" => "VARCHAR(3) DEFAULT 'non'", 'distant' => "VARCHAR(3) DEFAULT 'non'",
"statut" => "varchar(10) DEFAULT '0' NOT NULL", 'statut' => "varchar(10) DEFAULT '0' NOT NULL",
"credits" => "varchar(255) DEFAULT '' NOT NULL", 'credits' => "varchar(255) DEFAULT '' NOT NULL",
"date_publication" => "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL", 'date_publication' => "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL",
"brise" => "tinyint DEFAULT 0", 'brise' => 'tinyint DEFAULT 0',
"maj" => "TIMESTAMP" 'maj' => 'TIMESTAMP'
), ),
'key' => array( 'key' => array(
"PRIMARY KEY" => "id_document", 'PRIMARY KEY' => 'id_document',
"KEY id_vignette" => "id_vignette", 'KEY id_vignette' => 'id_vignette',
"KEY mode" => "mode", 'KEY mode' => 'mode',
"KEY extension" => "extension" 'KEY extension' => 'extension'
), ),
'join' => array( 'join' => array(
"id_document" => "id_document", 'id_document' => 'id_document',
"extension" => "extension" 'extension' => 'extension'
), ),
'statut' => array( 'statut' => array(
array( array(
...@@ -229,14 +229,13 @@ function medias_declarer_tables_objets_sql($tables) { ...@@ -229,14 +229,13 @@ function medias_declarer_tables_objets_sql($tables) {
* @param string $champ_media * @param string $champ_media
* @return void * @return void
*/ */
function creer_base_types_doc($serveur = '', $champ_media = "media_defaut") { function creer_base_types_doc($serveur = '', $champ_media = 'media_defaut') {
global $tables_images, $tables_sequences, $tables_documents, $tables_mime; global $tables_images, $tables_sequences, $tables_documents, $tables_mime;
include_spip('base/typedoc'); include_spip('base/typedoc');
include_spip('base/abstract_sql'); include_spip('base/abstract_sql');
// charger en memoire tous les types deja definis pour limiter les requettes // charger en memoire tous les types deja definis pour limiter les requettes
$rows = sql_allfetsel('mime_type,titre,inclus,extension,' . $champ_media . ',upload,descriptif', $rows = sql_allfetsel('mime_type,titre,inclus,extension,' . $champ_media . ',upload,descriptif', 'spip_types_documents', '', '', '', '', '', $serveur);
'spip_types_documents', '', '', '', '', '', $serveur);
$deja = array(); $deja = array();
foreach ($rows as $k => $row) { foreach ($rows as $k => $row) {
$deja[$row['extension']] = &$rows[$k]; $deja[$row['extension']] = &$rows[$k];
...@@ -264,15 +263,16 @@ function creer_base_types_doc($serveur = '', $champ_media = "media_defaut") { ...@@ -264,15 +263,16 @@ function creer_base_types_doc($serveur = '', $champ_media = "media_defaut") {
} }
// type de media // type de media
$media = "file"; $media = 'file';
if (preg_match(",^image/,", $type_mime) or in_array($type_mime, array('application/illustrator'))) { if (preg_match(',^image/,', $type_mime) or in_array($type_mime, array('application/illustrator'))) {
$media = "image"; $media = 'image';
} elseif (preg_match(",^audio/,", $type_mime)) { } elseif (preg_match(',^audio/,', $type_mime)) {
$media = "audio"; $media = 'audio';
} elseif (preg_match(",^video/,", $type_mime) or in_array($type_mime, } elseif (preg_match(',^video/,', $type_mime) or in_array(
array('application/ogg', 'application/x-shockwave-flash', 'application/mp4')) $type_mime,
) { array('application/ogg', 'application/x-shockwave-flash', 'application/mp4')
$media = "video"; )) {
$media = 'video';
} }
$set = array( $set = array(
...@@ -300,7 +300,6 @@ function creer_base_types_doc($serveur = '', $champ_media = "media_defaut") { ...@@ -300,7 +300,6 @@ function creer_base_types_doc($serveur = '', $champ_media = "media_defaut") {
if ($insertions) { if ($insertions) {
sql_insertq_multi('spip_types_documents', $insertions, '', $serveur); sql_insertq_multi('spip_types_documents', $insertions, '', $serveur);
} }
} }
......
...@@ -27,10 +27,11 @@ if (!defined('_ECRIRE_INC_VERSION')) { ...@@ -27,10 +27,11 @@ if (!defined('_ECRIRE_INC_VERSION')) {
* Environnement du formulaire * Environnement du formulaire
**/ **/
function formulaires_configurer_documents_charger_dist() { function formulaires_configurer_documents_charger_dist() {
$valeurs = array();
foreach (array( foreach (array(
"documents_objets", 'documents_objets',
"documents_date", 'documents_date',
) as $m) { ) as $m) {
$valeurs[$m] = isset($GLOBALS['meta'][$m]) ? $GLOBALS['meta'][$m] : ''; $valeurs[$m] = isset($GLOBALS['meta'][$m]) ? $GLOBALS['meta'][$m] : '';
} }
$valeurs['documents_objets'] = explode(',', $valeurs['documents_objets']); $valeurs['documents_objets'] = explode(',', $valeurs['documents_objets']);
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/ \***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
...@@ -28,12 +28,11 @@ function formulaires_editer_document_charger_dist( ...@@ -28,12 +28,11 @@ function formulaires_editer_document_charger_dist(
$row = array(), $row = array(),
$hidden = '' $hidden = ''
) { ) {
$valeurs = formulaires_editer_objet_charger('document', $id_document, $id_parent, $lier_trad, $retour, $config_fonc, $valeurs = formulaires_editer_objet_charger('document', $id_document, $id_parent, $lier_trad, $retour, $config_fonc, $row, $hidden);
$row, $hidden);
// relier les parents // relier les parents
$valeurs['parents'] = array(); $valeurs['parents'] = array();
$valeurs['_hidden'] = ""; $valeurs['_hidden'] = '';
$parents = sql_allfetsel('objet,id_objet', 'spip_documents_liens', 'id_document=' . intval($id_document)); $parents = sql_allfetsel('objet,id_objet', 'spip_documents_liens', 'id_document=' . intval($id_document));
foreach ($parents as $p) { foreach ($parents as $p) {
if (in_array($p['objet'], array('article', 'rubrique')) and $p['id_objet'] > 0) { if (in_array($p['objet'], array('article', 'rubrique')) and $p['id_objet'] > 0) {
...@@ -55,8 +54,11 @@ function formulaires_editer_document_charger_dist( ...@@ -55,8 +54,11 @@ function formulaires_editer_document_charger_dist(
$valeurs['_editer_dimension'] = autoriser('tailler', 'document', $id_document) ? ' ' : ''; $valeurs['_editer_dimension'] = autoriser('tailler', 'document', $id_document) ? ' ' : '';
// type du document et inclusion // type du document et inclusion
$row = sql_fetsel('titre as type_document,inclus', 'spip_types_documents', $row = sql_fetsel(
'extension=' . sql_quote($valeurs['extension'])); 'titre as type_document,inclus',
'spip_types_documents',
'extension=' . sql_quote($valeurs['extension'])
);
$valeurs['type_document'] = $row['type_document']; $valeurs['type_document'] = $row['type_document'];
$valeurs['_inclus'] = $row['inclus']; $valeurs['_inclus'] = $row['inclus'];
if (in_array($valeurs['extension'], array('jpg', 'gif', 'png'))) { if (in_array($valeurs['extension'], array('jpg', 'gif', 'png'))) {
...@@ -117,8 +119,7 @@ function formulaires_editer_document_verifier_dist( ...@@ -117,8 +119,7 @@ function formulaires_editer_document_verifier_dist(
$row = array(), $row = array(),
$hidden = '' $hidden = ''
) { ) {
$erreurs = formulaires_editer_objet_verifier('document', $id_document, $erreurs = formulaires_editer_objet_verifier('document', $id_document, is_numeric($id_document) ? array() : array('titre'));
is_numeric($id_document) ? array() : array('titre'));
// verifier l'upload si on a demande a changer le document // verifier l'upload si on a demande a changer le document
if (_request('joindre_upload') or _request('joindre_ftp') or _request('joindre_distant')) { if (_request('joindre_upload') or _request('joindre_ftp') or _request('joindre_distant')) {
...@@ -138,7 +139,7 @@ function formulaires_editer_document_verifier_dist( ...@@ -138,7 +139,7 @@ function formulaires_editer_document_verifier_dist(
} else { } else {
set_request('saisie_date', date('d/m/Y', $date)); set_request('saisie_date', date('d/m/Y', $date));
set_request('saisie_heure', date('H:i', $date)); set_request('saisie_heure', date('H:i', $date));
set_request('date', date("Y-m-d H:i:s", $date)); set_request('date', date('Y-m-d H:i:s', $date));
} }
} }
...@@ -167,8 +168,7 @@ function formulaires_editer_document_traiter_dist( ...@@ -167,8 +168,7 @@ function formulaires_editer_document_traiter_dist(
} }
} }
$res = formulaires_editer_objet_traiter('document', $id_document, $id_parent, $lier_trad, $retour, $config_fonc, $row, $res = formulaires_editer_objet_traiter('document', $id_document, $id_parent, $lier_trad, $retour, $config_fonc, $row, $hidden);
$hidden);
set_request('parents'); set_request('parents');
$autoclose = "<script type='text/javascript'>if (window.jQuery) jQuery.modalboxclose();</script>"; $autoclose = "<script type='text/javascript'>if (window.jQuery) jQuery.modalboxclose();</script>";
if (_request('copier_local') if (_request('copier_local')
...@@ -177,7 +177,7 @@ function formulaires_editer_document_traiter_dist( ...@@ -177,7 +177,7 @@ function formulaires_editer_document_traiter_dist(
or _request('joindre_distant') or _request('joindre_distant')
or _request('joindre_zip') or _request('joindre_zip')
) { ) {
$autoclose = ""; $autoclose = '';
if (_request('copier_local')) { if (_request('copier_local')) {
$copier_local = charger_fonction('copier_local', 'action'); $copier_local = charger_fonction('copier_local', 'action');
$res = array('editable' => true); $res = array('editable' => true);
...@@ -194,7 +194,6 @@ function formulaires_editer_document_traiter_dist( ...@@ -194,7 +194,6 @@ function formulaires_editer_document_traiter_dist(
and @file_exists($rename = get_spip_doc($ancien_fichier)) and @file_exists($rename = get_spip_doc($ancien_fichier))
) { ) {
@rename($rename, "$rename--.old"); @rename($rename, "$rename--.old");
} }
$traiter = charger_fonction('traiter', 'formulaires/joindre_document'); $traiter = charger_fonction('traiter', 'formulaires/joindre_document');
$res2 = $traiter($id_document); $res2 = $traiter($id_document);
...@@ -226,7 +225,7 @@ function formulaires_editer_document_traiter_dist( ...@@ -226,7 +225,7 @@ function formulaires_editer_document_traiter_dist(
$angle = 180; $angle = 180;
} }
if ($angle) { if ($angle) {
$autoclose = ""; $autoclose = '';
$tourner = charger_fonction('tourner', 'action'); $tourner = charger_fonction('tourner', 'action');
action_tourner_post($id_document, $angle); action_tourner_post($id_document, $angle);
} }
......
...@@ -10,14 +10,13 @@ ...@@ -10,14 +10,13 @@
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/ \***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
function formulaires_illustrer_document_charger_dist($id_document) { function formulaires_illustrer_document_charger_dist($id_document) {
include_spip('inc/documents'); include_spip('inc/documents');
$valeurs = sql_fetsel('id_document,mode,id_vignette,extension,media', 'spip_documents', $valeurs = sql_fetsel('id_document,mode,id_vignette,extension,media', 'spip_documents', 'id_document=' . intval($id_document));
'id_document=' . intval($id_document));
if (!$valeurs /*OR in_array($valeurs['extension'],array('jpg','gif','png'))*/) { if (!$valeurs /*OR in_array($valeurs['extension'],array('jpg','gif','png'))*/) {
return array('editable' => false, 'id' => $id_document); return array('editable' => false, 'id' => $id_document);
} }
...@@ -25,8 +24,7 @@ function formulaires_illustrer_document_charger_dist($id_document) { ...@@ -25,8 +24,7 @@ function formulaires_illustrer_document_charger_dist($id_document) {
$valeurs['id'] = $id_document; $valeurs['id'] = $id_document;
$valeurs['_hidden'] = "<input name='id_document' value='$id_document' type='hidden' />"; $valeurs['_hidden'] = "<input name='id_document' value='$id_document' type='hidden' />";
$valeurs['mode'] = 'vignette'; // pour les id dans le dom $valeurs['mode'] = 'vignette'; // pour les id dans le dom
$vignette = sql_fetsel('fichier,largeur,hauteur,id_document', 'spip_documents', $vignette = sql_fetsel('fichier,largeur,hauteur,id_document', 'spip_documents', 'id_document=' . $valeurs['id_vignette']);
'id_document=' . $valeurs['id_vignette']);
$valeurs['vignette'] = get_spip_doc($vignette['fichier']); $valeurs['vignette'] = get_spip_doc($vignette['fichier']);
$valeurs['hauteur'] = $vignette['hauteur']; $valeurs['hauteur'] = $vignette['hauteur'];
$valeurs['largeur'] = $vignette['largeur']; $valeurs['largeur'] = $vignette['largeur'];
...@@ -39,9 +37,7 @@ function formulaires_illustrer_document_charger_dist($id_document) { ...@@ -39,9 +37,7 @@ function formulaires_illustrer_document_charger_dist($id_document) {
function formulaires_illustrer_document_verifier_dist($id_document) { function formulaires_illustrer_document_verifier_dist($id_document) {
$erreurs = array(); $erreurs = array();
if (_request('supprimer')) { if (_request('supprimer')) {
} else { } else {
$id_vignette = sql_getfetsel('id_vignette', 'spip_documents', 'id_document=' . intval($id_document)); $id_vignette = sql_getfetsel('id_vignette', 'spip_documents', 'id_document=' . intval($id_document));
$verifier = charger_fonction('verifier', 'formulaires/joindre_document'); $verifier = charger_fonction('verifier', 'formulaires/joindre_document');
$erreurs = $verifier($id_vignette, 0, '', 'vignette'); $erreurs = $verifier($id_vignette, 0, '', 'vignette');
...@@ -72,7 +68,7 @@ function formulaires_illustrer_document_traiter_dist($id_document) { ...@@ -72,7 +68,7 @@ function formulaires_illustrer_document_traiter_dist($id_document) {
and $id_vignette = reset($ajoute) and $id_vignette = reset($ajoute)
) { ) {
include_spip('action/editer_document'); include_spip('action/editer_document');
document_modifier($id_document, array("id_vignette" => $id_vignette, 'mode' => 'document')); document_modifier($id_document, array('id_vignette' => $id_vignette, 'mode' => 'document'));
$res['message_ok'] = _T('medias:document_installe_succes'); $res['message_ok'] = _T('medias:document_installe_succes');
} else { } else {
$res['message_erreur'] = reset($ajoute); $res['message_erreur'] = reset($ajoute);
...@@ -83,5 +79,4 @@ function formulaires_illustrer_document_traiter_dist($id_document) { ...@@ -83,5 +79,4 @@ function formulaires_illustrer_document_traiter_dist($id_document) {
// generer les case docs si c'est necessaire // generer les case docs si c'est necessaire
// rediriger sinon // rediriger sinon
return $res; return $res;
} }
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
* *
* @package SPIP\Medias\Formulaires * @package SPIP\Medias\Formulaires
*/ */
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
...@@ -38,7 +38,8 @@ function joindre_determiner_mode($mode, $id_document, $objet) { ...@@ -38,7 +38,8 @@ function joindre_determiner_mode($mode, $id_document, $objet) {
} }
if (!in_array($mode, array('choix', 'document', 'image'))) { if (!in_array($mode, array('choix', 'document', 'image'))) {
$mode = 'choix'; $mode = 'choix';
if ($objet and !in_array(table_objet_sql($objet), explode(',', $GLOBALS['meta']["documents_objets"]))) { if ($objet
and !in_array(table_objet_sql($objet), explode(',', $GLOBALS['meta']['documents_objets']))) {
$mode = 'image'; $mode = 'image';
} }
} }
...@@ -87,24 +88,26 @@ function formulaires_joindre_document_charger_dist( ...@@ -87,24 +88,26 @@ function formulaires_joindre_document_charger_dist(
$valeurs['url'] = 'http://'; $valeurs['url'] = 'http://';
$valeurs['fichier_upload'] = $valeurs['_options_upload_ftp'] = $valeurs['_dir_upload_ftp'] = ''; $valeurs['fichier_upload'] = $valeurs['_options_upload_ftp'] = $valeurs['_dir_upload_ftp'] = '';
$valeurs['joindre_upload'] = $valeurs['joindre_distant'] = $valeurs['joindre_ftp'] = $valeurs['joindre_mediatheque'] = ''; $valeurs['joindre_upload'] = $valeurs['joindre_distant'] =
$valeurs['joindre_ftp'] = $valeurs['joindre_mediatheque'] = '';
$valeurs['editable'] = ' '; $valeurs['editable'] = ' ';
if (intval($id_document)) { if (intval($id_document)) {
$valeurs['editable'] = autoriser('modifier', 'document', $id_document) ? ' ' : ''; $valeurs['editable'] = autoriser('modifier', 'document', $id_document) ? ' ' : '';
} }
$valeurs['proposer_media'] = is_string($proposer_media) ? (preg_match('/^(false|non|no)$/i', $valeurs['proposer_media'] = is_string($proposer_media) ?
$proposer_media) ? false : true) : $proposer_media; (preg_match('/^(false|non|no)$/i', $proposer_media) ? false : true) : $proposer_media;
$valeurs['proposer_ftp'] = is_string($proposer_ftp) ? (preg_match('/^(false|non|no)$/i', $valeurs['proposer_ftp'] = is_string($proposer_ftp) ?
$proposer_ftp) ? false : true) : $proposer_ftp; (preg_match('/^(false|non|no)$/i', $proposer_ftp) ? false : true) : $proposer_ftp;
# regarder si un choix d'upload FTP est vraiment possible # regarder si un choix d'upload FTP est vraiment possible
if ( if (
$valeurs['proposer_ftp'] $valeurs['proposer_ftp']
and test_espace_prive() # ?? and test_espace_prive() # ??
and ($mode != 'image') and ($mode != 'vignette') # si c'est pour un document and ($mode != 'image') and ($mode != 'vignette') # si c'est pour un document
//AND !$vignette_de_doc # pas pour une vignette (NB: la ligne precedente suffit, mais si on la supprime il faut conserver ce test-ci) //AND !$vignette_de_doc
// pas pour une vignette (NB: la ligne precedente suffit, mais si on la supprime il faut conserver ce test-ci)
and $GLOBALS['flag_upload'] and $GLOBALS['flag_upload']
) { ) {
include_spip('inc/documents'); include_spip('inc/documents');
...@@ -114,7 +117,7 @@ function formulaires_joindre_document_charger_dist( ...@@ -114,7 +117,7 @@ function formulaires_joindre_document_charger_dist(
// s'il n'y en a pas, on affiche un message d'aide // s'il n'y en a pas, on affiche un message d'aide
// en mode document, mais pas en mode image // en mode document, mais pas en mode image
if ($valeurs['_options_upload_ftp'] or ($mode == 'document' or $mode == 'choix')) { if ($valeurs['_options_upload_ftp'] or ($mode == 'document' or $mode == 'choix')) {
$valeurs['_dir_upload_ftp'] = "<b>" . joli_repertoire($dir) . "</b>"; $valeurs['_dir_upload_ftp'] = '<b>' . joli_repertoire($dir) . '</b>';
} }
} }
} }
...@@ -215,8 +218,14 @@ function formulaires_joindre_document_verifier_dist( ...@@ -215,8 +218,14 @@ function formulaires_joindre_document_verifier_dist(
// on passe le md5 du fichier uniquement, on le retrouvera dans zip_to_clean de la session // on passe le md5 du fichier uniquement, on le retrouvera dans zip_to_clean de la session
$token_zip = md5($tmp_zip); $token_zip = md5($tmp_zip);
$erreurs['message_erreur'] = ''; $erreurs['message_erreur'] = '';
$erreurs['lister_contenu_archive'] = recuperer_fond("formulaires/inc-lister_archive_jointe", $erreurs['lister_contenu_archive'] = recuperer_fond(
array('chemin_zip' => $token_zip, 'liste_fichiers_zip' => $fichiers, 'erreurs_fichier_zip' => $erreurs)); 'formulaires/inc-lister_archive_jointe',
array(
'chemin_zip' => $token_zip,
'liste_fichiers_zip' => $fichiers,
'erreurs_fichier_zip' => $erreurs
)
);
} else { } else {
$erreurs['message_erreur'] = _T('medias:erreur_aucun_fichier'); $erreurs['message_erreur'] = _T('medias:erreur_aucun_fichier');
} }
...@@ -268,14 +277,15 @@ function formulaires_joindre_document_traiter_dist( ...@@ -268,14 +277,15 @@ function formulaires_joindre_document_traiter_dist(
$ancre = ''; $ancre = '';
// on joint un document deja dans le site // on joint un document deja dans le site
if (_request('joindre_mediatheque')) { if (_request('joindre_mediatheque')) {
$sel = array();
$refdoc_joindre = _request('refdoc_joindre'); $refdoc_joindre = _request('refdoc_joindre');
$refdoc_joindre = strtr($refdoc_joindre, ";,", " "); $refdoc_joindre = strtr($refdoc_joindre, ';,', ' ');
$refdoc_joindre = preg_replace(',\b(doc|document|img),', '', $refdoc_joindre); $refdoc_joindre = preg_replace(',\b(doc|document|img),', '', $refdoc_joindre);
// expliciter les intervales xxx-yyy // expliciter les intervales xxx-yyy
while (preg_match(",\b(\d+)-(\d+)\b,", $refdoc_joindre, $m)) { while (preg_match(",\b(\d+)-(\d+)\b,", $refdoc_joindre, $m)) {
$refdoc_joindre = str_replace($m[0], implode(" ", range($m[1], $m[2])), $refdoc_joindre); $refdoc_joindre = str_replace($m[0], implode(' ', range($m[1], $m[2])), $refdoc_joindre);
} }
$refdoc_joindre = explode(" ", $refdoc_joindre); $refdoc_joindre = explode(' ', $refdoc_joindre);
include_spip('action/editer_document'); include_spip('action/editer_document');
foreach ($refdoc_joindre as $j) { foreach ($refdoc_joindre as $j) {
if ($j = intval(preg_replace(',^(doc|document|img),', '', $j))) { if ($j = intval(preg_replace(',^(doc|document|img),', '', $j))) {
...@@ -290,8 +300,11 @@ function formulaires_joindre_document_traiter_dist( ...@@ -290,8 +300,11 @@ function formulaires_joindre_document_traiter_dist(
} }
} }
if ($sel) { if ($sel) {
$res['message_ok'] = singulier_ou_pluriel(count($sel), 'medias:document_attache_succes', $res['message_ok'] = singulier_ou_pluriel(
'medias:nb_documents_attache_succes'); count($sel),
'medias:document_attache_succes',
'medias:nb_documents_attache_succes'
);
} }
set_request('refdoc_joindre', ''); // vider la saisie set_request('refdoc_joindre', ''); // vider la saisie
} // sinon c'est un upload } // sinon c'est un upload
...@@ -313,7 +326,6 @@ function formulaires_joindre_document_traiter_dist( ...@@ -313,7 +326,6 @@ function formulaires_joindre_document_traiter_dist(
// checker les erreurs eventuelles // checker les erreurs eventuelles
$messages_erreur = array(); $messages_erreur = array();
$nb_docs = 0;
$sel = array(); $sel = array();
foreach ($nouveaux_doc as $doc) { foreach ($nouveaux_doc as $doc) {
if (!is_numeric($doc)) { if (!is_numeric($doc)) {
...@@ -332,15 +344,18 @@ function formulaires_joindre_document_traiter_dist( ...@@ -332,15 +344,18 @@ function formulaires_joindre_document_traiter_dist(
$res['message_erreur'] = implode('<br />', $messages_erreur); $res['message_erreur'] = implode('<br />', $messages_erreur);
} }
if ($sel) { if ($sel) {
$res['message_ok'] = singulier_ou_pluriel(count($sel), 'medias:document_installe_succes', $res['message_ok'] = singulier_ou_pluriel(
'medias:nb_documents_installe_succes'); count($sel),
'medias:document_installe_succes',
'medias:nb_documents_installe_succes'
);
} }
if ($ancre) { if ($ancre) {
$res['redirect'] = "#doc$ancre"; $res['redirect'] = "#doc$ancre";
} }
} }
if (count($sel) or isset($res['message_ok'])) { if (count($sel) or isset($res['message_ok'])) {
$callback = ""; $callback = '';
if ($ancre) { if ($ancre) {
$callback .= "jQuery('#doc$ancre a.editbox').eq(0).focus();"; $callback .= "jQuery('#doc$ancre a.editbox').eq(0).focus();";
} }
...@@ -348,7 +363,7 @@ function formulaires_joindre_document_traiter_dist( ...@@ -348,7 +363,7 @@ function formulaires_joindre_document_traiter_dist(
// passer les ids document selectionnes aux pipelines // passer les ids document selectionnes aux pipelines
$res['ids'] = $sel; $res['ids'] = $sel;
$sel = "#doc" . implode(",#doc", $sel); $sel = '#doc' . implode(',#doc', $sel);
$callback .= "jQuery('$sel').animateAppend();"; $callback .= "jQuery('$sel').animateAppend();";
} }
$js = "if (window.jQuery) jQuery(function(){ajaxReload('documents',{callback:function(){ $callback }});});"; $js = "if (window.jQuery) jQuery(function(){ajaxReload('documents',{callback:function(){ $callback }});});";
...@@ -384,7 +399,7 @@ function joindre_options_upload_ftp($dir, $mode = 'document') { ...@@ -384,7 +399,7 @@ function joindre_options_upload_ftp($dir, $mode = 'document') {
foreach ($fichiers as $f) { foreach ($fichiers as $f) {
$f = preg_replace(",^$dir,", '', $f); $f = preg_replace(",^$dir,", '', $f);
if (preg_match(",\.([^.]+)$,", $f, $match)) { if (preg_match(',\.([^.]+)$,', $f, $match)) {
$ext = strtolower($match[1]); $ext = strtolower($match[1]);
if (!isset($exts[$ext])) { if (!isset($exts[$ext])) {
include_spip('action/ajouter_documents'); include_spip('action/ajouter_documents');
...@@ -397,7 +412,7 @@ function joindre_options_upload_ftp($dir, $mode = 'document') { ...@@ -397,7 +412,7 @@ function joindre_options_upload_ftp($dir, $mode = 'document') {
} }
$k = 2 * substr_count($f, '/'); $k = 2 * substr_count($f, '/');
$n = strrpos($f, "/"); $n = strrpos($f, '/');
if ($n === false) { if ($n === false) {
$lefichier = $f; $lefichier = $f;
} else { } else {
...@@ -405,18 +420,18 @@ function joindre_options_upload_ftp($dir, $mode = 'document') { ...@@ -405,18 +420,18 @@ function joindre_options_upload_ftp($dir, $mode = 'document') {
$ledossier = substr($f, 0, $n); $ledossier = substr($f, 0, $n);
if (!in_array($ledossier, $dirs)) { if (!in_array($ledossier, $dirs)) {
$texte_upload[] = "\n<option value=\"$ledossier\">" $texte_upload[] = "\n<option value=\"$ledossier\">"
. str_repeat("&nbsp;", $k) . str_repeat('&nbsp;', $k)
. _T('medias:tout_dossier_upload', array('upload' => $ledossier)) . _T('medias:tout_dossier_upload', array('upload' => $ledossier))
. "</option>"; . '</option>';
$dirs[] = $ledossier; $dirs[] = $ledossier;
} }
} }
if ($exts[$ext] == 'oui') { if ($exts[$ext] == 'oui') {
$texte_upload[] = "\n<option value=\"$f\">" $texte_upload[] = "\n<option value=\"$f\">"
. str_repeat("&nbsp;", $k + 2) . str_repeat('&nbsp;', $k + 2)
. $lefichier . $lefichier
. "</option>"; . '</option>';
} }
} }
} }
...@@ -425,7 +440,7 @@ function joindre_options_upload_ftp($dir, $mode = 'document') { ...@@ -425,7 +440,7 @@ function joindre_options_upload_ftp($dir, $mode = 'document') {
if (count($texte_upload) > 1) { if (count($texte_upload) > 1) {
$texte = "\n<option value=\"/\" style='font-weight: bold;'>" $texte = "\n<option value=\"/\" style='font-weight: bold;'>"
. _T('medias:info_installer_tous_documents') . _T('medias:info_installer_tous_documents')
. "</option>" . $texte; . '</option>' . $texte;
} }
return $texte; return $texte;
...@@ -447,10 +462,9 @@ function joindre_liste_contenu_tailles_archive($files) { ...@@ -447,10 +462,9 @@ function joindre_liste_contenu_tailles_archive($files) {
if (is_array($files)) { if (is_array($files)) {
foreach ($files as $nom => $file) { foreach ($files as $nom => $file) {
$nom = translitteration($nom); $nom = translitteration($nom);
$date = date_interface(date("Y-m-d H:i:s", $file['mtime'])); $date = date_interface(date('Y-m-d H:i:s', $file['mtime']));
$taille = taille_en_octets($file['size']); $taille = taille_en_octets($file['size']);
$res .= "<li title=\"" . attribut_html($title) . "\"><b>$nom</b> &ndash; $taille<br />&nbsp; $date</li>\n"; $res .= '<li title="' . attribut_html($nom) . "\"><b>$nom</b> &ndash; $taille<br />&nbsp; $date</li>\n";
} }
} }
...@@ -468,16 +482,18 @@ function joindre_liste_contenu_tailles_archive($files) { ...@@ -468,16 +482,18 @@ function joindre_liste_contenu_tailles_archive($files) {
*/ */
function joindre_liste_erreurs_to_li($erreurs) { function joindre_liste_erreurs_to_li($erreurs) {
if (count($erreurs) == 1) { if (count($erreurs) == 1) {
return "<p>" . reset($erreurs) . "</p>"; return '<p>' . reset($erreurs) . '</p>';
} }
$res = implode("</li><li>", $erreurs); $res = implode('</li><li>', $erreurs);
if (strlen($res)) { if (strlen($res)) {
$res = "<li>$res</li></ul>"; $res = "<li>$res</li></ul>";
} }
if (count($erreurs) > 4) { if (count($erreurs) > 4) {
$res = "<p style='cursor:pointer;' onclick='jQuery(this).siblings(\"ul\").toggle();return false;'>" . _T("medias:erreurs_voir", $res = "<p style='cursor:pointer;' onclick='jQuery(this).siblings(\"ul\").toggle();return false;'>" . _T(
array('nb' => count($erreurs))) . "</p><ul class=\"spip none-js\">" . $res . "</ul>"; 'medias:erreurs_voir',
array('nb' => count($erreurs))
) . '</p><ul class="spip none-js">' . $res . '</ul>';
} else { } else {
$res = "<ul class=\"spip\">$res</ul>"; $res = "<ul class=\"spip\">$res</ul>";
} }
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
* *
* @package SPIP\Medias\Modes * @package SPIP\Medias\Modes
*/ */
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
* @package SPIP\Medias\Fonctions * @package SPIP\Medias\Fonctions
**/ **/
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
...@@ -39,7 +39,7 @@ function inc_documenter_objet_dist($id, $type) { ...@@ -39,7 +39,7 @@ function inc_documenter_objet_dist($id, $type) {
$spip_table_objet = table_objet_sql($type); $spip_table_objet = table_objet_sql($type);
$table_objet = table_objet($type); $table_objet = table_objet($type);
$id_table_objet = id_table_objet($type, $serveur); $id_table_objet = id_table_objet($type, $serveur);
$champs = sql_fetsel('*', $spip_table_objet, addslashes($id_table_objet) . "=" . intval($id)); $champs = sql_fetsel('*', $spip_table_objet, addslashes($id_table_objet) . '=' . intval($id));
$marquer_doublons_doc = charger_fonction('marquer_doublons_doc', 'inc'); $marquer_doublons_doc = charger_fonction('marquer_doublons_doc', 'inc');
$marquer_doublons_doc($champs, $id, $type, $id_table_objet, $table_objet, $spip_table_objet, '', $serveur); $marquer_doublons_doc($champs, $id, $type, $id_table_objet, $table_objet, $spip_table_objet, '', $serveur);
......
...@@ -15,7 +15,7 @@ if (!defined('_ECRIRE_INC_VERSION')) { ...@@ -15,7 +15,7 @@ if (!defined('_ECRIRE_INC_VERSION')) {
} }
// inclure les fonctions bases du core // inclure les fonctions bases du core
include_once _DIR_RESTREINT . "inc/documents.php"; include_once _DIR_RESTREINT . 'inc/documents.php';
include_spip('inc/actions'); // *action_auteur et determine_upload include_spip('inc/actions'); // *action_auteur et determine_upload
...@@ -32,7 +32,7 @@ if (!defined('CHARSET_JOINT')) { ...@@ -32,7 +32,7 @@ if (!defined('CHARSET_JOINT')) {
function contenu_document($arg, $charset = '') { function contenu_document($arg, $charset = '') {
include_spip('inc/distant'); include_spip('inc/distant');
if (is_numeric($arg)) { if (is_numeric($arg)) {
$r = sql_fetsel("fichier,distant", "spip_documents", "id_document=" . intval($arg)); $r = sql_fetsel('fichier,distant', 'spip_documents', 'id_document=' . intval($arg));
if (!$r) { if (!$r) {
return ''; return '';
} }
...@@ -69,7 +69,7 @@ function generer_url_document_dist($id_document, $args = '', $ancre = '') { ...@@ -69,7 +69,7 @@ function generer_url_document_dist($id_document, $args = '', $ancre = '') {
return ''; return '';
} }
$r = sql_fetsel("fichier,distant", "spip_documents", "id_document=" . intval($id_document)); $r = sql_fetsel('fichier,distant', 'spip_documents', 'id_document=' . intval($id_document));
if (!$r) { if (!$r) {
return ''; return '';
...@@ -91,12 +91,16 @@ function generer_url_document_dist($id_document, $args = '', $ancre = '') { ...@@ -91,12 +91,16 @@ function generer_url_document_dist($id_document, $args = '', $ancre = '') {
include_spip('inc/securiser_action'); include_spip('inc/securiser_action');
// cette action doit etre publique ! // cette action doit etre publique !
return generer_url_action('acceder_document', return generer_url_action(
$args . ($args ? "&" : '') 'acceder_document',
. 'arg=' . $id_document $args . ($args ? '&' : '')
. ($ancre ? "&ancre=$ancre" : '') . 'arg=' . $id_document
. '&cle=' . calculer_cle_action($id_document . ',' . $f) . ($ancre ? "&ancre=$ancre" : '')
. '&file=' . rawurlencode($f), true, true); . '&cle=' . calculer_cle_action($id_document . ',' . $f)
. '&file=' . rawurlencode($f),
true,
true
);
} }
// //
...@@ -116,19 +120,19 @@ function vignette_automatique($img, $doc, $lien, $x = 0, $y = 0, $align = '', $c ...@@ -116,19 +120,19 @@ function vignette_automatique($img, $doc, $lien, $x = 0, $y = 0, $align = '', $c
$e = $doc['extension']; $e = $doc['extension'];
if (!$img) { if (!$img) {
if ($img = image_du_document($doc)) { if ($img = image_du_document($doc)) {
if (!$x and !$y) // eviter une double reduction if (!$x and !$y) {
{ // eviter une double reduction
$img = image_reduire($img); $img = image_reduire($img);
} }
} else { } else {
$f = charger_fonction('vignette', 'inc'); $f = charger_fonction('vignette', 'inc');
$img = $f($e, false); $img = $f($e, false);
$size = @getimagesize($img); $size = @getimagesize($img);
$img = "<img src='$img' " . $size[3] . " />"; $img = "<img src='$img' " . $size[3] . ' />';
} }
} else { } else {
$size = @getimagesize($img); $size = @getimagesize($img);
$img = "<img src='$img' " . $size[3] . " />"; $img = "<img src='$img' " . $size[3] . ' />';
} }
// on appelle image_reduire independamment de la presence ou non // on appelle image_reduire independamment de la presence ou non
// des librairies graphiques // des librairies graphiques
...@@ -147,10 +151,10 @@ function vignette_automatique($img, $doc, $lien, $x = 0, $y = 0, $align = '', $c ...@@ -147,10 +151,10 @@ function vignette_automatique($img, $doc, $lien, $x = 0, $y = 0, $align = '', $c
} }
$titre = supprimer_tags(typo($doc['titre'])); $titre = supprimer_tags(typo($doc['titre']));
$titre = " - " . taille_en_octets($doc['taille']) $titre = ' - ' . taille_en_octets($doc['taille'])
. ($titre ? " - $titre" : ""); . ($titre ? " - $titre" : '');
$type = sql_fetsel('titre, mime_type', 'spip_types_documents', "extension = " . sql_quote($e)); $type = sql_fetsel('titre, mime_type', 'spip_types_documents', 'extension = ' . sql_quote($e));
$mime = $type['mime_type']; $mime = $type['mime_type'];
$titre = attribut_html(couper($type['titre'] . $titre, 80)); $titre = attribut_html(couper($type['titre'] . $titre, 80));
...@@ -201,7 +205,7 @@ function image_du_document($document) { ...@@ -201,7 +205,7 @@ function image_du_document($document) {
* @return string * @return string
* Code HTML permettant de gérer des documents * Code HTML permettant de gérer des documents
*/ */
function afficher_documents_colonne($id, $type = "article", $script = null) { function afficher_documents_colonne($id, $type = 'article', $script = null) {
return recuperer_fond('prive/objets/editer/colonne_document', array('objet' => $type, 'id_objet' => $id)); return recuperer_fond('prive/objets/editer/colonne_document', array('objet' => $type, 'id_objet' => $id));
} }
...@@ -224,12 +228,16 @@ function afficher_documents_colonne($id, $type = "article", $script = null) { ...@@ -224,12 +228,16 @@ function afficher_documents_colonne($id, $type = "article", $script = null) {
**/ **/
function affiche_raccourci_doc($doc, $id, $align) { function affiche_raccourci_doc($doc, $id, $align) {
static $num = 0; static $num = 0;
$pipe = $onclick = ""; $pipe = $onclick = '';
if ($align) { if ($align) {
$pipe = "|$align"; $pipe = "|$align";
$onclick = "\nondblclick=\"barre_inserer('\\x3C$doc$id$pipe&gt;', $('textarea[name=texte]')[0]);\"\ntitle=\"" . str_replace('&amp;', $onclick = "\nondblclick=\"barre_inserer('\\x3C$doc$id$pipe&gt;', $('textarea[name=texte]')[0]);\"\ntitle=\"" .
'&', entites_html(_T('medias:double_clic_inserer_doc'))) . "\""; str_replace(
'&amp;',
'&',
entites_html(_T('medias:double_clic_inserer_doc'))
) . '"';
} else { } else {
$align = 'center'; $align = 'center';
} }
......
...@@ -28,7 +28,7 @@ if (!defined('_ECRIRE_INC_VERSION')) { ...@@ -28,7 +28,7 @@ if (!defined('_ECRIRE_INC_VERSION')) {
} }
// inclure les fonctions bases du core // inclure les fonctions bases du core
include_once _DIR_RESTREINT . "inc/documents.php"; include_once _DIR_RESTREINT . 'inc/documents.php';
include_spip('inc/minipres'); include_spip('inc/minipres');
...@@ -44,13 +44,15 @@ include_spip('inc/minipres'); ...@@ -44,13 +44,15 @@ include_spip('inc/minipres');
function erreur_upload_trop_gros() { function erreur_upload_trop_gros() {
include_spip('inc/filtres'); include_spip('inc/filtres');
$msg = "<p>" $msg = '<p>'
. taille_en_octets($_SERVER["CONTENT_LENGTH"]) . taille_en_octets($_SERVER['CONTENT_LENGTH'])
. '<br />' . '<br />'
. _T('medias:upload_limit', . _T(
array('max' => ini_get('upload_max_filesize'))) 'medias:upload_limit',
. "</p>"; array('max' => ini_get('upload_max_filesize'))
)
. '</p>';
echo minipres(_T('pass_erreur'), "<div class='upload_answer upload_error'>" . $msg . "</div>"); echo minipres(_T('pass_erreur'), "<div class='upload_answer upload_error'>" . $msg . '</div>');
exit; exit;
} }
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/ \***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
...@@ -107,8 +107,8 @@ function joindre_trouver_fichier_envoye() { ...@@ -107,8 +107,8 @@ function joindre_trouver_fichier_envoye() {
$upload .= $path; $upload .= $path;
} }
if (!is_dir($upload)) // seul un fichier est demande if (!is_dir($upload)) {
{ // seul un fichier est demande
return array( return array(
array( array(
'name' => basename($upload), 'name' => basename($upload),
...@@ -128,22 +128,24 @@ function joindre_trouver_fichier_envoye() { ...@@ -128,22 +128,24 @@ function joindre_trouver_fichier_envoye() {
return $files; return $files;
} }
} elseif (_request('joindre_zip') and $token_zip = _request('chemin_zip')) { } elseif (_request('joindre_zip') and $token_zip = _request('chemin_zip')) {
$zip_to_clean = (isset($GLOBALS['visiteur_session']['zip_to_clean']) ?
$zip_to_clean = (isset($GLOBALS['visiteur_session']['zip_to_clean']) ? unserialize($GLOBALS['visiteur_session']['zip_to_clean']) : array()); unserialize($GLOBALS['visiteur_session']['zip_to_clean']) : array());
if (!$zip_to_clean or !isset($zip_to_clean[$token_zip]) or !$path = $zip_to_clean[$token_zip]){ if (!$zip_to_clean
or !isset($zip_to_clean[$token_zip])
or !$path = $zip_to_clean[$token_zip]) {
return _T('avis_operation_impossible'); return _T('avis_operation_impossible');
} }
include_spip('inc/documents'); //pour creer_repertoire_documents include_spip('inc/documents'); //pour creer_repertoire_documents
define('_tmp_zip', $path); define('_TMP_ZIP', $path);
define('_tmp_dir', creer_repertoire_documents(md5($path . $GLOBALS['visiteur_session']['id_auteur']))); define('_TMP_DIR', creer_repertoire_documents(md5($path . $GLOBALS['visiteur_session']['id_auteur'])));
if (_tmp_dir == _DIR_IMG) { if (_TMP_DIR == _DIR_IMG) {
return _T('avis_operation_impossible'); return _T('avis_operation_impossible');
} }
$files = array(); $files = array();
if (_request('options_upload_zip') == 'deballe') { if (_request('options_upload_zip') == 'deballe') {
$files = joindre_deballer_lister_zip($path, _tmp_dir); $files = joindre_deballer_lister_zip($path, _TMP_DIR);
} }
// si le zip doit aussi etre conserve, l'ajouter // si le zip doit aussi etre conserve, l'ajouter
...@@ -153,9 +155,7 @@ function joindre_trouver_fichier_envoye() { ...@@ -153,9 +155,7 @@ function joindre_trouver_fichier_envoye() {
'tmp_name' => $path, 'tmp_name' => $path,
); );
} }
return $files; return $files;
} }
return array(); return array();
...@@ -173,41 +173,43 @@ function joindre_upload_error($error) { ...@@ -173,41 +173,43 @@ function joindre_upload_error($error) {
} }
spip_log("Erreur upload $error -- cf. http://php.net/manual/fr/features.file-upload.errors.php"); spip_log("Erreur upload $error -- cf. http://php.net/manual/fr/features.file-upload.errors.php");
switch ($error) { switch ($error) {
case 4: /* UPLOAD_ERR_NO_FILE */ case 4: /* UPLOAD_ERR_NO_FILE */
return true; return true;
# on peut affiner les differents messages d'erreur # on peut affiner les differents messages d'erreur
case 1: /* UPLOAD_ERR_INI_SIZE */ case 1: /* UPLOAD_ERR_INI_SIZE */
$msg = _T('medias:upload_limit', $msg = _T(
array('max' => ini_get('upload_max_filesize'))); 'medias:upload_limit',
array('max' => ini_get('upload_max_filesize'))
);
break; break;
case 2: /* UPLOAD_ERR_FORM_SIZE */ case 2: /* UPLOAD_ERR_FORM_SIZE */
$msg = _T('medias:upload_limit', $msg = _T(
array('max' => ini_get('upload_max_filesize'))); 'medias:upload_limit',
array('max' => ini_get('upload_max_filesize'))
);
break; break;
case 3: /* UPLOAD_ERR_PARTIAL */ case 3: /* UPLOAD_ERR_PARTIAL */
$msg = _T('medias:upload_limit', $msg = _T(
array('max' => ini_get('upload_max_filesize'))); 'medias:upload_limit',
array('max' => ini_get('upload_max_filesize'))
);
break; break;
case 6: /* UPLOAD_ERR_NO_TMP_DIR */ case 6: /* UPLOAD_ERR_NO_TMP_DIR */
$msg = _T('medias:erreur_dossier_tmp_manquant'); $msg = _T('medias:erreur_dossier_tmp_manquant');
break; break;
case 7: /* UPLOAD_ERR_CANT_WRITE */ case 7: /* UPLOAD_ERR_CANT_WRITE */
$msg = _T('medias:erreur_ecriture_fichier'); $msg = _T('medias:erreur_ecriture_fichier');
break;
default: /* autre */ default: /* autre */
if (!$msg) { if (!$msg) {
$msg = _T('pass_erreur') . ' ' . $error $msg = _T('pass_erreur') . ' ' . $error
. '<br />' . propre("[->http://php.net/manual/fr/features.file-upload.errors.php]"); . '<br />' . propre('[->http://php.net/manual/fr/features.file-upload.errors.php]');
} }
break; break;
} }
spip_log("erreur upload $error"); spip_log("erreur upload $error");
return $msg; return $msg;
} }
/** /**
...@@ -225,13 +227,13 @@ function joindre_verifier_zip($files) { ...@@ -225,13 +227,13 @@ function joindre_verifier_zip($files) {
(preg_match('/\.zip$/i', $files[0]['name']) (preg_match('/\.zip$/i', $files[0]['name'])
or (isset($files[0]['type']) and $files[0]['type'] == 'application/zip')) or (isset($files[0]['type']) and $files[0]['type'] == 'application/zip'))
) { ) {
// on pose le fichier dans le repertoire zip // on pose le fichier dans le repertoire zip
// (nota : copier_document n'ecrase pas un fichier avec lui-meme // (nota : copier_document n'ecrase pas un fichier avec lui-meme
// ca autorise a boucler) // ca autorise a boucler)
include_spip('inc/getdocument'); include_spip('inc/getdocument');
$desc = $files[0]; $desc = $files[0];
$zip = copier_document("zip", $zip = copier_document(
'zip',
$desc['name'], $desc['name'],
$desc['tmp_name'] $desc['tmp_name']
); );
...@@ -241,10 +243,11 @@ function joindre_verifier_zip($files) { ...@@ -241,10 +243,11 @@ function joindre_verifier_zip($files) {
if ($zip if ($zip
and $archive = new PclZip($zip) and $archive = new PclZip($zip)
and $contenu = joindre_decrire_contenu_zip($archive) and $contenu = joindre_decrire_contenu_zip($archive)
and $tmp = sous_repertoire(_DIR_TMP, "zip") and $tmp = sous_repertoire(_DIR_TMP, 'zip')
and rename($zip, $tmp = $tmp . basename($zip)) and rename($zip, $tmp = $tmp . basename($zip))
) { ) {
$zip_to_clean = (isset($GLOBALS['visiteur_session']['zip_to_clean']) ? unserialize($GLOBALS['visiteur_session']['zip_to_clean']) : array()); $zip_to_clean = (isset($GLOBALS['visiteur_session']['zip_to_clean']) ?
unserialize($GLOBALS['visiteur_session']['zip_to_clean']) : array());
$zip_to_clean[md5($tmp)] = $tmp; $zip_to_clean[md5($tmp)] = $tmp;
session_set('zip_to_clean', serialize($zip_to_clean)); session_set('zip_to_clean', serialize($zip_to_clean));
$contenu[] = $tmp; $contenu[] = $tmp;
...@@ -302,8 +305,10 @@ function joindre_deballer_lister_zip($path, $tmp_dir) { ...@@ -302,8 +305,10 @@ function joindre_deballer_lister_zip($path, $tmp_dir) {
include_spip('inc/pclzip'); include_spip('inc/pclzip');
$archive = new PclZip($path); $archive = new PclZip($path);
$archive->extract( $archive->extract(
PCLZIP_OPT_PATH, _tmp_dir, PCLZIP_OPT_PATH,
PCLZIP_CB_PRE_EXTRACT, 'callback_deballe_fichier' _TMP_DIR,
PCLZIP_CB_PRE_EXTRACT,
'callback_deballe_fichier'
); );
if ($contenu = joindre_decrire_contenu_zip($archive)) { if ($contenu = joindre_decrire_contenu_zip($archive)) {
$files = array(); $files = array();
...@@ -338,12 +343,16 @@ if (!function_exists('fixer_extension_document')) { ...@@ -338,12 +343,16 @@ if (!function_exists('fixer_extension_document')) {
$extension = ''; $extension = '';
$name = $doc['name']; $name = $doc['name'];
if (preg_match(',\.([^.]+)$,', $name, $r) if (preg_match(',\.([^.]+)$,', $name, $r)
and $t = sql_fetsel("extension", "spip_types_documents", "extension=" . sql_quote(corriger_extension($r[1]))) and $t = sql_fetsel(
'extension',
'spip_types_documents',
'extension=' . sql_quote(corriger_extension($r[1]))
)
) { ) {
$extension = $t['extension']; $extension = $t['extension'];
$name = preg_replace(',\.[^.]*$,', '', $doc['name']) . '.' . $extension; $name = preg_replace(',\.[^.]*$,', '', $doc['name']) . '.' . $extension;
} else { } else {
if ($t = sql_fetsel("extension", "spip_types_documents", "mime_type=" . sql_quote($doc['type']))) { if ($t = sql_fetsel('extension', 'spip_types_documents', 'mime_type=' . sql_quote($doc['type']))) {
$extension = $t['extension']; $extension = $t['extension'];
$name = preg_replace(',\.[^.]*$,', '', $doc['name']) . '.' . $extension; $name = preg_replace(',\.[^.]*$,', '', $doc['name']) . '.' . $extension;
} }
...@@ -359,13 +368,16 @@ if (!function_exists('fixer_extension_document')) { ...@@ -359,13 +368,16 @@ if (!function_exists('fixer_extension_document')) {
// http://code.spip.net/@accepte_fichier_upload // http://code.spip.net/@accepte_fichier_upload
function accepte_fichier_upload($f) { function accepte_fichier_upload($f) {
if (!preg_match(",.*__MACOSX/,", $f) if (!preg_match(',.*__MACOSX/,', $f)
and !preg_match(",^\.,", basename($f)) and !preg_match(',^\.,', basename($f))
) { ) {
include_spip('action/ajouter_documents'); include_spip('action/ajouter_documents');
$ext = corriger_extension((strtolower(substr(strrchr($f, "."), 1)))); $ext = corriger_extension((strtolower(substr(strrchr($f, '.'), 1))));
return sql_countsel('spip_types_documents', "extension=" . sql_quote($ext) . " AND upload='oui'"); return sql_countsel(
'spip_types_documents',
'extension=' . sql_quote($ext) . " AND upload='oui'"
);
} }
} }
...@@ -375,7 +387,7 @@ function accepte_fichier_upload($f) { ...@@ -375,7 +387,7 @@ function accepte_fichier_upload($f) {
function callback_deballe_fichier($p_event, &$p_header) { function callback_deballe_fichier($p_event, &$p_header) {
if (accepte_fichier_upload($p_header['filename'])) { if (accepte_fichier_upload($p_header['filename'])) {
$p_header['filename'] = _tmp_dir . basename($p_header['filename']); $p_header['filename'] = _TMP_DIR . basename($p_header['filename']);
return 1; return 1;
} else { } else {
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
* @package SPIP\Medias\Fonctions * @package SPIP\Medias\Fonctions
**/ **/
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
...@@ -114,7 +114,7 @@ function inc_marquer_doublons_doc_dist( ...@@ -114,7 +114,7 @@ function inc_marquer_doublons_doc_dist(
$GLOBALS['doublons_documents_inclus'] = array(); $GLOBALS['doublons_documents_inclus'] = array();
// detecter les doublons dans ces textes // detecter les doublons dans ces textes
traiter_modeles(implode(" ", $champs), array('documents' => $modeles), '', '', null, array( traiter_modeles(implode(' ', $champs), array('documents' => $modeles), '', '', null, array(
'objet' => $type, 'objet' => $type,
'id_objet' => $id, 'id_objet' => $id,
$id_table_objet => $id $id_table_objet => $id
...@@ -141,7 +141,7 @@ function inc_marquer_doublons_doc_dist( ...@@ -141,7 +141,7 @@ function inc_marquer_doublons_doc_dist(
if ($nouveaux) { if ($nouveaux) {
// on vérifie que les documents indiqués vus existent réellement tout de même (en cas d'erreur de saisie) // on vérifie que les documents indiqués vus existent réellement tout de même (en cas d'erreur de saisie)
$ids = sql_allfetsel("id_document", "spip_documents", sql_in('id_document', $nouveaux)); $ids = sql_allfetsel('id_document', 'spip_documents', sql_in('id_document', $nouveaux));
$ids = array_map('reset', $ids); $ids = array_map('reset', $ids);
if ($ids) { if ($ids) {
// Creer le lien s'il n'existe pas déjà // Creer le lien s'il n'existe pas déjà
...@@ -153,5 +153,4 @@ function inc_marquer_doublons_doc_dist( ...@@ -153,5 +153,4 @@ function inc_marquer_doublons_doc_dist(
if ($anciens) { if ($anciens) {
objet_qualifier_liens(array('document' => $anciens), array($type => $id), array('vu' => 'non')); objet_qualifier_liens(array('document' => $anciens), array($type => $id), array('vu' => 'non'));
} }
} }
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
* @package SPIP\Medias\Renseigner * @package SPIP\Medias\Renseigner
**/ **/
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
...@@ -113,7 +113,6 @@ function renseigner_taille_dimension_image($fichier, $ext, $distant = false) { ...@@ -113,7 +113,6 @@ function renseigner_taille_dimension_image($fichier, $ext, $distant = false) {
or !@file_exists($fichier) or !@file_exists($fichier)
or !$infos['taille'] = @intval(filesize($fichier)) or !$infos['taille'] = @intval(filesize($fichier))
) { ) {
if ($distant) { if ($distant) {
// on ne saura pas la taille // on ne saura pas la taille
unset($infos['taille']); unset($infos['taille']);
...@@ -136,17 +135,19 @@ function renseigner_taille_dimension_image($fichier, $ext, $distant = false) { ...@@ -136,17 +135,19 @@ function renseigner_taille_dimension_image($fichier, $ext, $distant = false) {
// chercher une fonction de description // chercher une fonction de description
$meta = array(); $meta = array();
if ($metadata = charger_fonction($ext, "metadata", true)) { if ($metadata = charger_fonction($ext, 'metadata', true)) {
$meta = $metadata($fichier); $meta = $metadata($fichier);
} else { } else {
$media = sql_getfetsel('media_defaut', 'spip_types_documents', 'extension=' . sql_quote($ext)); $media = sql_getfetsel('media_defaut', 'spip_types_documents', 'extension=' . sql_quote($ext));
if ($metadata = charger_fonction($media, "metadata", true)) { if ($metadata = charger_fonction($media, 'metadata', true)) {
$meta = $metadata($fichier); $meta = $metadata($fichier);
} }
} }
$meta = pipeline('renseigner_document', $meta = pipeline(
array('args' => array('extension' => $ext, 'fichier' => $fichier), 'data' => $meta)); 'renseigner_document',
array('args' => array('extension' => $ext, 'fichier' => $fichier), 'data' => $meta)
);
include_spip('inc/filtres'); # pour objet_info() include_spip('inc/filtres'); # pour objet_info()
$editables = objet_info('document', 'champs_editables'); $editables = objet_info('document', 'champs_editables');
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/ \***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/ \***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
......
...@@ -48,7 +48,7 @@ function inc_vignette_dist($ext, $size = true, $loop = true) { ...@@ -48,7 +48,7 @@ function inc_vignette_dist($ext, $size = true, $loop = true) {
// dans les vignettes persos, ou dans les vignettes standard // dans les vignettes persos, ou dans les vignettes standard
if ( if (
# installation dans un dossier /vignettes personnel, par exemple /squelettes/vignettes # installation dans un dossier /vignettes personnel, par exemple /squelettes/vignettes
!$v = find_in_path("prive/vignettes/" . $ext . ".png") !$v = find_in_path('prive/vignettes/' . $ext . '.png')
) { ) {
if ($loop) { if ($loop) {
$f = charger_fonction('vignette', 'inc'); $f = charger_fonction('vignette', 'inc');
......
...@@ -30,17 +30,17 @@ function medias_check_statuts($affiche = false) { ...@@ -30,17 +30,17 @@ function medias_check_statuts($affiche = false) {
// utiliser sql_allfetsel pour clore la requete avant la mise a jour en base sur chaque doc (sqlite) // utiliser sql_allfetsel pour clore la requete avant la mise a jour en base sur chaque doc (sqlite)
// iterer par groupe de 100 pour ne pas exploser sur les grosses bases // iterer par groupe de 100 pour ne pas exploser sur les grosses bases
$docs = array_map('reset', sql_allfetsel('id_document', 'spip_documents', "statut='0'", '', '', "0,100")); $docs = array_map('reset', sql_allfetsel('id_document', 'spip_documents', "statut='0'", '', '', '0,100'));
while (count($docs)) { while (count($docs)) {
include_spip('action/editer_document'); include_spip('action/editer_document');
foreach ($docs as $id_document) // mettre a jour le statut si necessaire foreach ($docs as $id_document) {
{ // mettre a jour le statut si necessaire
instituer_document($id_document); instituer_document($id_document);
} }
if ($affiche) { if ($affiche) {
echo " ."; echo ' .';
} }
$docs = array_map('reset', sql_allfetsel('id_document', 'spip_documents', "statut='0'", '', '', "0,100")); $docs = array_map('reset', sql_allfetsel('id_document', 'spip_documents', "statut='0'", '', '', '0,100'));
} }
} }
...@@ -87,7 +87,7 @@ function medias_upgrade($nom_meta_base_version, $version_cible) { ...@@ -87,7 +87,7 @@ function medias_upgrade($nom_meta_base_version, $version_cible) {
array('medias_check_statuts', true), array('medias_check_statuts', true),
); );
$maj['0.5.0'] = array( $maj['0.5.0'] = array(
array('sql_alter', "TABLE spip_documents ADD brise tinyint DEFAULT 0"), array('sql_alter', 'TABLE spip_documents ADD brise tinyint DEFAULT 0'),
); );
$maj['0.6.0'] = array( $maj['0.6.0'] = array(
array('sql_alter', "TABLE spip_types_documents ADD media varchar(10) DEFAULT 'file' NOT NULL"), array('sql_alter', "TABLE spip_types_documents ADD media varchar(10) DEFAULT 'file' NOT NULL"),
...@@ -110,7 +110,7 @@ function medias_upgrade($nom_meta_base_version, $version_cible) { ...@@ -110,7 +110,7 @@ function medias_upgrade($nom_meta_base_version, $version_cible) {
array('creer_base_types_doc', '', 'media'), array('creer_base_types_doc', '', 'media'),
); );
$maj['0.15.1'] = array( $maj['0.15.1'] = array(
array('sql_alter', "TABLE spip_documents CHANGE taille taille bigint"), array('sql_alter', 'TABLE spip_documents CHANGE taille taille bigint'),
); );
$maj['0.16.0'] = array( $maj['0.16.0'] = array(
array('creer_base_types_doc', '', 'media'), array('creer_base_types_doc', '', 'media'),
...@@ -129,8 +129,8 @@ function medias_upgrade($nom_meta_base_version, $version_cible) { ...@@ -129,8 +129,8 @@ function medias_upgrade($nom_meta_base_version, $version_cible) {
); );
$maj['1.1.0'] = array( $maj['1.1.0'] = array(
array('sql_alter', "TABLE spip_documents_liens ADD INDEX id_objet (id_objet)"), array('sql_alter', 'TABLE spip_documents_liens ADD INDEX id_objet (id_objet)'),
array('sql_alter', "TABLE spip_documents_liens ADD INDEX objet (objet)"), array('sql_alter', 'TABLE spip_documents_liens ADD INDEX objet (objet)'),
); );
$maj['1.1.1'] = array( $maj['1.1.1'] = array(
array('creer_base_types_doc'), array('creer_base_types_doc'),
...@@ -138,7 +138,7 @@ function medias_upgrade($nom_meta_base_version, $version_cible) { ...@@ -138,7 +138,7 @@ function medias_upgrade($nom_meta_base_version, $version_cible) {
// reparer les media sur les file suite a upgrade rate depuis SPIP 2.x // reparer les media sur les file suite a upgrade rate depuis SPIP 2.x
$maj['1.2.0'] = array( $maj['1.2.0'] = array(
// on remet en ? tous les media=file // on remet en ? tous les media=file
array('sql_updateq', "spip_documents", array('media' => '?'), "media='file'"), array('sql_updateq', 'spip_documents', array('media' => '?'), "media='file'"),
// et on repeuple // et on repeuple
array('medias_peuple_media_document'), array('medias_peuple_media_document'),
); );
...@@ -190,13 +190,12 @@ function medias_maj_meta_documents() { ...@@ -190,13 +190,12 @@ function medias_maj_meta_documents() {
ecrire_meta('documents_objets', implode(',', $config)); ecrire_meta('documents_objets', implode(',', $config));
} }
function medias_peuple_media_document($champ_media = "media_defaut") { function medias_peuple_media_document($champ_media = 'media_defaut') {
$res = sql_select("DISTINCT extension", "spip_documents", "media=" . sql_quote('?')); $res = sql_select('DISTINCT extension', 'spip_documents', 'media=' . sql_quote('?'));
while ($row = sql_fetch($res)) { while ($row = sql_fetch($res)) {
// attention ici c'est encore le champ media, car on le renomme juste apres // attention ici c'est encore le champ media, car on le renomme juste apres
$media = sql_getfetsel($champ_media, 'spip_types_documents', 'extension=' . sql_quote($row['extension'])); $media = sql_getfetsel($champ_media, 'spip_types_documents', 'extension=' . sql_quote($row['extension']));
sql_updateq('spip_documents', array('media' => $media), sql_updateq('spip_documents', array('media' => $media), 'media=' . sql_quote('?') . ' AND extension=' . sql_quote($row['extension']));
"media=" . sql_quote('?') . ' AND extension=' . sql_quote($row['extension']));
if (time() >= _TIME_OUT) { if (time() >= _TIME_OUT) {
return; return;
} }
......
...@@ -25,7 +25,8 @@ if (!defined('_ECRIRE_INC_VERSION')) { ...@@ -25,7 +25,8 @@ if (!defined('_ECRIRE_INC_VERSION')) {
* *
* @pipeline autoriser * @pipeline autoriser
*/ */
function medias_autoriser() { } function medias_autoriser() {
}
/** /**
* Autorisation d'administrer la médiathèque * Autorisation d'administrer la médiathèque
...@@ -90,16 +91,16 @@ function autoriser_document_tailler_dist($faire, $type, $id, $qui, $options) { ...@@ -90,16 +91,16 @@ function autoriser_document_tailler_dist($faire, $type, $id, $qui, $options) {
// Donnees sur le type de document // Donnees sur le type de document
$extension = $document['extension']; $extension = $document['extension'];
$type_inclus = sql_getfetsel('inclus', 'spip_types_documents', "extension=" . sql_quote($extension)); $type_inclus = sql_getfetsel('inclus', 'spip_types_documents', 'extension=' . sql_quote($extension));
if (($type_inclus == "embed" or $type_inclus == "image") if (($type_inclus == 'embed' or $type_inclus == 'image')
and ( and (
// documents dont la taille est definie // documents dont la taille est definie
($document['largeur'] * $document['hauteur']) ($document['largeur'] * $document['hauteur'])
// ou distants // ou distants
or $document['distant'] == 'oui' or $document['distant'] == 'oui'
// ou tous les formats qui s'affichent en embed // ou tous les formats qui s'affichent en embed
or $type_inclus == "embed" or $type_inclus == 'embed'
) )
) { ) {
return true; return true;
...@@ -162,7 +163,7 @@ function autoriser_document_modifier_dist($faire, $type, $id, $qui, $opt) { ...@@ -162,7 +163,7 @@ function autoriser_document_modifier_dist($faire, $type, $id, $qui, $opt) {
return $m[$q][$id]; return $m[$q][$id];
} }
$s = sql_getfetsel("statut", "spip_documents", "id_document=" . intval($id)); $s = sql_getfetsel('statut', 'spip_documents', 'id_document=' . intval($id));
// les admins ont le droit de modifier tous les documents existants // les admins ont le droit de modifier tous les documents existants
if ($qui['statut'] == '0minirezo' if ($qui['statut'] == '0minirezo'
and !$qui['restreint'] and !$qui['restreint']
...@@ -180,7 +181,7 @@ function autoriser_document_modifier_dist($faire, $type, $id, $qui, $opt) { ...@@ -180,7 +181,7 @@ function autoriser_document_modifier_dist($faire, $type, $id, $qui, $opt) {
if (!isset($m[$q][$id])) { if (!isset($m[$q][$id])) {
$interdit = false; $interdit = false;
$s = sql_select("id_objet,objet", "spip_documents_liens", "id_document=" . intval($id)); $s = sql_select('id_objet,objet', 'spip_documents_liens', 'id_document=' . intval($id));
while ($t = sql_fetch($s)) { while ($t = sql_fetch($s)) {
if (!autoriser('modifier', $t['objet'], $t['id_objet'], $qui, $opt)) { if (!autoriser('modifier', $t['objet'], $t['id_objet'], $qui, $opt)) {
$interdit = true; $interdit = true;
...@@ -229,9 +230,11 @@ function autoriser_document_supprimer_dist($faire, $type, $id, $qui, $opt) { ...@@ -229,9 +230,11 @@ function autoriser_document_supprimer_dist($faire, $type, $id, $qui, $opt) {
return !$id_document or autoriser('modifier', 'document', $id_document); return !$id_document or autoriser('modifier', 'document', $id_document);
} }
// si c'est un document annexe, se ramener a l'autorisation de son parent // si c'est un document annexe, se ramener a l'autorisation de son parent
if ($id_document = sql_getfetsel('id_objet', 'spip_documents_liens', if ($id_document = sql_getfetsel(
"objet='document' AND id_document=" . intval($id)) 'id_objet',
) { 'spip_documents_liens',
"objet='document' AND id_document=" . intval($id)
)) {
return autoriser('modifier', 'document', $id_document); return autoriser('modifier', 'document', $id_document);
} }
...@@ -261,8 +264,8 @@ function autoriser_document_supprimer_dist($faire, $type, $id, $qui, $opt) { ...@@ -261,8 +264,8 @@ function autoriser_document_supprimer_dist($faire, $type, $id, $qui, $opt) {
**/ **/
function autoriser_document_voir_dist($faire, $type, $id, $qui, $opt) { function autoriser_document_voir_dist($faire, $type, $id, $qui, $opt) {
if (!isset($GLOBALS['meta']["creer_htaccess"]) if (!isset($GLOBALS['meta']['creer_htaccess'])
or $GLOBALS['meta']["creer_htaccess"] != 'oui' or $GLOBALS['meta']['creer_htaccess'] != 'oui'
) { ) {
return true; return true;
} }
...@@ -279,12 +282,13 @@ function autoriser_document_voir_dist($faire, $type, $id, $qui, $opt) { ...@@ -279,12 +282,13 @@ function autoriser_document_voir_dist($faire, $type, $id, $qui, $opt) {
foreach ($liens as $l) { foreach ($liens as $l) {
$table_sql = table_objet_sql($l['objet']); $table_sql = table_objet_sql($l['objet']);
$id_table = id_table_objet($l['objet']); $id_table = id_table_objet($l['objet']);
if (sql_countsel($table_sql, "$id_table = " . intval($l['id_objet']) if (sql_countsel(
$table_sql,
"$id_table = " . intval($l['id_objet'])
. (in_array($l['objet'], array('article', 'rubrique', 'breve')) . (in_array($l['objet'], array('article', 'rubrique', 'breve'))
? " AND statut = 'publie'" ? " AND statut = 'publie'"
: '') : '')
) > 0 ) > 0) {
) {
return 'htaccess'; return 'htaccess';
} }
} }
......
...@@ -48,7 +48,6 @@ if (isset($_SERVER['REQUEST_METHOD']) ...@@ -48,7 +48,6 @@ if (isset($_SERVER['REQUEST_METHOD'])
and strncmp($_SERVER['CONTENT_TYPE'], 'multipart/form-data', 19) == 0 and strncmp($_SERVER['CONTENT_TYPE'], 'multipart/form-data', 19) == 0
and $_SERVER['CONTENT_LENGTH'] > medias_inigetoctets('post_max_size') and $_SERVER['CONTENT_LENGTH'] > medias_inigetoctets('post_max_size')
) { ) {
include_spip('inc/minipres'); include_spip('inc/minipres');
echo minipres(_T('medias:upload_limit', array('max' => ini_get('post_max_size')))); echo minipres(_T('medias:upload_limit', array('max' => ini_get('post_max_size'))));
exit; exit;
...@@ -76,10 +75,13 @@ function medias_inigetoctets($var) { ...@@ -76,10 +75,13 @@ function medias_inigetoctets($var) {
switch ($last) { // The 'G' modifier is available since PHP 5.1.0 switch ($last) { // The 'G' modifier is available since PHP 5.1.0
case 'g': case 'g':
$val *= 1024; $val *= 1024;
break;
case 'm': case 'm':
$val *= 1024; $val *= 1024;
break;
case 'k': case 'k':
$val *= 1024; $val *= 1024;
break;
} }
return $val; return $val;
...@@ -99,10 +101,10 @@ function medias_puce_statut_document($id_document, $statut) { ...@@ -99,10 +101,10 @@ function medias_puce_statut_document($id_document, $statut) {
if ($statut == 'publie') { if ($statut == 'publie') {
$puce = 'puce-verte.gif'; $puce = 'puce-verte.gif';
} else { } else {
if ($statut == "prepa") { if ($statut == 'prepa') {
$puce = 'puce-blanche.gif'; $puce = 'puce-blanche.gif';
} else { } else {
if ($statut == "poubelle") { if ($statut == 'poubelle') {
$puce = 'puce-poubelle.gif'; $puce = 'puce-poubelle.gif';
} else { } else {
$puce = 'puce-blanche.gif'; $puce = 'puce-blanche.gif';
...@@ -178,9 +180,9 @@ function critere_DOCUMENTS_orphelins_dist($idb, &$boucles, $crit) { ...@@ -178,9 +180,9 @@ function critere_DOCUMENTS_orphelins_dist($idb, &$boucles, $crit) {
$boucle = &$boucles[$idb]; $boucle = &$boucles[$idb];
$cond = $crit->cond; $cond = $crit->cond;
$not = $crit->not ? "" : "NOT"; $not = $crit->not ? '' : 'NOT';
$select = sql_get_select("DISTINCT id_document", "spip_documents_liens as oooo"); $select = sql_get_select('DISTINCT id_document', 'spip_documents_liens as oooo');
$where = "'" . $boucle->id_table . ".id_document $not IN ($select)'"; $where = "'" . $boucle->id_table . ".id_document $not IN ($select)'";
if ($cond) { if ($cond) {
$_quoi = '@$Pile[0]["orphelins"]'; $_quoi = '@$Pile[0]["orphelins"]';
...@@ -204,7 +206,7 @@ function critere_DOCUMENTS_orphelins_dist($idb, &$boucles, $crit) { ...@@ -204,7 +206,7 @@ function critere_DOCUMENTS_orphelins_dist($idb, &$boucles, $crit) {
function critere_DOCUMENTS_portrait_dist($idb, &$boucles, $crit) { function critere_DOCUMENTS_portrait_dist($idb, &$boucles, $crit) {
$boucle = &$boucles[$idb]; $boucle = &$boucles[$idb];
$table = $boucle->id_table; $table = $boucle->id_table;
$not = ($crit->not ? "NOT " : ""); $not = ($crit->not ? 'NOT ' : '');
$boucle->where[] = "'$not($table.largeur>0 AND $table.hauteur > $table.largeur)'"; $boucle->where[] = "'$not($table.largeur>0 AND $table.hauteur > $table.largeur)'";
} }
...@@ -222,7 +224,7 @@ function critere_DOCUMENTS_portrait_dist($idb, &$boucles, $crit) { ...@@ -222,7 +224,7 @@ function critere_DOCUMENTS_portrait_dist($idb, &$boucles, $crit) {
function critere_DOCUMENTS_paysage_dist($idb, &$boucles, $crit) { function critere_DOCUMENTS_paysage_dist($idb, &$boucles, $crit) {
$boucle = &$boucles[$idb]; $boucle = &$boucles[$idb];
$table = $boucle->id_table; $table = $boucle->id_table;
$not = ($crit->not ? "NOT " : ""); $not = ($crit->not ? 'NOT ' : '');
$boucle->where[] = "'$not($table.largeur>0 AND $table.largeur > $table.hauteur)'"; $boucle->where[] = "'$not($table.largeur>0 AND $table.largeur > $table.hauteur)'";
} }
...@@ -240,7 +242,7 @@ function critere_DOCUMENTS_paysage_dist($idb, &$boucles, $crit) { ...@@ -240,7 +242,7 @@ function critere_DOCUMENTS_paysage_dist($idb, &$boucles, $crit) {
function critere_DOCUMENTS_carre_dist($idb, &$boucles, $crit) { function critere_DOCUMENTS_carre_dist($idb, &$boucles, $crit) {
$boucle = &$boucles[$idb]; $boucle = &$boucles[$idb];
$table = $boucle->id_table; $table = $boucle->id_table;
$not = ($crit->not ? "NOT " : ""); $not = ($crit->not ? 'NOT ' : '');
$boucle->where[] = "'$not($table.largeur>0 AND $table.largeur = $table.hauteur)'"; $boucle->where[] = "'$not($table.largeur>0 AND $table.largeur = $table.hauteur)'";
} }
......
<?php <?php
if (!defined("_ECRIRE_INC_VERSION")) { if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
......
...@@ -34,8 +34,8 @@ if (!defined('_ECRIRE_INC_VERSION')) { ...@@ -34,8 +34,8 @@ if (!defined('_ECRIRE_INC_VERSION')) {
**/ **/
function medias_detecter_fond_par_defaut($fond) { function medias_detecter_fond_par_defaut($fond) {
if (empty($_GET) and empty($_POST) and empty($_FILES) if (empty($_GET) and empty($_POST) and empty($_FILES)
and isset($_SERVER["CONTENT_LENGTH"]) and isset($_SERVER['CONTENT_LENGTH'])
and strstr($_SERVER["CONTENT_TYPE"], "multipart/form-data;") and strstr($_SERVER['CONTENT_TYPE'], 'multipart/form-data;')
) { ) {
include_spip('inc/getdocument'); include_spip('inc/getdocument');
erreur_upload_trop_gros(); erreur_upload_trop_gros();
...@@ -69,7 +69,6 @@ function medias_post_insertion($flux) { ...@@ -69,7 +69,6 @@ function medias_post_insertion($flux) {
if (autoriser('joindredocument', $objet, $id_objet) if (autoriser('joindredocument', $objet, $id_objet)
and $id_auteur = intval($GLOBALS['visiteur_session']['id_auteur']) and $id_auteur = intval($GLOBALS['visiteur_session']['id_auteur'])
) { ) {
# cf. HACK medias_affiche_gauche() # cf. HACK medias_affiche_gauche()
# rattrapper les documents associes a cet objet nouveau # rattrapper les documents associes a cet objet nouveau
# ils ont un id = 0-id_auteur # ils ont un id = 0-id_auteur
...@@ -81,7 +80,7 @@ function medias_post_insertion($flux) { ...@@ -81,7 +80,7 @@ function medias_post_insertion($flux) {
objet_associer(array('document' => $lien['document']), array($objet => $id_objet), $lien); objet_associer(array('document' => $lien['document']), array($objet => $id_objet), $lien);
} }
// un simple delete pour supprimer les liens temporaires // un simple delete pour supprimer les liens temporaires
sql_delete("spip_documents_liens", array("id_objet = " . (0 - $id_auteur), "objet=" . sql_quote($objet))); sql_delete('spip_documents_liens', array('id_objet = ' . (0 - $id_auteur), 'objet=' . sql_quote($objet)));
} }
return $flux; return $flux;
...@@ -95,9 +94,11 @@ function medias_post_insertion($flux) { ...@@ -95,9 +94,11 @@ function medias_post_insertion($flux) {
* @return array * @return array
*/ */
function medias_affiche_milieu($flux) { function medias_affiche_milieu($flux) {
if ($flux["args"]["exec"] == "configurer_contenu") { if ($flux['args']['exec'] == 'configurer_contenu') {
$flux["data"] .= recuperer_fond('prive/squelettes/inclure/configurer', $flux['data'] .= recuperer_fond(
array('configurer' => 'configurer_documents')); 'prive/squelettes/inclure/configurer',
array('configurer' => 'configurer_documents')
);
} }
return $flux; return $flux;
...@@ -142,8 +143,8 @@ function medias_post_edition($flux) { ...@@ -142,8 +143,8 @@ function medias_post_edition($flux) {
// verifier d'abord les doublons ! // verifier d'abord les doublons !
include_spip('inc/autoriser'); include_spip('inc/autoriser');
if (autoriser('autoassocierdocument', $type, $flux['args']['id_objet'])) { if (autoriser('autoassocierdocument', $type, $flux['args']['id_objet'])) {
$table_objet = isset($flux['args']['table_objet']) ? $flux['args']['table_objet'] : table_objet($flux['args']['table'], $table_objet = isset($flux['args']['table_objet']) ?
$serveur); $flux['args']['table_objet'] : table_objet($flux['args']['table'], $serveur);
$marquer_doublons_doc = charger_fonction('marquer_doublons_doc', 'inc'); $marquer_doublons_doc = charger_fonction('marquer_doublons_doc', 'inc');
$marquer_doublons_doc($flux['data'], $flux['args']['id_objet'], $type, id_table_objet($type, $serveur), $marquer_doublons_doc($flux['data'], $flux['args']['id_objet'], $type, id_table_objet($type, $serveur),
$table_objet, $flux['args']['table'], '', $serveur); $table_objet, $flux['args']['table'], '', $serveur);
...@@ -152,11 +153,13 @@ function medias_post_edition($flux) { ...@@ -152,11 +153,13 @@ function medias_post_edition($flux) {
if (($flux['args']['action'] and $flux['args']['action'] == 'instituer') or isset($flux['data']['statut'])) { if (($flux['args']['action'] and $flux['args']['action'] == 'instituer') or isset($flux['data']['statut'])) {
include_spip('base/abstract_sql'); include_spip('base/abstract_sql');
$id = $flux['args']['id_objet']; $id = $flux['args']['id_objet'];
$docs = array_map('reset', sql_allfetsel('id_document', 'spip_documents_liens', $docs = array_map(
'id_objet=' . intval($id) . ' AND objet=' . sql_quote($type))); 'reset',
sql_allfetsel('id_document', 'spip_documents_liens', 'id_objet=' . intval($id) . ' AND objet=' . sql_quote($type))
);
include_spip('action/editer_document'); include_spip('action/editer_document');
foreach ($docs as $id_document) // mettre a jour le statut si necessaire foreach ($docs as $id_document) {
{ // mettre a jour le statut si necessaire
document_instituer($id_document); document_instituer($id_document);
} }
} }
...@@ -225,7 +228,10 @@ function medias_affiche_gauche($flux) { ...@@ -225,7 +228,10 @@ function medias_affiche_gauche($flux) {
or $id = 0 - $GLOBALS['visiteur_session']['id_auteur']) or $id = 0 - $GLOBALS['visiteur_session']['id_auteur'])
and autoriser('joindredocument', $type, $id) and autoriser('joindredocument', $type, $id)
) { ) {
$flux['data'] .= recuperer_fond('prive/objets/editer/colonne_document', array('objet' => $type, 'id_objet' => $id)); $flux['data'] .= recuperer_fond(
'prive/objets/editer/colonne_document',
array('objet' => $type, 'id_objet' => $id)
);
} }
return $flux; return $flux;
...@@ -300,11 +306,15 @@ function medias_objet_compte_enfants($flux) { ...@@ -300,11 +306,15 @@ function medias_objet_compte_enfants($flux) {
) { ) {
// juste les publies ? // juste les publies ?
if (array_key_exists('statut', $flux['args']) and ($flux['args']['statut'] == 'publie')) { if (array_key_exists('statut', $flux['args']) and ($flux['args']['statut'] == 'publie')) {
$flux['data']['document'] = sql_countsel('spip_documents AS D JOIN spip_documents_liens AS L ON D.id_document=L.id_document', $flux['data']['document'] = sql_countsel(
"L.objet=" . sql_quote($objet) . "AND L.id_objet=" . intval($id) . " AND (D.statut='publie')"); 'spip_documents AS D JOIN spip_documents_liens AS L ON D.id_document=L.id_document',
'L.objet=' . sql_quote($objet) . 'AND L.id_objet=' . intval($id) . " AND (D.statut='publie')"
);
} else { } else {
$flux['data']['document'] = sql_countsel('spip_documents AS D JOIN spip_documents_liens AS L ON D.id_document=L.id_document', $flux['data']['document'] = sql_countsel(
"L.objet=" . sql_quote($objet) . "AND L.id_objet=" . intval($id) . " AND (D.statut='publie' OR D.statut='prepa')"); 'spip_documents AS D JOIN spip_documents_liens AS L ON D.id_document=L.id_document',
'L.objet=' . sql_quote($objet) . 'AND L.id_objet=' . intval($id) . " AND (D.statut='publie' OR D.statut='prepa')"
);
} }
} }
...@@ -323,8 +333,8 @@ function medias_boite_infos($flux) { ...@@ -323,8 +333,8 @@ function medias_boite_infos($flux) {
and $id_rubrique = $flux['args']['id'] and $id_rubrique = $flux['args']['id']
) { ) {
if ($nb = sql_countsel('spip_documents_liens', "objet='rubrique' AND id_objet=" . intval($id_rubrique))) { if ($nb = sql_countsel('spip_documents_liens', "objet='rubrique' AND id_objet=" . intval($id_rubrique))) {
$nb = "<div>" . singulier_ou_pluriel($nb, "medias:un_document", "medias:des_documents") . "</div>"; $nb = '<div>' . singulier_ou_pluriel($nb, 'medias:un_document', 'medias:des_documents') . '</div>';
if ($p = strpos($flux['data'], "<!--nb_elements-->")) { if ($p = strpos($flux['data'], '<!--nb_elements-->')) {
$flux['data'] = substr_replace($flux['data'], $nb, $p, 0); $flux['data'] = substr_replace($flux['data'], $nb, $p, 0);
} }
} }
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter