Chargement en cours formulaires/configurer_tarteaucitron_ajouter_services.html +3 −0 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff <div id="formulaire_#FORM"" class="formulaire_spip formulaire_configurer formulaire_#FORM"> <div class="box__header"> <h3><:tarteaucitron:cfg_titre_ajouter_services:></h3> </div> <div> <ol class="explication"> <:tarteaucitron:cfg_explication:> Chargement en cours formulaires/configurer_tarteaucitron_ouverture.html +0 −13 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -12,19 +12,6 @@ <p class="explication"><:tarteaucitron:cfg_btn_showIcon_explication:></p> <div class="editer-groupe"> #GENERER_SAISIES{#ENV{_saisies}} #SET{name,upload_icon} #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} <div class="editer editer_[(#GET{name})][ (#GET{erreurs}|oui)erreur] afficher_si_visible" data-afficher_si="afficher_si({"champ":"ouverture","total":"","operateur":"==","valeur":"image"})"> <label for="#GET{name}"><:tarteaucitron:cfg_icon:></label> [(#ENV{src_img}|oui) [(#INCLURE{fond=formulaires/inc-apercu-logo,env,logo=#ENV{src_img},quoi=icon,editable,_options=#ARRAY{image_reduire,780}})] ][(#ENV{src_img}|non) <div class="explication"><:tarteaucitron:cfg_icon_explication:></div> [<span class='erreur_message'>(#GET{erreurs})</span>] <input type="file" name="#GET{name}" class="file bigup" accept="image/png" /> ] </div> </div> </fieldset> <p class="boutons"><span class="image_loading"> </span><input type="submit" class="submit" value="<:bouton_enregistrer:>" /></p> Chargement en cours formulaires/configurer_tarteaucitron_ouverture.php +54 −44 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff <?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', Chargement en cours @@ -15,30 +15,14 @@ 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; Chargement en cours @@ -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)) { $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'])) { 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'])); } if (array_key_exists('upload_icon',$erreurs)) { @unlink($file['tmp_name']); @unlink($tmp_chemin); } } Chargement en cours @@ -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); 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; } Chargement en cours Chargement en cours @@ -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( Chargement en cours formulaires/configurer_tarteaucitron_services.html +16 −0 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff <div id="formulaire_#FORM"" class="formulaire_spip formulaire_configurer formulaire_#FORM"> <div class="box__header"> <h3><:tarteaucitron:cfg_titre_activation_services:></h3> </div> [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>] [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>] <form method="post" action="#ENV{action}"> <div> #ACTION_FORMULAIRE{#ENV{action}} <div class="editer-groupe"> #GENERER_SAISIES{#ENV{_saisies}} </div> <p class="boutons"><span class="image_loading"> </span><input type="submit" class="submit" value="<:bouton_enregistrer:>" /></p> </div> </form> </div> lang/tarteaucitron_fr.php +1 −1 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -51,7 +51,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array( 'cfg_group_services' => 'Regrouper les services', 'cfg_group_services_explication' => 'Par type de service', 'cfg_icon' => 'Icône', 'cfg_icon_explication' => 'Choisissez une image PNG de 50px de côté', 'cfg_icon_explication' => 'Choisissez une image carrée de 50px de côté', 'cfg_iconposition' => 'Positionner le bouton', 'cfg_image' => 'Image', 'cfg_installer' => 'Activer', Chargement en cours Chargement en cours
formulaires/configurer_tarteaucitron_ajouter_services.html +3 −0 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff <div id="formulaire_#FORM"" class="formulaire_spip formulaire_configurer formulaire_#FORM"> <div class="box__header"> <h3><:tarteaucitron:cfg_titre_ajouter_services:></h3> </div> <div> <ol class="explication"> <:tarteaucitron:cfg_explication:> Chargement en cours
formulaires/configurer_tarteaucitron_ouverture.html +0 −13 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -12,19 +12,6 @@ <p class="explication"><:tarteaucitron:cfg_btn_showIcon_explication:></p> <div class="editer-groupe"> #GENERER_SAISIES{#ENV{_saisies}} #SET{name,upload_icon} #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} <div class="editer editer_[(#GET{name})][ (#GET{erreurs}|oui)erreur] afficher_si_visible" data-afficher_si="afficher_si({"champ":"ouverture","total":"","operateur":"==","valeur":"image"})"> <label for="#GET{name}"><:tarteaucitron:cfg_icon:></label> [(#ENV{src_img}|oui) [(#INCLURE{fond=formulaires/inc-apercu-logo,env,logo=#ENV{src_img},quoi=icon,editable,_options=#ARRAY{image_reduire,780}})] ][(#ENV{src_img}|non) <div class="explication"><:tarteaucitron:cfg_icon_explication:></div> [<span class='erreur_message'>(#GET{erreurs})</span>] <input type="file" name="#GET{name}" class="file bigup" accept="image/png" /> ] </div> </div> </fieldset> <p class="boutons"><span class="image_loading"> </span><input type="submit" class="submit" value="<:bouton_enregistrer:>" /></p> Chargement en cours
formulaires/configurer_tarteaucitron_ouverture.php +54 −44 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff <?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', Chargement en cours @@ -15,30 +15,14 @@ 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; Chargement en cours @@ -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)) { $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'])) { 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'])); } if (array_key_exists('upload_icon',$erreurs)) { @unlink($file['tmp_name']); @unlink($tmp_chemin); } } Chargement en cours @@ -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); 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; } Chargement en cours Chargement en cours @@ -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( Chargement en cours
formulaires/configurer_tarteaucitron_services.html +16 −0 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff <div id="formulaire_#FORM"" class="formulaire_spip formulaire_configurer formulaire_#FORM"> <div class="box__header"> <h3><:tarteaucitron:cfg_titre_activation_services:></h3> </div> [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>] [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>] <form method="post" action="#ENV{action}"> <div> #ACTION_FORMULAIRE{#ENV{action}} <div class="editer-groupe"> #GENERER_SAISIES{#ENV{_saisies}} </div> <p class="boutons"><span class="image_loading"> </span><input type="submit" class="submit" value="<:bouton_enregistrer:>" /></p> </div> </form> </div>
lang/tarteaucitron_fr.php +1 −1 Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff Chargement en cours @@ -51,7 +51,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array( 'cfg_group_services' => 'Regrouper les services', 'cfg_group_services_explication' => 'Par type de service', 'cfg_icon' => 'Icône', 'cfg_icon_explication' => 'Choisissez une image PNG de 50px de côté', 'cfg_icon_explication' => 'Choisissez une image carrée de 50px de côté', 'cfg_iconposition' => 'Positionner le bouton', 'cfg_image' => 'Image', 'cfg_installer' => 'Activer', Chargement en cours