blacklight 7.0.0.rc1 → 7.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (259) hide show
  1. checksums.yaml +5 -5
  2. data/.rubocop.yml +30 -18
  3. data/.rubocop_todo.yml +308 -67
  4. data/.solr_wrapper.yml +8 -1
  5. data/.travis.yml +15 -13
  6. data/Gemfile +2 -0
  7. data/README.md +2 -2
  8. data/Rakefile +2 -0
  9. data/VERSION +1 -1
  10. data/Vagrantfile +2 -0
  11. data/app/assets/javascripts/blacklight/blacklight.js +17 -17
  12. data/app/assets/stylesheets/blacklight/_blacklight_base.scss +17 -16
  13. data/app/assets/stylesheets/blacklight/_facets.scss +2 -13
  14. data/app/assets/stylesheets/blacklight/_icons.scss +8 -2
  15. data/app/assets/stylesheets/blacklight/_search_form.scss +7 -0
  16. data/app/assets/stylesheets/blacklight/blacklight.scss +1 -1
  17. data/app/builders/blacklight/action_builder.rb +1 -0
  18. data/app/controllers/concerns/blacklight/bookmarks.rb +19 -13
  19. data/app/controllers/concerns/blacklight/catalog.rb +19 -7
  20. data/app/controllers/concerns/blacklight/controller.rb +12 -18
  21. data/app/controllers/concerns/blacklight/facet.rb +3 -0
  22. data/app/controllers/concerns/blacklight/search_context.rb +7 -3
  23. data/app/controllers/concerns/blacklight/search_history.rb +1 -6
  24. data/app/controllers/concerns/blacklight/token_based_user.rb +3 -1
  25. data/app/helpers/blacklight/blacklight_helper_behavior.rb +5 -1
  26. data/app/helpers/blacklight/configuration_helper_behavior.rb +5 -3
  27. data/app/helpers/blacklight/facets_helper_behavior.rb +15 -12
  28. data/app/helpers/blacklight/icon_helper_behavior.rb +2 -0
  29. data/app/helpers/blacklight/render_constraints_helper_behavior.rb +2 -0
  30. data/app/helpers/blacklight/render_partials_helper_behavior.rb +2 -2
  31. data/app/helpers/blacklight/search_history_constraints_helper_behavior.rb +1 -0
  32. data/app/helpers/blacklight/url_helper_behavior.rb +29 -14
  33. data/app/javascript/blacklight/checkbox_submit.js +9 -8
  34. data/app/javascript/blacklight/core.js +8 -6
  35. data/app/javascript/blacklight/modal.js +1 -3
  36. data/app/javascript/blacklight/search_context.js +0 -1
  37. data/app/models/blacklight/icon.rb +3 -0
  38. data/app/models/blacklight/suggest_search.rb +3 -14
  39. data/app/models/bookmark.rb +1 -1
  40. data/app/models/concerns/blacklight/document.rb +3 -1
  41. data/app/models/concerns/blacklight/solr/document.rb +1 -0
  42. data/app/models/concerns/blacklight/suggest/response.rb +5 -3
  43. data/app/models/concerns/blacklight/user.rb +1 -0
  44. data/app/models/search.rb +1 -0
  45. data/app/presenters/blacklight/document_presenter.rb +38 -0
  46. data/app/presenters/blacklight/field_presenter.rb +2 -0
  47. data/app/presenters/blacklight/index_presenter.rb +13 -5
  48. data/app/presenters/blacklight/json_presenter.rb +5 -12
  49. data/app/presenters/blacklight/link_alternate_presenter.rb +2 -0
  50. data/app/presenters/blacklight/rendering/abstract_step.rb +2 -0
  51. data/app/presenters/blacklight/rendering/helper_method.rb +2 -0
  52. data/app/presenters/blacklight/rendering/join.rb +2 -0
  53. data/app/presenters/blacklight/rendering/link_to_facet.rb +4 -0
  54. data/app/presenters/blacklight/rendering/microdata.rb +3 -0
  55. data/app/presenters/blacklight/rendering/pipeline.rb +2 -0
  56. data/app/presenters/blacklight/rendering/terminator.rb +2 -0
  57. data/app/presenters/blacklight/search_bar_presenter.rb +2 -0
  58. data/app/presenters/blacklight/show_presenter.rb +8 -5
  59. data/app/presenters/blacklight/thumbnail_presenter.rb +2 -0
  60. data/app/services/blacklight/document_factory.rb +2 -0
  61. data/app/services/blacklight/field_retriever.rb +2 -0
  62. data/app/services/blacklight/search_service.rb +7 -9
  63. data/app/values/blacklight/types.rb +3 -0
  64. data/app/views/bookmarks/index.html.erb +12 -13
  65. data/app/views/catalog/_citation.html.erb +4 -4
  66. data/app/views/catalog/_constraints.html.erb +2 -0
  67. data/app/views/catalog/_did_you_mean.html.erb +1 -1
  68. data/app/views/catalog/_document.atom.builder +17 -16
  69. data/app/views/catalog/_document.rss.builder +2 -0
  70. data/app/views/catalog/_facet_index_navigation.html.erb +5 -4
  71. data/app/views/catalog/_facet_layout.html.erb +3 -5
  72. data/app/views/catalog/_facets.html.erb +5 -4
  73. data/app/views/catalog/_field.json.jbuilder +10 -0
  74. data/app/views/catalog/_group.html.erb +1 -1
  75. data/app/views/catalog/_home_text.html.erb +5 -5
  76. data/app/views/catalog/_index.html.erb +5 -7
  77. data/app/views/catalog/_index_header.html.erb +1 -1
  78. data/app/views/catalog/_per_page_widget.html.erb +1 -1
  79. data/app/views/catalog/_results_pagination.html.erb +2 -2
  80. data/app/views/catalog/_search_form.html.erb +1 -1
  81. data/app/views/catalog/_search_results.html.erb +2 -2
  82. data/app/views/catalog/_show.html.erb +3 -5
  83. data/app/views/catalog/_show_more_like_this.html.erb +1 -1
  84. data/app/views/catalog/_show_sidebar.html.erb +1 -1
  85. data/app/views/catalog/_show_tools.html.erb +1 -1
  86. data/app/views/catalog/_sort_widget.html.erb +1 -1
  87. data/app/views/catalog/_zero_results.html.erb +1 -1
  88. data/app/views/catalog/citation.js.erb +1 -1
  89. data/app/views/catalog/facet.html.erb +5 -4
  90. data/app/views/catalog/facet.json.jbuilder +2 -0
  91. data/app/views/catalog/index.atom.builder +4 -2
  92. data/app/views/catalog/index.json.jbuilder +29 -10
  93. data/app/views/catalog/index.rss.builder +2 -0
  94. data/app/views/catalog/opensearch.xml.builder +3 -1
  95. data/app/views/catalog/show.json.jbuilder +21 -0
  96. data/app/views/kaminari/blacklight/_first_page.html.erb +1 -1
  97. data/app/views/kaminari/blacklight/_last_page.html.erb +1 -1
  98. data/app/views/kaminari/blacklight/_next_page.html.erb +3 -3
  99. data/app/views/kaminari/blacklight/_page.html.erb +4 -2
  100. data/app/views/kaminari/blacklight/_prev_page.html.erb +2 -2
  101. data/app/views/layouts/blacklight.html.erb +4 -4
  102. data/app/views/layouts/blacklight/base.html.erb +1 -9
  103. data/app/views/search_history/index.html.erb +3 -3
  104. data/app/views/shared/_header_navbar.html.erb +1 -1
  105. data/app/views/shared/_modal.html.erb +2 -2
  106. data/blacklight.gemspec +7 -6
  107. data/config/i18n-tasks.yml +17 -0
  108. data/config/locales/blacklight.de.yml +72 -57
  109. data/config/locales/blacklight.en.yml +11 -1
  110. data/config/locales/blacklight.es.yml +15 -1
  111. data/config/locales/blacklight.fr.yml +17 -8
  112. data/config/locales/blacklight.hu.yml +3 -1
  113. data/config/locales/blacklight.it.yml +16 -1
  114. data/config/locales/blacklight.nl.yml +3 -1
  115. data/config/locales/blacklight.pt-BR.yml +19 -2
  116. data/config/locales/blacklight.sq.yml +3 -1
  117. data/config/locales/blacklight.zh.yml +3 -1
  118. data/config/routes.rb +0 -1
  119. data/lib/blacklight.rb +3 -0
  120. data/lib/blacklight/abstract_repository.rb +12 -0
  121. data/lib/blacklight/configuration.rb +21 -3
  122. data/lib/blacklight/configuration/context.rb +11 -0
  123. data/lib/blacklight/configuration/fields.rb +31 -26
  124. data/lib/blacklight/configuration/null_field.rb +2 -0
  125. data/lib/blacklight/engine.rb +4 -1
  126. data/lib/blacklight/routes/exportable.rb +1 -3
  127. data/lib/blacklight/routes/searchable.rb +2 -3
  128. data/lib/blacklight/runtime_registry.rb +2 -0
  129. data/lib/blacklight/search_builder.rb +2 -0
  130. data/lib/blacklight/search_state.rb +2 -0
  131. data/lib/blacklight/solr/repository.rb +34 -0
  132. data/lib/blacklight/solr/response/spelling.rb +1 -0
  133. data/lib/generators/blacklight/assets_generator.rb +10 -9
  134. data/lib/generators/blacklight/controller_generator.rb +1 -1
  135. data/lib/generators/blacklight/install_generator.rb +7 -14
  136. data/lib/generators/blacklight/solr_generator.rb +8 -0
  137. data/lib/generators/blacklight/templates/alternate_controller.rb +4 -4
  138. data/lib/generators/blacklight/templates/catalog_controller.rb +7 -1
  139. data/lib/generators/blacklight/templates/solr/conf/schema.xml +20 -22
  140. data/lib/generators/blacklight/user_generator.rb +2 -0
  141. data/lib/railties/blacklight.rake +9 -13
  142. data/package-lock.json +544 -406
  143. data/package.json +3 -2
  144. data/spec/controllers/alternate_controller_spec.rb +4 -3
  145. data/spec/controllers/application_controller_spec.rb +0 -4
  146. data/spec/controllers/blacklight/base_spec.rb +5 -2
  147. data/spec/controllers/blacklight/catalog/component_configuration_spec.rb +4 -4
  148. data/spec/controllers/blacklight/facet_spec.rb +0 -1
  149. data/spec/controllers/blacklight/search_fields_spec.rb +25 -22
  150. data/spec/controllers/bookmarks_controller_spec.rb +45 -10
  151. data/spec/controllers/catalog_controller_spec.rb +206 -138
  152. data/spec/controllers/search_history_controller_spec.rb +4 -4
  153. data/spec/features/alternate_controller_spec.rb +3 -3
  154. data/spec/features/autocomplete_spec.rb +2 -0
  155. data/spec/features/did_you_mean_spec.rb +4 -3
  156. data/spec/features/facets_spec.rb +7 -7
  157. data/spec/features/record_view_spec.rb +11 -12
  158. data/spec/features/search_context_spec.rb +4 -5
  159. data/spec/features/search_crawler_spec.rb +3 -5
  160. data/spec/features/search_filters_spec.rb +44 -44
  161. data/spec/features/search_history_spec.rb +5 -3
  162. data/spec/features/search_pagination_spec.rb +3 -1
  163. data/spec/features/search_results_spec.rb +11 -8
  164. data/spec/features/search_spec.rb +3 -3
  165. data/spec/features/sitelinks_search_box.rb +4 -4
  166. data/spec/helpers/blacklight/configuration_helper_behavior_spec.rb +30 -30
  167. data/spec/helpers/blacklight/facets_helper_behavior_spec.rb +65 -59
  168. data/spec/helpers/blacklight/hash_as_hidden_fields_behavior_spec.rb +1 -1
  169. data/spec/helpers/blacklight/icon_helper_behavior_spec.rb +2 -0
  170. data/spec/helpers/blacklight/render_constraints_helper_behavior_spec.rb +8 -3
  171. data/spec/helpers/blacklight/render_partials_helper_behavior_spec.rb +16 -4
  172. data/spec/helpers/blacklight/search_history_constraints_helper_behavior_spec.rb +21 -22
  173. data/spec/helpers/blacklight/suggest_helper_behavior_spec.rb +6 -1
  174. data/spec/helpers/blacklight/url_helper_behavior_spec.rb +49 -43
  175. data/spec/helpers/blacklight_helper_spec.rb +28 -12
  176. data/spec/helpers/catalog_helper_spec.rb +50 -47
  177. data/spec/i18n_spec.rb +18 -0
  178. data/spec/integration/generators/blacklight/solr_generator_spec.rb +18 -10
  179. data/spec/lib/blacklight/configuration/facet_field_spec.rb +2 -0
  180. data/spec/lib/blacklight/configuration/field_spec.rb +3 -0
  181. data/spec/lib/blacklight/open_struct_with_hash_access_spec.rb +15 -20
  182. data/spec/lib/blacklight/parameters_spec.rb +3 -1
  183. data/spec/lib/blacklight/search_state_spec.rb +51 -34
  184. data/spec/lib/blacklight_spec.rb +13 -14
  185. data/spec/lib/tasks/blacklight_task_spec.rb +3 -5
  186. data/spec/models/blacklight/configurable_spec.rb +11 -13
  187. data/spec/models/blacklight/configuration/context_spec.rb +9 -10
  188. data/spec/models/blacklight/configuration_spec.rb +103 -91
  189. data/spec/models/blacklight/document/active_model_shim_spec.rb +5 -6
  190. data/spec/models/blacklight/document/cache_key_spec.rb +9 -2
  191. data/spec/models/blacklight/document/dublin_core_spec.rb +16 -19
  192. data/spec/models/blacklight/document/email_spec.rb +9 -9
  193. data/spec/models/blacklight/document/sms_spec.rb +9 -9
  194. data/spec/models/blacklight/document_spec.rb +9 -8
  195. data/spec/models/blacklight/facet_paginator_spec.rb +40 -30
  196. data/spec/models/blacklight/icon_spec.rb +12 -2
  197. data/spec/models/blacklight/search_builder_spec.rb +12 -3
  198. data/spec/models/blacklight/solr/document_spec.rb +216 -219
  199. data/spec/models/blacklight/solr/facet_paginator_spec.rb +6 -4
  200. data/spec/models/blacklight/solr/repository_spec.rb +37 -34
  201. data/spec/models/blacklight/solr/request_spec.rb +17 -18
  202. data/spec/models/blacklight/solr/response/facets_spec.rb +58 -58
  203. data/spec/models/blacklight/solr/response/group_response_spec.rb +16 -22
  204. data/spec/models/blacklight/solr/response/group_spec.rb +18 -25
  205. data/spec/models/blacklight/solr/response_spec.rb +48 -50
  206. data/spec/models/blacklight/solr/search_builder_spec.rb +120 -121
  207. data/spec/models/blacklight/suggest/response_spec.rb +6 -4
  208. data/spec/models/blacklight/suggest_search_spec.rb +9 -16
  209. data/spec/models/blacklight/user_spec.rb +9 -11
  210. data/spec/models/bookmark_spec.rb +6 -5
  211. data/spec/models/record_mailer_spec.rb +22 -20
  212. data/spec/models/search_spec.rb +18 -17
  213. data/spec/models/solr_document_spec.rb +6 -2
  214. data/spec/presenters/blacklight/document_presenter_spec.rb +86 -0
  215. data/spec/presenters/blacklight/index_presenter_spec.rb +186 -0
  216. data/spec/presenters/blacklight/json_presenter_spec.rb +59 -0
  217. data/spec/presenters/blacklight/link_alternate_presenter_spec.rb +3 -0
  218. data/spec/presenters/blacklight/search_bar_presenter_spec.rb +7 -0
  219. data/spec/presenters/{show_presenter_spec.rb → blacklight/show_presenter_spec.rb} +138 -91
  220. data/spec/presenters/pipeline_spec.rb +15 -8
  221. data/spec/presenters/thumbnail_presenter_spec.rb +5 -2
  222. data/spec/routing/catalog_routing_spec.rb +12 -14
  223. data/spec/services/blacklight/search_service_spec.rb +112 -70
  224. data/spec/spec_helper.rb +6 -2
  225. data/spec/support/features.rb +1 -1
  226. data/spec/support/features/session_helpers.rb +4 -4
  227. data/spec/test_app_templates/lib/generators/test_app_generator.rb +12 -13
  228. data/spec/views/catalog/_constraints.html.erb_spec.rb +2 -3
  229. data/spec/views/catalog/_constraints_element.html.erb_spec.rb +9 -5
  230. data/spec/views/catalog/_document.html.erb_spec.rb +4 -4
  231. data/spec/views/catalog/_document_list.html.erb_spec.rb +1 -0
  232. data/spec/views/catalog/_facet_index_navigation.html.erb_spec.rb +4 -4
  233. data/spec/views/catalog/_facet_layout.html.erb_spec.rb +3 -3
  234. data/spec/views/catalog/_facets.html.erb_spec.rb +8 -10
  235. data/spec/views/catalog/_index.html.erb_spec.rb +13 -14
  236. data/spec/views/catalog/_index_header.html.erb_spec.rb +5 -8
  237. data/spec/views/catalog/_paginate_compact.html.erb_spec.rb +3 -3
  238. data/spec/views/catalog/_show.html.erb_spec.rb +12 -13
  239. data/spec/views/catalog/_show_sidebar.erb_spec.rb +4 -7
  240. data/spec/views/catalog/_show_tools.html.erb_spec.rb +2 -2
  241. data/spec/views/catalog/_sort_and_per_page.html.erb_spec.rb +0 -1
  242. data/spec/views/catalog/_sort_widget.html.erb_spec.rb +3 -1
  243. data/spec/views/catalog/_thumbnail.html.erb_spec.rb +6 -8
  244. data/spec/views/catalog/_view_type_group.html.erb_spec.rb +7 -9
  245. data/spec/views/catalog/email_success.html.erb_spec.rb +0 -1
  246. data/spec/views/catalog/facet.html.erb_spec.rb +3 -2
  247. data/spec/views/catalog/facet.json.jbuilder_spec.rb +3 -2
  248. data/spec/views/catalog/index.atom.builder_spec.rb +9 -4
  249. data/spec/views/catalog/index.html.erb_spec.rb +2 -1
  250. data/spec/views/catalog/index.json.jbuilder_spec.rb +84 -36
  251. data/spec/views/catalog/show.html.erb_spec.rb +6 -6
  252. data/spec/views/catalog/show.json.jbuilder_spec.rb +40 -0
  253. data/spec/views/catalog/sms_success.html.erb_spec.rb +0 -1
  254. data/spec/views/shared/_user_util_links.html.erb_spec.rb +1 -4
  255. data/tasks/blacklight.rake +6 -4
  256. data/template.demo.rb +2 -0
  257. metadata +50 -24
  258. data/app/javascript/blacklight/autofocus.js +0 -20
  259. data/spec/presenters/index_presenter_spec.rb +0 -150
@@ -6,6 +6,14 @@ en:
6
6
  previous: '« Previous'
7
7
  next: 'Next »'
8
8
  truncate: '…'
9
+ aria:
10
+ container_label: 'pagination links'
11
+ current_page: 'Current Page, Page %{page}'
12
+ go_to_page: 'Go to page %{page}'
13
+ go_to_previous_page: 'Go to previous page'
14
+ go_to_next_page: 'Go to next page'
15
+ go_to_first_page: 'Go to first page'
16
+ go_to_last_page: 'Go to last page'
9
17
 
10
18
  pagination_compact:
11
19
  previous: '« Previous'
@@ -127,7 +135,8 @@ en:
127
135
  title: '%{constraints} - %{application_name} Search Results'
128
136
  constraint: '%{label}: %{value}'
129
137
  many_constraint_values: '%{values} selected'
130
- search_results_header: 'Search Constraints'
138
+ header: 'Search'
139
+ search_constraints_header: 'Search Constraints'
131
140
  search_results: 'Search Results'
132
141
  errors:
133
142
  request_error: "Sorry, I don't understand your search."
@@ -173,6 +182,7 @@ en:
173
182
  selected:
174
183
  remove: '[remove]'
175
184
  missing: "[Missing]"
185
+ all: All
176
186
  group:
177
187
  more: 'more »'
178
188
  filters:
@@ -6,12 +6,21 @@ es:
6
6
  previous: '« Anterior'
7
7
  next: 'Siguiente »'
8
8
  truncate: '…'
9
+ aria:
10
+ container_label: enlaces de paginación
11
+ current_page: Página actual, página %{page}
12
+ go_to_first_page: Ir a la primera pagina
13
+ go_to_last_page: Ir a la última página
14
+ go_to_next_page: Ir a la página siguiente
15
+ go_to_page: Ir a la página %{page}
16
+ go_to_previous_page: Regresar a la pagina anterior
9
17
 
10
18
  pagination_compact:
11
19
  previous: '« Anterior'
12
20
  next: 'Siguiente »'
13
21
 
14
22
  blacklight:
23
+ application_name: 'Blacklight'
15
24
  header_links:
16
25
  login: 'Entrar'
17
26
  logout: 'Salir'
@@ -22,6 +31,9 @@ es:
22
31
  and: 'y'
23
32
  or: 'o'
24
33
 
34
+ modal:
35
+ close: cerca
36
+
25
37
  bookmarks:
26
38
  title: 'Favoritos'
27
39
  page_title: 'Favoritos - %{application_name}'
@@ -123,7 +135,8 @@ es:
123
135
  title: '%{constraints} - %{application_name} Resultados de la búsqueda'
124
136
  constraint: '%{label}: %{value}'
125
137
  many_constraint_values: '%{values} seleccionado'
126
- search_results_header: 'Buscar'
138
+ header: 'Buscar'
139
+ search_constraints_header: 'Buscar'
127
140
  search_results: 'Resultados de la búsqueda'
128
141
  errors:
129
142
  request_error: "Lo siento, no entiendo esta búsqueda"
@@ -161,6 +174,7 @@ es:
161
174
  facets:
162
175
  title: 'Limite su búsqueda'
163
176
  clear: 'Borrar'
177
+ all: 'Todos'
164
178
  sort:
165
179
  count: 'Ordenación numérica'
166
180
  index: 'Ordenación A-Z'
@@ -6,12 +6,21 @@ fr:
6
6
  previous: '« Précédente'
7
7
  next: 'Suivante »'
8
8
  truncate: '…'
9
+ aria:
10
+ container_label: liens de pagination
11
+ current_page: Page actuelle, Page %{page}
12
+ go_to_first_page: Aller à la première page
13
+ go_to_last_page: Aller à la dernière page
14
+ go_to_next_page: Aller à la page suivante
15
+ go_to_page: Aller à la page %{page}
16
+ go_to_previous_page: Aller à la page précédente
9
17
 
10
18
  pagination_compact:
11
19
  previous: '« Précédente'
12
20
  next: 'Suivante »'
13
21
 
14
22
  blacklight:
23
+ application_name: 'Blacklight'
15
24
  header_links:
16
25
  login: 'Mon compte'
17
26
  logout: 'Me déconnecter'
@@ -22,6 +31,9 @@ fr:
22
31
  and: 'et'
23
32
  or: 'ou'
24
33
 
34
+ modal:
35
+ close: Fermer
36
+
25
37
  bookmarks:
26
38
  title: 'Favoris'
27
39
  page_title: 'Favoris - %{application_name}'
@@ -53,7 +65,7 @@ fr:
53
65
  success: 'Votre historique de recherche a bien été effacé.'
54
66
  failure: 'Un problème est survenu lors de la suppression.'
55
67
  title: 'Historique de recherche'
56
- title: 'Historique de recherche - %{application_name}'
68
+ page_title: 'Historique de recherche - %{application_name}'
57
69
  no_history: 'Il n''y a aucun historique en cours.'
58
70
  recent: 'Dernières recherches'
59
71
  forget: 'Supprimer'
@@ -62,8 +74,6 @@ fr:
62
74
  tools:
63
75
  title: 'Outils'
64
76
  citation: 'Citer'
65
- endnote: 'Exporter vers EndNote ou Zotero'
66
- refworks: 'Exporter vers Refworks'
67
77
  email: 'Envoyer'
68
78
  sms: 'SMS'
69
79
  clear: 'Effacer'
@@ -128,7 +138,8 @@ fr:
128
138
  title: '%{constraints} - %{application_name} Résultats de recherche'
129
139
  constraint: '%{label}: %{value}'
130
140
  many_constraint_values: '%{values} sélectionné'
131
- search_results_header: 'Recherche'
141
+ header: 'Recherche'
142
+ search_constraints_header: 'Recherche'
132
143
  search_results: 'Résultats de recherche'
133
144
  errors:
134
145
  request_error: "Pardon, nous n'avons pas compris votre recherche."
@@ -145,7 +156,7 @@ fr:
145
156
  search_field:
146
157
  label: 'dans'
147
158
  title: 'Options de recherche'
148
- post_label: 'pour'
159
+ post_label: 'pour'
149
160
  search:
150
161
  label: 'Rechercher'
151
162
  placeholder: 'Rechercher'
@@ -163,12 +174,10 @@ fr:
163
174
  other: '<b>%{current}</b> sur <b>%{total}</b>'
164
175
  documents:
165
176
  counter: '%{counter}. '
166
- folder:
167
- select: 'Panier'
168
- unselect: 'Panier'
169
177
  facets:
170
178
  title: 'Limiter votre recherche'
171
179
  clear: 'Effacer'
180
+ all: 'Tout'
172
181
  sort:
173
182
  count: 'Du + au - fréquent'
174
183
  index: 'Tri de A à Z'
@@ -128,7 +128,8 @@ hu:
128
128
  title: '%{constraints} - %{application_name} Keresés eredményei'
129
129
  constraint: '%{label}: %{value}'
130
130
  many_constraint_values: '%{values} kiválasztva'
131
- search_results_header: 'Keresés feltételei'
131
+ header: 'Keresés'
132
+ search_constraints_header: 'Keresés feltételei'
132
133
  search_results: 'Keresés eredményei'
133
134
  errors:
134
135
  request_error: "Elnézést, nem tudom értelmezni a keresést."
@@ -166,6 +167,7 @@ hu:
166
167
  facets:
167
168
  title: 'Szűrje tovább a keresését'
168
169
  clear: 'Szűrőfeltétel eltávolítása'
170
+ all: 'Minden'
169
171
  sort:
170
172
  count: 'Numerikus rendezés'
171
173
  index: 'A-Z rendezés'
@@ -6,12 +6,21 @@ it:
6
6
  previous: '&laquo; Pagina precedente'
7
7
  next: 'Pagina successiva &raquo;'
8
8
  truncate: '…'
9
+ aria:
10
+ container_label: collegamenti di paginazione
11
+ current_page: Pagina corrente, Pagina %{page}
12
+ go_to_first_page: Vai alla prima pagina
13
+ go_to_last_page: Vai all'ultima pagina
14
+ go_to_next_page: Vai alla pagina successiva
15
+ go_to_page: Vai alla pagina %{page}
16
+ go_to_previous_page: Vai alla pagina precedente
9
17
 
10
18
  pagination_compact:
11
19
  previous: '&laquo; Pagina precedente'
12
20
  next: 'Pagina successiva &raquo;'
13
21
 
14
22
  blacklight:
23
+ application_name: 'Blacklight'
15
24
  header_links:
16
25
  login: 'Login'
17
26
  logout: 'Log out'
@@ -22,6 +31,9 @@ it:
22
31
  and: 'e'
23
32
  or: 'o'
24
33
 
34
+ modal:
35
+ close: Vicino
36
+
25
37
  bookmarks:
26
38
  title: 'Preferiti'
27
39
  page_title: 'Preferiti - %{application_name}'
@@ -123,7 +135,8 @@ it:
123
135
  title: '%{constraints} - %{application_name} Risultati della ricerca'
124
136
  constraint: '%{label}: %{value}'
125
137
  many_constraint_values: '%{values} selezionato'
126
- search_results_header: 'Ricerca'
138
+ header: 'Ricerca'
139
+ search_constraints_header: 'Ricerca'
127
140
  search_results: 'Risultati della ricerca'
128
141
  errors:
129
142
  request_error: "La richiesta non è comprensibile."
@@ -161,6 +174,7 @@ it:
161
174
  facets:
162
175
  title: 'Affina la ricerca'
163
176
  clear: 'Cancella'
177
+ all: 'Ogni'
164
178
  sort:
165
179
  count: 'Ordina per numero'
166
180
  index: 'Ordina A-Z'
@@ -168,6 +182,7 @@ it:
168
182
  more_html: 'altri <span class="sr-only">%{field_name}</span> »'
169
183
  selected:
170
184
  remove: '[cancella]'
185
+ missing: [Mancante]
171
186
  group:
172
187
  more: 'altri »'
173
188
  filters:
@@ -128,7 +128,8 @@ nl:
128
128
  title: '%{constraints} - %{application_name} Zoek resultaten'
129
129
  constraint: '%{label}: %{value}'
130
130
  many_constraint_values: '%{values} geselecteerd'
131
- search_results_header: 'Zoek filters'
131
+ header: 'Zoek'
132
+ search_constraints_header: 'Zoek filters'
132
133
  search_results: 'Zoek resultaten'
133
134
  errors:
134
135
  request_error: "Sorry, ik kon uw zoekopdracht niet begrijpen."
@@ -166,6 +167,7 @@ nl:
166
167
  facets:
167
168
  title: 'Verfijn uw zoekopdracht'
168
169
  clear: 'Filters legen'
170
+ all: 'Al'
169
171
  sort:
170
172
  count: 'Numeriek sorteren'
171
173
  index: 'A-Z Sorteren'
@@ -6,12 +6,22 @@ pt-BR:
6
6
  previous: '&laquo; anterior'
7
7
  next: 'próximo &raquo;'
8
8
  truncate: '…'
9
+ aria:
10
+ container_label: links de paginação
11
+ current_page: Página atual, Página %{page}
12
+ go_to_first_page: Ir para a primeira página
13
+ go_to_last_page: Ir para a última página
14
+ go_to_next_page: Ir para a próxima página
15
+ go_to_page: Ir para a página %{page}
16
+ go_to_previous_page: Ir para a página anterior
17
+
9
18
 
10
19
  pagination_compact:
11
20
  previous: '&laquo; ant'
12
21
  next: 'próx &raquo;'
13
22
 
14
23
  blacklight:
24
+ application_name: 'Blacklight'
15
25
  header_links:
16
26
  login: 'Acessar'
17
27
  logout: 'Sair'
@@ -22,6 +32,9 @@ pt-BR:
22
32
  and: 'e'
23
33
  or: 'ou'
24
34
 
35
+ modal:
36
+ close: Fechar
37
+
25
38
  bookmarks:
26
39
  title: 'Favoritos'
27
40
  page_title: 'Favoritos - %{application_name}'
@@ -123,7 +136,8 @@ pt-BR:
123
136
  title: '%{constraints} - %{application_name} Resultado da Busca'
124
137
  constraint: '%{label}: %{value}'
125
138
  many_constraint_values: '%{values} selecionado'
126
- search_results_header: 'Busca'
139
+ header: 'Busca'
140
+ search_constraints_header: 'Busca'
127
141
  search_results: 'Resultados da Busca'
128
142
  errors:
129
143
  request_error: "Desculpe, Eu não compreendi sua busca."
@@ -161,6 +175,7 @@ pt-BR:
161
175
  facets:
162
176
  title: 'Filtre sua busca'
163
177
  clear: 'Limpar'
178
+ all: 'Todo'
164
179
  sort:
165
180
  count: 'Ordenar por Número'
166
181
  index: 'Ordem Alfabética A-Z'
@@ -168,7 +183,9 @@ pt-BR:
168
183
  more_html: 'mais <span class="sr-only">%{field_name}</span> »'
169
184
  selected:
170
185
  remove: '[remover]'
171
- missing: '[Faltando]'
186
+ missing: [Ausência]
187
+ group:
188
+ more: 'mais »'
172
189
  filters:
173
190
  title: 'Sua busca por:'
174
191
  label: '%{label}:'
@@ -126,7 +126,8 @@ sq:
126
126
  title: '%{constraints} - %{application_name} Rezultatet e kërkimit'
127
127
  constraint: '%{label}: %{value}'
128
128
  many_constraint_values: '%{values} zgjedhura'
129
- search_results_header: 'Kufizimet e kërkimit'
129
+ header: 'Kërkimit'
130
+ search_constraints_header: 'Kufizimet e kërkimit'
130
131
  search_results: 'Rezultatet e kërkimit'
131
132
  errors:
132
133
  request_error: "Na vjen keq, unë nuk e kuptoj kërkimin tuaj."
@@ -164,6 +165,7 @@ sq:
164
165
  facets:
165
166
  title: 'Kufizo këkimin'
166
167
  clear: 'Fshij filterin'
168
+ all: 'Gjithë'
167
169
  sort:
168
170
  count: 'Renditja numerike'
169
171
  index: 'A-Z Renditja'
@@ -128,7 +128,8 @@ zh:
128
128
  title: '%{constraints} - %{application_name} 搜索结果'
129
129
  constraint: '%{label}: %{value}'
130
130
  many_constraint_values: '%{values} 已选'
131
- search_results_header: '搜索条件'
131
+ header: ''
132
+ search_constraints_header: '搜索条件'
132
133
  search_results: '搜索结果'
133
134
  errors:
134
135
  request_error: "抱歉,我不明白你要找什么。"
@@ -166,6 +167,7 @@ zh:
166
167
  facets:
167
168
  title: '限定搜索'
168
169
  clear: '清除搜索条件'
170
+ all: '皆'
169
171
  sort:
170
172
  count: '按数量排序'
171
173
  index: '按字母排序'
@@ -2,5 +2,4 @@
2
2
  Blacklight::Engine.routes.draw do
3
3
  get "search_history", to: "search_history#index", as: "search_history"
4
4
  delete "search_history/clear", to: "search_history#clear", as: "clear_search_history"
5
- post "/catalog/:id/track", to: 'catalog#track', as: 'track_search_context'
6
5
  end
@@ -3,6 +3,7 @@ require 'kaminari'
3
3
  require 'deprecation'
4
4
  require 'blacklight/open_struct_with_hash_access'
5
5
  require 'blacklight/nested_open_struct_with_hash_access'
6
+ require 'jbuilder'
6
7
 
7
8
  module Blacklight
8
9
  autoload :AbstractRepository, 'blacklight/abstract_repository'
@@ -46,6 +47,7 @@ module Blacklight
46
47
  connection_config[:adapter].constantize
47
48
  else
48
49
  raise "The value for :adapter was not found in the blacklight.yml config" unless connection_config.key? :adapter
50
+
49
51
  Blacklight.const_get("#{connection_config.fetch(:adapter)}/Repository".classify)
50
52
  end
51
53
  end
@@ -59,6 +61,7 @@ module Blacklight
59
61
  def self.connection_config
60
62
  Blacklight::RuntimeRegistry.connection_config ||= begin
61
63
  raise "The #{::Rails.env} environment settings were not found in the blacklight.yml config" unless blacklight_yml[::Rails.env]
64
+
62
65
  blacklight_yml[::Rails.env].symbolize_keys
63
66
  end
64
67
  end
@@ -32,6 +32,18 @@ module Blacklight
32
32
  raise NotImplementedError
33
33
  end
34
34
 
35
+ # Query the fields that exist from the index
36
+ # @return [Hash]
37
+ def reflect_fields
38
+ raise NotImplementedError
39
+ end
40
+
41
+ ##
42
+ # Is the repository in a working state?
43
+ def ping
44
+ raise NotImplementedError
45
+ end
46
+
35
47
  private
36
48
 
37
49
  def connection_config
@@ -42,6 +42,7 @@ module Blacklight
42
42
  document_unique_id_param: :ids,
43
43
  # Default values of parameters to send when requesting a single document
44
44
  default_document_solr_params: {},
45
+ fetch_many_document_params: {},
45
46
  document_pagination_params: {},
46
47
  ##
47
48
  # == Response models
@@ -81,6 +82,7 @@ module Blacklight
81
82
  show: ViewConfig::Show.new(
82
83
  # document presenter class used by helpers and views
83
84
  document_presenter_class: nil,
85
+ display_type_field: 'format',
84
86
  # Default route parameters for 'show' requests.
85
87
  # Set this to a hash with additional arguments to merge into the route,
86
88
  # or set `controller: :current` to route to the current controller.
@@ -122,7 +124,9 @@ module Blacklight
122
124
  default_more_limit: 20,
123
125
  # proc for determining whether the session is a crawler/bot
124
126
  # ex.: crawler_detector: lambda { |req| req.env['HTTP_USER_AGENT'] =~ /bot/ }
125
- crawler_detector: nil
127
+ crawler_detector: nil,
128
+ autocomplete_suggester: 'mySuggester',
129
+ raw_endpoint: OpenStructWithHashAccess.new(enabled: false)
126
130
  }
127
131
  end
128
132
  # rubocop:enable Metrics/MethodLength
@@ -335,16 +339,30 @@ module Blacklight
335
339
 
336
340
  ##
337
341
  # Add a section of config that only applies to documents with a matching display type
338
- def for_display_type display_type, &block
342
+ def for_display_type display_type, &_block
339
343
  self.fields_for_type ||= {}
340
- fields_for_type[display_type] ||= self.class.new(&block)
344
+
345
+ (fields_for_type[display_type] ||= self.class.new).tap do |conf|
346
+ yield(conf) if block_given?
347
+ end
341
348
  end
342
349
 
350
+ ##
351
+ # Return a list of fields for the index display that should be used for the
352
+ # provided document. This respects any configuration made using for_display_type
343
353
  def index_fields_for(document)
344
354
  display_type = document.first(index.display_type_field)
345
355
  for_display_type(display_type).index_fields.merge(index_fields)
346
356
  end
347
357
 
358
+ ##
359
+ # Return a list of fields for the show page that should be used for the
360
+ # provided document. This respects any configuration made using for_display_type
361
+ def show_fields_for(document)
362
+ display_type = document.first(show.display_type_field)
363
+ for_display_type(display_type).show_fields.merge(show_fields)
364
+ end
365
+
348
366
  private
349
367
 
350
368
  def add_action(config_hash, name, opts)