source: spip-zone/_plugins_/tickets/trunk/inclure/liste_tickets.html @ 81352

Last change on this file since 81352 was 81352, checked in by severo@…, 7 years ago

tickets - indentation (on n'aligne pas avec des tab !)

File size: 24.4 KB
Line 
1[(#REM)
2
3        Inclure créant une liste de tickets
4       
5        Les paramètres possibles sont :
6       
7        -* titre = string                 Le titre du bloc (sinon le bloc n'aura pas de titre)
8        -* niveau_titre = string (h2)     Le niveau des titres (h2|h3|h4...)
9        -* date_sens = -1|1               Le sens de tri de la date
10        -* id_auteur = int                Un id_auteur numérique
11        -* auteurs = array                Un array d'id_auteur
12        -* id_auteur_non = int/array      Un id numérique ou un array des id_auteur dont on ne souhaite pas afficher les tickets
13        -* id_assigne = int               Un id_auteur numérique à qui aurait été assigné les tickets
14        -* assignes = array               Un array d'id_assigne
15        -* id_assigne_non = int/array     Un id numérique ou un array des id_assigne que l'on ne souhaite pas voir
16        -* tracker = int                  L'id du tracker (1|2|3|4), anciennement type
17        -* trackers = array               Un array de trackers
18        -* severite = int                 L'id de severite
19        -* severites = array              Un array de severites
20        -* statut = string                Le statut
21        -* statuts = array                Un array de statuts
22        -* version = string               La version
23        -* jalon = string                 Le jalon
24        -* composant = string             Le composant
25        -* projet = string                Le projet
26        -* sticked = oui|''               N'afficher que les tickets épinglés ou pas
27        -* objet = string                 N'afficher que les tickets liés à ce type d'objet
28        -* id_objet = int                 Si objet est aussi présent, n'afficher que les tickets liés à cet objet
29        -* order = string                 Le paramètre de tri (défaut date mais peut être maj|titre|tracker|jalon|version|composant|projet|severite|id_ticket)
30        -* tri_nom= string (detaillee)    Le nom du critère de tri (ce qui sera utilisé dans l'url pour le tri)
31        -* pagination = int               Le nombre d'élément à afficher dans la pagination
32        -* recherche = string             Une chaine recherchée dans les tickets
33        -* afficher_filtres               Affiche les filtres passés en argument
34        -* date_debut = date (sql)        La date des premiers à afficher
35        -* date_fin = date (sql)          La date des derniers à afficher
36        -* class = string                 Une classe spécifique appliquée au bloc parent
37        -* champs_caches = array          Les champs à ne pas afficher dans le tableau
38        -* couper = int (160)             La longueur de coupe du texte si affiché
39        -* cacher_texte = string (oui|'') Si oui n'affichera pas le texte des tickets
40]
41[(#SET{defaut_tri,#ARRAY{
42        statut,1,
43        date,#ENV{date_sens,-1},
44        maj,#ENV{date_sens,-1},
45        titre,1,
46        tracker,1,
47        jalon,1,
48        version,1,
49        composant,1,
50        projet,1,
51        severite,1,
52        id_ticket,1
53}})
54][(#SET{hash_pagination,[_tickets_(#ENV{titre}|sinon{pas de chance}|md5|substr{0,4})]})]
55[(#REM) Noisette d'affichage d'une liste detaillee des tickets suivant des criteres passes en arguments]
56#SET{champs_optionnels,#ARRAY}
57#SET{champs, #ARRAY{projet,projets,composant,composants,version,versions,jalon,jalons}}
58<BOUCLE_champs_optionnels(DATA){source table, #GET{champs}}>
59[(#VALEUR|tickets_champ_optionnel_actif|oui)
60        #SET{champs_optionnels,#GET{champs_optionnels}|push{#CLE}}
61]
62</BOUCLE_champs_optionnels>
63[(#SET{champs_optionnels,[(#GET{champs_optionnels}|array_diff{#ENV{champs_caches,#ARRAY}})]})]
64#SET{tout_assignes,#ARRAY}
65<BOUCLE_tout_assignes(TICKETS){fusion id_assigne}>#SET{tout_assignes,#GET{tout_assignes}|push{#ID_ASSIGNE}}</BOUCLE_tout_assignes>
66#SET{tout_auteurs,#ARRAY}
67<BOUCLE_tout_auteurs(TICKETS){fusion id_auteur}>#SET{tout_auteurs,#GET{tout_auteurs}|push{#ID_AUTEUR}}</BOUCLE_tout_auteurs>
68#SET{tout_statuts,#ARRAY}
69<BOUCLE_statuts(TICKETS){fusion statut}>#SET{tout_statuts,#GET{tout_statuts}|push{#STATUT}}</BOUCLE_statuts>
70#SET{tout_trackers,#ARRAY}
71<BOUCLE_trackers(TICKETS){fusion tracker}>#SET{tout_trackers,#GET{tout_trackers}|push{#TRACKER}}</BOUCLE_trackers>
72#SET{tout_severites,#ARRAY}
73<BOUCLE_severites(TICKETS){fusion severite}>#SET{tout_severites,#GET{tout_severites}|push{#SEVERITE}}</BOUCLE_severites>
74<B_detaillee>
75<div class="tickets[ (#ENV{class})]">
76[<[(#ENV{niveau_titre,h2}) ]class="#ENV{niveau_titre,h2}">(#ENV{titre})[ ((#GRAND_TOTAL))]</[(#ENV{niveau_titre,h2})]>]
77<BOUCLE_si_afficher_filtres(CONDITION){si #ENV{afficher_filtres}|=={oui}|oui}>
78        [(#SET{url_defiltrer,[(#SELF|parametre_url{recherche|date_debut|date_fin|statut|trackers|tracker|projet|composant|jalon|severite|severites|version|auteurs|id_auteur|assignes|id_assigne|navigateur,''})]})]
79        [(#ENV{recherche}|oui)
80                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{recherche,''})]})]
81                <p><:tickets:champ_recherche:> #ENV{recherche}</p>
82        ][(#ENV{date_debut}|oui)
83                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{date_debut,''})]})]
84                <p><:tickets:champ_date_debut:> [(#ENV{date_debut}|affdate)]</p>
85        ][(#ENV{date_fin}|oui)
86                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{date_fin,''})]})]
87                <p><:tickets:champ_date_fin:> [(#ENV{date_fin}|affdate)]</p>
88        ]
89        <B_pour_statuts>
90        [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{statuts,''}|parametre_url{statut,''})]})]
91        <p><:tickets:champ_statut:> 
92        <BOUCLE_pour_statuts(DATA){source table, #ENV{statuts,#ARRAY}}{', '}>[(#VALEUR|tickets_texte_statut)]</BOUCLE_pour_statuts>
93        </p>
94        </B_pour_statuts>
95        <B_pour_severites>
96        [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{severites,''})]})]
97        <p><:tickets:champ_type:> 
98        <BOUCLE_pour_severites(DATA){source table, #ENV{severites}}{', '}>[(#VALEUR|tickets_texte_severite)]</BOUCLE_pour_severites>
99        </p>
100        </B_pour_severites>
101        [(#ENV{severite}|oui)
102                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{severite,''})]})]
103                <p><:tickets:champ_severite:> [(#ENV{severite}|tickets_texte_severite)]</p>
104        ]
105        <B_pour_trackers>
106        [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{trackers,''})]})]
107        <p><:tickets:champ_type:> 
108        <BOUCLE_pour_trackers(DATA){source table, #ENV{trackers}}{', '}>[(#VALEUR|tickets_texte_tracker)]</BOUCLE_pour_trackers>
109        </p>
110        </B_pour_trackers>
111        [(#ENV{tracker}|oui)
112                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{tracker,''})]})]
113                <p><:tickets:champ_type:> [(#ENV{tracker}|tickets_texte_tracker)]</p>
114        ]
115        [(#ENV{projet}|oui)
116                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{projet,''})]})]
117                <p><:tickets:champ_projet:> #ENV{projet}</p>
118        ][(#ENV{composant}|oui)
119                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{composant,''})]})]
120                <p><:tickets:champ_composant:> #ENV{composant}</p>
121        ][(#ENV{jalon}|oui)
122                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{jalon,''})]})]
123                <p><:tickets:champ_jalon:> #ENV{jalon}</p>
124        ][(#ENV{version}|oui)
125                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{version,''})]})]
126                <p><:tickets:champ_version:> #ENV{version}</p>
127        ][(#ENV{navigateur}|oui)
128                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{navigateur,''})]})]
129                <p><:tickets:champ_navigateur:> #ENV{navigateur}</p>
130        ]
131        <B_auteurs>
132                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{auteurs,''})]})]
133                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{id_auteur,''})]})]
134                <p><:tickets:champ_id_auteur:> 
135                <BOUCLE_auteurs(AUTEURS){id_auteur IN #ENV{auteurs,#ENV{id_auteur}}}{', '}>
136                #NOM
137                </BOUCLE_auteurs>
138                </p>
139        </B_auteurs>
140        <B_assignes>
141                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{assignes,''})]})]
142                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{id_assigne,''})]})]
143                <p><:tickets:champ_id_assigne:>
144                <BOUCLE_assignes(AUTEURS){id_auteur IN #ENV{assignes,#ENV{id_assigne}}}{', '}>
145                #NOM
146                </BOUCLE_assignes>
147                </p>
148        </B_assignes>
149        [(#ENV{url_defiltrer}|=={oui}|oui)
150        <div class="actions">
151                <a href="#GET{url_defiltrer}"><:tickets:lien_supprimer_filtres:></a>
152        </div>]
153</BOUCLE_si_afficher_filtres>
154<div class="ticket"[ id="(#ANCRE_PAGINATION|extraire_attribut{id})"]>
155[<p class="pagination">(#PAGINATION)</p>]
156[(#COMPTEUR_BOUCLE|>{10}|oui)
157<p class="changer_pagination">
158        <span class='label'><:tickets:label_paginer_par:></span>
159        [(#ENV{pagination_[(#GET{hash_pagination})],#ENV{pagination,10}}|=={10}|?{<strong class='on'>10</strong>,<a href="[(#SELF|parametre_url{pagination_[(#GET{hash_pagination})],10}|parametre_url{debut[(#GET{hash_pagination})],''}|ancre_url{pagination[(#GET{hash_pagination})]})]" class="ajax bouton" rel="nofollow">10</a>})]
160        <span class="sep">|</span>
161        [(#ENV{pagination_[(#GET{hash_pagination})]}|=={50}|?{<strong class='on'>50</strong>,<a href="[(#SELF|parametre_url{pagination_[(#GET{hash_pagination})],50}|parametre_url{debut[(#GET{hash_pagination})],''}|ancre_url{pagination[(#GET{hash_pagination})]})]" class="ajax bouton" rel="nofollow">50</a>})]
162        [(#COMPTEUR_BOUCLE|>{50}|oui)<span class="sep">|</span>
163        [(#ENV{pagination_[(#GET{hash_pagination})]}|=={100}|?{<strong class='on'>100</strong>,<a href="[(#SELF|parametre_url{pagination_[(#GET{hash_pagination})],100}|parametre_url{debut[(#GET{hash_pagination})],''}|ancre_url{pagination[(#GET{hash_pagination})]})]" class="ajax bouton" rel="nofollow">100</a>})]]
164        [(#COMPTEUR_BOUCLE|>{100}|oui)<span class="sep">|</span>
165        [(#ENV{pagination_[(#GET{hash_pagination})]}|=={200}|?{<strong class='on'>200</strong>,<a href="[(#SELF|parametre_url{pagination_[(#GET{hash_pagination})],200}|parametre_url{debut[(#GET{hash_pagination})],''}|ancre_url{pagination[(#GET{hash_pagination})]})]" class="ajax bouton" rel="nofollow">200</a>})]]
166</p>]
167<table class="spip tickets">
168        <thead>
169                <tr>
170                        <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={statut}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
171                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={statut}|non)[(#TRI{statut,#,ajax}|inserer_attribut{rel,nofollow})]]
172                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={statut}|oui)
173                                        [(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non})[(#TRI{<,#,ajax}|inserer_attribut{rel,nofollow})]]
174                                        [(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={-1}|oui)[(#TRI{>,#,ajax}|inserer_attribut{rel,nofollow})]]]
175                        </th>
176                        <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={id_ticket}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
177                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={id_ticket}|non)[(#TRI{id_ticket,#,ajax}|inserer_attribut{rel,nofollow})]]
178                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={id_ticket}|oui)
179                                        [(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{<,#,ajax}|inserer_attribut{rel,nofollow})]]
180                                        [(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={-1}|oui)[(#TRI{>,#,ajax}|inserer_attribut{rel,nofollow})]]]
181                        </th>
182                        <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={titre}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
183                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={titre}|non)[(#TRI{titre,<:tickets:champ_titre_th:>,ajax}|inserer_attribut{rel,nofollow})]]
184                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={titre}|oui)
185                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{<,<:tickets:champ_titre_th:>,ajax}|inserer_attribut{rel,nofollow})]]
186                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|oui)[(#TRI{>,<:tickets:champ_titre_th:>,ajax}|inserer_attribut{rel,nofollow}|inserer_attribut{rel,nofollow})]]]
187                        </th>
188                        [(#ENV{tracker}|non)<th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={tracker}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
189                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={tracker}|non)[(#TRI{tracker,<:tickets:champ_type_th:>,ajax}|inserer_attribut{rel,nofollow})]]
190                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={tracker}|oui)
191                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{<,<:tickets:champ_type_th:>,ajax}|inserer_attribut{rel,nofollow})]]
192                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|oui)[(#TRI{>,<:tickets:champ_type_th:>,ajax}|inserer_attribut{rel,nofollow})]]]
193                        </th>]
194                        <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={severite}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
195                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={severite}|non)[(#TRI{severite,<:tickets:champ_importance_th:>,ajax}|inserer_attribut{rel,nofollow})]]
196                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={severite}|oui)
197                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{<,<:tickets:champ_importance_th:>,ajax}|inserer_attribut{rel,nofollow})]]
198                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|oui)[(#TRI{>,<:tickets:champ_importance_th:>,ajax}|inserer_attribut{rel,nofollow})]]]
199                        </th>[(#VAL{projet}|in_array{#GET{champs_optionnels,#ARRAY}}|oui)
200                                <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={projet}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
201                                        [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={projet}|non)[(#TRI{projet,<:tickets:champ_projet_th:>,ajax}|inserer_attribut{rel,nofollow})]]
202                                        [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={projet}|oui)
203                                                [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{<,<:tickets:champ_projet_th:>,ajax}|inserer_attribut{rel,nofollow})]]
204                                                [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|oui)[(#TRI{>,<:tickets:champ_projet_th:>,ajax}|inserer_attribut{rel,nofollow})]]]
205                                </th>][(#VAL{composant}|in_array{#GET{champs_optionnels,#ARRAY}}|oui)
206                                <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={composant}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
207                                        [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={composant}|non)[(#TRI{composant,<:tickets:champ_composant_th:>,ajax}|inserer_attribut{rel,nofollow})]]
208                                        [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={composant}|oui)
209                                                [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{<,<:tickets:champ_composant_th:>,ajax}|inserer_attribut{rel,nofollow})]]
210                                                [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|oui)[(#TRI{>,<:tickets:champ_composant_th:>,ajax}|inserer_attribut{rel,nofollow})]]]
211                                </th>][(#VAL{version}|in_array{#GET{champs_optionnels,#ARRAY}}|oui)
212                                <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={version}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
213                                        [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={version}|non)[(#TRI{version,<:tickets:champ_version_th:>,ajax}|inserer_attribut{rel,nofollow})]]
214                                        [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={version}|oui)
215                                                [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{<,<:tickets:champ_version_th:>,ajax}|inserer_attribut{rel,nofollow})]]
216                                                [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|oui)[(#TRI{>,<:tickets:champ_version_th:>,ajax}|inserer_attribut{rel,nofollow})]]]
217                                </th>][(#VAL{jalon}|in_array{#GET{champs_optionnels,#ARRAY}}|oui)
218                                <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={jalon}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
219                                        [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={jalon}|non)[(#TRI{jalon,<:tickets:champ_jalon_th:>,ajax}|inserer_attribut{rel,nofollow})]]
220                                        [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={jalon}|oui)
221                                                [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{<,<:tickets:champ_jalon_th:>,ajax}|inserer_attribut{rel,nofollow})]]
222                                                [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|oui)[(#TRI{>,<:tickets:champ_jalon_th:>,ajax}|inserer_attribut{rel,nofollow})]]]
223                                </th>][(#VAL{date}|in_array{#ENV{champs_caches,#ARRAY}}|non)
224                        <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={date}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]>
225                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|!={date}|et{#ENV{tri#ENV{tri_nom,_detaillee}}|oui}|oui)[(#TRI{date,<:tickets:champ_date_th:>,ajax}|inserer_attribut{rel,nofollow})]]
226                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={date}|ou{#ENV{tri#ENV{tri_nom,_detaillee}}|non}|oui)
227                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|oui)[(#TRI{<,<:tickets:champ_date_th:>,ajax}|inserer_attribut{rel,nofollow})]]
228                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{>,<:tickets:champ_date_th:>,ajax}|inserer_attribut{rel,nofollow})]]]
229                        </th>][(#VAL{maj}|in_array{#ENV{champs_caches,#ARRAY}}|non)
230                        <th[(#ENV{tri#ENV{tri_nom,_detaillee}}|=={maj}|oui)class="tri[(#ENV{sens#ENV{tri_nom,_detaillee},1}|=={1}|?{' asc',' desc'})]"]><abbr title="<:tickets:champ_maj_long:>">
231                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={maj}|non)[(#TRI{maj,<:tickets:champ_maj_th:>,ajax}|inserer_attribut{rel,nofollow})]]
232                                [(#ENV{tri#ENV{tri_nom,_detaillee}}|=={maj}|oui)
233                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={1}|oui)[(#TRI{<,<:tickets:champ_maj_th:>,ajax}|inserer_attribut{rel,nofollow})]]
234                                        [(#ENV{sens#ENV{tri_nom,_detaillee}}|=={-1}|ou{#ENV{sens#ENV{tri_nom,_detaillee}}|non}|oui)[(#TRI{>,<:tickets:champ_maj_th:>,ajax}|inserer_attribut{rel,nofollow})]]]
235                        </abbr></th>]
236                </tr>
237        </thead>
238        <tbody>
239        <BOUCLE_detaillee(TICKETS spip_tickets_liens){objet ?}{id_objet ?}{recherche?}{id_auteur?}{id_auteur IN #ENV{auteurs,#GET{tout_auteurs}}}{id_auteur !IN #ENV{id_auteur_non,#LISTE{999999999999}}}{id_assigne?}{id_assigne IN #ENV{assignes,#GET{tout_assignes}}}{id_assigne !IN #ENV{id_assigne_non,#LISTE{999999999999}}}{statut IN #ENV{statuts,#GET{tout_statuts}}}{tracker?}{tracker IN #ENV{trackers,#GET{tout_trackers}}}{severite?}{severite IN #ENV{severites,#GET{tout_severites}}}{version?}{jalon?}{composant?}{projet?}{sticked?}{tri #ENV{order,date},#GET{defaut_tri},#ENV{tri_nom,detaillee}}{date > #ENV{date_debut,2000-01-01}}{date < #ENV{date_fin,2100-01-01}}{pagination #ENV{pagination_#GET{hash_pagination},#ENV{pagination,10}} #GET{hash_pagination}}>
240                <tr class="[(#COMPTEUR_BOUCLE|alterner{row_odd odd,row_even even})] #STATUT">
241                        <td><a href="[(#SELF|parametre_url{statut,#STATUT})]">[(#STATUT|tickets_icone_statut{true})]</a></td>
242                        <td><a href="[(#URL_TICKET)]">##ID_TICKET</a></td>
243                        <td><a href="[(#URL_TICKET)]">#TITRE</a><br />
244                                [(#ENV{cacher_texte}|!={oui}|oui)[(#TEXTE|couper{#ENV{couper}})]]</td>
245                        [(#REM) Si le tracker est explicite, on ne l'affiche pas
246                        ][(#ENV{tracker}|non)<td class="#EDIT{tracker}">[<a href="[(#SELF|parametre_url{tracker,#TRACKER**})]">(#TRACKER|tickets_texte_tracker)</a>][(#TRACKER|?{'',-})]</td>]
247                        <td>
248                                [<a href="[(#SELF|parametre_url{severite,#SEVERITE**})]">(#SEVERITE|tickets_icone_severite{true})[&nbsp;(#SEVERITE|tickets_texte_severite)]</a>]
249                        </td>[(#VAL{projet}|in_array{#GET{champs_optionnels,#ARRAY}}|oui)
250                        <td class="#EDIT{projet}"><a href="[(#SELF|parametre_url{projet,#PROJET**})]">[(#PROJET|sinon{-})]</a></td>]
251                        [(#VAL{composant}|in_array{#GET{champs_optionnels,#ARRAY}}|oui)
252                        <td class="#EDIT{composant}"><a href="[(#SELF|parametre_url{composant,#COMPOSANT**})]">[(#COMPOSANT|sinon{-})]</a></td>
253                        ][(#VAL{version}|in_array{#GET{champs_optionnels,#ARRAY}}|oui)
254                        <td class="#EDIT{version}"><a href="[(#SELF|parametre_url{version,#VERSION**})]">[(#VERSION|sinon{-})]</a></td>
255                        ][(#VAL{jalon}|in_array{#GET{champs_optionnels,#ARRAY}}|oui)
256                        <td class="#EDIT{jalon}"><a href="[(#SELF|parametre_url{jalon,#JALON**})]">[(#JALON|sinon{-})]</a></td>]
257                        [(#VAL{date}|in_array{#ENV{champs_caches,#ARRAY}}|non)
258                        <td>[(#DATE|affdate)]</td>]
259                        [(#VAL{maj}|in_array{#ENV{champs_caches,#ARRAY}}|non)
260                        <td>[(#MAJ|affdate)]</td>]
261                </tr>
262        </BOUCLE_detaillee>
263        </tbody>
264</table>
265[(#COMPTEUR_BOUCLE|>{10}|oui)
266<p class="changer_pagination">
267        <span class='label'><:tickets:label_paginer_par:></span>
268        [(#ENV{pagination_[(#GET{hash_pagination})],#ENV{pagination,10}}|=={10}|?{<strong class='on'>10</strong>,<a href="[(#SELF|parametre_url{pagination_[(#GET{hash_pagination})],10}|parametre_url{debut[(#GET{hash_pagination})],''}|ancre_url{pagination[(#GET{hash_pagination})]})]" class="ajax bouton" rel="nofollow">10</a>})]
269        <span class="sep">|</span>
270        [(#ENV{pagination_[(#GET{hash_pagination})]}|=={50}|?{<strong class='on'>50</strong>,<a href="[(#SELF|parametre_url{pagination_[(#GET{hash_pagination})],50}|parametre_url{debut[(#GET{hash_pagination})],''}|ancre_url{pagination[(#GET{hash_pagination})]})]" class="ajax bouton" rel="nofollow">50</a>})]
271        [(#COMPTEUR_BOUCLE|>{50}|oui)<span class="sep">|</span>
272        [(#ENV{pagination_[(#GET{hash_pagination})]}|=={100}|?{<strong class='on'>100</strong>,<a href="[(#SELF|parametre_url{pagination_[(#GET{hash_pagination})],100}|parametre_url{debut[(#GET{hash_pagination})],''}|ancre_url{pagination[(#GET{hash_pagination})]})]" class="ajax bouton" rel="nofollow">100</a>})]]
273        [(#COMPTEUR_BOUCLE|>{100}|oui)<span class="sep">|</span>
274        [(#ENV{pagination_[(#GET{hash_pagination})]}|=={200}|?{<strong class='on'>200</strong>,<a href="[(#SELF|parametre_url{pagination_[(#GET{hash_pagination})],200}|parametre_url{debut[(#GET{hash_pagination})],''}|ancre_url{pagination[(#GET{hash_pagination})]})]" class="ajax bouton" rel="nofollow">200</a>})]]
275</p>]
276[<p class="pagination">(#PAGINATION)</p>]
277</div>
278</div>
279</B_detaillee>
280<BOUCLE_si_afficher_filtres_sans(CONDITION){si #ENV{afficher_filtres}|=={oui}|oui}>
281        <[(#ENV{niveau_titre,h2}) ]class="[(#ENV{niveau_titre,h2})]"><:tickets:tickets_tries:> (0)</[(#ENV{niveau_titre,h2})]>
282        [(#BOITE_OUVRIR{'',notice})]
283                <p><:tickets:message_aucun_ticket_recherche:></p>
284        [(#BOITE_FERMER)]
285       
286        [(#SET{url_defiltrer,[(#SELF|parametre_url{recherche|date_debut|date_fin|statut|trackers|tracker|projet|composant|jalon|severite|severites|version|auteurs|id_auteur|assignes|id_assigne|navigateur,''})]})]
287        [(#ENV{recherche}|oui)
288                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{recherche,''})]})]
289                <p><:tickets:champ_recherche:> #ENV{recherche}</p>
290        ][(#ENV{date_debut}|oui)
291                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{date_debut,''})]})]
292                <p><:tickets:champ_date_debut:> [(#ENV{date_debut}|affdate)]</p>
293        ][(#ENV{date_fin}|oui)
294                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{date_fin,''})]})]
295                <p><:tickets:champ_date_fin:> [(#ENV{date_fin}|affdate)]</p>
296        ]
297        <B_pour_statuts_sans>
298        [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{statuts,''}|parametre_url{statut,''})]})]
299        <p><:tickets:champ_statut:> 
300        <BOUCLE_pour_statuts_sans(DATA){source table, #ENV{statuts,#ARRAY}}{', '}>[(#VALEUR|tickets_texte_statut)]</BOUCLE_pour_statuts_sans>
301        </p>
302        </B_pour_statuts_sans>
303        <B_pour_severites_sans>
304        [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{severites,''})]})]
305        <p><:tickets:champ_type:> 
306        <BOUCLE_pour_severites_sans(DATA){source table, #ENV{severites}}{', '}>[(#VALEUR|tickets_texte_severite)]</BOUCLE_pour_severites_sans>
307        </p>
308        </B_pour_severites_sans>
309        [(#ENV{severite}|oui)
310                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{severite,''})]})]
311                <p><:tickets:champ_severite:> [(#ENV{severite}|tickets_texte_severite)]</p>
312        ]
313        <B_pour_trackers_sans>
314        [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{trackers,''})]})]
315        <p><:tickets:champ_type:> 
316        <BOUCLE_pour_trackers_sans(DATA){source table, #ENV{trackers}}{', '}>[(#VALEUR|tickets_texte_tracker)]</BOUCLE_pour_trackers_sans>
317        </p>
318        </B_pour_trackers_sans>
319        [(#ENV{tracker}|oui)
320                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{tracker,''})]})]
321                <p><:tickets:champ_type:> [(#ENV{tracker}|tickets_texte_tracker)]</p>
322        ]
323        [(#ENV{projet}|oui)
324                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{projet,''})]})]
325                <p><:tickets:champ_projet:> #ENV{projet}</p>
326        ][(#ENV{composant}|oui)
327                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{composant,''})]})]
328                <p><:tickets:champ_composant:> #ENV{composant}</p>
329        ][(#ENV{jalon}|oui)
330                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{jalon,''})]})]
331                <p><:tickets:champ_jalon:> #ENV{jalon}</p>
332        ][(#ENV{version}|oui)
333                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{version,''})]})]
334                <p><:tickets:champ_version:> #ENV{version}</p>
335        ][(#ENV{navigateur}|oui)
336                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{navigateur,''})]})]
337                <p><:tickets:champ_navigateur:> #ENV{navigateur}</p>
338        ]
339        <B_auteurs_sans>
340                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{auteurs,''})]})]
341                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{id_auteur,''})]})]
342                <p><:tickets:champ_id_auteur:> 
343                <BOUCLE_auteurs_sans(AUTEURS){id_auteur IN #ENV{auteurs,#ENV{id_auteur}}}{', '}>
344                #NOM
345                </BOUCLE_auteurs_sans>
346                </p>
347        </B_auteurs_sans>
348        <B_assignes_sans>
349                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{assignes,''})]})]
350                [(#SET{url_defiltrer,[(#GET{url_defiltrer}|parametre_url{id_assigne,''})]})]
351                <p><:tickets:champ_id_assigne:>
352                <BOUCLE_assignes_sans(AUTEURS){id_auteur IN #ENV{assignes,#ENV{id_assigne}}}{', '}>
353                #NOM
354                </BOUCLE_assignes_sans>
355                </p>
356        </B_assignes_sans>
357        [(#ENV{url_defiltrer}|=={oui}|oui)
358        <div class="actions">
359                <a href="#GET{url_defiltrer}"><:tickets:lien_supprimer_filtres:></a>
360        </div>]
361</BOUCLE_si_afficher_filtres_sans>
362<//B_detaillee>
363#FILTRE{trim}
Note: See TracBrowser for help on using the repository browser.