From 3b2aefa48908255fe2dbd37e597449c057b854c4 Mon Sep 17 00:00:00 2001
From: nicod_ <nicod@lerebooteux.fr>
Date: Sun, 16 Apr 2023 18:25:53 +0200
Subject: [PATCH] =?UTF-8?q?Une=20fonction=20de=20g=C3=A9n=C3=A9ration=20du?=
 =?UTF-8?q?=20titre=20des=20blocs?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 TODO.md                               |  2 +-
 blocks_fonctions.php                  | 13 +++++++++++++
 prive/objets/liste/blocs.html         |  2 +-
 prive/squelettes/contenu/bloc.html    |  2 +-
 prive/squelettes/hierarchie/bloc.html |  2 +-
 5 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/TODO.md b/TODO.md
index a34329a..a27d974 100644
--- a/TODO.md
+++ b/TODO.md
@@ -2,7 +2,7 @@
 
 # blocs
 
-[ ] Supprimer le titre des blocs, pas utile, et utiliser une fonction de génération du titre
+[x] Supprimer le titre des blocs, pas utile, et utiliser une fonction de génération du titre
 
 [x] Formulaire de config : sur quels objets utiliser des blocs
 
diff --git a/blocks_fonctions.php b/blocks_fonctions.php
index ccf5519..ca4e502 100644
--- a/blocks_fonctions.php
+++ b/blocks_fonctions.php
@@ -138,3 +138,16 @@ function _block_charger_block($id_bloc) {
 
 	return recuperer_fond($squelette, $contexte);
 }
+
+function generer_TITRE_BLOC($id_bloc){
+	$infos = sql_fetsel(
+		'bt.titre, bl.objet, bl.rang_lien, bl.id_objet',
+		'spip_blocs b join spip_blocs_types bt using(id_blocs_type) left join spip_blocs_liens bl using(id_bloc)',
+		'b.id_bloc = '.(int)$id_bloc
+	);
+	$titre = $infos['titre'];
+	if($infos['id_objet'] && $infos['objet']) {
+		$titre = generer_objet_info($infos['id_objet'], $infos['objet'], 'titre') . ' - ' . $titre . ' #' . $infos['rang_lien'];
+	}
+	return $titre;
+}
diff --git a/prive/objets/liste/blocs.html b/prive/objets/liste/blocs.html
index 9a7e20d..7e2fc88 100644
--- a/prive/objets/liste/blocs.html
+++ b/prive/objets/liste/blocs.html
@@ -21,7 +21,7 @@
 		<tr class="[(#COMPTEUR_BOUCLE|alterner{row_odd,row_even})]">
 			<td class="picto">[(#CHEMIN_IMAGE{bloc-16.png}|balise_img)]</td>
 			<td class="statut">[(#STATUT|puce_statut{bloc,#ID_BLOC})]</td>
-			<td class="titre principale">[(#LOGO_BLOC|image_reduire{20,26})]<a href="[(#ID_BLOC|generer_url_entite{bloc})]" title="<:info_numero_abbreviation|attribut_html:/> #ID_BLOC">[(#RANG). ]#INFO_TITRE{blocs_type,#ID_BLOCS_TYPE}</a></td>
+			<td class="titre principale">[(#LOGO_BLOC|image_reduire{20,26})]<a href="[(#ID_BLOC|generer_url_entite{bloc})]" title="<:info_numero_abbreviation|attribut_html:/> #ID_BLOC">[(#RANG). ]#INFO_TITRE{bloc,#ID_BLOC}</a></td>
 			<td class="date secondaire">[(#DATE|affdate_jourcourt)]</td>
 			<td class="id">[(#AUTORISER{modifier,bloc,#ID_BLOC}|?{
 				<a href="[(#URL_ECRIRE{bloc_edit,id_bloc=#ID_BLOC})]">#ID_BLOC</a>,
diff --git a/prive/squelettes/contenu/bloc.html b/prive/squelettes/contenu/bloc.html
index 793f6fe..ca13712 100644
--- a/prive/squelettes/contenu/bloc.html
+++ b/prive/squelettes/contenu/bloc.html
@@ -12,7 +12,7 @@
 		]
 	]
 
-	<h1>[(#RANG). ](#TITRE|sinon{<:info_sans_titre:/>})[(#CHEMIN_IMAGE{bloc-24.png}|balise_img{bloc,cadre-icone})]</h1>
+	<h1>[(#RANG). ](#INFO_TITRE{bloc,#ID_BLOC}|sinon{<:info_sans_titre:/>})[(#CHEMIN_IMAGE{bloc-24.png}|balise_img{bloc,cadre-icone})]</h1>
 
 ],simple fiche_objet})]
 
diff --git a/prive/squelettes/hierarchie/bloc.html b/prive/squelettes/hierarchie/bloc.html
index 2db64ac..6f5fec5 100644
--- a/prive/squelettes/hierarchie/bloc.html
+++ b/prive/squelettes/hierarchie/bloc.html
@@ -2,7 +2,7 @@
 <a href="#URL_ECRIRE{blocs}"><:bloc:titre_blocs:/></a>
 <BOUCLE_hierarchie(BLOCS){id_bloc}{statut?}>
 &gt; [(#URL_ECRIRE{blocs_type,id_blocs_type=#ID_BLOCS_TYPE}|lien_ou_expose{#INFO_TITRE{blocs_types,#ID_BLOCS_TYPE},''})]
-&gt; <strong class="on">#ID_BLOC</strong>
+&gt; <strong class="on">#INFO_TITRE{bloc,#ID_BLOC}</strong>
 </BOUCLE_hierarchie>
 [(#ENV{id_blocs_type}|oui)
 	&gt; [(#URL_ECRIRE{blocs_type,id_blocs_type=#ID_BLOCS_TYPE}|lien_ou_expose{#INFO_TITRE{blocs_types,#ID_BLOCS_TYPE},''})]
-- 
GitLab