diff --git a/ecrire/balise/logo_.php b/ecrire/balise/logo_.php index 25511b4fbc2bbdb7d93da626ee7462aa79a31a23..3059a577a9ff169ced9459350fbdb72233da2804 100644 --- a/ecrire/balise/logo_.php +++ b/ecrire/balise/logo_.php @@ -38,39 +38,61 @@ function balise_LOGO__dist ($p) { $_id_objet = champ_sql($id_objet, $p); } - // analyser les faux filtres - $fichier = 0; - $align = $lien = $params = ''; - - if (is_array($p->fonctions)) { - foreach($p->fonctions as $couple) { - $nom = trim($couple[0]); - - // double || signifie "on passe aux vrais filtres" - if ($nom == '') { - if ($couple[1]) { - $params = $couple[1]; // recuperer #LOGO_DOCUMENT{20,30} - array_shift($p->param); - } else break; - } else { + $fichier = ($p->etoile === '**') ? -1 : 0; + $lien = ($p->etoile === '*') ? ' ' : ''; + $coord = array(); + $align = $params = ''; + + if ($p->param AND !$p->param[0][0]) { + $params = array_shift($p->param); + array_shift($params); + foreach($params as $a) { + if ($a[0]->type === 'texte') { + $n = $a[0]->texte; + if (is_numeric($n)) + $coord[]= $n; + else $align = $n; + } else $lien = $a[0]; + } + } + + $x = !$coord ? 0 : intval(array_shift($coord)); + $y = !$coord ? 0 : intval(array_shift($coord)); + + // Bloc de compatibilite SPIP <= 2.0 + // Ne pas chercher a comprendre. + foreach($p->fonctions as $couple) { + $nom = trim($couple[0]); + if ($nom == '') break; + $r = logo_faux_filtres($nom); + if ($r === 0) { + $align = $nom; + array_shift($p->param); + spip_log('filtre de logo obsolete', 'vieilles_defs'); + } else { + if ($r === 2) { + $fichier = -1; + array_shift($p->param); + spip_log('filtre de logo obsolete', 'vieilles_defs'); + } elseif ($r === 1) { + $lien = ' '; array_shift($p->param); - $r = logo_faux_filtres($nom); - if ($r === 0) - $align = $nom; - else { - if ($r === 2) - $fichier = -1; - elseif ($r === 1) - $lien = ' '; - else $lien = $nom; - break; - } + spip_log('filtre de logo obsolete', 'vieilles_defs'); + } elseif (ltrim($nom[0])=='#') { + array_shift($p->param); + $lien = $nom; + // le cas else est la seule incompatibilite + spip_log('filtre de logo obsolete', 'vieilles_defs'); } + break; } } + // Fin du bloc if ($lien) { - if (preg_match(",^[^#]*#([A-Za-z_]+),", $lien, $r)) { + if (!is_string($lien)) + $lien = calculer_champ($lien); + elseif (preg_match(",^[^#]*#([A-Za-z_]+),", $lien, $r)) { $c = new Champ(); $c->nom_champ = $r[1]; $c->id_boucle = $p->id_boucle; @@ -85,11 +107,6 @@ function balise_LOGO__dist ($p) { $connect = $p->id_boucle ?$p->boucles[$p->id_boucle]->sql_serveur :''; if ($type == 'document') { - if (preg_match('/{\s*(\d+),\s*(\d+)\s*}/', $params, $r)) { - $x = intval($r[1]); - $y = intval($r[2]); - } else $x = $y = 0; - $qconnect = _q($connect); if ($fichier) $code = "quete_logo_file(quete_document($_id_objet, $qconnect), $qconnect)"; @@ -126,16 +143,20 @@ function logo_survol($id_objet, $_id_objet, $type, $align, $fichier, $lien, $p, $code = "\n((!is_array(\$l = $code)) ? '':\n (" . '"<img class=\"spip_logos\" alt=\"\"' . - ($align ? " align=\"$align\"" : '') + ($align ? " align=\\\"$align\\\"" : '') . ' src=\"$l[0]\"" . $l[3] . ($l[1] ? " onmouseover=\"this.src=\'$l[1]\'\" onmouseout=\"this.src=\'$l[0]\'\"" : "") . \' />\'))'; if (!$lien) return $code; return ('\'<a href="\' .' . $lien . ' . \'"> \' . ' . $code . " . '</a>'"); -}// Pour les documents comme pour les logos, le filtre |fichier donne -// le chemin du fichier apres 'IMG/' ; peut-etre pas d'une purete -// remarquable, mais a conserver pour compatibilite ascendante. +} + +// Les pseudos filtres |fichier et |lien pour les balises LOGO_XXX +// donnent le chemin du fichier et son URL. +// Ecritures obsolete remplacees par ** et *: LOGO_XXX** et LOGO_XXX* +// Conservees pour compatibilite ascendante mais ne plus utiliser +// Idem pour le positionnement. // -> http://www.spip.net/fr_article901.html function logo_faux_filtres($nom) diff --git a/squelettes-dist/article.html b/squelettes-dist/article.html index 0bcb7a2b2e074a3623cab6abfd7f0580ffa1011e..d82d31a0d1f9ed85ef7d56bd3cce436a0ddd76d0 100644 --- a/squelettes-dist/article.html +++ b/squelettes-dist/article.html @@ -22,7 +22,7 @@ <div class="cartouche"> <div class="surlignable"> - [(#LOGO_ARTICLE||image_reduire{200,200})] + [(#LOGO_ARTICLE|image_reduire{200,200})] [<p class="#EDIT{surtitre} surtitre">(#SURTITRE)</p>] <h1 class="#EDIT{titre} entry-title">#TITRE</h1> [<p class="#EDIT{soustitre} soustitre">(#SOUSTITRE)</p>] diff --git a/squelettes-dist/auteur.html b/squelettes-dist/auteur.html index 782b8126e902abdf97147f22dfbba554145ec690..d7adda92bf9d1d020cbba88938d9bc36325acc5e 100644 --- a/squelettes-dist/auteur.html +++ b/squelettes-dist/auteur.html @@ -24,7 +24,7 @@ <div class="vcard">[(#REM) microformat vcard] <div class="cartouche"> - [(#LOGO_AUTEUR||image_reduire{200,200})] + [(#LOGO_AUTEUR|image_reduire{200,200})] <h1 class="#EDIT{qui} fn">#NOM</h1> </div> diff --git a/squelettes-dist/backend-breves.html b/squelettes-dist/backend-breves.html index 908db651e789e87c4f2a6ca158cf421433b2cb39..b8789a0e76db416d9c9cffb9285f883f5d878a61 100644 --- a/squelettes-dist/backend-breves.html +++ b/squelettes-dist/backend-breves.html @@ -15,10 +15,10 @@ version="1.0"[ encoding="(#CHARSET)"]?> [ <image> <title>[(#NOM_SITE_SPIP|texte_backend)]</title> - <url>(#LOGO_SITE_SPIP||image_reduire{150,150}|extraire_attribut{src}|url_absolue|texte_backend)</url> + <url>(#LOGO_SITE_SPIP|image_reduire{150,150}|extraire_attribut{src}|url_absolue|texte_backend)</url> <link>#URL_SITE_SPIP/</link> - [<height>(#LOGO_SITE_SPIP||image_reduire{150,150}|extraire_attribut{height})</height>] - [<width>(#LOGO_SITE_SPIP||image_reduire{150,150}|extraire_attribut{width})</width>] + [<height>(#LOGO_SITE_SPIP|image_reduire{150,150}|extraire_attribut{height})</height>] + [<width>(#LOGO_SITE_SPIP|image_reduire{150,150}|extraire_attribut{width})</width>] </image> ] @@ -55,7 +55,7 @@ version="1.0"[ encoding="(#CHARSET)"]?> ce qui permet une syndication plus riche (mais plus "lourde"). Fonction desactivable depuis les reglages du site. ][ -(#CONFIG{syndication_integrale}|=={oui}|?{' ',''})<content:encoded>[(#LOGO_BREVE|right||image_reduire{150,150}|texte_backend) +(#CONFIG{syndication_integrale}|=={oui}|?{' ',''})<content:encoded>[(#LOGO_BREVE{right}|image_reduire{150,150}|texte_backend) ][<div class='rss_texte'>(#TEXTE|texte_backend)</div> ][<hr /> <div class='rss_notes'>(#NOTES|texte_backend)</div>] diff --git a/squelettes-dist/backend.html b/squelettes-dist/backend.html index ad680cd019c1472232852eb6c3489d316f757606..a69bcd370b1af26a1db47daf90887ffbe2d74f9a 100644 --- a/squelettes-dist/backend.html +++ b/squelettes-dist/backend.html @@ -14,10 +14,10 @@ version="1.0"[ encoding="(#CHARSET)"]?> [ <image> <title>[(#NOM_SITE_SPIP|texte_backend)]</title> - <url>(#LOGO_SITE_SPIP||image_reduire{144,400}|extraire_attribut{src}|url_absolue|texte_backend)</url> + <url>(#LOGO_SITE_SPIP|image_reduire{144,400}|extraire_attribut{src}|url_absolue|texte_backend)</url> <link>#URL_SITE_SPIP/</link> - [<height>(#LOGO_SITE_SPIP||image_reduire{144,400}|extraire_attribut{height})</height>] - [<width>(#LOGO_SITE_SPIP||image_reduire{144,400}|extraire_attribut{width})</width>] + [<height>(#LOGO_SITE_SPIP|image_reduire{144,400}|extraire_attribut{height})</height>] + [<width>(#LOGO_SITE_SPIP|image_reduire{144,400}|extraire_attribut{width})</width>] </image> ] diff --git a/squelettes-dist/breve.html b/squelettes-dist/breve.html index e92b2afa6b9e9eb489bee246ccf4c402efaeb8ed..d79a34a34ed5dcd2775c4864c740245ca7eb9e3b 100644 --- a/squelettes-dist/breve.html +++ b/squelettes-dist/breve.html @@ -23,7 +23,7 @@ <div id="hierarchie"><a href="#URL_SITE_SPIP/" ><:accueil_site:></a><BOUCLE_ariane(RUBRIQUES){id_rubrique}> > <a href="#URL_RUBRIQUE">[(#TITRE|couper{80})]</a></BOUCLE_ariane>[ > <strong class="on">(#TITRE|couper{80})</strong>]</div> <div class="cartouche"> - [(#LOGO_BREVE||image_reduire{200,200})] + [(#LOGO_BREVE|image_reduire{200,200})] <h1 class="#EDIT{titre}">#TITRE</h1> <p><small><abbr class="published" title="[(#DATE|date_iso)]">[(#DATE|nom_jour) ][(#DATE|affdate)]</abbr></small></p> </div> diff --git a/squelettes-dist/forum.html b/squelettes-dist/forum.html index 46a83948bfadf390e89dd776282841b5ba463c26..2dd97478f38091a33af1cd3d7cc6621245e2db08 100644 --- a/squelettes-dist/forum.html +++ b/squelettes-dist/forum.html @@ -75,14 +75,14 @@ </BOUCLE_forum_parent> <BOUCLE_article(ARTICLES) {id_article}> - [(#LOGO_ARTICLE||image_reduire{150,100})] + [(#LOGO_ARTICLE|image_reduire{150,100})] <h3><a href="#URL_ARTICLE">#TITRE</a></h3> <small>[(#DATE|affdate_jourcourt)][, <:par_auteur:> (#LESAUTEURS)]</small> [<div class="introduction">(#INTRODUCTION)</div>] </BOUCLE_article> <BOUCLE_breve(BREVES) {id_breve}> - [(#LOGO_BREVE||image_reduire{150,100})] + [(#LOGO_BREVE|image_reduire{150,100})] <h3><a href="#URL_BREVE">#TITRE</a></h3> <small>[(#DATE|affdate_jourcourt)]</small> [<div class="introduction">(#INTRODUCTION)</div>] diff --git a/squelettes-dist/inc-rss-item.html b/squelettes-dist/inc-rss-item.html index 7db4d7967be4af4b3cfdc8b34d8b1cf74fe8d9fc..3846ec6c0f8b647f20a25f0abdd4d486b3bbfb2c 100644 --- a/squelettes-dist/inc-rss-item.html +++ b/squelettes-dist/inc-rss-item.html @@ -33,7 +33,7 @@ ce qui permet une syndication plus riche (mais plus "lourde"). Fonction desactivable depuis les reglages du site. ][ -(#CONFIG{syndication_integrale}|=={oui}|?{' ',''})<content:encoded>[(#LOGO_ARTICLE|right||image_reduire{150,150}|texte_backend) +(#CONFIG{syndication_integrale}|=={oui}|?{' ',''})<content:encoded>[(#LOGO_ARTICLE{right}|image_reduire{150,150}|texte_backend) ][<div class='rss_chapo'>(#CHAPO|texte_backend)</div> ][<div class='rss_texte'>(#TEXTE| image_reduire{500,0}|texte_backend)</div> diff --git a/squelettes-dist/mot.html b/squelettes-dist/mot.html index cf9c30cd82a69ba5f2137d828c1f049703666844..61d9d159305920676b5ee8af8805ba191ee66ade 100644 --- a/squelettes-dist/mot.html +++ b/squelettes-dist/mot.html @@ -23,7 +23,7 @@ <div id="hierarchie"><a href="#URL_SITE_SPIP/"><:accueil_site:></a> > <:mots_clefs:><BOUCLE_ariane(GROUPES_MOTS){id_groupe}> > [(#TITRE|couper{80})]</BOUCLE_ariane>[ > <strong class="on">(#TITRE|couper{80})</strong>]</div> <div class="cartouche"> - [(#LOGO_MOT||image_reduire{200,200})] + [(#LOGO_MOT|image_reduire{200,200})] <h1 class="#EDIT{titre}">#TITRE</h1> </div> diff --git a/squelettes-dist/rubrique.html b/squelettes-dist/rubrique.html index b8cbd6680de9891abce04ed975785975c9d75dd0..34637fbbd1b5b1b4c450a9c5a151483eb7e6c01f 100644 --- a/squelettes-dist/rubrique.html +++ b/squelettes-dist/rubrique.html @@ -26,7 +26,7 @@ <div id="hierarchie"><a href="#URL_SITE_SPIP/"><:accueil_site:></a><BOUCLE_ariane(HIERARCHIE){id_rubrique}> > <a href="#URL_RUBRIQUE">[(#TITRE|couper{80})]</a></BOUCLE_ariane>[ > <strong class="on">(#TITRE|couper{80})</strong>]</div> <div class="cartouche"> - [(#LOGO_RUBRIQUE||image_reduire{200,200})] + [(#LOGO_RUBRIQUE|image_reduire{200,200})] <h1 class="#EDIT{titre}">#TITRE</h1> [<p><small><:dernier_ajout:> : (#DATE|affdate_jourcourt).</small></p>] </div> @@ -41,7 +41,7 @@ <ul> <BOUCLE_articles(ARTICLES) {id_rubrique} {par date}{inverse} {pagination}> <li> - [(#LOGO_ARTICLE|#URL_ARTICLE|image_reduire{150,100})] + [(#LOGO_ARTICLE{#URL_ARTICLE}|image_reduire{150,100})] <h3><a href="#URL_ARTICLE">#TITRE</a></h3> <small>[(#DATE|affdate_jourcourt)][, <:par_auteur:> (#LESAUTEURS)]</small> </li> diff --git a/squelettes-dist/site.html b/squelettes-dist/site.html index 7dcba90b870d2b4f1bf91bbf2dac966c1cf64219..a01310e15b50b4a38d7e2a70dd9649fc801b41c7 100644 --- a/squelettes-dist/site.html +++ b/squelettes-dist/site.html @@ -26,7 +26,7 @@ <div id="hierarchie"><a href="#URL_SITE_SPIP/"><:accueil_site:></a><BOUCLE_ariane(HIERARCHIE){id_syndic}> > <a href="#URL_RUBRIQUE">[(#TITRE|couper{80})]</a></BOUCLE_ariane>[ > <strong class="on">(#NOM_SITE|couper{80})</strong>]</div> <div class="cartouche"> - <a href="#URL_SITE">[(#LOGO_SITE||image_reduire{150,100})]</a> + <a href="#URL_SITE">[(#LOGO_SITE|image_reduire{150,100})]</a> <h1 class="#EDIT{nom_site}">#NOM_SITE</h1> </div> diff --git a/squelettes-dist/sommaire.html b/squelettes-dist/sommaire.html index 372aad897c298f146aac2bc5b6d0d4169ca3e886..9e41bd1a93b5293727aa593638aab8771959d8fc 100644 --- a/squelettes-dist/sommaire.html +++ b/squelettes-dist/sommaire.html @@ -33,7 +33,7 @@ <ul> <BOUCLE_articles_recents(ARTICLES) {par date}{inverse} {pagination 5}> <li class="hentry"> - [(#LOGO_ARTICLE_RUBRIQUE|#URL_ARTICLE|image_reduire{150,100})] + [(#LOGO_ARTICLE_RUBRIQUE{#URL_ARTICLE}|image_reduire{150,100})] <h3 class="entry-title"><a href="#URL_ARTICLE" rel="bookmark">#TITRE</a></h3> <small><abbr class="published"[ title="(#DATE|date_iso)"]>[(#DATE|affdate_jourcourt)]</abbr>[, <:par_auteur:> (#LESAUTEURS)]</small> [<div class="#EDIT{intro} introduction entry-content">(#INTRODUCTION)</div>]