Valider eb33a8eb rédigé par Maïeul's avatar Maïeul
Parcourir les fichiers

Fix #7

  -  Le "logo" dans les `.yaml` ne servait en pratique pas -> on supprime
  -  En revanche on garde icone_barre
  -  On cherche dans:
    * dossier `barres_icones`
    * dossier `images du thème courant, et donc possibilité d'avoir une     alternance png/svg pour les vieux plugins
    * `find_in_path()`
  - On réduit à 16px l'icone pour s'assurer que cela passe dans la barre typo
  - On passe les icones en svg
  - Lorsqu'on a choisi le modèle qu'on veut insérer, on insère l'icone en titre de formulaire
parent 98608e6a
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -4,7 +4,7 @@
	<:inserer_modeles:titre_inserer_modeles:>
</h3>]
[(#ENV{formulaire_modele}|oui)<h3 class="titrem">
	<:inserer_modeles:titre_inserer{modele=#ENV{_nom}}:>
	[(#ENV{icone_barre}|balise_img|liens_absolus)&nbsp;]<:inserer_modeles:titre_inserer{modele=#ENV{_nom}}:>
</h3>]
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
+3 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -36,7 +36,9 @@ function formulaires_inserer_modeles_charger_dist($formulaire_modele, $modalbox,

		$contexte['formulaire_modele'] = $formulaire_modele;
		$contexte['_nom'] = _T_ou_typo($infos_modele['nom']);
		$contexte['logo'] = $infos_modele['logo'];
		if (isset($infos_modele['icone_barre'])) {
			$contexte['icone_barre'] = inserer_modeles_find_icone_barre_path($infos_modele['icone_barre']);
		}
		$contexte['_saisies'] = $infos_modele['parametres'];
		if (_request('_code_modele')) {
			$contexte['_code_modele'] = _request('_code_modele');

icones_barre/inserer_modeles.png

supprimé100644 → 0
−406 octets
Chargement de la diff d'image…

icones_barre/media.png

supprimé100644 → 0
−329 octets
Chargement de la diff d'image…
+24 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -24,7 +24,7 @@ function inserer_modeles_lister_formulaires_modeles() {
				if (is_array($yaml_data)) {
					$liste_formulaires_modeles[$formulaire] = array(
						'nom' => $yaml_data['nom'],
						'icone_barre' => isset($yaml_data['icone_barre']) ? find_in_path('icones_barre/'.$yaml_data['icone_barre']) : ''
						'icone_barre' => isset($yaml_data['icone_barre']) ? inserer_modeles_find_icone_barre_path($yaml_data['icone_barre']) : ''
					);
				}
			}
@@ -99,3 +99,26 @@ function inserer_modeles_definir_defaut($saisies) {
	}
	return $saisies;
}

/**
 * Retrouver l'icone :
 * - d'abord dans icones_barre
 * - sinon dans le thème / images (et du coup on peut jouer avec png/svg)
 * - à défaut dans find_in_path
 * S'assure que l'icone ne fait pas plus de 16 px, pour tenir dans la barre du porte plume.
 * @param string $nom
 * @return string chemin
**/
function inserer_modeles_find_icone_barre_path($nom) {
	if (!$chemin = find_in_path("icones_barre/$nom")) {
	 if (!$chemin = find_in_theme("images/$nom")) {
		 if(!$chemin = find_in_path($nom)) {
			 return '';
		 }
	 }
	}
	include_spip('inc/filtres');
	include_spip('inc/filtres_images_mini');
	$chemin = preg_replace('#\?.*$#', '', $chemin);//Au cas où find_in_theme nous return un truc genre gis-xx.svg?16px
	return extraire_attribut(image_reduire($chemin, 16), 'src');//On force la reduction à 16px, pour le porteplume
}
Chargement en cours