_T('chapitre:titre_chapitres'),
'id_article' => $id_objet
)
);
if (autoriser('creerchapitredans', 'articles', $id_objet)) {
include_spip('inc/presentation');
$flux['data'] .= icone_verticale(
_T('chapitre:icone_creer_chapitre'),
generer_url_ecrire('chapitre_edit', "id_article=$id_objet"),
'chapitre-24.png',
'new',
'right'
) . "
";
}
}
}
return $flux;
}
/**
* Afficher des choses dans le premier bloc en colonne gauche
*
* @pipeline boite_infos
* @param array $flux Données du pipeline
* @return array Données du pipeline
**/
function libreavous_boite_infos($flux) {
if (isset($flux['args']['type']) and isset($flux['args']['id']) and $id = intval($flux['args']['id'])) {
$texte = '';
if ($flux['args']['type'] == 'article' and $nb = sql_countsel('spip_chapitres', array('id_article=' . $id))) {
$texte .= '
' . singulier_ou_pluriel($nb, 'chapitre:info_1_chapitre', 'chapitre:info_nb_chapitres') . "
\n";
}
if ($texte and $p = strpos($flux['data'], '')) {
$flux['data'] = substr_replace($flux['data'], $texte, $p, 0);
}
}
return $flux;
}
/**
* Afficher des choses au milieu de la page
*
* @pipeline affiche_milieu
* @param array $flux Données du pipeline
* @return array Données du pipeline
**/
function libreavous_affiche_milieu($flux) {
$texte = '';
$e = trouver_objet_exec($flux['args']['exec']);
if ( $e and !$e['edition'] and in_array($e['type'], array('article')) ) {
// pour retrouver la composition, utiliser une fonction existante du plugin "compositions" (cf compositions_fonctions.php)
$compo = compositions_heriter('article', $flux['args'][$e['id_table_objet']]);
if ($compo == 'emission') {
$texte .= recuperer_fond('prive/squelettes/inclure/importer_emission', array(
'id_article' => $flux['args'][$e['id_table_objet']]
));
}
}
if ($texte) {
if ($p = strpos($flux['data'], '')) {
$flux['data'] = substr_replace($flux['data'], $texte, $p, 0);
} else {
$flux['data'] .= $texte;
}
}
return $flux;
}
/**
* Compter les enfants d'un objet
*
* @pipeline objets_compte_enfants
* @param array $flux Données du pipeline
* @return array Données du pipeline
**/
function libreavous_objet_compte_enfants($flux) {
if ($flux['args']['objet'] == 'article' and $id_article = intval($flux['args']['id_objet'])) {
$flux['data']['chapitres'] = sql_countsel('spip_chapitres', 'id_article= ' . intval($id_article));
}
return $flux;
}
function libreavous_rechercher_liste_des_jointures($tables){
// rechercher en plus dans les chapitres si on cherche dans un article
$tables['article']['chapitre']['titre'] = 5;
$tables['article']['chapitre']['references_sujet'] = 3;
$tables['article']['chapitre']['description_rss'] = 3;
return $tables;
}