|
|
|
@ -7,13 +7,16 @@ include_spip('inc/autoriser');
|
|
|
|
|
include_spip('inc/presentation'); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Crée l'affichage des listes de rubriques dans le privé. |
|
|
|
|
* Crée l'affichage des listes de rubriques dans le privé |
|
|
|
|
* |
|
|
|
|
* @param int $collection L'identifiant numérique de la rubrique à lister |
|
|
|
|
* @param int $debut Le numéro de la pagination si paginé (> 500) |
|
|
|
|
* @param int $limite Le pas de pagination si paginé (> 500) |
|
|
|
|
* |
|
|
|
|
* @return array Un tableau des sous rubriques |
|
|
|
|
* @param int $collection |
|
|
|
|
* L'identifiant numérique de la rubrique à lister |
|
|
|
|
* @param int $debut |
|
|
|
|
* Le numéro de la pagination si paginé (> 500) |
|
|
|
|
* @param int $limite |
|
|
|
|
* Le pas de pagination si paginé (> 500) |
|
|
|
|
* @return array $res |
|
|
|
|
* Un tableau des sous rubriques |
|
|
|
|
*/ |
|
|
|
|
function enfant_rub($collection, $debut = 0, $limite = 500) { |
|
|
|
|
$voir_logo = (isset($GLOBALS['meta']['image_process']) and $GLOBALS['meta']['image_process'] != 'non'); |
|
|
|
@ -29,10 +32,10 @@ function enfant_rub($collection, $debut = 0, $limite = 500) {
|
|
|
|
|
$result = sql_select( |
|
|
|
|
'id_rubrique, id_parent, titre, descriptif, lang, categorie, prefixe', |
|
|
|
|
'spip_rubriques', |
|
|
|
|
'id_parent=' . intval($collection), |
|
|
|
|
'id_parent='.intval($collection), |
|
|
|
|
'', |
|
|
|
|
'0+titre,titre', |
|
|
|
|
"${debut},${limite}" |
|
|
|
|
"$debut,$limite" |
|
|
|
|
); |
|
|
|
|
while ($row = sql_fetch($result)) { |
|
|
|
|
$id_rubrique = $row['id_rubrique']; |
|
|
|
@ -42,7 +45,7 @@ function enfant_rub($collection, $debut = 0, $limite = 500) {
|
|
|
|
|
// pour etre sur de passer par tous les traitements |
|
|
|
|
$titre = generer_info_entite($id_rubrique, 'rubrique', 'titre'); |
|
|
|
|
if ('' !== ($rang = recuperer_numero($row['titre']))) { |
|
|
|
|
$rang = "${rang}. "; |
|
|
|
|
$rang = "$rang. "; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (autoriser('voir', 'rubrique', $id_rubrique)) { |
|
|
|
@ -55,9 +58,9 @@ function enfant_rub($collection, $debut = 0, $limite = 500) {
|
|
|
|
|
if ($voir_logo) { |
|
|
|
|
if ($logo = $chercher_logo($id_rubrique, 'id_rubrique', 'on')) { |
|
|
|
|
list($fid, $dir, $nom, $format) = $logo; |
|
|
|
|
$logo = image_reduire("<img src='${fid}' alt='' />", 48, 36); |
|
|
|
|
$logo = image_recadre_avec_fallback("<img src='$fid' alt='' />", 70, 70); |
|
|
|
|
if ($logo) { |
|
|
|
|
$logo = inserer_attribut($logo, 'class', 'logo'); |
|
|
|
|
$logo = wrap(inserer_attribut($logo, 'class', 'logo'),'<span class="logo-carre">'); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -69,16 +72,17 @@ function enfant_rub($collection, $debut = 0, $limite = 500) {
|
|
|
|
|
" width='16' height='16'", |
|
|
|
|
_T('image_administrer_rubrique') |
|
|
|
|
)) . |
|
|
|
|
" <a dir='${lang_dir}'" . |
|
|
|
|
" <a class='titremlien' dir='$lang_dir'" . |
|
|
|
|
($row['lang'] !== $GLOBALS['spip_lang'] ? " hreflang='" . $row['lang'] . "'" : '') . |
|
|
|
|
" href='" . |
|
|
|
|
generer_url_entite($id_rubrique, 'rubrique') . |
|
|
|
|
"'>" . |
|
|
|
|
$rang . $titre . " (${id_rubrique})" . |
|
|
|
|
'</a>'; |
|
|
|
|
"'><span class='titre'>" . |
|
|
|
|
$rang . $titre |
|
|
|
|
. '</span>' |
|
|
|
|
. (is_string($logo) ? $logo : '') |
|
|
|
|
. '</a>'; |
|
|
|
|
|
|
|
|
|
$titre = (is_string($logo) ? $logo : '') . |
|
|
|
|
bouton_block_depliable($lib_bouton, $les_sous_enfants ? false : -1, "enfants${id_rubrique}"); |
|
|
|
|
$titre = bouton_block_depliable($lib_bouton, $les_sous_enfants ? false : -1, "enfants${id_rubrique}"); |
|
|
|
|
|
|
|
|
|
// déterminer l'icone de la rubrique. |
|
|
|
|
include_spip('inc/contrib_rubrique'); |
|
|
|
@ -103,24 +107,25 @@ function enfant_rub($collection, $debut = 0, $limite = 500) {
|
|
|
|
|
(!$complement ? '' : "\n<div class='descriptif'>${complement}</div>") . |
|
|
|
|
(!$descriptif ? '' : "\n<div class='descriptif'>${descriptif}</div>") . |
|
|
|
|
$les_sous_enfants . |
|
|
|
|
fin_cadre_sous_rub(); |
|
|
|
|
fin_cadre_sous_rub(true); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
changer_typo($GLOBALS['spip_lang']); // remettre la typo de l'interface pour la suite |
|
|
|
|
changer_typo($GLOBALS['spip_lang']); # remettre la typo de l'interface pour la suite |
|
|
|
|
return $res; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Affiche les enfants d'une sous rubrique dans un bloc dépliable |
|
|
|
|
* (Utilisé dans les pages du privé). |
|
|
|
|
* |
|
|
|
|
* @param int $collection2 L'identifiant numérique de la rubrique parente |
|
|
|
|
* (Utilisé dans les pages du privé) |
|
|
|
|
* |
|
|
|
|
* @return string Le contenu du bloc dépliable |
|
|
|
|
* @param int $collection2 |
|
|
|
|
* L'identifiant numérique de la rubrique parente |
|
|
|
|
* @return string |
|
|
|
|
* Le contenu du bloc dépliable |
|
|
|
|
*/ |
|
|
|
|
function sous_enfant_rub($collection2) { |
|
|
|
|
$nb = sql_countsel('spip_rubriques', 'id_parent=' . intval($collection2)); |
|
|
|
|
$nb = sql_countsel('spip_rubriques', 'id_parent='.intval($collection2)); |
|
|
|
|
|
|
|
|
|
$retour = ''; |
|
|
|
|
$pagination = ''; |
|
|
|
@ -129,29 +134,23 @@ function sous_enfant_rub($collection2) {
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* On ne va afficher que 500 résultats max |
|
|
|
|
* Si > 500 on affiche une pagination. |
|
|
|
|
* Si > 500 on affiche une pagination |
|
|
|
|
*/ |
|
|
|
|
if ($nb > $limite) { |
|
|
|
|
$debut = _request('debut_rubrique' . $collection2) ? _request('debut_rubrique' . $collection2) : $debut; |
|
|
|
|
$pagination = chercher_filtre('pagination'); |
|
|
|
|
$pagination = '<p class="pagination">' . $pagination( |
|
|
|
|
$nb, |
|
|
|
|
'_rubrique' . $collection2, |
|
|
|
|
$debut, |
|
|
|
|
$limite, |
|
|
|
|
true, |
|
|
|
|
'prive' |
|
|
|
|
) . '</p>'; |
|
|
|
|
$pagination = '<p class="pagination">' . $pagination($nb, '_rubrique' . $collection2, $debut, $limite, true, |
|
|
|
|
'prive') . '</p>'; |
|
|
|
|
$limite = $debut + $limite; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$result = sql_select( |
|
|
|
|
'id_rubrique, id_parent, titre, lang, categorie, prefixe', |
|
|
|
|
'spip_rubriques', |
|
|
|
|
'id_parent=' . intval($collection2), |
|
|
|
|
'id_parent='.intval($collection2), |
|
|
|
|
'', |
|
|
|
|
'0+titre,titre', |
|
|
|
|
"${debut},${limite}" |
|
|
|
|
"$debut,$limite" |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
while ($row = sql_fetch($result)) { |
|
|
|
@ -165,13 +164,13 @@ function sous_enfant_rub($collection2) {
|
|
|
|
|
$titre2 .= $row['prefixe'] ? " ({$row['prefixe']})" : ''; |
|
|
|
|
$titre2 .= " - ${id_rubrique2}"; |
|
|
|
|
if ('' !== ($rang2 = recuperer_numero($row['titre']))) { |
|
|
|
|
$rang2 = "${rang2}. "; |
|
|
|
|
$rang2 = "$rang2. "; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
changer_typo($row['lang']); |
|
|
|
|
$lang_dir = lang_dir($row['lang']); |
|
|
|
|
if (autoriser('voir', 'rubrique', $id_rubrique2)) { |
|
|
|
|
$retour .= "\n<li class='item' dir='${lang_dir}'><a href='" . generer_url_entite( |
|
|
|
|
$retour .= "\n<li class='item' dir='$lang_dir'><a href='" . generer_url_entite( |
|
|
|
|
$id_rubrique2, |
|
|
|
|
'rubrique' |
|
|
|
|
) . "'>" . $rang2 . $titre2 . "</a></li>\n"; |
|
|
|
@ -184,7 +183,7 @@ function sous_enfant_rub($collection2) {
|
|
|
|
|
return ''; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return debut_block_depliable($debut > 0 ? true : false, "enfants${collection2}") |
|
|
|
|
return debut_block_depliable($debut > 0 ? true : false, "enfants$collection2") |
|
|
|
|
. "\n<ul class='liste-items sous-sous-rub'>\n" |
|
|
|
|
. $retour |
|
|
|
|
. "</ul>\n" . fin_block() . "\n\n"; |
|
|
|
@ -192,20 +191,21 @@ function sous_enfant_rub($collection2) {
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Affiche la liste des rubriques enfants d'une rubrique |
|
|
|
|
* (Utilisé dans les pages du privé notamment ?exec=rubriques). |
|
|
|
|
* (Utilisé dans les pages du privé notamment ?exec=rubriques) |
|
|
|
|
* |
|
|
|
|
* Si plus de 500 rubriques enfants, on pagine par 500 les résultats |
|
|
|
|
* |
|
|
|
|
* @param int $id_rubrique L'identifiant numérique de la rubrique parente (0 par défaut, la racine) |
|
|
|
|
* |
|
|
|
|
* @return string Le contenu textuel affiché, la liste des sous rubriques |
|
|
|
|
* @param int $id_rubrique |
|
|
|
|
* L'identifiant numérique de la rubrique parente (0 par défaut, la racine) |
|
|
|
|
* @return string $res |
|
|
|
|
* Le contenu textuel affiché, la liste des sous rubriques |
|
|
|
|
*/ |
|
|
|
|
function afficher_enfant_rub($id_rubrique = 0) { |
|
|
|
|
$pagination = ''; |
|
|
|
|
$debut = 0; |
|
|
|
|
$limite = 500; |
|
|
|
|
|
|
|
|
|
$nb = sql_countsel('spip_rubriques', 'id_parent=' . intval($id_rubrique)); |
|
|
|
|
$nb = sql_countsel('spip_rubriques', 'id_parent='.intval($id_rubrique)); |
|
|
|
|
|
|
|
|
|
if ($nb > $limite) { |
|
|
|
|
$debut = _request('debut_rubrique' . $id_rubrique) ? _request('debut_rubrique' . $id_rubrique) : $debut; |
|
|
|
|