diff --git a/ecrire/exec/accueil.php b/ecrire/exec/accueil.php index cb02719e7bb6a62936c98288af6da146aa10d6a7..ef5209b24afc91d55f2aae4cca8686f53dc008ca 100644 --- a/ecrire/exec/accueil.php +++ b/ecrire/exec/accueil.php @@ -312,9 +312,9 @@ if ($spip_display != 4) { echo debut_cadre_relief("racine-site-24.gif", false, "", $nom_site_spip); if ($spip_display != 1) { - include_spip('inc/logos'); - $res = decrire_logo("id_syndic", 'on', 0, 170, 170); - if ($res) + $logo_f = charger_fonction('chercher_logo', 'inc'); + if ($res = $logo_f(0, 'id_syndic', 'on')) + if ($res = decrire_logo("id_syndic", 'on', 0, 170, 170; $res)) echo "<div style='text-align:center; margin-bottom: 5px;'>$res</div>"; } echo "<div class='verdana1'>"; diff --git a/ecrire/exec/ajax_page.php b/ecrire/exec/ajax_page.php index bcb92073afd9b7187b6c53f7964f8f98148a23da..b3a184a8754333a55e29270fa77218ada87083a3 100644 --- a/ecrire/exec/ajax_page.php +++ b/ecrire/exec/ajax_page.php @@ -226,14 +226,11 @@ function ajax_page_aff_info($id, $exclus, $col, $id_ajax_fonc, $type, $rac) echo "<input type='text' id='".$rac."_sel2' value=\"".entites_html($titre)."\" />"; echo "</div>"; - include_spip('inc/logos'); - - echo "<div class='arial2' style='padding: 5px; background-color: white; border: 1px solid $couleur_foncee; border-top: 0px;'>"; if ($type == "rubrique" AND $spip_display != 1 AND $spip_display!=4 AND $GLOBALS['meta']['image_process'] != "non") { - include_spip('inc/logos'); - $res = decrire_logo("id_rubrique", 'on', $id, 100, 48); - if ($res) + $logo_f = charger_fonction('chercher_logo', 'inc'); + if ($res = $logo_f($id, 'id_rubrique', 'on')) + if ($res = decrire_logo("id_rubrique", 'on', $id, 100, 48, $res)) echo "<div style='float: $spip_lang_right; margin-$spip_lang_right: -5px; margin-top: -5px;'>$res</div>"; } diff --git a/ecrire/exec/articles.php b/ecrire/exec/articles.php index 99a1b05260f96b6c741e23a27a23b2cc7f409c64..50e525751c3b5ac2dea20b87aa86b77fa5e62b66 100644 --- a/ecrire/exec/articles.php +++ b/ecrire/exec/articles.php @@ -16,7 +16,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return; include_spip('inc/presentation'); include_spip('inc/texte'); include_spip('inc/rubriques'); -include_spip('inc/logos'); include_spip('inc/mots'); include_spip('inc/date'); include_spip('inc/documents'); @@ -270,10 +269,11 @@ function boites_de_config_articles($id_article, $id_rubrique, $flag_editable, // Logos de l'article - if ($id_article AND $flag_editable AND ($spip_display != 4)) - afficher_boite_logo('id_article', $id_article, + if ($id_article AND $flag_editable AND ($spip_display != 4)) { + include_spip('inc/chercher_logo'); + echo afficher_boite_logo('id_article', $id_article, _T('logo_article').aide ("logoart"), _T('logo_survol'), 'articles'); - + } // // Boites de configuration avancee diff --git a/ecrire/exec/auteurs_edit.php b/ecrire/exec/auteurs_edit.php index 16c47f9e58f74806d5dfcd40c94bc37aa43b455c..73c57daaaff55194f641e2ae9bda09a7322a31fc 100644 --- a/ecrire/exec/auteurs_edit.php +++ b/ecrire/exec/auteurs_edit.php @@ -13,7 +13,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return; include_spip('inc/presentation'); -include_spip('inc/logos'); include_spip('inc/auteur_voir'); include_spip('inc/message_select'); @@ -40,7 +39,8 @@ function exec_auteurs_edit_dist() cadre_auteur_infos($id_auteur, $auteur); if (statut_modifiable_auteur($id_auteur, $auteur) AND ($spip_display != 4)) { - afficher_boite_logo('id_auteur', $id_auteur, + include_spip('inc/chercher_logo'); + echo afficher_boite_logo('id_auteur', $id_auteur, _T('logo_auteur').aide ("logoart"), _T('logo_survol'), 'auteurs_edit'); } diff --git a/ecrire/exec/breves_voir.php b/ecrire/exec/breves_voir.php index 1f6c97a56726a14733a7846fe6fa51350373c81f..92039467e97f2a6eb6378553bf1f82e57b8de1be 100644 --- a/ecrire/exec/breves_voir.php +++ b/ecrire/exec/breves_voir.php @@ -14,7 +14,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return; include_spip('inc/presentation'); include_spip('inc/rubriques'); -include_spip('inc/logos'); include_spip('inc/mots'); include_spip('inc/date'); include_spip('base/abstract_sql'); @@ -69,11 +68,12 @@ fin_boite_info(); // Logos de la breve // -if (($spip_display != 4) AND $id_breve>0 AND ($connect_statut == '0minirezo' AND acces_rubrique($id_rubrique))) - afficher_boite_logo('id_breve', $id_breve, + if (($spip_display != 4) AND $id_breve>0 AND ($connect_statut == '0minirezo' AND acces_rubrique($id_rubrique))) { + include_spip('inc/chercher_logo'); + echo afficher_boite_logo('id_breve', $id_breve, _T('logo_breve').aide ("breveslogo"), _T('logo_survol'), 'breves_voir'); - + } debut_raccourcis(); icone_horizontale(_T('icone_nouvelle_breve'), generer_url_ecrire("breves_edit","new=oui&id_rubrique=$id_rubrique"), "breve-24.gif","creer.gif"); diff --git a/ecrire/exec/configuration.php b/ecrire/exec/configuration.php index 5f4c7849554b0d37a3b87986c1800e613ae63840..43befe7153ced6b6f01ab6f8629d43ccaa680fc8 100644 --- a/ecrire/exec/configuration.php +++ b/ecrire/exec/configuration.php @@ -18,7 +18,6 @@ function exec_configuration_dist() include_spip('inc/presentation'); include_spip('inc/config'); -include_spip('inc/logos'); if ($connect_statut != '0minirezo') { echo _T('avis_non_acces_page'); @@ -60,9 +59,10 @@ debut_gauche(); // // Le logo de notre site, c'est site{on,off}0.{gif,png,jpg} // -if ($spip_display != 4) - afficher_boite_logo('id_syndic', 0, _T('logo_site'), _T('logo_survol'), 'configuration'); - + if ($spip_display != 4) { + include_spip('inc/chercher_logo'); + echo afficher_boite_logo('id_syndic', 0, _T('logo_site'), _T('logo_survol'), 'configuration'); + } echo pipeline('affiche_gauche',array('args'=>array('exec'=>'configuration'),'data'=>'')); creer_colonne_droite(); diff --git a/ecrire/exec/mots_edit.php b/ecrire/exec/mots_edit.php index f360affe4591242a1b3b0a6dcfb2e623cd886c45..3462b2d2909a214668958a6e37694e0588eff188 100644 --- a/ecrire/exec/mots_edit.php +++ b/ecrire/exec/mots_edit.php @@ -13,7 +13,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return; include_spip('inc/presentation'); -include_spip('inc/logos'); include_spip('base/abstract_sql'); function exec_mots_edit_dist() @@ -139,9 +138,10 @@ if ($id_mot) { // Logos du mot-clef // -if ($id_mot > 0 AND $connect_statut == '0minirezo' AND $connect_toutes_rubriques AND ($spip_display != 4)) - afficher_boite_logo('id_mot', $id_mot, _T('logo_mot_cle').aide("breveslogo"), _T('logo_survol'), 'mots_edit'); - + if ($id_mot > 0 AND $connect_statut == '0minirezo' AND $connect_toutes_rubriques AND ($spip_display != 4)) { + include_spip('inc/chercher_logo'); + echo afficher_boite_logo('id_mot', $id_mot, _T('logo_mot_cle').aide("breveslogo"), _T('logo_survol'), 'mots_edit'); + } // // Afficher les boutons de creation d'article et de breve diff --git a/ecrire/exec/naviguer.php b/ecrire/exec/naviguer.php index 8b7ca961958c9f79f6c945253b227f70b89f9ae8..2f248693f494c3645f23290efd0a94a747de8f61 100644 --- a/ecrire/exec/naviguer.php +++ b/ecrire/exec/naviguer.php @@ -16,7 +16,6 @@ include_spip('inc/presentation'); include_spip('inc/texte'); include_spip('inc/rubriques'); include_spip('inc/forum'); -include_spip('inc/logos'); include_spip('inc/mots'); include_spip('inc/documents'); include_spip('base/abstract_sql'); @@ -105,8 +104,10 @@ function exec_naviguer_dist() // // Logos de la rubrique // - if ($flag_editable AND ($spip_display != 4)) - afficher_boite_logo('id_rubrique', $id_rubrique, ($id_rubrique ? _T('logo_rubrique') : _T('logo_standard_rubrique'))." ".aide ("rublogo"), _T('logo_survol'), 'naviguer'); + if ($flag_editable AND ($spip_display != 4)) { + include_spip('inc/chercher_logo'); + echo afficher_boite_logo('id_rubrique', $id_rubrique, ($id_rubrique ? _T('logo_rubrique') : _T('logo_standard_rubrique'))." ".aide ("rublogo"), _T('logo_survol'), 'naviguer'); + } // // Afficher les boutons de creation d'article et de breve diff --git a/ecrire/exec/sites.php b/ecrire/exec/sites.php index cf69c76199821eaf90c8025d709ff756570fd5e7..3862a229d93ec616b937e59278f8ff8c374e5b97 100644 --- a/ecrire/exec/sites.php +++ b/ecrire/exec/sites.php @@ -15,7 +15,6 @@ include_spip('inc/presentation'); include_spip('inc/sites_voir'); include_spip('inc/syndic'); include_spip('inc/rubriques'); -include_spip('inc/logos'); include_spip('inc/mots'); include_spip('inc/date'); include_spip('inc/config'); @@ -254,9 +253,10 @@ echo "<p><center>"; icone (_T('icone_voir_sites_references'), generer_url_ecrire("sites_tous",""), "site-24.gif","rien.gif"); echo "</center>"; -if ($id_syndic AND $flag_administrable AND ($spip_display != 4)) - afficher_boite_logo('id_syndic', $id_syndic, _T('logo_site')." ".aide ("rublogo"), _T('logo_survol'), 'sites'); - + if ($id_syndic AND $flag_administrable AND ($spip_display != 4)) { + include_spip('inc/chercher_logo'); + echo afficher_boite_logo('id_syndic', $id_syndic, _T('logo_site')." ".aide ("rublogo"), _T('logo_survol'), 'sites'); + } echo pipeline('affiche_gauche',array('args'=>array('exec'=>'sites','id_syndic'=>$id_syndic),'data'=>'')); creer_colonne_droite(); diff --git a/ecrire/inc/logos.php b/ecrire/inc/logos.php index c9b9d60835a254ee65b2e13845ee45e626d5233a..18b57dd771222b6c5f3b24dfa4810aa783a1598f 100644 --- a/ecrire/inc/logos.php +++ b/ecrire/inc/logos.php @@ -12,6 +12,7 @@ if (!defined("_ECRIRE_INC_VERSION")) return; + function cherche_image_nommee($nom, $formats = array ('gif', 'jpg', 'png')) { if (ereg("^" . _DIR_IMG, $nom)) { @@ -37,160 +38,6 @@ function cherche_image_nommee($nom, $formats = array ('gif', 'jpg', 'png')) { } } -function cherche_logo($id, $type, $mode) { - global $formats_logos; - # attention au cas $id = '0' pour LOGO_SITE_SPIP : utiliser intval() - $nom = $type . $mode . intval($id); - foreach ($formats_logos as $format) { - if (@file_exists($d = (_DIR_LOGOS . $nom . '.' . $format))) - return array($d, _DIR_LOGOS, $nom, $format); - } - # coherence de type pour servir comme filtre (formulaire_login) - return array(); -} - - -function decrire_logo($id_objet, $mode, $id, $width, $height, $titre="", $script="") { - - $type = $GLOBALS['table_logos'][$id_objet]; - if (!$img = cherche_logo($id, $type, $mode)) return ''; - list($fid, $dir, $nom, $format) = $img; - - $res = ratio_image($fid, $nom, $format, $width, $height, "alt=''"); - if (!$titre) - return $res; - else { - if ($res) - $res = "<div><a href='" . $fid . "'>$res</a></div>"; - else - $res = "<img src='$fid' width='$width' height='$height' alt='" . htmlentities($titre) . "' />"; - if ($taille = @getimagesize($fid)) - $taille = _T('info_largeur_vignette', array('largeur_vignette' => $taille[0], 'hauteur_vignette' => $taille[1])); - return "<p><center>$res" . - debut_block_invisible(md5($titre)) . - "<font size='1'>" . - $taille . - "\n<br />[<a href='" . - redirige_action_auteur("iconifier", "unlink $nom.$format", $script, "$id_objet=$id") . - "'>". - _T('lien_supprimer') . - "</a>]</font>" . - fin_block() . - "</center></p>"; - } -} - -function afficher_boite_logo($id_objet, $id, $texteon, $texteoff, $script) { - - include_spip('inc/session'); - echo "<p>"; - debut_cadre_relief("image-24.gif"); - echo "<div class='verdana1' style='text-align: center;'>"; - $desc = afficher_logo($texteon, $id_objet, 'on', $id, $script); - - if ($desc AND $texteoff) { - echo "<br /><br />"; - afficher_logo($texteoff, $id_objet, 'off', $id, $script); - } - - echo "</div>"; - fin_cadre_relief(); - echo "</p>"; -} - -global $table_logos; - -$table_logos = array( // cf public/composer.php - 'id_article' => 'art', - 'id_auteur' => 'aut', - 'id_breve' => 'breve', - 'id_mot' => 'mot', - 'id_syndic'=> 'site', - 'id_rubrique' => 'rub' - ); - -function afficher_logo($titre, $id_objet, $mode, $id, $script) { - global $connect_id_auteur; - - echo bouton_block_invisible(md5($titre)), "<b>", $titre, "</b>"; - - $logo = decrire_logo($id_objet,$mode,$id, 170, 170, $titre, $script); - - if ($logo) { - echo $logo; - } - else { - $afficher = ""; - $dir_ftp = determine_upload(); - if ($dir_ftp - AND $fichiers = preg_files($dir_ftp, '[.](gif|jpg|png)$')) { - foreach ($fichiers as $f) { - $f = substr($f, strlen($dir_ftp)); - $afficher .= "\n<option value='$f'>$f</option>"; - } - } - if (!$afficher) { - if ($dir_ftp) - $afficher = _T('info_installer_images_dossier', - array('upload' => '<b>' . $dir_ftp . '</b>')); - } else { - $afficher = "\n<div style='text-align: left'>" . - _T('info_selectionner_fichier', - array('upload' => '<b>' . $dir_ftp . '</b>')) . - ":</div>" . - "\n<select name='source' CLASS='forml' size='1'>$afficher\n</select>" . - "\n<div align='" . - $GLOBALS['spip_lang_right'] . - "'><input name='sousaction2' type='submit' value='". - _T('bouton_choisir') . - "' CLASS='fondo' style='font-size:9px' /></div>"; - } - $afficher = "\n" . - _T('info_telecharger_nouveau_logo') . - "<br />" . - "\n<input name='image' type='File' class='forml' style='font-size:9px;' size='15'>" . - "<div align='" . $GLOBALS['spip_lang_right'] . "'>" . - "\n<input name='sousaction1' type='submit' value='" . - _T('bouton_telecharger') . - "' class='fondo' style='font-size:9px' /></div>" . - $afficher; - - $type = $GLOBALS['table_logos'][$id_objet]; - echo debut_block_invisible(md5($titre)); - echo generer_action_auteur('iconifier', - "$type$mode$id", - generer_url_ecrire($script, "$id_objet=$id"), - $afficher, - " method='POST' ENCTYPE='multipart/form-data'"); - echo fin_block(); - } - return $logo; -} - - -// -// Creation automatique d'une vignette -// - -// Calculer le ratio -function image_ratio ($srcWidth, $srcHeight, $maxWidth, $maxHeight) { - $ratioWidth = $srcWidth/$maxWidth; - $ratioHeight = $srcHeight/$maxHeight; - - if ($ratioWidth <=1 AND $ratioHeight <=1) { - $destWidth = $srcWidth; - $destHeight = $srcHeight; - } else if ($ratioWidth < $ratioHeight) { - $destWidth = $srcWidth/$ratioHeight; - $destHeight = $maxHeight; - } - else { - $destWidth = $maxWidth; - $destHeight = $srcHeight/$ratioWidth; - } - return array (ceil($destWidth), ceil($destHeight), - max($ratioWidth,$ratioHeight)); -} function creer_vignette($image, $maxWidth, $maxHeight, $format, $destdir, $destfile, $process='AUTO', $force=false, $test_cache_only = false) { global $convert_command, $pnmscale_command; @@ -231,6 +78,7 @@ function creer_vignette($image, $maxWidth, $maxHeight, $format, $destdir, $destf if ($srcsize = @getimagesize($image)) { $srcWidth=$srcsize[0]; $srcHeight=$srcsize[1]; + include_spip('inc/chercher_logo'); list ($destWidth,$destHeight) = image_ratio($srcWidth, $srcHeight, $maxWidth, $maxHeight); } else if ($process == 'convert' OR $process == 'imagick') { $destWidth = $maxWidth; @@ -422,6 +270,7 @@ function recupere_image_originale($image, $format) } + // // Retourner taille d'une image // pour les filtres |largeur et |hauteur @@ -464,9 +313,6 @@ function taille_image($img) { return array($srcHeight, $srcWidth); } - - - // // Reduire la taille d'un logo // [(#LOGO_ARTICLE||reduire_image{100,60})] @@ -508,6 +354,7 @@ function reduire_image_logo($img, $taille = -1, $taille_y = -1) { // on peut resizer en mode html si on dispose des elements if ($srcw = extraire_attribut($img, 'width') AND $srch = extraire_attribut($img, 'height')) { + include_spip('inc/chercher_logo'); list($w,$h) = image_ratio($srcw, $srch, $taille, $taille_y); $img = inserer_attribut( inserer_attribut($img, 'width', $w), @@ -559,6 +406,7 @@ function reduire_image_logo($img, $taille = -1, $taille_y = -1) { if (preg_match(",(.*)\.(jpg|gif|png)$,", $logo, $regs)) { if ($i = cherche_image_nommee($regs[1], array($regs[2]))) { list(,$nom,$format) = $i; + include_spip('inc/chercher_logo'); return ratio_image($logo, $nom, $format, $taille, $taille_y, $attributs); } } @@ -567,26 +415,4 @@ function reduire_image_logo($img, $taille = -1, $taille_y = -1) { return "<img src='$logo$date'$attributs />"; } -function ratio_image($logo, $nom, $format, $taille, $taille_y, $attributs) -{ - if (!$taille_origine = @getimagesize($logo)) return ''; - list ($destWidth,$destHeight, $ratio) = image_ratio($taille_origine[0], $taille_origine[1], $taille, $taille_y); - - // Creer effectivement la vignette reduite - $suffixe = '-'.$destWidth.'x'.$destHeight; - $preview = creer_vignette($logo, $taille, $taille_y, $format, ('cache'.$suffixe), $nom.$suffixe); - if ($preview) { - $logo = $preview['fichier']; - $destWidth = $preview['width']; - $destHeight = $preview['height']; - } - - // dans l'espace prive mettre un timestamp sur l'adresse - // de l'image, de facon a tromper le cache du navigateur - // quand on fait supprimer/reuploader un logo - // (pas de filemtime si SAFE MODE) - $date = _DIR_RESTREINT ? '' : ('?date='.@filemtime($logo)); - return "<img src='$logo$date' width='".$destWidth."' height='".$destHeight."'$attributs />"; -} - ?> diff --git a/ecrire/inc/presentation.php b/ecrire/inc/presentation.php index 2fd49f5bb10383ca8fb7f265cb608e86bc6a7f08..3bb12e540558515a7b049367f408be710d598e6b 100644 --- a/ecrire/inc/presentation.php +++ b/ecrire/inc/presentation.php @@ -501,7 +501,6 @@ function affiche_tranche_bandeau($requete, $icone, $col, $fg, $bg, $tmp_var, $de global $spip_display ; $voir_logo = ($spip_display != 1 AND $spip_display != 4 AND $GLOBALS['meta']['image_process'] != "non"); - if ($voir_logo) include_spip('inc/logos'); $tous_id = array(); @@ -791,7 +790,6 @@ function afficher_articles($titre_table, $requete, $afficher_visites = false, $a $voir_logo = ($spip_display != 1 AND $spip_display != 4 AND $GLOBALS['meta']['image_process'] != "non"); - if ($voir_logo) include_spip('inc/logos'); //echo "<table width='100%' cellpadding='2' cellspacing='0' border='0'>"; echo afficher_liste_debut_tableau(), str_replace("::id_ajax_fonc::", $id_ajax_fonc, $tranches); @@ -890,11 +888,10 @@ function afficher_articles_boucle($row, &$tous_id, $afficher_auteurs, $afficher_ "'$descriptif$dir_lang style=\"display:block;\">"; if ($voir_logo) { - - include_spip('inc/logos'); - $logo = decrire_logo("id_article", 'on', $id_article, 26, 20); - if ($logo) - $s .= "<div style='float: $spip_lang_right; margin-top: -2px; margin-bottom: -2px;'>$logo</div>"; + $logo_f = charger_fonction('chercher_logo', 'inc'); + if ($logo = $logo_f($id_article, 'id_article', 'on')) + if ($logo = decrire_logo("id_article", 'on', $id_article, 26, 20, $logo)) + $s .= "<div style='float: $spip_lang_right; margin-top: -2px; margin-bottom: -2px;'>$logo</div>"; } $s .= typo($titre); @@ -1179,11 +1176,10 @@ function afficher_breves_boucle($row, &$tous_id, $voir_logo, $own) $s .= "<a href='" . generer_url_ecrire("breves_voir","id_breve=$id_breve") . "' style=\"display:block;\">"; if ($voir_logo) { - - include_spip('inc/logos'); - $logo = decrire_logo("id_breve", 'on', $id_breve, 26, 20); - if ($logo) - $s .= "<div style='float: $spip_lang_right; margin-top: -2px; margin-bottom: -2px;'>$logo</div>"; + $logo_f = charger_fonction('chercher_logo', 'inc'); + if ($logo = $logo_f($id_breve, 'id_breve', 'on')) + if ($logo = decrire_logo("id_breve", 'on', $id_breve, 26, 20)) + $s .= "<div style='float: $spip_lang_right; margin-top: -2px; margin-bottom: -2px;'>$logo</div>"; } $s .= typo($titre); @@ -1418,7 +1414,6 @@ function afficher_forum_thread($row, $controle_id_article, $compteur_forum, $nb_ $voir_logo = (($spip_display != 1 AND $spip_display != 4 AND $GLOBALS['meta']['image_process'] != "non") ? "position: absolute; $spip_lang_right: 0px; margin: 0px; margin-top: -3px; margin-$spip_lang_right: 0px;" : ''); - if ($voir_logo) include_spip('inc/logos'); } $id_forum=$row['id_forum']; @@ -1446,10 +1441,10 @@ function afficher_forum_thread($row, $controle_id_article, $compteur_forum, $nb_ } $titre_boite = ''; if ($id_auteur AND $voir_logo) { - include_spip('inc/logos'); - $titre_boite = decrire_logo("id_auteur", 'on', $id_auteur, 48, 48); - if ($titre_boite) - $titre_boite = "<div style='$voir_logo'>$titre_boite</div>" ; + $logo_f = charger_fonction('chercher_logo', 'inc'); + if ($logo = $logo_f($id_auteur, 'id_auteur', 'on')) + if ($logo = decrire_logo("id_auteur", 'on', $id_auteur, 48, 48)) + $titre_boite = "<div style='$voir_logo'>$$logo</div>" ; } $titre_boite .= typo($titre); diff --git a/ecrire/inc/rubriques.php b/ecrire/inc/rubriques.php index e18b185e76983616849c9e5869988789990dcf3a..fc2c7e89a09fca8eb37b251d50f8d1cb678f8c1c 100644 --- a/ecrire/inc/rubriques.php +++ b/ecrire/inc/rubriques.php @@ -229,7 +229,7 @@ function enfant_rub($collection){ if ($voir_logo) { $voir_logo = "float: $spip_lang_right; margin-$spip_lang_right: -6px; margin-top: -6px;"; - include_spip('inc/logos'); + $logo_f = charger_fonction('chercher_logo', 'inc'); } $les_enfants = ""; @@ -250,8 +250,8 @@ function enfant_rub($collection){ if ($spip_display == 4) $les_enfants .= "<li>"; if ($voir_logo) { - $logo = decrire_logo("id_rubrique", 'on', $id_rubrique, 48, 36); - if ($logo) + if ($logo = $logo_f($id_rubrique, $id_rubrique, 'on')) + if ($logo = decrire_logo("id_rubrique", 'on', $id_rubrique, 48, 36)) $logo = "<div style='$voir_logo'>$logo</div>"; } $les_enfants .= "<div class='enfants'>" . diff --git a/ecrire/inc/sites_voir.php b/ecrire/inc/sites_voir.php index bf0f441647d811f5aa97be24c13e97af702100ff..32c87cdc95cdfcf0bea89143ccddabe58e5ef7f5 100644 --- a/ecrire/inc/sites_voir.php +++ b/ecrire/inc/sites_voir.php @@ -69,11 +69,10 @@ function afficher_sites_boucle($row, &$tous_id, $voir_logo, $bof) $s = "<a href=\"".generer_url_ecrire("sites","id_syndic=$id_syndic")."\" title=\"$title\">"; if ($voir_logo) { - - include_spip('inc/logos'); - $logo = decrire_logo("id_syndic", 'on', $id_syndic, 26, 20); - if ($logo) - $s .= "<div style='float: $spip_lang_right; margin-top: -2px; margin-bottom: -2px;'>$logo</div>"; + $logo_f = charger_fonction('chercher_logo', 'inc'); + if ($logo = $logo_f($id_syndic, $id_syndic, 'on')) + if ($logo = decrire_logo("id_syndic", 'on', $id_syndic, 26, 20)) + $s .= "<div style='float: $spip_lang_right; margin-top: -2px; margin-bottom: -2px;'>$logo</div>"; } $s .= http_img_pack($puce, $statut, "width='7' height='7'") ." "; diff --git a/ecrire/public/balises.php b/ecrire/public/balises.php index c8ede87e8dc7e0975e8cbc4ae8a12bee3648028c..d7a1d4e082c190ac7a873b9fb6ca5eb1f39b9ab6 100644 --- a/ecrire/public/balises.php +++ b/ecrire/public/balises.php @@ -648,11 +648,13 @@ function calculer_balise_logo ($p) { $type_objet = 'SITE'; $suite_logo = $regs[1]; $_id_objet = "\"'0'\""; + $id_objet = 'id_syndic'; # parait faux mais donne bien "siteNN" } else { if ($type_objet == 'SITE') - $_id_objet = champ_sql("id_syndic", $p); + $id_objet = "id_syndic"; else - $_id_objet = champ_sql("id_".strtolower($type_objet), $p); + $id_objet = "id_".strtolower($type_objet); + $_id_objet = champ_sql($id_objet, $p); } // analyser les faux filtres @@ -739,7 +741,7 @@ function calculer_balise_logo ($p) { ."')"; } else { - $p->code = "affiche_logos(calcule_logo('$type_objet', '" . + $p->code = "affiche_logos(calcule_logo('$id_objet', '" . (($suite_logo == '_SURVOL') ? 'off' : (($suite_logo == '_NORMAL') ? 'on' : 'ON')) . "', $_id_objet," . diff --git a/ecrire/public/composer.php b/ecrire/public/composer.php index 721fd3b26542c83a432133894fb339ce6798389b..60f96cbeb4bd4a3bdd92423097be91622e8b6186 100644 --- a/ecrire/public/composer.php +++ b/ecrire/public/composer.php @@ -141,35 +141,25 @@ function affiche_logos($logos, $lien, $align) { // function calcule_logo($type, $onoff, $id, $id_rubrique, $ff) { - include_spip('inc/logos'); - - $table_logos = array ( - 'ARTICLE' => 'art', - 'AUTEUR' => 'aut', - 'BREVE' => 'breve', - 'MOT' => 'mot', - 'RUBRIQUE' => 'rub', - 'SITE' => 'site' - ); - $type = $table_logos[$type]; + $logo_f = charger_fonction('chercher_logo', 'inc'); $nom = strtolower($onoff); while (1) { - $on = cherche_logo($id, $type, $nom); + $on = $logo_f($id, $type, $nom); if ($on) { if ($ff) return (array('', "$on[2].$on[3]")); else { $off = ($onoff != 'ON') ? '' : - cherche_logo($id, $type, 'off'); + $logo_f($id, $type, 'off'); return array ($on[0], ($off ? $off[0] : '')); } } else if ($id_rubrique) { - $type = 'rub'; + $type = 'id_rubrique'; $id = $id_rubrique; $id_rubrique = 0; - } else if ($id AND $type == 'rub') + } else if ($id AND $type == 'id_rubrique') $id = sql_parent($id); else return array('',''); }