diff --git a/action/tradlang_bon_a_pousser.php b/action/tradlang_bon_a_pousser.php
new file mode 100644
index 0000000000000000000000000000000000000000..c14c3ab8b9b9854b5a8b306e3a21f6c9ea26624d
--- /dev/null
+++ b/action/tradlang_bon_a_pousser.php
@@ -0,0 +1,28 @@
+<?php
+/**
+ *
+ * Trad-lang v2
+ * Plugin SPIP de traduction de fichiers de langue
+ * © Florent Jugla, Fil, kent1
+ *
+ * Action permettant de récupérer un fichier de langue
+ *
+ */
+if (!defined('_ECRIRE_INC_VERSION')) {
+	return;
+}
+
+function action_tradlang_bon_a_pousser_dist(){
+	$securiser_action = charger_fonction('securiser_action', 'inc');
+	$arg = $securiser_action();
+
+	$id_tradlang_module = intval($arg);
+
+	if (!$id_tradlang_module){
+		spip_log("action_tradlang_bon_a_pousser $arg pas compris", 'tradlang.' . _LOG_ERREUR);
+		return false;
+	}
+
+	sql_updateq("spip_tradlang_modules", array('bon_a_pousser' => 1), 'id_tradlang_module=' . intval($id_tradlang_module));
+
+}
diff --git a/base/tradlang.php b/base/tradlang.php
index e10a91ec9da8f66f9ff18cf530370469422b9d7b..efa6dd6666ecdf785fff8ab2c5bccdab2cae3b3b 100644
--- a/base/tradlang.php
+++ b/base/tradlang.php
@@ -45,7 +45,8 @@ function tradlang_declarer_tables_objets_sql($tables) {
 			"priorite" => "varchar(128) NOT NULL",
 			"gestionnaire" => "varchar(32) DEFAULT 'spip' NOT NULL",
 			"lang_prefix" => "varchar(32) NOT NULL",
-			"limite_trad" => "tinyint NOT NULL DEFAULT 0"
+			"limite_trad" => "tinyint NOT NULL DEFAULT 0",
+			"bon_a_pousser" => "tinyint NOT NULL DEFAULT 0"
 		),
 		'key' => array(
 			'PRIMARY KEY' => 'id_tradlang_module',
diff --git a/paquet.xml b/paquet.xml
index 633dbf920dc2e83e3240716befc2e293d8f1cd6b..cc3822a01d896ff528c252a1d72cbfc84256e8a5 100644
--- a/paquet.xml
+++ b/paquet.xml
@@ -5,7 +5,7 @@
 	etat="test"
 	compatibilite="[3.2.0;3.3.*]"
 	logo="images/spip_lang.png"
-	schema="1.2.0"
+	schema="1.2.1"
 >
 
 	<nom>Trad-Lang</nom>
diff --git a/spip-cli/SalvatoreOuvrager.php b/spip-cli/SalvatoreOuvrager.php
index 2100389706a277b525accdb1d221dc593d37b2f6..dde262cce208ce44f01b51c7018fe8d36c1ea227 100644
--- a/spip-cli/SalvatoreOuvrager.php
+++ b/spip-cli/SalvatoreOuvrager.php
@@ -101,6 +101,10 @@ class SalvatoreOuvrager extends Command {
 
 		$modules = $input->getOption('module');
 		if ($modules = trim($modules)) {
+			if ($modules === 'bon_a_pousser') {
+				$modules = sql_allfetsel('DISTINCT module', 'spip_tradlang_modules', 'bon_a_pousser>0');
+				$modules = array_column($modules, 'module');
+			}
 			$liste_trad = salvatore_filtrer_liste_traductions($liste_trad, $modules);
 			$n = count($liste_trad);
 			$output->writeln("<info>$n modules à traiter : " . $modules . "</info>");
diff --git a/tradlang_administrations.php b/tradlang_administrations.php
index a5fb35a877f8dcd1eef298c7f47138f856d7f823..c0ed475d007a015507cf0cf5de7fc0d6d9e6382f 100644
--- a/tradlang_administrations.php
+++ b/tradlang_administrations.php
@@ -130,6 +130,10 @@ function tradlang_upgrade($nom_meta_base_version, $version_cible) {
 		array('tradlang_nommer_modules'),
 	);
 
+	$maj['1.2.1'] = array(
+		array('sql_alter','TABLE spip_tradlang_modules ADD bon_a_pousser tinyint NOT NULL DEFAULT 0'),
+	);
+
 	include_spip('base/upgrade');
 	maj_plugin($nom_meta_base_version, $version_cible, $maj);
 }