Modifications pour le document Modifier par lot

Modifié par Joséphine Ducruet le 2025/10/30 15:23

Depuis la version 10.1
modifié par Joséphine Ducruet
sur 2025/08/27 11:36
Commentaire de modification : Il n'y a aucun commentaire pour cette version
À la version 13.1
modifié par Joséphine Ducruet
sur 2025/08/27 14:11
Commentaire de modification : Il n'y a aucun commentaire pour cette version

Résumé

Détails

Propriétés de la Page
Contenu
... ... @@ -2,6 +2,11 @@
2 2  
3 3  |(% style="width:840px" %)(((
4 4  (((
5 +(% class="box" %)
6 +(((
7 +La **modification par lot** permet de mettre à jour en une seule opération un ensemble de notices issues d’une recherche. Elle sert à normaliser, corriger, enrichir ou nettoyer des données à grande échelle, sans passer notice par notice.
8 +)))
9 +
5 5  = Points clés avant de se lancer =
6 6  
7 7  La **modification globale (ou par lot)** est réservée aux professionnels habilités.
... ... @@ -15,7 +15,7 @@
15 15  
16 16  (% class="box warningmessage" %)
17 17  (((
18 -**Attention** : une fois validées, les modifications sont irréversibles.
23 +**Attention** : une fois validées, les modifications sont **irréversibles.**
19 19  )))
20 20  
21 21  (% class="box successmessage" %)
... ... @@ -54,10 +54,23 @@
54 54  
55 55  = Remplacer une valeur =
56 56  
62 +== Cas d'usage ==
63 +
64 +
57 57  Permet de **remplacer la valeur d’un champ par une autre**.
58 58  
59 59  >(% class="small" %)Ex. remplacer la dénomination //table// par //chaise//.
60 60  
69 + Idéal pour :
70 +
71 +* **Corriger une coquille** dans un champ texte
72 +* **Nettoyer la typographie** : doubles espaces, séparateurs, guillemets, etc
73 +* **Normaliser un terme** ou une abréviation
74 +* **Harmoniser la casse/accents**
75 +* **Préfixer** ou **suffixer** une valeur
76 +* **Remplacer un contenu obsolète** par un libellé actuel
77 +* **Réécrire entièrement** une valeur incorrecte
78 +
61 61  == Définir la valeur à remplacer ==
62 62  
63 63  La **source** et la **table** sur lesquelles effectuer les modifications sont pré-remplies par défaut.
... ... @@ -137,11 +137,11 @@
137 137  
138 138  Elle se **combine** avec le réglage **Chercher** (Caractère, Mot entier, Champ entier).
139 139  
140 ->(% class="small" %)**Exemple** :
158 +>(% class="small" %)**Exemple**
141 141  
142 142  >(% class="small" %)Texte de départ : Inventaire des peintures anciennes
143 143  
144 ->(% class="small" %)**Cas 1**Chercher = Caractère **pein** | Nouvelle valeur : **phot**
162 +>(% class="small" %)**Cas 1** Chercher = Caractère **pein** | Nouvelle valeur : **phot**
145 145  
146 146  (((
147 147  |=(% style="text-align: center;" %)(% class="small" %)Chercher|=(% style="text-align: center;" %)(% class="small" %)Emplacement|=(% style="text-align: center;" %)(% class="small" %)Résultat
... ... @@ -151,7 +151,7 @@
151 151  |(%%)(% class="small" %)Caractère|(%%)(% class="small" %)Fin de champ|(%%)(% class="small" %)Inventaire des peintures anciennes**phot**
152 152  )))
153 153  
154 ->(% class="small" %)**Cas 2**Chercher = Mot entier **peintures** | Nouvelle valeur : **dessins**
172 +>(% class="small" %)**Cas 2** Chercher = Mot entier **peintures** | Nouvelle valeur : **dessins**
155 155  
156 156  |=(% style="text-align: center;" %)(% class="small" %)Chercher|=(% style="text-align: center;" %)(% class="small" %)Emplacement|=(% style="text-align: center;" %)(% class="small" %)Résultat
157 157  |(%%)(% class="small" %)Mot entier|(%%)(% class="small" %)Occurrence|(%%)(% class="small" %)Inventaire des **dessins** anciennes
... ... @@ -165,7 +165,7 @@
165 165  Par exemple, chercher (ou remplacer) « **pein** » en cochant l’option **Mot entier** ne donnera aucun résultat ; utilisez le mot complet « **peintures** ».
166 166  )))
167 167  
168 ->(% class="small" %)**Cas 3**Chercher = Champ entier **Inventaire des peintures anciennes** | Nouvelle valeur : **Catalogue des peintures**
186 +>(% class="small" %)**Cas 3** Chercher = Champ entier **Inventaire des peintures anciennes** | Nouvelle valeur : **Catalogue des peintures**
169 169  )))
170 170  
171 171  (((
... ... @@ -180,8 +180,23 @@
180 180  Avec **Champ entier**, la valeur recherchée doit **correspondre exactement** au contenu du champ (pas seulement un mot ou un extrait).
181 181  )))
182 182  
183 -== Respecter la casse ==
201 +(% class="box successmessage" %)
202 +(((
203 +**A retenir : **
184 184  
205 +* **Chercher = quoi cibler** :
206 +**Caractère** (séquence) · **Mot entier** (mot complet) · **Champ entier** (valeur exacte).
207 +* **Emplacement = où appliquer** :
208 +**Occurrence** (partie trouvée) · **Champ entier** (tout le champ) · **Début**/**Fin** (ajout en pré/suffixe).
209 +* **Combinaison** : le résultat dépend **des deux** réglages (Chercher × Emplacement).
210 +* Utile pour :
211 +** **Corriger une coquille**
212 +** **Remplacer un terme obsolète**
213 +** **Nettoyer la ponctuation et les espaces**
214 +)))
215 +
216 +== Respecter la casse ==
217 +
185 185  Active une recherche **strictement identique** à la valeur saisie : **majuscules, minuscules et accents** sont distingués.
186 186  
187 187  (% class="box warningmessage" %)
... ... @@ -209,6 +209,13 @@
209 209  
210 210  >(% class="small" %)(Décochez l’option ou recherchez École pour trouver la valeur.)
211 211  
245 +(% class="box successmessage" %)
246 +(((
247 +**A retenir :**
248 +
249 +* **Effet** : correspondance **strictement identique** (majuscules/minuscules **et** accents pris en compte).
250 +)))
251 +
212 212  == Remplacer toutes les occurrences présentes dans la valeur ==
213 213  
214 214  Par défaut, **seule la première occurrence** trouvée dans le champ est remplacée.
... ... @@ -227,10 +227,20 @@
227 227  
228 228  >(% class="small" %)Chercher = **Mot entier** peintures → Nouvelle valeur = dessins
229 229  
230 ->(% class="small" %)**Sans** l’option : Inventaire des ~*~*dessins~*~* et des peintures anciennes
270 +>(% class="small" %)**Sans** l’option : Inventaire des ~*~*dessins~*~* et des peintures anciennes
231 231  
232 ->(% class="small" %)**Avec** l’option : Inventaire des ~*~*dessins~*~* et des ~*~*dessins~*~* anciennes
272 +>(% class="small" %)**Avec** l’option : Inventaire des ~*~*dessins~*~* et des ~*~*dessins~*~* anciennes
233 233  
274 +(% class="box successmessage" %)
275 +(((
276 +**A retenir : **
277 +
278 +* **Effet** : par défaut, seule la **première** occurrence est remplacée ; avec l’option cochée, **toutes** les occurrences dans le **même champ** sont modifiées.
279 +* Utile pour :
280 +** **Corriger une faute répétée**
281 +** **Remplacer un terme obsolète récurrent**
282 +)))
283 +
234 234  == Lancer le traitement ==
235 235  
236 236  * **Lancer le test** : permet de vérifier que la modification globale va fonctionner.
... ... @@ -244,6 +244,10 @@
244 244  
245 245  = Ajouter une valeur =
246 246  
297 +== Cas d'usage ==
298 +
299 +Ajoute une valeur dans la notice, idéal pour **compléter** une info manquante.
300 +
247 247  == Définir la valeur à ajouter ==
248 248  
249 249  1. La **source** et la **table** sont pré-remplies par défaut.
... ... @@ -259,6 +259,7 @@
259 259  
260 260  [[Ajout dans un champ parent existant>>image:1718004841774-374.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true"]]
261 261  
316 +
262 262  **Comportement selon le type de champ :**
263 263  
264 264  * Champ **mono-valeur** vide → la valeur est **ajoutée**.
... ... @@ -266,6 +266,16 @@
266 266  * Champ **multi-valeur** vide → la valeur est **ajoutée**.
267 267  * Champ **multi-valeur** déjà renseigné → la valeur **complète** celles existantes.
268 268  
324 +(% class="box successmessage" %)
325 +(((
326 +**A retenir : **
327 +
328 +* **Effet** : insère la **nouvelle valeur** dans le **champ déjà présent** sur la notice
329 +* Utile pour :
330 +** **Compléter des mots-clés**
331 +** **Enrichir un champ multi-valeur**
332 +)))
333 +
269 269  == Créer un nouveau champ parent ==
270 270  
271 271  **Duplique** le champ pour y ajouter la nouvelle valeur (uniquement pour les **champs duplicables**).
... ... @@ -272,6 +272,17 @@
272 272  
273 273  [[Duplication du champ lieu d'utilisation>>image:1718005071968-162.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true"]]
274 274  
340 +
341 +(% class="box successmessage" %)
342 +(((
343 +**A retenir : **
344 +
345 +* **Effet** : duplique le **bloc (champ parent)** pour y ajouter la nouvelle valeur dans une **nouvelle occurrence** distincte.
346 +* Utile pour :
347 +** **Coupler correctement Matière & Technique**
348 +** **Associer la bonne Personne à la bonne Fonction**
349 +)))
350 +
275 275  == Lancer le traitement ==
276 276  
277 277  * **Lancer le test** : permet de vérifier que la modification globale va fonctionner.
... ... @@ -285,14 +285,22 @@
285 285  
286 286  = Supprimer un champ =
287 287  
364 +== Cas d'usage ==
365 +
288 288  Efface la **valeur d’un champ** sur les notices sélectionnées.
289 289  
368 +Idéal pour :
369 +
370 +* **Retirer une information** obsolète ou erronée
371 +* **Remettre à zéro** un champ saisi au mauvais endroit
372 +* **Nettoyer** pour normaliser
373 +
290 290  == Définir la suppression ==
291 291  
292 -* La **source** et la **table** sont pré-remplies par défaut.
293 -* Sélectionnez le **champ** à nettoyer.
294 -* Par défaut, **Trier par libellé** est coché : le champ s’affiche sous la forme //Libellé (nom informatique)// pour distinguer les libellés identiques.
295 -* Renseignez la **valeur recherchée** (celle à supprimer).
376 +1. La **source** et la **table** sont pré-remplies par défaut.
377 +1. Sélectionnez le **champ** à nettoyer.
378 +1. Par défaut, **Trier par libellé** est coché : le champ s’affiche sous la forme //Libellé (nom informatique)// pour distinguer les libellés identiques.
379 +1. Renseignez la **valeur recherchée** (celle à supprimer).
296 296  
297 297  (% class="box warningmessage" %)
298 298  (((
... ... @@ -323,121 +323,135 @@
323 323  
324 324  * **Lancer le traitement** : applique réellement la modification sur les notices sélectionnées.
325 325  
326 -
327 -)))
328 -)))|(% style="width:300px" %)
410 += Echanger une autorité =
329 329  
330 -== ==
412 +== Cas d'usage ==
331 331  
332 -== Echange ==
414 +Permet de remplacer, dans les notices sélectionnées, une **autorité A** par une **autorité B** (personne, lieu, thésaurus, etc.) dans un **champ lié à une table d’autorités**.
333 333  
416 +Idéal pour :
334 334  
335 -La fonctionnalité échange permet d'échanger une autorité avec une autre autorité.
418 +* **Corriger** une attribution à une autorité
419 +* **Réparer un import** : **mauvais identifiant** pointant vers A → **autorité correcte** B
420 +* **Préparer la suppression de doublons d’autorités** : **rediriger** toutes les notices vers l’**autorité de référence**, **vérifier** qu’il n’y a plus de liens sur les doublons, **puis** supprimer ces autorités vides.
421 +)))
336 336  
337 -La source et la table sur lesquelles effectuer les modifications sont remplis par défaut. Il faut alors choisir le champ sur lequel la suppression est souhaitée.
423 +(((
424 +== Définir l'échange ==
338 338  
339 -La table liée permet de renseigner la table d'autorité concernée par l'échange.
426 +* La **source** et la **table** sont pré-remplies par défaut.
427 +* Sélectionnez le **champ** à modifier (champ **lien** vers une autorité).
428 +* Renseignez la **Table liée** (table d’autorité concernée : Personnes, Lieux...).
429 +* Indiquez l’**Autorité à remplacer** (valeur recherchée) et l’**Autorité de remplacement** (nouvelle valeur).
340 340  
341 -Par défaut la case "Trier par libellé" est cochée. Elle permet de faire apparaitre le libellé du champ suivi de son nom informatique. Cela permet de différencier des champs qui ont potentiellement le même libellé.
431 +(% class="box infomessage" %)
432 +(((
433 +Portée : si le champ accepte plusieurs valeurs, **seule l’occurrence** correspondant à l’autorité à remplacer est substituée ; les autres valeurs du champ sont **conservées**.
434 +)))
342 342  
343 -Renseigner ensuite la valeur recherchée à remplacer et la nouvelle valeur souhaitée.
436 +[[Exemple : Echange de l'autorité Personnes Delacroix avec Botticelli>>image:1718007194775-136.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true"]]
344 344  
345 -//Par exemple, remplacer dans des notices bien, l'autorité personne Delacroix Eugène par Sandro Botticelli. Ainsi tous les champs des notices sélectionnées faisant appel à Delacroix Eugène feront maintenant appel à Sandro Botticelli.//
438 +== Lancer le traitement ==
346 346  
347 -[[image:1718007194775-136.png||data-xwiki-image-style-alignment="center" height="420" width="1381" class="img-thumbnail"]]
440 +* **Lancer le test** : permet de vérifier que la modification globale va fonctionner.
348 348  
349 -(% class="wikigeneratedid" %)
350 -Lancer le test permet de vérifier que la modification globale va fonctionner.
351 -
352 352  (% class="box warningmessage" %)
353 353  (((
354 -Attention Lancer le test ne permet pas de visualiser le résultat.
444 +**Attention** : //Lancer le test ne permet pas de visualiser le résultat// (aucune donnée n’est modifiée).
355 355  )))
356 356  
357 -(% class="wikigeneratedid" %)
358 -Lancer le traitement lancera la modification des notices.
447 +* **Lancer le traitement** : applique réellement la modification sur les notices sélectionnées.
359 359  
360 -== Supprimer les notices ==
449 += Supprimer des notices =
361 361  
362 -(% id="HStandard-6" %)
363 -La fonctionnalité supprimer les notices permet de supprimer l'ensemble des notices sélectionnées.
451 +Supprime **définitivement** l’ensemble des notices sélectionnées.
364 364  
365 365  (% class="box warningmessage" %)
366 366  (((
367 -Attention toutes suppressions de notices est irréversibles.
455 +**Irréversible** : toute suppression de notice est **définitive**.
368 368  )))
369 369  
370 -[[image:1718007555125-860.png||data-xwiki-image-style-alignment="center" height="220" width="1273" class="img-thumbnail"]]
458 +[[Suppression de 59 notices>>image:1718007555125-860.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true"]]
371 371  
372 -Lancer le test permet de vérifier que la suppression va fonctionner.
373 373  
461 +* **Ignorer les erreurs** : si l’option est cochée, la suppression se poursuit malgré les anomalies rencontrées ; si elle est décochée, le traitement s’interrompt dès la première erreur.
462 +* **Lancer le test** : permet de vérifier que la modification globale va fonctionner.
463 +
374 374  (% class="box warningmessage" %)
375 375  (((
376 -Attention Lancer le test ne permet pas de visualiser le résultat.
466 +**Attention** : //Lancer le test ne permet pas de visualiser le résultat// (aucune donnée n’est modifiée).
377 377  )))
378 378  
379 -Lancer le traitement lancera la suppression des notices.
469 +* **Lancer le traitement** : applique réellement la modification sur les notices sélectionnées.
380 380  
381 -L'option Ignorer les erreurs permet de passer outre tout problème rencont lors de la suppression. Sinon, l'opération est stoppée dès qu'un problème est rencontré.
471 += Clôture du traitement : affichage et rapports =
382 382  
383 -= Lancer le traitement =
473 +== Actions disponibles après exécution ==
384 384  
475 +À l’issue du test ou du traitement, trois boutons sont disponibles en haut de page :
385 385  
386 -Une fois la modification paramétrée, cliquez sur Lancer le test pour tester le traitement (sans impact sur les données). Une page d'informations s'affiche en trois parties.
477 +* **Retour au formulaire de recherche **[[image:1718007993541-975.png]]
478 +* **Retour à la liste résultat **[[image:1718008006027-949.png]]
479 +* **Télécharger les rapports** (recommandé)[[image:1718008017305-150.png]]
387 387  
388 -La première présente un résumé des informations de la modification. Le pourcentage de traitement réalisé apparaît en haut de l'écran.
481 +**Cas particulier mode test :** un bouton **Appliquer** est propo pour lancer **réellement** le traitement.
389 389  
390 -[[image:1718007767433-901.png||data-xwiki-image-style-alignment="center" height="554" width="1184" class="img-thumbnail"]]
483 +== Suivi du traitement ==
391 391  
392 -La seconde présente les informations remontées en cours de traitement ainsi que les clefs et digests des notices modifiées. En raison du nombre d’informations pouvant être remontées dans cette zone, son contenu est volatile. Si l’on quitte l’écran de modification globale et que l’on revient dessus, on ne verra plus les précédentes informations affichées. Le nombre de lignes pouvant être affiché dans cette zone est limité à 10000. Passé ce nombre, « ….. » s'affiche.
485 +Laffichage présente également trois zones identiques, en mode test comme en exécution :
393 393  
394 -[[image:1718007797909-766.png||data-xwiki-image-style-alignment="center" height="552" width="1177" class="img-thumbnail"]]
487 +* **Résumé** — Syntse des paramètres et **taux de progression**.
395 395  
396 -La troisième zone est masquée. Elle apparaît lorsque des erreurs sont remontées. A l'inverse de la liste des enregistrements traités, les messages affichés dans cette zone restent jusque' à la fin du traitement : si l’on quitte cette page, on les retrouve lorsque l’on revient sur la modification en cours. Les erreurs sont détaillées, y compris les fiches impossibles à modifier à cause de droits insuffisants. (On peut disposer d'un droit de modification filtré, qui ne s'applique donc pas à toutes les notices d'une table.)
489 +[[Résumé>>image:1718007767433-901.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true"]]
397 397  
398 -[[image:1718007901694-625.png||data-xwiki-image-style-alignment="center" height="375" width="1174" class="img-thumbnail"]]
399 399  
400 -(% class="box warningmessage" %)
401 -(((
402 -Il est conseillé de tester d'abord l'impact potentiel de votre modification globale, avant de lancer le traitement réel sur les données.
492 +* (((
493 +**Détails du traitement** — Flux d’informations en cours (inclut **clés** et **digests** des notices).
494 +
495 +* Zone **volatile** : si vous quittez/revenez, l’historique affiché disparaît.
496 +* **Limite d’affichage** : 10 000 lignes ; au-delà, ….. s’affiche.
403 403  )))
404 404  
405 -Une fois la modification parate et testée, deux possibilités sont offertes pour lancer le traitement effectif :
499 +[[Détails du traitement>>image:1718007797909-766.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true"]]
406 406  
407 -* A partir de l'écran de résultat de test (étape précédente) : cliquez sur Appliquer.
408 -* A partir d'un des écrans de paramétrage de la modification globale : cliquez sur Lancer le traitement.
409 409  
410 -Une fois le traitement lancé, les informations associées s'affichent de la même manière que lors du test, sans la mention Exécution en mode test.
502 +* **Erreurs** — Zone masquée tant qu’il n’y a pas d’erreurs ; elle **persiste** jusqu’à la fin du traitement (utile notamment pour les **droits insuffisants** ou les droits **filtrés** qui n’autorisent pas toutes les notices d’une table).
411 411  
504 +[[Erreurs>>image:1718007901694-625.png||data-xwiki-image-style-alignment="center" data-xwiki-image-style-border="true"]]
412 412  
413 -Une fois le test ou le traitement terminé, trois boutons se présentent en haut de la page :
506 +== Rapports ==
414 414  
415 -[[image:1718007993541-975.png]]retour au formulaire de recherche
508 +Le bouton **Télécharger les rapports** génère un **fichier .zip** qui reprend **l’intégralité des informations affichées**.
509 +Saisissez simplement le **nom du fichier .zip** à créer, puis validez.
416 416  
417 - [[image:1718008006027-949.png]]retour à la liste résultat
511 +* **Contenu du .zip** — 3 fichiers correspondant aux **trois zones** de l’écran :
512 +** …summary… : **récapitulatif** (zone 1)
513 +** …out… : **liste des notices impactées** (zone 2)
514 +** …err… : **erreurs rencontrées** (zone 3)
418 418  
419 -[[image:1718008017305-150.png]] télécharger les rapports.
420 420  
421 -Ce dernier permet de récupérer les fichiers contenant la totalité des informations affichées. Il suffit de fournir le nom du fichier zip téléchargé.
422 422  
423 -[[image:1718008058300-626.png||data-xwiki-image-style-alignment="center" height="333" width="389" class="img-thumbnail"]]
518 +* **Nommage des fichiers** : concaténation de
424 424  
425 -(% class="imgpara" %)
426 -Le fichier zip contient trois fichiers correspondant aux trois zones d'informations décrites ci-dessous.
520 +1. **Code de l’action** :
521 +global_replace (Remplacement) · global_add (Ajout) · global_remove (Suppression de champ) ·
522 +global_exchange (Échange d’autorité) · global_notice_delete (Suppression de notice) ·
523 +CommitBatch (traitement effectif)
524 +1. **Code utilisateur** connecté
525 +1. **Date/heure d’exécution**
526 +1. **Type d’information** : summary / out / err
527 +)))
528 +)))|(% style="width:300px" %)(((
529 +(% class="box" %)
530 +(((
531 +**Sommaire**
427 427  
428 -(% class="imgpara" %)
429 -Les noms de fichier sont composés :
533 +{{toc depth="2" numbered="true"/}}
534 +)))
430 430  
431 -* du code de l’action
432 -* global_replace = Remplacement
433 -* global_add = Ajout
434 -* global_remove = Suppression de champ
435 -* global_exchange = Echange d'autorité
436 -* global_notice_delete = Suppression de notice
437 -* CommitBatch = traitement effectif,
438 -* du code de l’utilisateur connecté,
439 -* de la date d’exécution de la modification,
440 -* du type d'information
441 -* err = erreurs rencontrées (contenu de la troisième partie de la page)
442 -* out = liste de fiches impactées (contenu de la deuxième partie de la page)
443 -* summary = récapitulatif (affiché dans la première partie de la page)
536 +(% class="box" %)
537 +(((
538 +**Aller plus loin**
539 +
540 +)))
541 +)))
1718007194775-136.png
Auteur
... ... @@ -1,1 +1,1 @@
1 -XWiki.admin
1 +XWiki.JDT
Taille
... ... @@ -1,1 +1,1 @@
1 -33.8 KB
1 +69.6 KB
Contenu
1718007555125-860.png
Auteur
... ... @@ -1,1 +1,1 @@
1 -XWiki.admin
1 +XWiki.JDT
Taille
... ... @@ -1,1 +1,1 @@
1 -20.4 KB
1 +32.5 KB
Contenu
1718007767433-901.png
Auteur
... ... @@ -1,1 +1,1 @@
1 -XWiki.admin
1 +XWiki.JDT
Taille
... ... @@ -1,1 +1,1 @@
1 -84.5 KB
1 +187.1 KB
Contenu
1718007797909-766.png
Auteur
... ... @@ -1,1 +1,1 @@
1 -XWiki.admin
1 +XWiki.JDT
Taille
... ... @@ -1,1 +1,1 @@
1 -82.3 KB
1 +190.1 KB
Contenu
1718007901694-625.png
Auteur
... ... @@ -1,1 +1,1 @@
1 -XWiki.admin
1 +XWiki.JDT
Taille
... ... @@ -1,1 +1,1 @@
1 -22.5 KB
1 +40.6 KB
Contenu