|
|
|
@ -1,12 +1,12 @@
|
|
|
|
|
<?php |
|
|
|
|
if (!defined('_ECRIRE_INC_VERSION')) return; |
|
|
|
|
|
|
|
|
|
// Nécessaire pour bigup |
|
|
|
|
/** |
|
|
|
|
* @param array $args |
|
|
|
|
* @param \Spip\Bigup\Formulaire $formulaire |
|
|
|
|
* @return \Spip\Bigup\Formulaire |
|
|
|
|
*/ |
|
|
|
|
// Nécessaire pour bigup |
|
|
|
|
function inc_bigup_medias_formulaire_configurer_tarteaucitron_ouverture_dist($args, $formulaire) { |
|
|
|
|
$formulaire->preparer_input_class( |
|
|
|
|
'bigup', |
|
|
|
@ -14,31 +14,15 @@ function inc_bigup_medias_formulaire_configurer_tarteaucitron_ouverture_dist($ar
|
|
|
|
|
); |
|
|
|
|
return $formulaire; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Déclaration des champs du formulaire et de leur valeur par défaut |
|
|
|
|
function formulaires_configurer_tarteaucitron_ouverture_data() : array { |
|
|
|
|
return [ |
|
|
|
|
'ouverture' => "", |
|
|
|
|
'iconPosition' => "BottomRight", |
|
|
|
|
'cookieslist' => "", // array("false") |
|
|
|
|
'icon' => _DIR_IMG . "tarteaucitron_icon.png", |
|
|
|
|
]; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function formulaires_configurer_tarteaucitron_ouverture_charger_dist(){ |
|
|
|
|
$data = formulaires_configurer_tarteaucitron_ouverture_data(); |
|
|
|
|
|
|
|
|
|
$valeurs = array( |
|
|
|
|
'ouverture' => lire_config('tarteaucitron/ouverture'), |
|
|
|
|
'iconPosition' => lire_config('tarteaucitron/iconPosition', $data['iconPosition']), |
|
|
|
|
'iconPosition' => lire_config('tarteaucitron/iconPosition', 'BottomRight'), |
|
|
|
|
'cookieslist' => lire_config('tarteaucitron/cookieslist'), |
|
|
|
|
'upload_icon' => '' |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
if (file_exists($data['icon'])) { |
|
|
|
|
$valeurs["src_img"] = $data['icon']; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Nécessaire pour bigup |
|
|
|
|
$valeurs['_bigup_rechercher_fichiers'] = true; |
|
|
|
|
|
|
|
|
@ -56,29 +40,23 @@ function formulaires_configurer_tarteaucitron_ouverture_verifier_dist(){
|
|
|
|
|
$erreurs['iconPosition'] = _T('avis_1_erreur_saisie'); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (_request("supprimer_icon")) { |
|
|
|
|
if (_request("supprimer_upload_icon")) { |
|
|
|
|
// rien à vérifier |
|
|
|
|
} elseif (!empty($_FILES['upload_icon'])) { |
|
|
|
|
$file = $_FILES['upload_icon']; |
|
|
|
|
$chemin = $file['tmp_name']; |
|
|
|
|
$infos_image = @getImageSize($chemin); |
|
|
|
|
$tmp_chemin = $file['tmp_name']; |
|
|
|
|
$infos_image = @getImageSize($tmp_chemin); |
|
|
|
|
$largeur = $infos_image[0]; |
|
|
|
|
$hauteur = $infos_image[1]; |
|
|
|
|
|
|
|
|
|
if (($largeur != 50) && ($hauteur != 50)) { |
|
|
|
|
if (!$infos_image) { |
|
|
|
|
$erreurs['upload_icon'] = _T('erreur_type_fichier'); |
|
|
|
|
} elseif (($largeur != 50) && ($hauteur != 50)) { |
|
|
|
|
$erreurs['upload_icon'] = _T('tarteaucitron:erreur_taille_icone', array('name' => $file['name'])); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
include_spip('action/ajouter_documents'); |
|
|
|
|
$extension = pathinfo($file['name'], PATHINFO_EXTENSION); |
|
|
|
|
$extension = corriger_extension(strtolower($extension)); |
|
|
|
|
|
|
|
|
|
if (!in_array($extension, ['png'])) { |
|
|
|
|
$erreurs['upload_icon'] = _T('erreur_type_fichier'); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (array_key_exists('upload_icon',$erreurs)) { |
|
|
|
|
@unlink($file['tmp_name']); |
|
|
|
|
@unlink($tmp_chemin); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -86,34 +64,54 @@ function formulaires_configurer_tarteaucitron_ouverture_verifier_dist(){
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function formulaires_configurer_tarteaucitron_ouverture_traiter_dist(){ |
|
|
|
|
include_spip('inc/cvt_configurer'); |
|
|
|
|
|
|
|
|
|
$retours = [ |
|
|
|
|
'message_ok' => _T('config_info_enregistree'), |
|
|
|
|
'editable' => true, |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
$data = formulaires_configurer_tarteaucitron_ouverture_data(); |
|
|
|
|
$dest = $data['icon']; |
|
|
|
|
// On garde en mémoire l'existant (l'API vide sinon) |
|
|
|
|
if ($icone_actuelle = lire_config('tarteaucitron/icon')) { |
|
|
|
|
set_request('icon', $icone_actuelle); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// On enregistre la nouvelle configuration |
|
|
|
|
$trace = cvtconf_formulaires_configurer_enregistre('configurer_tarteaucitron_ouverture', array()); |
|
|
|
|
|
|
|
|
|
if (_request("supprimer_icon")) { |
|
|
|
|
// On vérifie si on supprime l'image existante |
|
|
|
|
if (_request("supprimer_upload_icon")) { |
|
|
|
|
ecrire_config('tarteaucitron/icon', ''); |
|
|
|
|
@unlink($dest); |
|
|
|
|
if ($icone_actuelle) { |
|
|
|
|
@unlink($icone_actuelle); |
|
|
|
|
} |
|
|
|
|
// On vérifie si on envoie une nouvelle image |
|
|
|
|
} elseif (!empty($_FILES['upload_icon'])) { |
|
|
|
|
include_spip('action/ajouter_documents'); |
|
|
|
|
|
|
|
|
|
$file = $_FILES['upload_icon']; |
|
|
|
|
$extension = pathinfo($file['name'], PATHINFO_EXTENSION); |
|
|
|
|
$extension = corriger_extension(strtolower($extension)); |
|
|
|
|
$dest_name = 'tarteaucitron_icon.' . $extension; |
|
|
|
|
$dest = _DIR_IMG . $dest_name; |
|
|
|
|
|
|
|
|
|
include_spip('inc/documents'); |
|
|
|
|
deplacer_fichier_upload($file['tmp_name'], $dest); |
|
|
|
|
ecrire_config('tarteaucitron/icon', $dest); |
|
|
|
|
if ($chemin = deplacer_fichier_upload($file['tmp_name'],$dest)) { |
|
|
|
|
if ($icone_actuelle != $dest) { |
|
|
|
|
@unlink($icone_actuelle); |
|
|
|
|
} |
|
|
|
|
ecrire_config('tarteaucitron/icon', $dest); |
|
|
|
|
} else { |
|
|
|
|
$retours['message_ok'] = ''; |
|
|
|
|
$retours['message_erreur'] = _T('texte_inc_meta_1', array('fichier' => $dest_name)) . ' ' . |
|
|
|
|
_T('texte_inc_meta_2') . ' ' . |
|
|
|
|
_T('texte_inc_meta_3', array('repertoire' => _DIR_IMG)); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
include_spip('inc/invalideur'); |
|
|
|
|
suivre_invalideur('1'); # tout effacer |
|
|
|
|
|
|
|
|
|
if ((!ecrire_config('tarteaucitron/ouverture',_request('ouverture'))) || |
|
|
|
|
(!ecrire_config('tarteaucitron/iconPosition',_request('iconPosition'))) || |
|
|
|
|
(!ecrire_config('tarteaucitron/cookieslist',_request('cookieslist')))) |
|
|
|
|
{ |
|
|
|
|
$ret['message_erreur'] = _T('erreur_technique_enregistrement_impossible'); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return $retours; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -147,6 +145,18 @@ function formulaires_configurer_tarteaucitron_ouverture_saisies_dist(){
|
|
|
|
|
'afficher_si' => '@ouverture@ == "image"' |
|
|
|
|
) |
|
|
|
|
), |
|
|
|
|
array( |
|
|
|
|
'saisie' => 'tac_upload', |
|
|
|
|
'options' => array( |
|
|
|
|
'nom' => 'upload_icon', |
|
|
|
|
'accept' => 'image/*', |
|
|
|
|
'class' => 'bigup', |
|
|
|
|
'label' => '<:tarteaucitron:cfg_icon:>', |
|
|
|
|
'explication' => '<:tarteaucitron:cfg_icon_explication:>', |
|
|
|
|
'afficher_si' => '@ouverture@ == "image"', |
|
|
|
|
'src_img' => lire_config('tarteaucitron/icon') |
|
|
|
|
) |
|
|
|
|
), |
|
|
|
|
array( |
|
|
|
|
'saisie' => 'checkbox', |
|
|
|
|
'options' => array( |
|
|
|
|