From ae1a1d47eeaaf0b75eefafcdb588924c4792ee09 Mon Sep 17 00:00:00 2001
From: Cerdic <cedric@yterium.com>
Date: Mon, 4 Oct 2010 18:31:28 +0000
Subject: [PATCH] reperer les formulaires CVT inseres dans les
 page-configurer_xx par les plugins via un pipeline. Pour cela on evalue le
 fond, et on extrait les input hidden name='formulaire_action'

---
 ecrire/inc/config.php | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/ecrire/inc/config.php b/ecrire/inc/config.php
index c05a0537fd..d8093af0b3 100644
--- a/ecrire/inc/config.php
+++ b/ecrire/inc/config.php
@@ -315,6 +315,16 @@ function lister_configurer($exclure = array()){
 			$matches = array_map('strtolower',$matches);
 			$forms = array_merge($forms,$matches);
 		}
+
+		// evaluer le fond en lui passant un exec coherent pour que les pipelines le reconnaissent
+		// et reperer les formulaires CVT configurer_xx insereres par les plugins via pipeline
+		$config = basename(substr($file,0,-strlen("."._EXTENSION_SQUELETTES)));
+		$fond = recuperer_fond("prive/squelettes/contenu/$config",array("exec"=>preg_replace(",^page-,i","",$config)));
+		if (is_array($inputs = extraire_balises($fond,"input")))
+			foreach($inputs as $i)
+				if (extraire_attribut($i,'name')=='formulaire_action') {
+					$forms[] = ($c=extraire_attribut($i,'value'));
+				}
 	}
 	$forms = array_flip($forms);
 
-- 
GitLab