source: spip-zone/_galaxie_/programmer.spip.org/plugin_documentation/trunk/inclure/navigation-precedent-suivant_lang.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: 8.0 KB
Line 
1[(#REM) config par secteurs de langue ? ]
2[(#REM) precedent suivant des articles
3        Et on ne prends pas les articles de type "page unique" qui ont un id_rubrique a -1 ]
4<BOUCLE_origine(ARTICLES){id_article}{id_rubrique >=0 }>
5[(#ID_TRAD|>{0}|oui)#SET{id_article,#ID_TRAD}]
6[(#ID_TRAD|>{0}|non)#SET{id_article,#ID_ARTICLE}]
7<BOUCLE_art(ARTICLES){id_article=#GET{id_article}}{id_rubrique >=0 }>
8<ul class="prec_suiv[ taille_(#ENV{taille})]">
9        [(#REM) Precedent ]
10        [(#REM)
11                Soit il existe un article precedent,
12                soit on va dans la rubrique parente
13               
14                Sauf si on est dans un secteur/branche :
15                il ne faut pas remonter dans la rubrique du secteur (fr, en)
16                mais au sommaire
17        ]
18        <BOUCLE_art_prec(ARTICLES){origine_traduction}{enfants}{precedent}>
19                <BOUCLE_art_prec_lang(ARTICLES){traduction}{lang=#ENV{lang}}>
20                [(#INCLURE{fond=inclure/precedent, url=#URL_ARTICLE, titre=#TITRE, taille})]
21                </BOUCLE_art_prec_lang>
22                </B_art_prec_lang>
23                [(#INCLURE{fond=inclure/precedent, url=#URL_ARTICLE, titre=#TITRE, taille})]
24                <//B_art_prec_lang>
25        </BOUCLE_art_prec>
26                <BOUCLE_rub_prec(RUBRIQUES){id_rubrique}>
27                        [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
28                                [(#INCLURE{fond=inclure/precedent, url=#URL_RUBRIQUE, titre=#TITRE, taille})]
29                        ]
30                        [(#GET{secteur}|et{[(#ID_PARENT|=={0})]})
31                                [(#INCLURE{fond=inclure/precedent, url=#URL_SITE_SPIP/, titre=#NOM_SITE_SPIP, taille})]
32                        ]
33                </BOUCLE_rub_prec>
34        <//B_art_prec>
35       
36        [(#REM) Suivant ]
37        [(#REM)
38                Soit il existe un article suivant, sinon :
39                Soit il existe une sous rubrique au meme niveau que l'article
40                        (on affiche les articles d'une rubrique avant ses sous rubriques)
41                Soit il existe un suivant au parent de l'article,
42                Soit il existe un suivant au parent du parent,
43                Mais cette rubrique, dans le cas d'un secteur/branche, ne doit pas etre la racine !
44        ]       
45        <BOUCLE_art_suiv(ARTICLES){origine_traduction}{enfants}{suivant}>
46                <BOUCLE_art_suiv_lang(ARTICLES){traduction}{lang=#ENV{lang}}>
47                [(#INCLURE{fond=inclure/suivant, url=#URL_ARTICLE, titre=#TITRE, taille})]
48                </BOUCLE_art_suiv_lang>
49                </B_art_suiv_lang>
50                [(#INCLURE{fond=inclure/suivant, url=#URL_ARTICLE, titre=#TITRE, taille})]
51                <//B_art_suiv_lang>
52        </BOUCLE_art_suiv>
53                <BOUCLE_sous_srub(RUBRIQUES){id_parent=#ID_RUBRIQUE}{0,1}>
54                        [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
55                </BOUCLE_sous_srub>
56                        [(#REM) la boucle article ne connait pas #ID_PARENT ! ]
57                        <BOUCLE_rub_article(RUBRIQUES){id_rubrique}>
58                                <BOUCLE_rub_suiv(RUBRIQUES){meme_parent}{suivant}>
59                                        [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
60                                                [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
61                                        ]
62                                </BOUCLE_rub_suiv>
63                                        <BOUCLE_rub_parente(RUBRIQUES){id_rubrique=#ID_PARENT}>
64                                        <BOUCLE_rub_parente_suivante(RUBRIQUES){meme_parent}{suivant}>
65                                                [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
66                                                        [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
67                                                ]
68                                        </BOUCLE_rub_parente_suivante>
69                                        </BOUCLE_rub_parente>
70                                <//B_rub_suiv>
71                        </BOUCLE_rub_article>
72                <//B_sous_srub>
73        <//B_art_suiv>
74</ul>
75</BOUCLE_art>
76</B_art>
77<ul class="prec_suiv[ taille_(#ENV{taille})]">
78        [(#REM) Precedent ]
79        [(#REM)
80                Soit il existe un article precedent,
81                soit on va dans la rubrique parente
82               
83                Sauf si on est dans un secteur/branche :
84                il ne faut pas remonter dans la rubrique du secteur (fr, en)
85                mais au sommaire
86        ]
87        <BOUCLE_art_prec_orig(ARTICLES){origine_traduction}{enfants}{precedent}>
88                <BOUCLE_art_prec_lang_orig(ARTICLES){traduction}{lang=#ENV{lang}}>
89                [(#INCLURE{fond=inclure/precedent, url=#URL_ARTICLE, titre=#TITRE, taille})]
90                </BOUCLE_art_prec_lang_orig>
91                </B_art_prec_lang_orig>
92                [(#INCLURE{fond=inclure/precedent, url=#URL_ARTICLE, titre=#TITRE, taille})]
93                <//B_art_prec_lang_orig>
94        </BOUCLE_art_prec_orig>
95                <BOUCLE_rub_prec_orig(RUBRIQUES){id_rubrique}>
96                        [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
97                                [(#INCLURE{fond=inclure/precedent, url=#URL_RUBRIQUE, titre=#TITRE, taille})]
98                        ]
99                        [(#GET{secteur}|et{[(#ID_PARENT|=={0})]})
100                                [(#INCLURE{fond=inclure/precedent, url=#URL_SITE_SPIP/, titre=#NOM_SITE_SPIP, taille})]
101                        ]
102                </BOUCLE_rub_prec_orig>
103        <//B_art_prec_orig>
104       
105        [(#REM) Suivant ]
106        [(#REM)
107                Soit il existe un article suivant, sinon :
108                Soit il existe une sous rubrique au meme niveau que l'article
109                        (on affiche les articles d'une rubrique avant ses sous rubriques)
110                Soit il existe un suivant au parent de l'article,
111                Soit il existe un suivant au parent du parent,
112                Mais cette rubrique, dans le cas d'un secteur/branche, ne doit pas etre la racine !
113        ]       
114        <BOUCLE_art_suiv_orig(ARTICLES){origine_traduction}{enfants}{suivant}>
115                <BOUCLE_art_suiv_lang_orig(ARTICLES){traduction}{lang=#ENV{lang}}>
116                [(#INCLURE{fond=inclure/precedent, url=#URL_ARTICLE, titre=#TITRE, taille})]
117                </BOUCLE_art_suiv_lang_orig>
118                </B_art_suiv_lang_orig>
119                [(#INCLURE{fond=inclure/precedent, url=#URL_ARTICLE, titre=#TITRE, taille})]
120                <//B_art_suiv_lang_orig>
121        </BOUCLE_art_suiv_orig>
122                <BOUCLE_sous_srub_orig(RUBRIQUES){id_parent=#ID_RUBRIQUE}{0,1}>
123                        [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
124                </BOUCLE_sous_srub_orig>
125                        <BOUCLE_rub_suiv_orig(RUBRIQUES){meme_parent}{suivant}>
126                                [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
127                                        [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
128                                ]
129                        </BOUCLE_rub_suiv_orig>
130                                <BOUCLE_rubr_orig(RUBRIQUES){id_rubrique}>
131                                <BOUCLE_rub_parente_suivante_orig(RUBRIQUES){meme_parent}{suivant}>
132                                        [(#GET{secteur}|non|ou{[(#ID_PARENT|!={0})]})
133                                                [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, taille, titre=#TITRE})]
134                                        ]       
135                                </BOUCLE_rub_parente_suivante_orig>
136                                </BOUCLE_rubr_orig>
137                        <//B_rub_suiv_orig>             
138                <//B_sous_srub_orig>
139        <//B_art_suiv_orig>
140</ul>
141<//B_art>
142</BOUCLE_origine>
143        [(#REM) precedent suivant des rubriques ]
144        <BOUCLE_rub_actuelle(RUBRIQUES){id_rubrique}>
145                <ul class="prec_suiv[ taille_(#ENV{taille})]">
146                [(#REM) Precedent ]
147                [(#REM) S'il y a une rubrique precedente,
148                                        on prend le dernier article de la derniere rubrique enfant, sinon la  derniere rubrique enfant
149                                        sinon, le dernier article de cette rubrique precedente, sinon cette rubrique precedente.
150                                Sinon, on remonte chez le parent, et on fait pareil, sauf en cas de rubrique secteur ou on ne remonte pas tout en haut !
151                                Sinon, on pointe vers le sommaire
152                ]       
153                <BOUCLE_rubrique_precedente(RUBRIQUES){meme_parent}{precedent}>
154                        <BOUCLE_derniere_sous_rubrique(RUBRIQUES){id_parent=#ID_RUBRIQUE}{n-1,1}>
155                                [(#INCLURE{fond=inclure/navigation-dernier-article-ou-rubrique, id_rubrique, id_parent, url=#URL_RUBRIQUE, taille, titre=#TITRE})]             
156                        </BOUCLE_derniere_sous_rubrique>
157                                [(#INCLURE{fond=inclure/navigation-dernier-article-ou-rubrique, id_rubrique, id_parent, url=#URL_RUBRIQUE, taille, titre=#TITRE})]                     
158                        <//B_derniere_sous_rubrique>   
159                </BOUCLE_rubrique_precedente>
160                        [(#REM) pas de rubrique precedente : rubrique parente]
161                        <BOUCLE_parent(RUBRIQUES){id_rubrique=#ID_PARENT}>
162                                [(#INCLURE{fond=inclure/navigation-dernier-article-ou-rubrique, id_rubrique, id_parent, url=#URL_RUBRIQUE, taille, titre=#TITRE})]                     
163                        </BOUCLE_parent>
164                        [(#REM) Pas de parent : sommaire ]
165                        [(#INCLURE{fond=inclure/precedent, url=#URL_SITE_SPIP/, titre=#NOM_SITE_SPIP, taille})]
166                        <//B_parent>
167                <//B_rubrique_precedente>
168
169                        [(#REM) Suivant ]
170                        [(#REM) Soit il existe un article premier dans la rubrique,
171                                Sinon peut etre une sous rubrique
172                        ]
173                        <BOUCLE_premier_art(ARTICLES){origine_traduction}{enfants}{0,1}>
174                                <BOUCLE_premier_art_lang(ARTICLES){traduction}{lang=#ENV{lang}}>
175                                [(#INCLURE{fond=inclure/suivant, url=#URL_ARTICLE, titre=#TITRE, taille})]
176                                </BOUCLE_premier_art_lang>
177                                </B_premier_art_lang>
178                                [(#INCLURE{fond=inclure/suivant, url=#URL_ARTICLE, titre=#TITRE, taille})]
179                                <//B_premier_art_lang>
180                        </BOUCLE_premier_art>   
181                                [(#REM) pas d'article : premiere sous rubrique]
182                                <BOUCLE_sous_rub(RUBRIQUES){id_parent}{0,1}>
183                                [(#INCLURE{fond=inclure/suivant, url=#URL_RUBRIQUE, titre=#TITRE, taille})]
184                                </BOUCLE_sous_rub>
185                        <//B_premier_art>
186                </ul>
187        </BOUCLE_rub_actuelle>
188<//B_origine>
Note: See TracBrowser for help on using the repository browser.