Skip to content
Extraits de code Groupes Projets
Valider 6b8b3b2d rédigé par Fil's avatar Fil
Parcourir les fichiers

on remballe les choses bizarres necessaires pour faire de #LESAUTEURS un vrai...

on remballe les choses bizarres necessaires pour faire de #LESAUTEURS un vrai modele -- c'est plus simple quand c'est moins complique
parent 570b7a6e
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
[(#REM) [(#REM)
Modele pour #LESAUTEURS : Modele pour la balise # LESAUTEURS, dans le cas des auteurs d'un article
* s'il s'agit d'un article normal, on boucle sur les auteurs de l'article (pour un article syndique, la balise affiche directement la valeur du champ)
* s'il s'agit d'un article syndique, on affiche la valeur du champ,
passee dans #ENV par le compilo, en la securisant avec safehtml.
] ]
<BOUCLE_auteurs(AUTEURS) {id_article} {par nom} {", "}> <BOUCLE_auteurs(AUTEURS) {id_article} {par nom} {", "}>
<a href="#URL_AUTEUR">#NOM</a></BOUCLE_auteurs> <a href="#URL_AUTEUR">#NOM</a></BOUCLE_auteurs>
[(#ID_SYNDIC_ARTICLE|?{#ENV**{lesauteurs}|safehtml})]
...@@ -447,7 +447,7 @@ function inclure_modele($squelette, $type, $id) { ...@@ -447,7 +447,7 @@ function inclure_modele($squelette, $type, $id) {
if ($class) if ($class)
$contexte['class'] = $class; $contexte['class'] = $class;
#print_r($contexte);
// Traiter les parametres // Traiter les parametres
// par exemple : <img1|center>, <emb12|autostart=true> ou <doc1|lang=en> // par exemple : <img1|center>, <emb12|autostart=true> ou <doc1|lang=en>
$contexte = array_merge($contexte, $contexte = array_merge($contexte,
......
...@@ -423,8 +423,7 @@ function balise_EXPOSE_dist($p) { ...@@ -423,8 +423,7 @@ function balise_EXPOSE_dist($p) {
return calculer_balise_expose($p, $on, $off); return calculer_balise_expose($p, $on, $off);
} }
// obsolete. utiliser la precedente // #EXPOSER est obsolete. utiliser #EXPOSE ci-dessus
// http://doc.spip.org/@balise_EXPOSER_dist // http://doc.spip.org/@balise_EXPOSER_dist
function balise_EXPOSER_dist($p) function balise_EXPOSER_dist($p)
{ {
...@@ -536,6 +535,34 @@ function balise_LANG_dist ($p) { ...@@ -536,6 +535,34 @@ function balise_LANG_dist ($p) {
return $p; return $p;
} }
// #LESAUTEURS
// les auteurs d'un article (ou d'un article syndique)
// http://www.spip.net/fr_article902.html
// http://www.spip.net/fr_article911.html
// http://doc.spip.org/@balise_LESAUTEURS_dist
function balise_LESAUTEURS_dist ($p) {
// Cherche le champ 'lesauteurs' dans la pile
$_lesauteurs = champ_sql('lesauteurs', $p);
// Si le champ n'existe pas (cas de spip_articles), on applique
// le modele lesauteurs.html en passant id_article dans le contexte;
// dans le cas contraire on prend le champ 'lesauteurs' (cas de
// spip_syndic_articles)
if ($_lesauteurs AND $_lesauteurs != '$Pile[0][\'lesauteurs\']') {
$p->code = "safehtml($_lesauteurs)";
// $p->interdire_scripts = true;
} else {
$p->code = "recuperer_fond(
'modeles/lesauteurs',
array('id_article' => ".champ_sql('id_article', $p)."))";
$p->interdire_scripts = false; // securite apposee par recuperer_fond()
}
return $p;
}
// #RANG // #RANG
// affiche le "numero de l'article" quand on l'a titre '1. Premier article'; // affiche le "numero de l'article" quand on l'a titre '1. Premier article';
// ceci est transitoire afin de preparer une migration vers un vrai systeme de // ceci est transitoire afin de preparer une migration vers un vrai systeme de
......
...@@ -253,7 +253,7 @@ function calculer_balise($nom, $p) { ...@@ -253,7 +253,7 @@ function calculer_balise($nom, $p) {
// fonction speciale d'appel a un modele modeles/truc.html pour la balise #TRUC // fonction speciale d'appel a un modele modeles/truc.html pour la balise #TRUC
// exemples : #LESAUTEURS, #TRADUCTIONS, #DOC, #IMG... // exemples : #TRADUCTIONS, #DOC, #IMG...
// http://doc.spip.org/@calculer_balise_modele_dist // http://doc.spip.org/@calculer_balise_modele_dist
function calculer_balise_modele_dist($p){ function calculer_balise_modele_dist($p){
$nom = strtolower($p->nom_champ); $nom = strtolower($p->nom_champ);
...@@ -271,8 +271,9 @@ function calculer_balise_modele_dist($p){ ...@@ -271,8 +271,9 @@ function calculer_balise_modele_dist($p){
$code_contexte = argumenter_inclure($champ, $p->descr, $p->boucles, $p->id_boucle, false); $code_contexte = argumenter_inclure($champ, $p->descr, $p->boucles, $p->id_boucle, false);
// Si le champ existe dans la pile, on le met dans le contexte // Si le champ existe dans la pile, on le met dans le contexte
// (exemple : #LESAUTEURS dans spip_syndic_articles) // (a priori c'est du code mort ; il servait pour #LESAUTEURS dans
$code_contexte[] = "'$nom='.".champ_sql($nom, $p); // le cas spip_syndic_articles)
#$code_contexte[] = "'$nom='.".champ_sql($nom, $p);
// Reserver la cle primaire de la boucle courante // Reserver la cle primaire de la boucle courante
if ($primary = $p->boucles[$p->id_boucle]->primary) { if ($primary = $p->boucles[$p->id_boucle]->primary) {
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter