Valider 7be4c393 rédigé par tcharlss's avatar tcharlss
Parcourir les fichiers

Version 1.4.0.

- Nouveauté la plus visible : petite refacto du menu de langues → Noms des langues en entier au lieu des codes (fr, en...), liens affichés sous formes de boutons plus grands et centrés pour être bien visibles, ajout d'un label. Petite amélioration pour éviter qu'il y ait un saut lorsque le menu passe en sticky.
- Configuration : les formulaires sur lesquels activer le script sont tous regroupés dans une même clé `formulaires`.
- Configuration : ajout d'une option pour ajouter des sélecteurs dans le paramètre `root` (exemple complètement au hasard : `.formulaire_editer_noisette`).
- Ajout d'un pipeline `multilang_parametres` pour permettre aux plugins de changer les paramètres passés au script d'init. Cas le plus courant : ajouter des formulaires à prendre en compte par le script.
- Refactorisation du script d'init afin qu'il soit plus lisible et maintenable : séparation du javascript et du php. Au passage, correction d'un bug rigolo qui faisait que quand on décochait tous les items dans la config, le script devenait actif sur *tous* les formulaires : recherche, login, etc.
parent a4d90bd7
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+9 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -2,6 +2,15 @@

Ce fichier sert de changelog, il liste les modifications lors du changement de version.

## Version 1.4.0 (2019-11-13)

- Ajout d'un pipeline `multilang_parametres` pour permettre aux plugins de changer les paramètres passés au script d'init. Concrètement cela permet d'ajouter des formulaires à prendre en compte par le script (entre autres).
- Ménage dans le script d'init afin qu'il soit plus lisible et maintenable : javascript et php sont séparés.
- Configuration : les formulaires sur lesquels activer le menu sont tous regroupés dans une même clé `formulaires`.
- Configuration : ajout d'une option qui permet d'ajouter des sélecteurs pour `root` (c.a.d d’autres formulaires).
- Le script n'est actif que s'il y a des éléments dans `root` (auparavant, le script s’activait sur *tous* les formulaires quand on déselectionnait tout dans la config par exemple : formulaire de recherche, de login, etc.).
- Menu de langues : boutons plus visibles, centrés, ajout d'un label, langues en toutes lettres, langues vides signalées par le symbole "∅" au lieu de changer la couleur de fond (ce qui pouvait faire croire à une entrée de menu active).

## Version 1.3.0 (2017-10-11)

- Compatible 3.2

Credits.md

0 → 100644
+3 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
# Crédits

* ![](prive/themes/spip/images/icone-multilang.svg) Icône de langue du menu : [Created by Lion Kuil from the Noun Project](https://thenounproject.com/search/?q=language&creator=4189762&i=1956545)
 No newline at end of file
+1 −2
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -68,4 +68,3 @@ En fait faut pas passer 2 fois dans la fonction d'init. Ce n'est pas prevu pour.
	});

Bon donc ca marche toujours avec ou sans mediatheque... Reste plus qu'a tester avec un plugin qui veut du multilang
 No newline at end of file
+25 −15
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -12,27 +12,37 @@
				<fieldset>
					<h3 class="legend"><:multilang:cfg_activer:></h3>
					<ul class="editer-groupe">
						[(#SAISIE{case,siteconfig,
							label_case=<:multilang:cfg_lbl_siteconfig:>,
							defaut=on,
							conteneur_class=pleine_largeur})]
						#SET{defaut_on,#LISTE{rubrique,auteur,document}}

						[(#REM) Formulaires à prendre en compte ]
						#SET{defaut,#ENV{formulaires,#ARRAY}|array_keys}
						[(#SET{data,#ARRAY{siteconfig,<:multilang:cfg_lbl_siteconfig:>}})]
						<BOUCLE_objets(DATA){source tableau,#REM|lister_tables_objets_sql}{editable=oui}>
							[(#SET{name,[(#CLE|objet_type)]})]
							[(#SET{label,[(#VALEUR{texte_objets}|_T)]})]
							[(#SAISIE{case,#GET{name},
								label_case=#GET{label},
								defaut='',
								conteneur_class=pleine_largeur})]
						#SET{objet,#CLE|objet_type}
						#SET{objet_nom,#VALEUR{texte_objets}|_T}
						#SET{data,#GET{data}|array_merge{#ARRAY{#GET{objet},#GET{objet_nom}}}}
						</BOUCLE_objets>

						[(#SAISIE{oui_non,multilang_public,
							label=<:multilang:cfg_lbl_espace_public:>,
						[(#SAISIE{checkbox,formulaires,
							label=<:multilang:cfg_formulaires_label:>,
							data=#GET{data},
							defaut=#GET{defaut},
							conteneur_class=pleine_largeur
						})]

						[(#SAISIE{textarea,formulaires_autres,
							label=<:multilang:cfg_formulaires_autres_label:>,
							explication=<:multilang:cfg_formulaires_autres_explication:>,
							rows=2,
						})]

						[(#SAISIE{case,multilang_public,
							label_case=<:multilang:cfg_lbl_espace_public:>,
							defaut=''})]

						[(#SAISIE{oui_non,multilang_crayons,
							label=<:multilang:cfg_lbl_crayons:>,
						[(#SAISIE{case,multilang_crayons,
							label_case=<:multilang:cfg_lbl_crayons:>,
							explication=<:multilang:cfg_explication_crayons:>,
							afficher_si='@multilang_public@',
							defaut=''})]
					</ul>
				</fieldset>
+7 −4
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -76,12 +76,15 @@ function multilang_init_lang(options) {
	 * On crée le modèle du menu de langue
	 * C'est ce modèle qui est cloné au début de chaque formulaire
	 */
	multilang_menu_lang = $("<div class='langues'></div>");
	multilang_menu_lang =
		$("<div class='langues'></div>")
		.append($('<span class="langues__label">').html(eval('multilang_lang.label_langues')+'&nbsp;'));
	$.each(multilang_avail_langs,function() {
		var title = 'multilang_lang.title_lien_multi_'+this;
		multilang_menu_lang.append($("<a class='change_lang "+this+"' title='"+eval(title)+"'></a>").html("["+this+"]"));
		var title = 'multilang_lang.title_lien_multi_'+this,
			label = 'multilang_lang.label_'+this;
		multilang_menu_lang.append($("<a class='langues__item change_lang "+this+"' title='"+eval(title)+"'></a>").html(eval(label)));
	});
	multilang_menu_lang.append($("<a class='recover_lang' href='#'></a>").html("["+multilang_lang.lien_desactiver+"]"));
	multilang_menu_lang.append($("<a class='langues__item recover_lang' href='#'></a>").html(multilang_lang.lien_desactiver));

	//init fields
	multilang_fields_selector = options.fields;
Chargement en cours