bulkrax 9.3.5 → 9.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -1
  3. data/app/assets/javascripts/bulkrax/application.js +2 -1
  4. data/app/assets/javascripts/bulkrax/bulkrax.js +13 -4
  5. data/app/assets/javascripts/bulkrax/bulkrax_utils.js +96 -0
  6. data/app/assets/javascripts/bulkrax/datatables.js +1 -0
  7. data/app/assets/javascripts/bulkrax/entries.js +17 -10
  8. data/app/assets/javascripts/bulkrax/importers.js.erb +9 -2
  9. data/app/assets/javascripts/bulkrax/importers_stepper.js +2420 -0
  10. data/app/assets/stylesheets/bulkrax/application.css +1 -1
  11. data/app/assets/stylesheets/bulkrax/stepper/_header.scss +83 -0
  12. data/app/assets/stylesheets/bulkrax/stepper/_mixins.scss +26 -0
  13. data/app/assets/stylesheets/bulkrax/stepper/_navigation.scss +103 -0
  14. data/app/assets/stylesheets/bulkrax/stepper/_responsive.scss +46 -0
  15. data/app/assets/stylesheets/bulkrax/stepper/_review.scss +92 -0
  16. data/app/assets/stylesheets/bulkrax/stepper/_settings.scss +106 -0
  17. data/app/assets/stylesheets/bulkrax/stepper/_success.scss +26 -0
  18. data/app/assets/stylesheets/bulkrax/stepper/_summary.scss +171 -0
  19. data/app/assets/stylesheets/bulkrax/stepper/_upload.scss +339 -0
  20. data/app/assets/stylesheets/bulkrax/stepper/_validation.scss +237 -0
  21. data/app/assets/stylesheets/bulkrax/stepper/_variables.scss +46 -0
  22. data/app/assets/stylesheets/bulkrax/stepper.scss +32 -0
  23. data/app/controllers/bulkrax/guided_imports_controller.rb +175 -0
  24. data/app/controllers/bulkrax/importers_controller.rb +28 -31
  25. data/app/controllers/concerns/bulkrax/guided_import_demo_scenarios.rb +201 -0
  26. data/app/controllers/concerns/bulkrax/importer_file_handler.rb +212 -0
  27. data/app/errors/bulkrax/unzip_error.rb +16 -0
  28. data/app/factories/bulkrax/object_factory.rb +3 -2
  29. data/app/factories/bulkrax/valkyrie_object_factory.rb +61 -17
  30. data/app/jobs/bulkrax/importer_job.rb +42 -4
  31. data/app/models/bulkrax/csv_entry.rb +27 -7
  32. data/app/models/bulkrax/entry.rb +4 -0
  33. data/app/models/bulkrax/importer.rb +27 -10
  34. data/app/models/concerns/bulkrax/has_matchers.rb +2 -2
  35. data/app/models/concerns/bulkrax/importer_exporter_behavior.rb +6 -5
  36. data/app/parsers/bulkrax/application_parser.rb +63 -20
  37. data/app/parsers/bulkrax/bagit_parser.rb +12 -0
  38. data/app/parsers/bulkrax/csv_parser.rb +168 -25
  39. data/app/parsers/concerns/bulkrax/csv_parser/csv_template_generation.rb +73 -0
  40. data/app/parsers/concerns/bulkrax/csv_parser/csv_validation.rb +133 -0
  41. data/app/parsers/concerns/bulkrax/csv_parser/csv_validation_helpers.rb +282 -0
  42. data/app/parsers/concerns/bulkrax/csv_parser/csv_validation_hierarchy.rb +96 -0
  43. data/app/services/bulkrax/csv_template/column_builder.rb +60 -0
  44. data/app/services/bulkrax/csv_template/column_descriptor.rb +58 -0
  45. data/app/services/bulkrax/csv_template/csv_builder.rb +83 -0
  46. data/app/services/bulkrax/csv_template/explanation_builder.rb +57 -0
  47. data/app/services/bulkrax/csv_template/field_analyzer.rb +56 -0
  48. data/app/services/bulkrax/csv_template/file_path_generator.rb +47 -0
  49. data/app/services/bulkrax/csv_template/file_validator.rb +68 -0
  50. data/app/services/bulkrax/csv_template/mapping_manager.rb +55 -0
  51. data/app/services/bulkrax/csv_template/model_loader.rb +50 -0
  52. data/app/services/bulkrax/csv_template/row_builder.rb +35 -0
  53. data/app/services/bulkrax/csv_template/schema_analyzer.rb +70 -0
  54. data/app/services/bulkrax/csv_template/split_formatter.rb +44 -0
  55. data/app/services/bulkrax/csv_template/value_determiner.rb +68 -0
  56. data/app/services/bulkrax/stepper_response_formatter.rb +347 -0
  57. data/app/services/bulkrax/validation_error_csv_builder.rb +99 -0
  58. data/app/validators/bulkrax/csv_row/child_reference.rb +56 -0
  59. data/app/validators/bulkrax/csv_row/circular_reference.rb +71 -0
  60. data/app/validators/bulkrax/csv_row/controlled_vocabulary.rb +74 -0
  61. data/app/validators/bulkrax/csv_row/duplicate_identifier.rb +63 -0
  62. data/app/validators/bulkrax/csv_row/missing_source_identifier.rb +31 -0
  63. data/app/validators/bulkrax/csv_row/parent_reference.rb +59 -0
  64. data/app/validators/bulkrax/csv_row/required_values.rb +64 -0
  65. data/app/views/bulkrax/guided_imports/new.html.erb +567 -0
  66. data/app/views/bulkrax/importers/index.html.erb +6 -1
  67. data/app/views/bulkrax/importers/new.html.erb +1 -1
  68. data/app/views/bulkrax/importers/show.html.erb +17 -1
  69. data/config/i18n-tasks.yml +195 -0
  70. data/config/locales/bulkrax.de.yml +508 -0
  71. data/config/locales/bulkrax.en.yml +463 -233
  72. data/config/locales/bulkrax.es.yml +508 -0
  73. data/config/locales/bulkrax.fr.yml +508 -0
  74. data/config/locales/bulkrax.it.yml +508 -0
  75. data/config/locales/bulkrax.pt-BR.yml +508 -0
  76. data/config/locales/bulkrax.zh.yml +507 -0
  77. data/config/routes.rb +10 -1
  78. data/lib/bulkrax/data/demo_scenarios.json +2235 -0
  79. data/lib/bulkrax/version.rb +1 -1
  80. data/lib/bulkrax.rb +31 -0
  81. metadata +56 -16
  82. data/app/services/bulkrax/sample_csv_service/column_builder.rb +0 -58
  83. data/app/services/bulkrax/sample_csv_service/column_descriptor.rb +0 -56
  84. data/app/services/bulkrax/sample_csv_service/csv_builder.rb +0 -82
  85. data/app/services/bulkrax/sample_csv_service/explanation_builder.rb +0 -51
  86. data/app/services/bulkrax/sample_csv_service/field_analyzer.rb +0 -54
  87. data/app/services/bulkrax/sample_csv_service/file_path_generator.rb +0 -16
  88. data/app/services/bulkrax/sample_csv_service/mapping_manager.rb +0 -36
  89. data/app/services/bulkrax/sample_csv_service/model_loader.rb +0 -40
  90. data/app/services/bulkrax/sample_csv_service/row_builder.rb +0 -33
  91. data/app/services/bulkrax/sample_csv_service/schema_analyzer.rb +0 -69
  92. data/app/services/bulkrax/sample_csv_service/split_formatter.rb +0 -42
  93. data/app/services/bulkrax/sample_csv_service/value_determiner.rb +0 -67
  94. data/app/services/bulkrax/sample_csv_service.rb +0 -78
  95. /data/{app/services → lib}/wings/custom_queries/find_by_source_identifier.rb +0 -0
@@ -0,0 +1,508 @@
1
+ ---
2
+ fr:
3
+ bulkrax:
4
+ admin:
5
+ sidebar:
6
+ exporters: Exportateurs
7
+ importers: Importateurs
8
+ cancel: Annuler
9
+ entry:
10
+ labels:
11
+ item_link: Lien vers l'article
12
+ item_link_error: Impossible de récupérer l'élément (%{message})
13
+ item_no_association: Aucun élément associé à cette entrée ou classe inconnue
14
+ item_not_imported: L'article n'a pas encore été importé avec succès.
15
+ parsed_metadata: Métadonnées analysées
16
+ raw_metadata: Métadonnées brutes
17
+ record_link: Lien %{record_type}
18
+ unknown: Inconnu
19
+ exporter:
20
+ labels:
21
+ all: Tous
22
+ collection: Collection
23
+ export_from: Exporter depuis
24
+ export_source: Source d'exportation
25
+ export_type: Type d'exportation
26
+ field_mapping: Cartographie de terrain
27
+ full: Métadonnées et fichiers
28
+ generated_metadata: Inclure les métadonnées générées ?
29
+ importer: Importateur
30
+ include_thumbnails: Inclure les vignettes ?
31
+ limit: Limite
32
+ metadata: Métadonnées uniquement
33
+ name: Nom
34
+ parser_fields: Champs de l'analyseur
35
+ parser_klass: Analyseur syntaxique
36
+ user: Utilisateur
37
+ worktype: Type de travail
38
+ prompts:
39
+ export_from: Veuillez sélectionner une source d'exportation
40
+ export_type: Veuillez sélectionner un type d'exportation
41
+ select_from_list: Sélectionnez dans la liste
42
+ start_typing: Commencez à taper...
43
+ validations:
44
+ errors_prohibited:
45
+ one: 'Une erreur a empêché l''enregistrement de cet exportateur :'
46
+ other: 'Des erreurs %{count} ont empêché l''enregistrement de cet exportateur :'
47
+ headings:
48
+ importers: Importateurs
49
+ upload_corrected_entries: 'Entrées corrigées à télécharger : %{name}'
50
+ importer:
51
+ bagit:
52
+ bags_to_import: 'Sac(s) à importer :'
53
+ file_style:
54
+ cloud: Ajouter un fichier cloud
55
+ server_path: Spécifiez un chemin d'accès sur le serveur
56
+ upload: Téléverser un fichier
57
+ file_upload_hint: Le téléchargement de fichiers et le téléchargement de fichiers Cloud doivent être un fichier Zip contenant un seul sac BagIt, ou un dossier contenant plusieurs sacs BagIt.
58
+ server_path_hint: Le chemin du serveur peut pointer vers un sac BagIt, un dossier contenant des sacs BagIt ou un fichier zip contenant l'un ou l'autre.
59
+ visibility:
60
+ institution: Institution
61
+ private: Privé
62
+ public: Publique
63
+ browse_everything:
64
+ add_cloud_files: Ajouter des fichiers cloud
65
+ csv:
66
+ add_csv_to_import: 'Ajouter un fichier CSV ou ZIP à importer :'
67
+ add_files_hint: Choisissez les fichiers à télécharger. Les noms de fichiers doivent être uniques et figurer dans une colonne nommée « file » du fichier CSV joint.
68
+ add_files_to_import: 'Ajouter des fichiers à importer :'
69
+ file_style:
70
+ existing_entries: Entrées existantes
71
+ server_path: Spécifiez un chemin d'accès sur le serveur
72
+ upload: Téléverser un fichier
73
+ labels:
74
+ default_visibility: Visibilité par défaut
75
+ visibility:
76
+ institution: Institution
77
+ private: Privé
78
+ public: Publique
79
+ edit_form:
80
+ modal_title: Options de mise à jour de l'importateur
81
+ remove_and_rerun_hint: Supprimez tous les fichiers, puis relancez l'importation en partant de zéro. Cela supprimera tous les fichiers et associations, et toutes les modifications effectuées depuis la dernière importation seront perdues.
82
+ update_and_harvest_hint: Mettez à jour les valeurs dans le formulaire d'importation et les éléments qui ont été modifiés à la source.
83
+ update_and_import_hint: Mettez à jour les valeurs dans le formulaire d'importation et exécutez l'importateur pour la première fois.
84
+ update_and_re_harvest_hint: Mettez à jour les valeurs dans le formulaire d'importation et recréez tous les éléments à partir de la source.
85
+ update_and_replace_files_hint: Mettez à jour les valeurs dans le formulaire d'importation et les métadonnées. Supprimez complètement tous les fichiers associés aux œuvres pour cet importateur et recréez-les intégralement.
86
+ update_metadata_and_files_hint: Mettez à jour les valeurs dans le formulaire d'importation ainsi que les métadonnées et les fichiers de toutes les œuvres. Créez de nouvelles versions des fichiers et conservez les anciennes.
87
+ update_metadata_hint: Mettez à jour les valeurs dans le formulaire d'importation et les métadonnées de toutes les œuvres. Ne modifiez aucun fichier.
88
+ update_only_hint: Mettez à jour uniquement les valeurs du formulaire d'importation. N'importez pas les métadonnées ni les fichiers des œuvres ou des collections.
89
+ update_only_no_update_hint: Mettez à jour uniquement les valeurs du formulaire d'importation. Ne modifiez pas les métadonnées ni les fichiers des œuvres ou des collections.
90
+ file_uploader:
91
+ add_files: Ajouter des fichiers
92
+ cancel_upload: Annuler le téléchargement
93
+ dropzone: Déposez les fichiers ici pour les télécharger
94
+ hints:
95
+ default_visibility: Si votre fichier CSV inclut le champ de visibilité, celui-ci remplacera le paramètre par défaut.
96
+ override_rights_statement: Si cette option est cochée, utiliser systématiquement la déclaration de droits sélectionnée. Sinon, utiliser les droits ou la déclaration de droits de l'enregistrement et n'utiliser la valeur fournie que si dc:rights est vide.
97
+ labels:
98
+ admin_set: Ensemble administratif
99
+ entry_id: ID d'entrée
100
+ exporter: Exportateur
101
+ frequency: Fréquence
102
+ identifier: Identifiant
103
+ importer: Importateur
104
+ limit: Limite
105
+ name: Nom
106
+ parser_klass: Analyseur syntaxique
107
+ total_collections: Collections totales
108
+ total_file_sets: Ensembles de fichiers totaux
109
+ total_work_entries: Travaux totaux
110
+ type: Taper
111
+ user: Utilisateur
112
+ oai:
113
+ hints:
114
+ metadata_prefix: Par exemple, oai_dc, dcterms ou oai_qdc
115
+ override_rights_statement: Si cette option est cochée, utiliser systématiquement la déclaration de droits sélectionnée. Sinon, utiliser la valeur de dc:rights de l'enregistrement et uniquement si dc:rights est vide.
116
+ thumbnail_url_html: |
117
+ <p>
118
+ L'URL de la miniature permet la création de modèles et la substitution de base pour toute information identifiée dans l'URL. Par exemple :
119
+ </p>
120
+ <p>
121
+ http://commons.ptsem.edu/?cover=<%= identifier.split(':').last %>&size=L
122
+ </p>
123
+ <p>
124
+ http://commons.ptsem.edu/?cover=<%= record.header.identifier.split(':').last %>&size=L
125
+ </p>
126
+ labels:
127
+ set: Ensemble (source)
128
+ refresh_sets: Ensembles de rafraîchissement
129
+ visibility:
130
+ institution: Institution
131
+ private: Privé
132
+ public: Publique
133
+ upload_corrected_entries:
134
+ click_here: Cliquez ici
135
+ csv_only: Seuls les fichiers CSV sont autorisés.
136
+ instructions_html: Veuillez téléverser <b>uniquement</b> les entrées corrigées pour l'importateur <b>%{name}</b> . Pour exporter les entrées erronées afin de les corriger,
137
+ guided_import:
138
+ breadcrumb: Importation guidée
139
+ flash:
140
+ demo_not_available: Scénarios de démonstration non disponibles
141
+ import_started: L'importation a démarré avec succès.
142
+ js:
143
+ admin_set_prompt: Sélectionnez un ensemble d'administrateurs...
144
+ already_uploaded: 'Les fichiers suivants ont déjà été téléchargés :'
145
+ appears_in_collections: Apparaît dans les collections %{count}
146
+ circular_reference: Référence circulaire détectée
147
+ csv_limit: 'Un seul fichier CSV est autorisé. Les fichiers suivants n''ont pas été ajoutés :'
148
+ demo_data_not_loaded: Les données de démonstration n'ont pas été chargées. Veuillez réessayer de sélectionner un scénario.
149
+ demo_load_failed: Impossible de charger les scénarios de démonstration.
150
+ demo_network_error: Erreur réseau - veuillez vérifier votre connexion
151
+ demo_server_error: Erreur serveur lors du chargement des scénarios de démonstration
152
+ demo_timeout: Délai d'attente dépassé lors du chargement des scénarios de démonstration.
153
+ detected_in_zip: détecté dans le fichier ZIP
154
+ file_upload_error: Erreur lors du chargement du fichier
155
+ files_too_large: Les fichiers sont trop volumineux. Veuillez réduire leur taille et réessayer.
156
+ gauge_import_size: 'Taille de l''importation : %{count} articles'
157
+ gauge_large: Grand
158
+ gauge_large_msg: Les importations volumineuses sont plus longues et plus difficiles à déboguer. Nous vous recommandons vivement de les diviser en lots de %{limit} ou moins.
159
+ gauge_moderate: Modéré
160
+ gauge_moderate_msg: Envisagez de diviser le travail en lots plus petits pour faciliter la résolution des erreurs.
161
+ download_validation_errors_csv: Télécharger le CSV des erreurs
162
+ gauge_optimal: Optimal
163
+ gauge_optimal_msg: Super ! Les importations de petite taille sont plus faciles à valider et à dépanner.
164
+ hierarchy_too_deep: Hiérarchie trop profonde (max. %{max} niveaux)
165
+ import_hierarchy: Hiérarchie d'importation
166
+ import_name_prefix: Importation CSV -
167
+ invalid_file_format: Format de fichier invalide. Veuillez vérifier vos fichiers et réessayer.
168
+ invalid_format: Format de fichier invalide. Seuls les fichiers .csv et .zip sont autorisés.
169
+ max_files: Nombre maximal de fichiers %{count} atteint (1 CSV et 1 ZIP).
170
+ max_files_added: 'Nombre maximal de fichiers autorisés : %{count} (1 fichier CSV et 1 fichier ZIP). Seuls les premiers fichiers %{added} ont été ajoutés.'
171
+ network_error: Erreur réseau - veuillez vérifier votre connexion et réessayer.
172
+ no_extension: pas de prolongation
173
+ not_selected: Non sélectionné
174
+ only_first_files: Seuls les %{count} premiers fichiers ont été téléchargés. Vous pouvez télécharger jusqu'à %{max} fichiers (1 CSV et 1 ZIP).
175
+ only_one_additional: Il ne peut être ajouté qu'un seul fichier supplémentaire. Le premier fichier a déjà été ajouté.
176
+ rejected_files: 'Les fichiers suivants ont été rejetés :'
177
+ remove_file: Supprimer le fichier
178
+ render_error: La validation a été effectuée, mais les résultats n'ont pas pu être affichés. Veuillez réessayer.
179
+ review_admin_set: 'Ensemble d''administrateur :'
180
+ review_first_n_records: premiers %{count} enregistrements
181
+ review_limit: 'Limite:'
182
+ review_name: 'Nom:'
183
+ review_rights: 'Droits:'
184
+ review_skipped: La validation a été ignorée — nombre d'enregistrements indisponible
185
+ review_total: "%{total} au total — %{collections} collections, %{works} œuvres, %{file_sets} ensembles de fichiers"
186
+ review_visibility: 'Visibilité:'
187
+ server_error: Erreur serveur lors de la validation. Veuillez réessayer ou contacter l'assistance.
188
+ shared_badge: commun
189
+ starting: Départ...
190
+ upload_csv_and_zip: Fichiers CSV + téléchargés séparément
191
+ upload_csv_only: Aucun fichier ZIP téléchargé — les fichiers seront trouvés sur le serveur ou vous pouvez ajouter d’autres fichiers.
192
+ upload_single_package: Un seul paquet contenant des fichiers CSV et autres.
193
+ upload_zip_only: Fichier ZIP téléchargé — la validation vérifiera le contenu CSV
194
+ uploaded_file: Fichier téléchargé
195
+ uploaded_files: Fichiers téléchargés (%{count})
196
+ validate_path: Valider les fichiers à partir du chemin d'importation
197
+ validate_upload: Valider les fichiers téléchargés
198
+ validated: Validé
199
+ validating: Validation en cours...
200
+ validation_failed: La validation a échoué. Veuillez réessayer.
201
+ validation_timeout: La validation a expiré. Vos fichiers sont peut-être trop volumineux. Veuillez essayer avec des fichiers plus petits ou contacter l'assistance.
202
+ visibility_institution: Institution
203
+ visibility_private: Privé
204
+ visibility_public: Publique
205
+ zip_limit: 'Un seul fichier ZIP est autorisé. Les fichiers suivants n''ont pas été ajoutés :'
206
+ nav:
207
+ back: Dos
208
+ clear_start_over: Effacer et recommencer
209
+ next_step: Suivant
210
+ skip_validation: Ignorer la validation
211
+ start_import: Démarrer l'importation
212
+ feedback_link: Signaler un bug / Commentaires
213
+ page_subtitle: Importer des collections, des œuvres et des fichiers via CSV
214
+ page_title: Lancer une importation en masse
215
+ step1:
216
+ add_another: Ajouter un autre fichier
217
+ add_another_hint_html: Déposez un fichier CSV ou ZIP ici, ou cliquez pour <strong class="text-primary">parcourir</strong>
218
+ admin_set: Ensemble d'administrateur
219
+ admin_set_hint: Des ensembles d'administrateurs sont nécessaires pour les importations et les téléchargements de modèles CSV.
220
+ admin_set_prompt: Sélectionnez un ensemble d'administrateurs...
221
+ collections: Collections
222
+ description_html: Téléversez un fichier CSV de métadonnées et un fichier ZIP contenant vos fichiers (2 téléversements maximum), ou un seul fichier ZIP contenant les deux — si vous utilisez un seul fichier ZIP, le fichier CSV de métadonnées doit être le seul fichier <code>.csv</code> au niveau supérieur.<br /> Vous pouvez également utiliser un chemin d'accès à un fichier sur votre serveur.
223
+ download_template: Téléchargez un modèle CSV pour votre locataire
224
+ dropzone_csv_hint: ".csv — métadonnées uniquement"
225
+ dropzone_hint: Téléverser des fichiers CSV et ZIP (2 téléversements maximum)
226
+ dropzone_main_html: Glissez-déposez vos fichiers ici, ou <strong class="text-primary">parcourez-les.</strong>
227
+ dropzone_zip_hint: ".zip — fichiers ou métadonnées CSV + fichiers"
228
+ file_path_hint: Fichier CSV ou ZIP
229
+ file_path_label: Saisissez le chemin d'accès aux fichiers sur votre serveur
230
+ file_path_placeholder: "/chemin/vers/import.csv"
231
+ file_sets: Ensembles de fichiers
232
+ import_path: Chemin d'importation
233
+ import_summary: Résumé des importations
234
+ title: Importez vos fichiers
235
+ upload_files: Téléverser des fichiers
236
+ file_input_label: Téléverser un fichier CSV ou ZIP
237
+ validate_path: Valider les fichiers à partir du chemin d'importation
238
+ validate_upload: Valider les fichiers téléchargés
239
+ warning_ack: Je prends acte de ces avertissements ou erreurs et souhaite procéder à l'importation.
240
+ works: Travaux
241
+ step2:
242
+ default_rights: Déclaration relative aux droits par défaut
243
+ default_visibility: Visibilité par défaut
244
+ description: Définissez les paramètres qui s'appliquent à tous les enregistrements de cette importation.
245
+ import_name: Nom d'importation
246
+ import_name_prefix: Importation CSV -
247
+ optional_settings: Paramètres optionnels
248
+ rights_none: Aucun
249
+ rights_required_alert_html: Votre fichier CSV ne contient pas de colonne <strong>« droits_statement »</strong> . Sélectionnez ci-dessous une déclaration de droits par défaut à appliquer à tous les enregistrements.
250
+ rights_skipped_hint_html: La validation a été ignorée. Si votre fichier CSV ne contient pas de colonne <strong>rights_statement</strong> , vous pouvez sélectionner une déclaration de droits par défaut ci-dessous à appliquer à tous les enregistrements.
251
+ test_limit: Test des enregistrements limités
252
+ test_limit_placeholder: Importez uniquement les N premiers enregistrements pour les tests.
253
+ title: Configurer les paramètres d'importation
254
+ visibility_hint: S'applique aux enregistrements qui ne spécifient pas de visibilité.
255
+ visibility_institution: Institution
256
+ visibility_institution_desc: Utilisateurs connectés
257
+ visibility_private: Privé
258
+ visibility_private_desc: Administrateurs uniquement
259
+ visibility_public: Publique
260
+ visibility_public_desc: Visible de tous
261
+ step3:
262
+ background_note: Ce processus s'exécutera en arrière-plan. Vous pouvez suivre sa progression dans la file d'attente d'importation.
263
+ description: Veuillez confirmer les détails de votre importation avant de commencer.
264
+ large_import_message_html: Vous allez importer <span class="total-items-count">%{count}</span> articles. Les importations volumineuses sont plus longues et plus difficiles à dépanner. Pensez à les fractionner en lots plus petits.
265
+ large_import_warning: Avertissement concernant les importations importantes
266
+ ready_to_import: Prêt à importer
267
+ section_files: Fichiers
268
+ section_records: Archives
269
+ section_settings: Paramètres
270
+ section_warnings: Avertissements
271
+ title: Vérifier et lancer l'importation
272
+ steps:
273
+ configure_settings: Configurer les paramètres
274
+ review_start: Révision et démarrage
275
+ upload_validate: Télécharger et valider
276
+ stepper_response_formatter:
277
+ row_errors_issue:
278
+ description: "Les problèmes suivants existent avec les données de votre CSV :"
279
+ row_label: "Ligne %{row} · %{column}"
280
+ title_errors: Erreurs de validation de ligne
281
+ title_warnings: Avertissements de validation de ligne
282
+ success:
283
+ message: Votre importation est en cours de traitement en arrière-plan. Vous serez averti(e) lorsqu'elle sera terminée.
284
+ start_another: Lancer une autre importation
285
+ title: Importation commencée
286
+ view_queue: Afficher la file d'importation
287
+ validation:
288
+ columns_detected: "%{columns} colonnes détectées · %{records} enregistrements trouvés"
289
+ controlled_vocabulary_validator:
290
+ errors:
291
+ message: "« %{value} » n'est pas un terme reconnu pour « %{field} »."
292
+ suggestion: "Veuillez vérifier le vocabulaire contrôlé pour les termes valides."
293
+ critical_errors: Les erreurs critiques doivent être corrigées avant l'importation.
294
+ did_you_mean: Vouliez-vous dire « %{suggestion} » ?
295
+ duplicate_identifier_validator:
296
+ errors:
297
+ message: "%{field} en double « %{value} » — apparaît également à la ligne %{original_row}."
298
+ suggestion: "Chaque %{field} doit être unique dans le CSV."
299
+ existing_source_identifier_validator:
300
+ warnings:
301
+ message: "« %{value} » correspond à un enregistrement existant dans le dépôt — cette ligne le mettra à jour."
302
+ suggestion: "Si vous ne souhaitiez pas mettre à jour un enregistrement existant, modifiez la valeur de %{field}."
303
+ failed: Échec de la validation
304
+ file_path_not_exist: Le chemin d'accès au fichier n'existe pas.
305
+ file_references_title: Références de fichiers
306
+ files_found_in_zip: "%{found} fichiers sur %{total} trouvés dans le fichier ZIP."
307
+ files_missing_from_zip: "%{count} %{files_word} référencé dans votre fichier CSV mais absent du fichier ZIP :"
308
+ files_referenced: "%{count} fichiers référencés dans le fichier CSV sont introuvables lors de l'importation."
309
+ missing_from_zip: manquant dans le fichier ZIP
310
+ missing_source_identifier_validator:
311
+ errors:
312
+ message: "Il manque une valeur pour '%{field}' dans cette ligne."
313
+ suggestion: "Ajoutez une valeur '%{field}' à cette ligne ou configurez Bulkrax pour générer automatiquement des identifiants source."
314
+ missing_required_desc: 'Les colonnes suivantes doivent être ajoutées à votre fichier CSV :'
315
+ missing_required_hint: Ajoutez cette colonne à votre fichier CSV.
316
+ missing_required_title: Champs obligatoires manquants
317
+ missing_rights_desc: Votre fichier CSV ne contient pas de colonne « droits_statement ». Vous pouvez l'ajouter ou sélectionner une déclaration de droits par défaut à l'étape suivante.
318
+ multiple_csv: Plusieurs fichiers CSV se trouvent au niveau le moins profond dans le ZIP, ce qui empêche d'identifier le CSV principal. Conservez exactement un fichier CSV à ce niveau ; les CSV supplémentaires doivent être imbriqués plus profondément.
319
+ no_csv_in_zip: Aucun fichier CSV trouvé dans le fichier ZIP
320
+ no_csv_uploaded: Aucun fichier de métadonnées CSV n'a été téléchargé.
321
+ no_files_uploaded: Aucun fichier téléchargé
322
+ no_zip_desc: Aucun fichier ZIP n'a été téléchargé. Assurez-vous que les fichiers sont accessibles sur le serveur ou téléchargez un fichier ZIP.
323
+ parent_reference_validator:
324
+ errors:
325
+ message: "Le parent référencé « %{value} » n'existe pas en tant que %{field} dans ce CSV."
326
+ suggestion: "Vérifiez les fautes de frappe ou ajoutez l'enregistrement parent."
327
+ passed: Validation réussie
328
+ passed_warnings: Validation réussie avec avertissements
329
+ recognized_fields: 'Champs reconnus : %{fields}'
330
+ default_work_type_validator:
331
+ warnings:
332
+ message: "Aucun modèle spécifié — cette ligne sera importée en tant que '%{default_work_type}'."
333
+ suggestion: "Spécifiez une valeur de modèle dans la colonne 'model' pour cette ligne si vous souhaitez utiliser un type de travail différent."
334
+ default_work_type_notice:
335
+ message_column_missing: "Aucune colonne de modèle trouvée — toutes les lignes seront importées en tant que '%{default_work_type}'."
336
+ message_column_empty: "Aucun modèle fourni — toutes les lignes seront importées en tant que '%{default_work_type}'."
337
+ suggestion_column_empty: "Ajoutez des valeurs de modèle à la colonne 'model' de votre CSV si vous souhaitez utiliser un type de travail différent pour certaines lignes."
338
+ suggestion_column_missing: "Ajoutez une colonne 'model' à votre CSV si vous souhaitez utiliser un type de travail différent pour certaines lignes."
339
+ required_field_validator:
340
+ errors:
341
+ message: "Le champ « %{field} » est obligatoire mais il est vide pour cette ligne."
342
+ suggestion: "Ajoutez une valeur pour « %{field} »."
343
+ unable_to_process: Impossible de traiter les fichiers pour validation
344
+ notices_desc: 'Ces avis peuvent affecter la façon dont votre CSV est importé :'
345
+ notices_title: Avis d'importation
346
+ unrecognized_desc: 'Ces colonnes seront ignorées lors de l''importation :'
347
+ unrecognized_title: Champs non reconnus
348
+ unzip:
349
+ errors:
350
+ multiple_csv: Plusieurs fichiers CSV se trouvent au niveau le moins profond dans le ZIP, ce qui empêche d'identifier le CSV principal. Conservez exactement un fichier CSV à ce niveau ; les CSV supplémentaires doivent être imbriqués plus profondément.
351
+ no_csv: Aucun fichier CSV trouvé dans le fichier ZIP
352
+ unsafe_entry: "Le ZIP contient une entrée avec un chemin non sûr (%{name}). Les entrées ne doivent pas utiliser de chemins absolus ni de références au répertoire parent."
353
+ validations:
354
+ errors_prohibited:
355
+ one: 'Une erreur a empêché l''enregistrement de cet importateur :'
356
+ other: 'Des erreurs %{count} ont empêché l''enregistrement de cet importateur :'
357
+ xml:
358
+ file_style:
359
+ cloud: Ajouter un fichier cloud
360
+ server_path: Spécifiez un chemin d'accès sur le serveur
361
+ upload: Téléverser un fichier
362
+ hints:
363
+ file_upload_hint: Le téléchargement de fichiers et le téléchargement de fichiers Cloud DOIVENT se faire soit par un seul fichier XML (pour l'importation des métadonnées uniquement), soit par un fichier Zip contenant les fichiers XML et les fichiers de données, chacun dans un dossier séparé.
364
+ override_rights_statement: Si cette option est cochée, utiliser systématiquement la déclaration de droits sélectionnée. Sinon, utiliser les droits ou la déclaration de droits de l'enregistrement et n'utiliser la valeur fournie que si dc:rights est vide.
365
+ record_element: Indiquez le nom de l'élément XML à utiliser pour identifier l'enregistrement ou les enregistrements, par exemple ROW - chaque enregistrement du XML joint est enveloppé dans une balise <ROW>.
366
+ server_path_hint: Le chemin du serveur peut pointer vers un dossier contenant des fichiers XML et des fichiers de données à importer, ou directement vers le fichier XML lui-même.
367
+ import_type:
368
+ multiple: Plusieurs œuvres par fichier de métadonnées
369
+ single: Une seule œuvre par fichier de métadonnées
370
+ labels:
371
+ visibility: Visibilité
372
+ xml_and_files: 'Fichiers XML et fichiers à importer :'
373
+ visibility:
374
+ institution: Institution
375
+ private: Privé
376
+ public: Publique
377
+ shared:
378
+ errors:
379
+ error: 'Erreur:'
380
+ error_trace: 'Trace d''erreur :'
381
+ errored_at: 'Erreur survenue à :'
382
+ errors_heading: 'Erreurs :'
383
+ full: Complet
384
+ not_yet_exported: L'article n'a pas encore été exporté avec succès
385
+ not_yet_imported: L'article n'a pas encore été importé avec succès.
386
+ raw: Brut
387
+ succeeded_at: 'Réussi à :'
388
+ field_mapping:
389
+ full: Complet
390
+ heading: 'Cartographie des champs :'
391
+ raw: Brut
392
+ table_header:
393
+ labels:
394
+ actions: Actes
395
+ date_exported: Date d'exportation
396
+ downloadable_files: Fichiers téléchargeables
397
+ entries_deleted_upstream: Entrées supprimées en amont
398
+ entries_enqueued: Entrées en file d'attente
399
+ entries_failed: Les tentatives ont échoué
400
+ entries_processed: Entrées traitées
401
+ entry_id: ID d'entrée
402
+ errors: Erreurs
403
+ identifier: Identifiant
404
+ last_run: Dernière course
405
+ name: Nom
406
+ next_run: Prochaine course
407
+ status: Statut
408
+ total_collection_entries: Nombre total d'entrées de la collection
409
+ total_file_set_entries: Nombre total d'entrées du fichier
410
+ total_work_entries: Nombre total d'entrées de travail
411
+ type: Taper
412
+ updated_at: Mise à jour le
413
+ helpers:
414
+ action:
415
+ exporter:
416
+ back: Dos
417
+ create: Créer
418
+ create_and_export: Créer et exporter
419
+ download: Télécharger
420
+ edit: Modifier
421
+ new: Nouveau
422
+ update: Exportateur de mises à jour
423
+ update_and_re_export: Mettre à jour et réexporter tous les éléments
424
+ importer:
425
+ add_file: Ajouter un fichier...
426
+ back: Dos
427
+ build: Construire
428
+ continue: Continuer
429
+ create: Créer
430
+ create_and_import: Créer et importer
431
+ create_and_validate: Créer et valider
432
+ discard: Jeter
433
+ discard_confirm: Es-tu sûr?
434
+ download_original_file: Télécharger le fichier original
435
+ download_original_files: Télécharger les fichiers originaux
436
+ edit: Modifier
437
+ edit_importer: Modifier l'importateur
438
+ export_errored_entries: Entrées d'exportation erronées
439
+ generate_csv_template: Générer un modèle d'importation CSV
440
+ import_corrected_works: Importer des œuvres corrigées
441
+ new: Importation avancée
442
+ guided_import_new: Importation guidée
443
+ remove_and_build: Supprimer puis reconstruire
444
+ remove_and_rerun: Supprimer et relancer
445
+ remove_and_rerun_confirm: Êtes-vous sûr ? Cette opération supprimera toutes les œuvres ainsi que tous les fichiers et relations associés avant d’être réexécutée.
446
+ update: Importateur de mises à jour
447
+ update_and_harvest_updated: Mise à jour et récolte des objets mis à jour
448
+ update_and_import: Mise à jour et importation
449
+ update_and_re_harvest: Mettre à jour et récolter à nouveau tous les éléments
450
+ update_and_replace_files: Mise à jour et remplacement des fichiers
451
+ update_and_replace_files_confirm: Êtes-vous sûr ? Cette opération supprimera tous les fichiers avant de les ajouter à l'importation.
452
+ update_metadata: Mettre à jour les métadonnées
453
+ update_metadata_and_files: Mise à jour des métadonnées et des fichiers
454
+ upload_corrected_entries: Téléverser les entrées corrigées
455
+ simple_form:
456
+ hints:
457
+ defaults:
458
+ default_visibility: Si votre fichier CSV inclut le champ de visibilité, celui-ci remplacera le paramètre par défaut.
459
+ metadata_prefix: Par exemple, oai_dc, dcterms ou oai_qdc
460
+ override_rights_statement: Si cette option est cochée, utiliser systématiquement la déclaration de droits sélectionnée. Sinon, utiliser les droits ou la déclaration de droits de l'enregistrement et n'utiliser la valeur fournie que si dc:rights est vide.
461
+ record_element: Indiquez le nom de l'élément XML à utiliser pour identifier l'enregistrement ou les enregistrements, par exemple ROW - chaque enregistrement du XML joint est enveloppé dans une balise <ROW>.
462
+ exporter:
463
+ generated_metadata?: Ces champs exportés ne peuvent actuellement pas être importés.
464
+ include_thumbnails?: Ces champs exportés ne peuvent actuellement pas être importés.
465
+ limit: Saisissez un nombre pour n'afficher qu'un sous-ensemble d'enregistrements. Laissez ce champ vide ou saisissez 0 pour afficher tous les enregistrements.
466
+ name: Un nom permettant d'identifier cet importateur
467
+ importer:
468
+ admin_set_id: Sélectionnez l'ensemble d'administration dont les stratégies (flux de travail, contrôles d'accès, etc.) doivent s'appliquer à ces importations. En cas de doute, sélectionnez l'ensemble d'administration par défaut.
469
+ frequency: La fréquence d'exécution de cet importateur
470
+ limit: Saisissez un nombre pour n'afficher qu'un sous-ensemble d'enregistrements. Laissez ce champ vide ou saisissez 0 pour afficher tous les enregistrements.
471
+ name: Un nom permettant d'identifier cet importateur
472
+ parser_fields: Les champs spécifiques à chaque analyseur ne sont disponibles que lorsqu'un analyseur est sélectionné.
473
+ labels:
474
+ defaults:
475
+ base_url: URL de base
476
+ file_style: Style de fichier
477
+ import_file_path: Chemin d'accès au fichier d'importation
478
+ import_type: Type d'importation
479
+ metadata_format: Format des métadonnées
480
+ metadata_prefix: Préfixe des métadonnées
481
+ override_rights_statement: Déclaration relative aux droits de priorité
482
+ record_element: Élément d'enregistrement
483
+ rights_statement: Déclaration relative aux droits
484
+ set: Ensemble (source)
485
+ thumbnail_url: URL de la miniature
486
+ visibility: Visibilité
487
+ exporter:
488
+ date_filter: Filtrer par date
489
+ export_from: Exporter depuis
490
+ export_source_collection: Collection
491
+ export_source_importer: Importateur
492
+ export_source_worktype: Type de travail
493
+ export_type: Type d'exportation
494
+ finish_date: Date de fin
495
+ generated_metadata?: Inclure les métadonnées générées ?
496
+ include_thumbnails?: Inclure les vignettes ?
497
+ limit: Limite
498
+ name: Nom
499
+ parser_klass: Format d'exportation
500
+ start_date: Date de début
501
+ work_visibility: Visibilité
502
+ workflow_status: Statut
503
+ importer:
504
+ admin_set_id: Ensemble administratif
505
+ frequency: Fréquence
506
+ limit: Limite
507
+ name: Nom
508
+ parser_klass: Analyseur syntaxique