source: spip-zone/_galaxie_/programmer.spip.org/plugin_documentation/trunk/inclure/navigation-precedent-suivant.html @ 61100

Last change on this file since 61100 was 61100, checked in by marcimat@…, 9 years ago

Encore une correction pour le calcul du chemin suivant d'un article. Une boucle rubrique {meme_parent} dans une boucle article ne fonctionne pas. Il faut l'encapsuler d'une boucle rubrique avant.

File size: 4.5 KB
Line 
1[(#REM) config par secteurs de langue ? ]
2[(#SET{secteur,[(#CONFIG{documentation/secteur_langue}|=={on}|oui)]})]
3[(#REM) precedent suivant des articles
4        Et on ne prends pas les articles de type "page unique" qui ont un id_rubrique a -1 ]
5<BOUCLE_art(ARTICLES){id_article}{id_rubrique >=0 }>
6<ul class="prec_suiv[ taille_(#ENV{taille})]">
7        [(#REM) Precedent ]
8        [(#REM)
9                Soit il existe un article precedent,
10                soit on va dans la rubrique parente
11               
12                Sauf si on est dans un secteur/branche :
13                il ne faut pas remonter dans la rubrique du secteur (fr, en)
14                mais au sommaire
15        ]
16        <BOUCLE_art_prec(ARTICLES){id_rubrique}{precedent}>
17                [(#INCLURE{fond=inclure/precedent, url=#URL_ARTICLE, titre=#TITRE, taille})]
18        </BOUCLE_art_prec>
19                <BOUCLE_rub_prec(RUBRIQUES){id_rubrique}>
20                        [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
21                                [(#INCLURE{fond=inclure/precedent, url=#URL_RUBRIQUE, titre=#TITRE, taille})]
22                        ]
23                        [(#GET{secteur}|et{[(#ID_PARENT|=={0})]})
24                                [(#INCLURE{fond=inclure/precedent, url=#URL_SITE_SPIP/, titre=#NOM_SITE_SPIP, taille})]
25                        ]
26                </BOUCLE_rub_prec>
27        <//B_art_prec>
28       
29        [(#REM) Suivant ]
30        [(#REM)
31                Soit il existe un article suivant, sinon :
32                Soit il existe une sous rubrique au meme niveau que l'article
33                        (on affiche les articles d'une rubrique avant ses sous rubriques)
34                Soit il existe un suivant au parent de l'article,
35                Soit il existe un suivant au parent du parent,
36                Mais cette rubrique, dans le cas d'un secteur/branche, ne doit pas etre la racine !
37        ]
38        <BOUCLE_art_suiv(ARTICLES){id_rubrique}{suivant}>
39                [(#INCLURE{fond=inclure/suivant, url=#URL_ARTICLE, titre=#TITRE, taille})]
40        </BOUCLE_art_suiv>
41                <BOUCLE_sous_srub(RUBRIQUES){id_parent=#ID_RUBRIQUE}{0,1}>
42                        [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
43                </BOUCLE_sous_srub>
44                        [(#REM) la boucle article ne connait pas #ID_PARENT ! ]
45                        <BOUCLE_rub_article(RUBRIQUES){id_rubrique}>
46                                <BOUCLE_rub_suiv(RUBRIQUES){meme_parent}{suivant}>
47                                        [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
48                                                [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
49                                        ]
50                                </BOUCLE_rub_suiv>
51                                        <BOUCLE_rub_parente(RUBRIQUES){id_rubrique=#ID_PARENT}>
52                                        <BOUCLE_rub_parente_suivante(RUBRIQUES){meme_parent}{suivant}>
53                                                [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
54                                                        [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
55                                                ]
56                                        </BOUCLE_rub_parente_suivante>
57                                        </BOUCLE_rub_parente>
58                                <//B_rub_suiv>
59                        </BOUCLE_rub_article>
60                <//B_sous_srub>
61        <//B_art_suiv>
62</ul>
63</BOUCLE_art>
64        [(#REM) precedent suivant des rubriques ]
65        <BOUCLE_rub_actuelle(RUBRIQUES){id_rubrique}>
66                <ul class="prec_suiv[ taille_(#ENV{taille})]">
67                [(#REM) Precedent ]
68                [(#REM) S'il y a une rubrique precedente,
69                                        on prend le dernier article de la derniere rubrique enfant, sinon la  derniere rubrique enfant
70                                        sinon, le dernier article de cette rubrique precedente, sinon cette rubrique precedente.
71                                Sinon, on remonte chez le parent, et on fait pareil, sauf en cas de rubrique secteur ou on ne remonte pas tout en haut !
72                                Sinon, on pointe vers le sommaire
73                ]       
74                <BOUCLE_rubrique_precedente(RUBRIQUES){meme_parent}{precedent}>
75                        <BOUCLE_derniere_sous_rubrique(RUBRIQUES){id_parent=#ID_RUBRIQUE}{n-1,1}>
76                                [(#INCLURE{fond=inclure/navigation-dernier-article-ou-rubrique, id_rubrique, id_parent, url=#URL_RUBRIQUE, taille, titre=#TITRE})]             
77                        </BOUCLE_derniere_sous_rubrique>
78                                [(#INCLURE{fond=inclure/navigation-dernier-article-ou-rubrique, id_rubrique, id_parent, url=#URL_RUBRIQUE, taille, titre=#TITRE})]                     
79                        <//B_derniere_sous_rubrique>
80                </BOUCLE_rubrique_precedente>
81                        [(#REM) pas de rubrique precedente : rubrique parente]
82                        <BOUCLE_parent(RUBRIQUES){id_rubrique=#ID_PARENT}>
83                                [(#INCLURE{fond=inclure/navigation-dernier-article-ou-rubrique, id_rubrique, id_parent, url=#URL_RUBRIQUE, taille, titre=#TITRE})]                     
84                        </BOUCLE_parent>
85                        [(#REM) Pas de parent : sommaire ]
86                        [(#INCLURE{fond=inclure/precedent, url=#URL_SITE_SPIP/, titre=#NOM_SITE_SPIP, taille})]
87                        <//B_parent>
88                <//B_rubrique_precedente>
89
90                        [(#REM) Suivant ]
91                        [(#REM) Soit il existe un article premier dans la rubrique,
92                                Sinon peut etre une sous rubrique
93                        ]
94                        <BOUCLE_premier_art(ARTICLES){id_rubrique}{0,1}>
95                                [(#INCLURE{fond=inclure/suivant, url=#URL_ARTICLE, titre=#TITRE, taille})]
96                        </BOUCLE_premier_art>
97                                [(#REM) pas d'article : premiere sous rubrique]
98                                <BOUCLE_sous_rub(RUBRIQUES){id_parent}{0,1}>
99                                [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, titre=#TITRE, taille})]
100                                </BOUCLE_sous_rub>
101                        <//B_premier_art>
102                </ul>
103        </BOUCLE_rub_actuelle>
104<//B_art>
Note: See TracBrowser for help on using the repository browser.