diff --git a/ecrire/public/balises.php b/ecrire/public/balises.php index ae975e3fc58fd8d016032f1fa96e80958ec2a10d..362cabd14099477240cc0fbb9f352804358f114b 100644 --- a/ecrire/public/balises.php +++ b/ecrire/public/balises.php @@ -983,11 +983,15 @@ function balise_MODELE_dist($p) { $nom = $_contexte[1]; unset($_contexte[1]); + if (preg_match("/^\s*'[^']*'/s", $nom)) + $nom = "'modeles/" . substr($nom,1); + else $nom = "'modeles/' . $nom"; + // Incoherence dans la syntaxe du contexte. A revoir. // Reserver la cle primaire de la boucle courante si elle existe - if ($idb = $p->id_boucle) { - if ($primary = $p->boucles[$idb]->primary - AND !strpos($primary,',')) { + if (isset($p->boucles[$p->id_boucle]->primary)) { + $primary = $p->boucles[$p->id_boucle]->primary; + if (!strpos($primary,',')) { $id = champ_sql($primary, $p); $_contexte[] = "'$primary'=>".$id; $_contexte[] = "'id'=>".$id; @@ -1002,7 +1006,7 @@ function balise_MODELE_dist($p) { $_options = "'compil'=>array($_options), 'trim'=>true" . (isset($_contexte['ajax'])?", 'ajax'=>true":''); - $page = sprintf(CODE_RECUPERER_FOND, "'modeles/' . $nom", 'array(' . join(',', $_contexte) .')', $_options, _q($connect)); + $page = sprintf(CODE_RECUPERER_FOND, $nom, 'array(' . join(',', $_contexte) .')', $_options, _q($connect)); $p->code = "\n\t(((\$recurs=(isset(\$Pile[0]['recurs'])?\$Pile[0]['recurs']:0))>=5)? '' :\n\t$page)\n";