source: spip-zone/_squelettes_/median/rubrique.html @ 36251

Last change on this file since 36251 was 36251, checked in by cy_altern@…, 10 years ago

ajout de l'option permettant de choisir le tri par date ou date inverse dans la liste des articles d'une rubrique

File size: 16.7 KB
Line 
1#CACHE{7200}[
2(#REM) la totale pour faire fonctionner le mot clé _invisible_,
3        y compris rediriger sur 404 si la rubrique en cours ou son ascendance est munie du mot-clé _invisible_
4][(#REM) choper en doublon les rubriques ayant le mot clé invisible, les articles, sites et breves qu'elles contiennent
5]<BOUCLE_rubriques_exclues(RUBRIQUES) {titre_mot=_invisible_} {doublons}>[(#REM)
6  ]<BOUCLE_articles_int(ARTICLES) {doublons} {id_rubrique}></BOUCLE_articles_int>[(#REM)
7  ]<BOUCLE_sites_int(BREVES) {doublons} {id_rubrique}></BOUCLE_sites_int>[(#REM)
8  ]<BOUCLE_breves_int(BREVES) {doublons} {id_rubrique}></BOUCLE_breves_int>[
9(#REM) choper en doublon les sous-rubriques, récursivement, et les articles inclus dans des rubriques avec le mot clé invisible
10  ]<BOUCLE_rubriques_int(RUBRIQUES) {doublons} {id_parent}>[(#REM)
11    ]<BOUCLE_art_int(ARTICLES) {doublons} {id_rubrique}></BOUCLE_art_int>[(#REM)
12    ]<BOUCLE_recursive(BOUCLE_rubriques_int)></BOUCLE_recursive>[(#REM)
13  ]</BOUCLE_rubriques_int>[(#REM)
14]</BOUCLE_rubriques_exclues>[
15(#REM) choper en doublon les articles, sites et brèves ayant le mot clé invisible
16]<BOUCLE_articles_exclus(ARTICLES) {titre_mot=_invisible_} {doublons}></BOUCLE_articles_exclus>[
17(#REM)]<BOUCLE_breves_exclues(BREVES) {titre_mot=_invisible_} {doublons}></BOUCLE_breves_exclues>[
18(#REM)]<BOUCLE_sites_exclus(SITES) {titre_mot=_invisible_} {doublons}></BOUCLE_sites_exclus>[
19
20(#REM) début affichage
21]<BOUCLE_rubrique_principal(RUBRIQUES) {id_rubrique} {doublons}>
22<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
23<html dir="#LANG_DIR" lang="#LANG">
24<head>
25<title>[(#TITRE|supprimer_numero|textebrut) - ][(#NOM_SITE_SPIP|textebrut)]</title>
26[<meta name="description" content="(#INTRODUCTION|couper{150}|textebrut)" />]
27<INCLURE{fond=inc-head}>
28[(#REM) Lien vers le flux RSS de la rubrique ]
29<link rel="alternate" type="application/rss+xml" title="<:syndiquer_rubrique:>" href="[(#URL_PAGE{backend}|parametre_url{id_rubrique,#ID_RUBRIQUE})]" />
30</head>
31
32<body class="page_rubrique">
33<div id="page">
34
35        [(#REM) Entete de la page + titre du site ]
36        <INCLURE{fond=inc-entete}>
37
38  [(#REM) Menu de navigation par rubriques ]
39  <INCLURE{fond=inc-rubriques}{id_rubrique}>
40
41  [(#REM) bloc rechercher ]
42  <div id="rechercher">
43    #FORMULAIRE_RECHERCHE
44  </div><!--#rechercher-->
45
46        [(#REM) Fil d'Ariane ]
47        <div id="hierarchie"><a href="#URL_SITE_SPIP/"><:accueil_site:></a><BOUCLE_ariane(HIERARCHIE){id_rubrique}> &gt; <a href="#URL_RUBRIQUE">[(#TITRE|supprimer_numero|couper{40})]</a></BOUCLE_ariane>[ &gt; (#TITRE|supprimer_numero|couper{40})]</div>
48
49    [(#REM) existe t'il des sous-rubriques? ]
50    <BOUCLE_test_ssrub(RUBRIQUES) {id_parent} {0,1}>
51        #SET{existe_ssrub, 1}
52    </BOUCLE_test_ssrub>
53        #SET{pas_ssrub, 1}
54    <//B_test_ssrub>
55   
56    [(#REM) existe t'il des sites? ]
57    <BOUCLE_test_sites(SITES) {id_rubrique} {0,1}>
58        #SET{existe_site, 1}
59    </BOUCLE_test_sites>
60        #SET{pas_site, 1}
61    <//B_test_sites>
62   
63    [(#REM) la rubrique à t'elle un ordre de tri par date ou date inverse? ]
64    #SET{classement, titre} #SET{num, titre} #SET{inverse, 0}
65    <BOUCLE_classement1(MOTS){id_rubrique}{titre = classement_date} {0,1}>#SET{classement, date} #SET{num, 0}</BOUCLE_classement1>
66    <BOUCLE_classement2(MOTS){id_rubrique}{titre = classement_date_inverse} {0,1}>#SET{classement, date} #SET{inverse, 1} #SET{num, 0}</BOUCLE_classement2>
67   
68  [(#REM) la rubrique n'a t'elle qu'un seul article? ]
69    <BOUCLE_test_unique(ARTICLES) {id_rubrique}{lang}>[(#TOTAL_BOUCLE|=={1}|?{[(#SET{art_unique, #ID_ARTICLE})]})]</BOUCLE_test_unique>
70[(#REM)       
71existe_ssrub: #GET{existe_ssrub}<br>
72pas_ssrub: #GET{pas_ssrub}<br>
73existe_site:#GET{existe_site}<br>
74pas_site: #GET{pas_site}<br>
75art_unique: #GET{art_unique}<br>
76]
77        <BOUCLE_art_unique(CONDITION){si #GET{art_unique}|et{#GET{pas_ssrub}}|et{#GET{pas_site}}}>
78        [(#REM) si pas de ss-rub et pas de sites et un seul article l'afficher directement ]
79       
80          [(#REM) gerer le cas du mot cle restricted_access => il faut etre loggue pour voir l'article ]
81          <BOUCLE_restrict_access(ARTICLES) {titre_mot=restricted_access}{id_article=#GET{art_unique}}>
82            [(#REM) recuperer le texte qui explique qu'il faut se logguer ]
83                #SET{txt_restrict, This page's access is restricted to the identified's contributors. Please log in. }
84                [(#CONFIG{median/texte_acces_restreint}|oui)
85                    [(#SET{txt_restrict, [(#CONFIG{median/texte_acces_restreint})] })] ]
86           
87            [(#REM) recuperer le texte qui explique la creation d'un compte si mot-cle form_account_creation ]
88                #SET{txt_account_creation, 'Want create an acount?'}
89                [(#CONFIG{median/texte_creation_compte}|oui)
90                    [(#SET{txt_account_creation, [(#CONFIG{median/texte_creation_compte})] })] ]
91
92            [(#SESSION{login}|?{' '}) [(#INCLURE{fond=inc-article}{id_article=#GET{art_unique}}{inclure_rub=unique}{env})] ]
93            [(#SESSION{login}|?{'',' '})
94                [<h2 class="restrict_exp">(#GET{txt_restrict})</h2>]
95                [<div class="login_public">(#FORMULAIRE_LOGIN{lang=en})</div>]
96            ]
97          </BOUCLE_restrict_access>
98            [(#INCLURE{fond=inc-article}{id_article=#GET{art_unique}}{inclure_rub=unique}{env})]
99          <//B_restrict_access>
100         
101        </BOUCLE_art_unique>
102       
103        [(#REM) rubrique avec plusieurs articles (ou 0!) ]
104          [(#REM) pas d'article_rubrique, nb article != 1 => affichage "standard" de la rubrique ]
105            <div id="extra">
106                [(#LOGO_RUBRIQUE||image_reduire{200,200})]
107            </div>
108                <div id="conteneur">
109                        [(#REM) Contenu principal : contenu de la rubrique ]
110                        <div id="contenu">
111                            <div class="cartouche">
112                                    [<h1 class="#EDIT{titre} titre">(#TITRE|supprimer_numero)</h1>]
113         
114                    [(#REM) afficher l'article avec mot-clé edito_rubrique si il existe ]
115                    <BOUCLE_art_rub(ARTICLES){id_rubrique}{titre_mot=edito_rubrique}{!par date} {0,1} {doublons}>
116
117                      [(#REM) gerer le cas du mot cle restricted_access => il faut etre loggue pour voir l'article ]
118                      <BOUCLE_restrict_access2(ARTICLES) {titre_mot=restricted_access}{id_article}>
119                        [(#SESSION{login}|oui)
120                                        [<p class="#EDIT{soustitre} soustitre">(#_art_rub:SOUSTITRE)</p>]
121                            [(#REM) <div class="#EDIT{descriptif} soustitre">#_art_rub:DESCRIPTIF</div>]
122                                    [<div class="#EDIT{chapo} soustitre">(#_art_rub:CHAPO)</div>]                       
123                                  </div><!-- fin cartouche -->
124                            [<div class="#EDIT{texte} texte">(#_art_rub:TEXTE|image_reduire{360,500})</div>]
125                        ]
126                       
127                        [(#SESSION{login}|non)
128                            [(#REM) recuperer le texte qui explique qu'il faut se logguer ]
129                            #SET{txt_restrict, This page's access is restricted to the identified's contributors. Please log in. }
130                            [(#CONFIG{median/texte_acces_restreint}|oui)
131                                [(#SET{txt_restrict, [(#CONFIG{median/texte_acces_restreint})] })] ]
132                           
133                            [<h2 class="restrict_exp">(#GET{txt_restrict})</h2>]
134                            [<div class="login_public">(#FORMULAIRE_LOGIN{lang=en})</div>]
135                        ]
136                        <BOUCLE_non_logue(CONDITION){si #SESSION{login}|non}>
137                            [(#REM) si mot cle form_account_creation proposer le formulaire de creation de compte ]
138                            <BOUCLE_test_cc(ARTICLES){id_article}{titre_mot=form_account_creation}{0,1}>
139                                [(#REM) recuperer le texte qui explique la creation d'un compte si mot-cle form_account_creation ]
140                                #SET{txt_account_creation, 'Want create an acount?'}
141                                [(#CONFIG{median/texte_creation_compte}|oui)
142                                    [(#SET{txt_account_creation, [(#CONFIG{median/texte_creation_compte})] })] ]
143                                   
144                                <h2 class="restrict_exp">#GET{txt_account_creation}</h2>
145                                 <div class="formulaire_i2">
146                                    [(#PLUGIN{inscription2}|oui) #FORMULAIRE_INSCRIPTION2 ]
147                                    [(#PLUGIN{inscription2}|non) #FORMULAIRE_INSCRIPTION ]
148                                 </div>
149                            </BOUCLE_test_cc>
150                        </BOUCLE_non_logue>
151                       
152                      </BOUCLE_restrict_access2>
153                                        [<p class="#EDIT{soustitre} soustitre">(#_art_rub:SOUSTITRE)</p>]
154                            [(#REM) <div class="#EDIT{descriptif} soustitre">#_art_rub:DESCRIPTIF</div>]
155                                    [<div class="#EDIT{chapo} soustitre">(#_art_rub:CHAPO)</div>]                       
156                                  </div><!-- fin cartouche -->
157                            [<div class="#EDIT{texte} texte">(#_art_rub:TEXTE|image_reduire{360,500})</div>]
158                      <//B_restrict_access2>
159
160                    </BOUCLE_art_rub>
161                        [(#REM) sinon afficher le descriptif et/ou le texte explicatif de la rubrique ]
162                                  </div><!-- fin cartouche -->
163                                    [<div class="#EDIT{descriptif} texte">(#DESCRIPTIF)</div>]
164                        [<div class="#EDIT{texte} texte">(#TEXTE|image_reduire{360,500})</div>]
165                    <//B_art_rub>
166                   
167                        </div><!-- fin contenu -->
168                </div><!-- fin conteneur -->
169         
170    [(#SET{larg_logo, [(#CONFIG{median/taille_micro_vignettes,20})]})]
171    [(#SET{ht_logo, [(#CONFIG{median/taille_micro_vignettes,20})]})]   
172    <div class="contre-encart">
173           
174        [(#REM) les mots clés attachés à la rubrique et aux articles de la rubrique ]
175        [<div id="keywords">
176            (#MODELE{rubrique_mots}{id_rubrique})
177        </div>]
178           
179        [(#REM) Documents joints a la rubrique ]
180        <B_documents_joints>
181        <div id="documents_joints">
182                <h2><:titre_documents_joints:></h2>
183                <ul>
184                        <BOUCLE_documents_joints(DOCUMENTS) {id_rubrique} {mode=document} {par num titre, date} {doublons}>
185                                        <li style="[background-image: url((#LOGO_DOCUMENT||image_reduire{0,[(#GET{ht_logo})]}|extraire_attribut{src}));][(#COMPTEUR_BOUCLE|=={1}|?{'border-top: 0;'})]">
186                                                <div class="spip_doc_titre"><a href="#URL_DOCUMENT" title="<:bouton_telecharger:>" type="#MIME_TYPE">[(#TITRE|sinon{<:info_document:>})]</a> <small>(#TYPE_DOCUMENT[ - (#TAILLE|taille_en_octets)])</small></div>
187                                                [<div class="spip_doc_descriptif">(#DESCRIPTIF*)</div>]
188                                        </li>
189                        </BOUCLE_documents_joints>
190                </ul>
191        </div>
192        </B_documents_joints>
193       
194        [(#REM) Articles de la rubrique ]
195        <B_articles>
196        <div class="liste-articles">
197                #ANCRE_PAGINATION
198                <h2 ><:median:articles_rubrique:></h2>
199                <ul>
200                        <BOUCLE_articles(ARTICLES) {id_rubrique} {lang} {par num #GET{num}}{par #GET{classement}} {inverse #GET{inverse}}{pagination}{doublons}>
201                        [(#CONFIG{median/micro_vignettes_carrees}|=={oui}|?{
202                    <li style="[background-image: url((#LOGO_ARTICLE_RUBRIQUE||image_passe_partout{#GET{larg_logo},#GET{larg_logo}}|image_recadre{#GET{larg_logo},#GET{ht_logo},left=0 top=0}|extraire_attribut{src}));][padding-left: (#GET{larg_logo}|plus{5})px;][(#COMPTEUR_BOUCLE|=={1}|?{'border-top: 0;'})]">
203                            ,
204                    <li style="[background-image: url((#LOGO_ARTICLE_RUBRIQUE||image_reduire{#GET{larg_logo},#GET{ht_logo}}|extraire_attribut{src}));][(#COMPTEUR_BOUCLE|=={1}|?{'border-top: 0;'})][padding-left: (#GET{larg_logo}|plus{5})px;]">
205                })]
206                        [<h3 class="titre"><a href="#URL_ARTICLE">(#TITRE|supprimer_numero)</a></h3>]               
207                      [(#DESCRIPTIF|sinon{
208                          [(#CHAPO|match{.*[(#URL_SITE_SPIP)].*}|?{'',' '})
209                            [(#CHAPO|sinon{[<p>(#TEXTE|couper{140}|image_reduire{360,500})</p>]})]
210                          ]
211                      })]
212                              <div class="read_more" style="background-image: url('#CHEMIN{logo_read_more.jpg}');"><a href="#URL_ARTICLE"><:median:lire_suite:></a></div>
213                </li>
214                        </BOUCLE_articles>
215                </ul>
216                [<p class="pagination">(#PAGINATION)</p>]
217        </div>
218        </B_articles>
219       
220        [(#REM) Sites de la rubrique ]
221        <B_sites>
222        <div class="liste-articles">
223                #ANCRE_PAGINATION
224                <h2 ><:sur_web:></h2>
225                <ul>
226                        <BOUCLE_sites(SITES) {id_rubrique} {par nom_site} {pagination}{doublons}>
227                        [(#CONFIG{median/micro_vignettes_carrees}|=={oui}|?{
228                    <li style="[background-image: url((#LOGO_SITE_RUBRIQUE||image_passe_partout{#GET{larg_logo},#GET{larg_logo}}|image_recadre{#GET{larg_logo},#GET{ht_logo},left=0 top=0}|extraire_attribut{src}));][(#COMPTEUR_BOUCLE|=={1}|?{'border-top: 0;'})][padding-left: (#GET{larg_logo}|plus{5})px;]">
229                            ,
230                    <li style="[background-image: url((#LOGO_SITE_RUBRIQUE||image_reduire{#GET{larg_logo},#GET{ht_logo},left=0 top=0}|extraire_attribut{src}));][(#COMPTEUR_BOUCLE|=={1}|?{'border-top: 0;'})][padding-left: (#GET{larg_logo}|plus{5})px;]">
231                })]
232                                [<h3 class="titre"><a href="[(#ID_SYNDIC|generer_url_entite{site,'','',#CONNECT})]">(#NOM_SITE)</a></h3>]
233                    <B_syndic>
234                    <ul class="liste-sites">
235                        <BOUCLE_syndic(SYNDIC_ARTICLES) {id_syndic} {age<180} {par date}{inverse} {0,3}>
236                        <li style="background: url('#CHEMIN{externe.png}') no-repeat 3px center;"><a href="#URL_ARTICLE" class="spip_out">#TITRE</a></li>
237                        </BOUCLE_syndic>
238                    </ul>
239                    </B_syndic>
240                              <div class="read_more" style="background-image: url('#CHEMIN{logo_read_more.jpg}');"><a href="[(#ID_SYNDIC|generer_url_entite{site,'','',#CONNECT})]"><:median:visiter_site:></a></div>
241                </li>
242                        </BOUCLE_sites>
243                </ul>
244                [<p class="pagination">(#PAGINATION)</p>]
245        </div>
246        </B_sites>
247
248        [(#REM) Plan des sous-rubriques ]
249        <B_sous_rubriques>
250                        <BOUCLE_sous_rubriques(RUBRIQUES) {id_parent} {par num titre, titre}>
251        <div class="plan_rubriques">
252                        <h2 class="menu-titre" style="[padding-left: 2.2em; background-image: url((#LOGO_RUBRIQUE||image_passe_partout{#GET{larg_logo},#GET{larg_logo}}|image_recadre{#GET{larg_logo},#GET{ht_logo},left=0 top=0}|extraire_attribut{src}));]; background-position: 3px center;">
253                    <a href="#URL_RUBRIQUE">[(#TITRE|supprimer_numero)]</a>
254                </h2>
255                        [(#DESCRIPTIF|image_reduire{360,500}|sinon{[<p>(#TEXTE|couper{140}|image_reduire{360,500})</p>]})]
256                        <div class="read_more" style="background-image: url('#CHEMIN{logo_access_section.jpg}');"><a href="#URL_RUBRIQUE"><:median:acces_rubrique:></a></div>
257                                [(#REM) Une boucle recursive pour le mini plan]
258                                <B_miniplan>
259                                <ul>
260                                        <BOUCLE_miniplan(RUBRIQUES) {id_parent} {par num titre, titre}>
261                                        <li style="[background-image: url((#LOGO_RUBRIQUE||image_passe_partout{#GET{larg_logo},#GET{larg_logo}}|image_recadre{#GET{larg_logo},#GET{ht_logo},left=0 top=0}|extraire_attribut{src}));]">
262                                                <h3><a href="#URL_RUBRIQUE">[(#TITRE|supprimer_numero)]</a></h3>
263                                [(#DESCRIPTIF|image_reduire{360,500}|sinon{[<p>(#TEXTE|couper{140}|image_reduire{360,500})</p>]})]
264                                <div class="read_more" style="background-image: url('#CHEMIN{logo_access_section.jpg}');"><a href="#URL_RUBRIQUE"><:median:acces_rubrique:></a></div>
265                                                <BOUCLE_m2(BOUCLE_miniplan)></BOUCLE_m2>
266                                        </li>
267                                        </BOUCLE_miniplan>
268                                </ul>
269                                </B_miniplan>
270                </div>
271                        </BOUCLE_sous_rubriques>
272        </B_sous_rubriques>
273           
274       
275    </div><!-- fin contre-encart -->
276
277
278  <//B_art_unique> [(#REM) fin de la partie remplacée par l'article unique ]
279 
280 
281
282        [(#REM) Pied de page ]
283        <INCLURE{fond=inc-pied}{skel=#SQUELETTE}>
284
285</div><!-- fin page -->
286</body>
287</html>
288</BOUCLE_rubrique_principal>
Note: See TracBrowser for help on using the repository browser.