blacklight 4.9.0 → 5.0.0.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -1
  3. data/.travis.yml +22 -12
  4. data/Gemfile +3 -40
  5. data/LICENSE +1 -2
  6. data/README.md +1 -2
  7. data/Rakefile +0 -4
  8. data/VERSION +1 -1
  9. data/app/assets/images/blacklight/logo.png +0 -0
  10. data/app/assets/javascripts/blacklight/ajax_modal.js +190 -0
  11. data/app/assets/javascripts/blacklight/blacklight.js +7 -17
  12. data/app/assets/javascripts/blacklight/checkbox_submit.js +1 -1
  13. data/app/assets/stylesheets/blacklight/{_blacklight_base.scss → _blacklight_base.css.scss} +0 -21
  14. data/app/assets/stylesheets/blacklight/_bookmark.css.scss +4 -0
  15. data/app/assets/stylesheets/blacklight/_catalog.css.scss +192 -0
  16. data/app/assets/stylesheets/blacklight/_facets.css.scss +141 -0
  17. data/app/assets/stylesheets/blacklight/{_group.scss → _group.css.scss} +1 -1
  18. data/app/assets/stylesheets/blacklight/_header.css.scss +44 -0
  19. data/app/assets/stylesheets/blacklight/_layout.css.scss +5 -0
  20. data/app/assets/stylesheets/blacklight/{_modal.scss → _modal.css.scss} +7 -7
  21. data/app/assets/stylesheets/blacklight/_search_history.css.scss +20 -0
  22. data/app/assets/stylesheets/blacklight/{blacklight.scss → blacklight.css.scss} +0 -0
  23. data/app/assets/stylesheets/blacklight/blacklight_defaults.css.scss +14 -0
  24. data/app/controllers/bookmarks_controller.rb +0 -4
  25. data/app/controllers/feedback_controller.rb +0 -4
  26. data/app/helpers/blacklight/blacklight_helper_behavior.rb +45 -155
  27. data/app/helpers/blacklight/catalog_helper_behavior.rb +8 -41
  28. data/app/helpers/blacklight/facets_helper_behavior.rb +20 -43
  29. data/app/helpers/blacklight/hash_as_hidden_fields_helper_behavior.rb +2 -9
  30. data/app/helpers/blacklight/render_constraints_helper_behavior.rb +9 -14
  31. data/app/helpers/blacklight/search_history_constraints_helper_behavior.rb +6 -6
  32. data/app/views/_flash_msg.html.erb +9 -2
  33. data/app/views/_user_util_links.html.erb +29 -15
  34. data/app/views/bookmarks/_tools.html.erb +4 -7
  35. data/app/views/bookmarks/index.html.erb +3 -2
  36. data/app/views/catalog/_citation.html.erb +1 -1
  37. data/app/views/catalog/_constraints.html.erb +1 -1
  38. data/app/views/catalog/_constraints_element.html.erb +12 -8
  39. data/app/views/catalog/_did_you_mean.html.erb +2 -2
  40. data/app/views/catalog/_document_header.html.erb +3 -3
  41. data/app/views/catalog/_email_form.html.erb +10 -10
  42. data/app/views/catalog/_facet_layout.html.erb +11 -3
  43. data/app/views/catalog/_facet_limit.html.erb +7 -7
  44. data/app/views/catalog/_facet_pagination.html.erb +8 -7
  45. data/app/views/catalog/_facet_pivot.html.erb +3 -1
  46. data/app/views/catalog/_facets.html.erb +12 -9
  47. data/app/views/catalog/_paginate_compact.html.erb +1 -7
  48. data/app/views/catalog/_per_page_widget.html.erb +5 -8
  49. data/app/views/catalog/_previous_next_doc.html.erb +11 -9
  50. data/app/views/catalog/_refworks_form.html.erb +3 -4
  51. data/app/views/catalog/_results_pagination.html.erb +1 -1
  52. data/app/views/catalog/_search_form.html.erb +16 -14
  53. data/app/views/catalog/_show_sidebar.html.erb +7 -9
  54. data/app/views/catalog/_show_tools.html.erb +13 -7
  55. data/app/views/catalog/_sms_form.html.erb +8 -8
  56. data/app/views/catalog/_sort_and_per_page.html.erb +4 -6
  57. data/app/views/catalog/_sort_widget.html.erb +5 -6
  58. data/app/views/catalog/email.html.erb +1 -1
  59. data/app/views/catalog/facet.html.erb +2 -8
  60. data/app/views/catalog/index.html.erb +11 -6
  61. data/app/views/catalog/show.html.erb +5 -5
  62. data/app/views/catalog/sms.html.erb +1 -1
  63. data/app/views/catalog/sms_sent.html.erb +1 -1
  64. data/app/views/feedback/complete.html.erb +2 -2
  65. data/app/views/feedback/show.html.erb +1 -1
  66. data/app/views/kaminari/blacklight/_paginator.html.erb +1 -1
  67. data/app/views/kaminari/blacklight_compact/_paginator.html.erb +25 -5
  68. data/app/views/layouts/blacklight.html.erb +23 -23
  69. data/app/views/saved_searches/index.html.erb +2 -2
  70. data/app/views/search_history/index.html.erb +5 -7
  71. data/app/views/shared/_header_navbar.html.erb +23 -23
  72. data/blacklight.gemspec +10 -13
  73. data/config/locales/blacklight.en.yml +1 -12
  74. data/config/locales/blacklight.fr.yml +1 -12
  75. data/gemfiles/rails3.gemfile +21 -0
  76. data/gemfiles/rails4.gemfile +20 -0
  77. data/lib/blacklight.rb +0 -8
  78. data/lib/blacklight/base.rb +0 -2
  79. data/lib/blacklight/catalog.rb +6 -32
  80. data/lib/blacklight/catalog/search_context.rb +8 -48
  81. data/lib/blacklight/configurable.rb +2 -1
  82. data/lib/blacklight/configuration.rb +1 -2
  83. data/lib/blacklight/configuration/facet_field.rb +0 -2
  84. data/lib/blacklight/engine.rb +3 -3
  85. data/lib/blacklight/legacy_controller_methods.rb +1 -64
  86. data/lib/blacklight/rails/routes.rb +17 -0
  87. data/lib/blacklight/routes.rb +46 -40
  88. data/lib/blacklight/solr.rb +1 -0
  89. data/lib/blacklight/solr/document.rb +21 -42
  90. data/lib/blacklight/solr/facet_paginator.rb +30 -54
  91. data/lib/blacklight/solr/request.rb +45 -0
  92. data/lib/blacklight/solr_helper.rb +16 -53
  93. data/lib/blacklight/solr_response.rb +0 -6
  94. data/lib/blacklight/user.rb +2 -7
  95. data/lib/blacklight/utils.rb +1 -9
  96. data/lib/generators/blacklight/assets_generator.rb +0 -14
  97. data/lib/generators/blacklight/blacklight_generator.rb +17 -14
  98. data/lib/generators/blacklight/templates/blacklight.css.scss +3 -0
  99. data/lib/generators/blacklight/templates/catalog_controller.rb +4 -1
  100. data/lib/railties/blacklight.rake +3 -1
  101. data/solr/sample_solr_documents.yml +641 -0
  102. data/spec/controllers/application_controller_spec.rb +5 -21
  103. data/spec/controllers/bookmarks_controller_spec.rb +11 -11
  104. data/spec/controllers/catalog_controller_spec.rb +122 -119
  105. data/spec/controllers/search_history_controller_spec.rb +8 -8
  106. data/spec/features/alternate_controller_spec.rb +5 -5
  107. data/spec/features/facets_spec.rb +9 -0
  108. data/spec/features/record_view_spec.rb +1 -1
  109. data/spec/features/search_filters_spec.rb +97 -41
  110. data/spec/features/search_results_spec.rb +14 -17
  111. data/spec/features/search_sort_spec.rb +1 -1
  112. data/spec/helpers/blacklight_helper_spec.rb +170 -285
  113. data/spec/helpers/catalog_helper_spec.rb +57 -96
  114. data/spec/helpers/facets_helper_spec.rb +130 -152
  115. data/spec/helpers/hash_as_hidden_fields_spec.rb +9 -15
  116. data/spec/helpers/render_constraints_helper_spec.rb +5 -5
  117. data/spec/helpers/search_history_constraints_helper_spec.rb +21 -21
  118. data/spec/lib/blacklight/routes_spec.rb +25 -0
  119. data/spec/lib/blacklight/solr/request_spec.rb +37 -0
  120. data/spec/lib/blacklight/solr_response/group_response_spec.rb +2 -2
  121. data/spec/lib/blacklight_configurable_spec.rb +16 -16
  122. data/spec/lib/blacklight_configuration_spec.rb +132 -132
  123. data/spec/lib/blacklight_email_spec.rb +4 -4
  124. data/spec/lib/blacklight_sms_spec.rb +4 -4
  125. data/spec/lib/blacklight_solr_document_dublin_core_spec.rb +6 -6
  126. data/spec/lib/blacklight_solr_document_more_like_this_spec.rb +4 -4
  127. data/spec/lib/blacklight_solr_document_spec.rb +36 -36
  128. data/spec/lib/blacklight_solr_response_spec.rb +43 -48
  129. data/spec/lib/blacklight_spec.rb +6 -14
  130. data/spec/lib/blacklight_user_spec.rb +5 -9
  131. data/spec/lib/facet_paginator_spec.rb +59 -51
  132. data/spec/lib/search_fields_spec.rb +13 -13
  133. data/spec/lib/solr_helper_spec.rb +258 -304
  134. data/spec/lib/tasks/blacklight_task_spec.rb +1 -1
  135. data/spec/lib/utils_spec.rb +16 -46
  136. data/spec/models/bookmark_spec.rb +6 -7
  137. data/spec/models/record_mailer_spec.rb +16 -16
  138. data/spec/models/search_spec.rb +8 -8
  139. data/spec/models/solr_document_spec.rb +6 -77
  140. data/spec/routing/catalog_routing_spec.rb +16 -10
  141. data/spec/spec_helper.rb +7 -7
  142. data/spec/support/assert_difference.rb +2 -2
  143. data/spec/support/features.rb +0 -11
  144. data/spec/support/features/session_helpers.rb +3 -3
  145. data/spec/support/include_text.rb +2 -2
  146. data/spec/test_app_templates/Gemfile.extra +10 -2
  147. data/spec/test_app_templates/lib/generators/test_app_generator.rb +12 -18
  148. data/spec/views/catalog/_constraints_element.html.erb_spec.rb +13 -13
  149. data/spec/views/catalog/_document.html.erb_spec.rb +1 -1
  150. data/spec/views/catalog/_document_list.html.erb_spec.rb +1 -1
  151. data/spec/views/catalog/_facets.html.erb_spec.rb +13 -14
  152. data/spec/views/catalog/_index_default.erb_spec.rb +21 -21
  153. data/spec/views/catalog/_search_header.erb_spec.rb +1 -1
  154. data/spec/views/catalog/_show_default.erb_spec.rb +21 -21
  155. data/spec/views/catalog/_show_sidebar.erb_spec.rb +7 -7
  156. data/spec/views/catalog/_thumbnail_default.erb_spec.rb +3 -3
  157. data/spec/views/catalog/index.atom.builder_spec.rb +29 -29
  158. data/spec/views/catalog/index.html.erb_spec.rb +6 -7
  159. data/tasks/blacklight.rake +8 -2
  160. metadata +84 -180
  161. data/app/assets/javascripts/blacklight/css_dropdowns.js +0 -10
  162. data/app/assets/javascripts/blacklight/facet_expand_contract.js +0 -41
  163. data/app/assets/javascripts/blacklight/lightbox_dialog.js +0 -70
  164. data/app/assets/javascripts/blacklight/select_submit.js +0 -27
  165. data/app/assets/javascripts/blacklight/zebra_stripe.js +0 -13
  166. data/app/assets/javascripts/improved-modal/bootstrap-modal.js +0 -355
  167. data/app/assets/javascripts/improved-modal/bootstrap-modalmanager.js +0 -370
  168. data/app/assets/stylesheets/blacklight/_bookmark.scss +0 -33
  169. data/app/assets/stylesheets/blacklight/_catalog.scss +0 -255
  170. data/app/assets/stylesheets/blacklight/_dropdown.scss +0 -57
  171. data/app/assets/stylesheets/blacklight/_facets.scss +0 -197
  172. data/app/assets/stylesheets/blacklight/_footer.scss +0 -0
  173. data/app/assets/stylesheets/blacklight/_header.scss +0 -53
  174. data/app/assets/stylesheets/blacklight/_layout.scss +0 -10
  175. data/app/assets/stylesheets/blacklight/_mixins.scss +0 -0
  176. data/app/assets/stylesheets/blacklight/_print.scss +0 -0
  177. data/app/assets/stylesheets/blacklight/_responsive.scss +0 -3
  178. data/app/assets/stylesheets/blacklight/_search_history.scss +0 -42
  179. data/app/assets/stylesheets/blacklight/blacklight_defaults.scss +0 -49
  180. data/app/assets/stylesheets/blacklight/responsive_partials/_catalog.scss +0 -5
  181. data/app/assets/stylesheets/blacklight/responsive_partials/_facets.scss +0 -37
  182. data/app/assets/stylesheets/blacklight/responsive_partials/_header.scss +0 -30
  183. data/app/assets/stylesheets/improved-modal/bootstrap-modal.css +0 -217
  184. data/app/helpers/blacklight/html_head_helper_behavior.rb +0 -118
  185. data/app/helpers/html_head_helper.rb +0 -3
  186. data/app/views/catalog/_bookmark_form.html.erb +0 -7
  187. data/app/views/catalog/_marc_view.html.erb +0 -32
  188. data/app/views/catalog/librarian_view.html.erb +0 -10
  189. data/config/routes.rb +0 -17
  190. data/doc/Atom-Responses.md +0 -90
  191. data/doc/Blacklight-3.0-Release-Notes-And-Upgrade-Guide.md +0 -107
  192. data/doc/Blacklight-3.2-Release-Notes-and-Upgrade-Guide.md +0 -191
  193. data/doc/Blacklight-3.3-release-notes-and-upgrade-guide.md +0 -37
  194. data/doc/Blacklight-3.4-release-notes-and-upgrade-guide.md +0 -27
  195. data/doc/Blacklight-3.5-release-notes-and-upgrade-guide.md +0 -44
  196. data/doc/Blacklight-3.6-release-notes-and-upgrade-guide.md +0 -25
  197. data/doc/Blacklight-3.7-release-notes-and-upgrade-guide.md +0 -80
  198. data/doc/Blacklight-3.8-release-notes-and-upgrade-guide.md +0 -11
  199. data/doc/Blacklight-4.0-release-notes-and-upgrade-guide.md +0 -135
  200. data/doc/Blacklight-4.1-release-notes-and-upgrade-guide.md +0 -17
  201. data/doc/Blacklight-4.2-release-notes-and-upgrade-guide.md +0 -25
  202. data/doc/Blacklight-4.3-release-notes-and-upgrade-guide.md +0 -21
  203. data/doc/Blacklight-4.4-release-notes-and-upgrade-guide.md +0 -41
  204. data/doc/Blacklight-Add-ons.md +0 -28
  205. data/doc/Blacklight-configuration.md +0 -411
  206. data/doc/Blacklight-on-Heroku.md +0 -135
  207. data/doc/Code4Lib-2014.md +0 -48
  208. data/doc/Community-principles.md +0 -44
  209. data/doc/Configuring-and-Customizing-Blacklight.md +0 -271
  210. data/doc/Configuring-rails-routes.md +0 -13
  211. data/doc/Contributing-to-Blacklight.md +0 -25
  212. data/doc/Examples.md +0 -94
  213. data/doc/Extending-or-Modifying-Blacklight-Search-Behavior.md +0 -141
  214. data/doc/FAQs.md +0 -1
  215. data/doc/Home.md +0 -80
  216. data/doc/How-to-release-a-version.md +0 -29
  217. data/doc/Indexing-your-data-into-solr.md +0 -32
  218. data/doc/Integration-with-Rails-Footnotes.md +0 -20
  219. data/doc/Internationalization.md +0 -32
  220. data/doc/JSON-API.md +0 -17
  221. data/doc/Pagination.md +0 -51
  222. data/doc/Providing-your-own-view-templates.md +0 -109
  223. data/doc/Quickstart.md +0 -115
  224. data/doc/README_SOLR.md +0 -245
  225. data/doc/Release-Notes-And-Upgrade-Guides.md +0 -20
  226. data/doc/Roadmap.md +0 -43
  227. data/doc/Sunspot-for-indexing.md +0 -46
  228. data/doc/Theming.md +0 -64
  229. data/doc/User-Authentication.md +0 -60
  230. data/doc/testing.md +0 -57
  231. data/lib/SolrMarc.jar +0 -0
  232. data/lib/blacklight/mash.rb +0 -19
  233. data/lib/blacklight/solr/document/marc.rb +0 -71
  234. data/lib/blacklight/solr/document/marc_export.rb +0 -590
  235. data/lib/generators/blacklight/marc_generator.rb +0 -66
  236. data/lib/generators/blacklight/templates/blacklight.scss +0 -4
  237. data/lib/generators/blacklight/templates/config/SolrMarc/config-test.properties +0 -37
  238. data/lib/generators/blacklight/templates/config/SolrMarc/config.properties +0 -37
  239. data/lib/generators/blacklight/templates/config/SolrMarc/index.properties +0 -97
  240. data/lib/generators/blacklight/templates/config/SolrMarc/index_scripts/dewey.bsh +0 -47
  241. data/lib/generators/blacklight/templates/config/SolrMarc/index_scripts/format.bsh +0 -126
  242. data/lib/generators/blacklight/templates/config/SolrMarc/translation_maps/README_MAPS +0 -1
  243. data/lib/generators/blacklight/templates/config/SolrMarc/translation_maps/callnumber_map.properties +0 -407
  244. data/lib/generators/blacklight/templates/config/SolrMarc/translation_maps/composition_era_map.properties +0 -56
  245. data/lib/generators/blacklight/templates/config/SolrMarc/translation_maps/country_map.properties +0 -379
  246. data/lib/generators/blacklight/templates/config/SolrMarc/translation_maps/format_map.properties +0 -50
  247. data/lib/generators/blacklight/templates/config/SolrMarc/translation_maps/instrument_map.properties +0 -101
  248. data/lib/generators/blacklight/templates/config/SolrMarc/translation_maps/language_map.properties +0 -490
  249. data/lib/railties/solr_marc.rake +0 -162
  250. data/spec/data/test_data.utf8.mrc +0 -1
  251. data/spec/features/librarian_view_spec.rb +0 -13
  252. data/spec/helpers/html_head_helper_spec.rb +0 -164
  253. data/spec/lib/blacklight_solr_document_marc_spec.rb +0 -89
  254. data/spec/lib/marc_export_spec.rb +0 -746
  255. data/spec/lib/tasks/solr_marc_task_spec.rb +0 -60
  256. data/spec/requests/alternate_controller_spec.rb +0 -16
  257. data/spec/routing/routes_spec.rb +0 -20
  258. data/spec/views/catalog/_constraints.html.erb_spec.rb +0 -33
  259. data/spec/views/catalog/_paginate_compact.html.erb_spec.rb +0 -49
  260. data/test_support/data/test_data.utf8.mrc +0 -1
@@ -45,9 +45,6 @@
45
45
  # end
46
46
 
47
47
  module Blacklight::SolrHelper
48
- extend Deprecation
49
- self.deprecation_horizon = 'Blacklight 5.x'
50
-
51
48
  extend ActiveSupport::Concern
52
49
  include Blacklight::SearchFields
53
50
  include Blacklight::Facet
@@ -125,7 +122,7 @@ module Blacklight::SolrHelper
125
122
  #
126
123
  # Incoming parameter :f is mapped to :fq solr parameter.
127
124
  def solr_search_params(user_params = params || {})
128
- solr_parameters = {}
125
+ solr_parameters = Blacklight::Solr::Request.new
129
126
  solr_search_params_logic.each do |method_name|
130
127
  send(method_name, solr_parameters, user_params)
131
128
  end
@@ -147,14 +144,6 @@ module Blacklight::SolrHelper
147
144
  # copy paging params from BL app over to solr, changing
148
145
  # app level per_page and page to Solr rows and start.
149
146
  def add_paging_to_solr(solr_params, user_params)
150
- # Deprecated behavior was to pass :per_page to RSolr, and we
151
- # generated blacklight_config.default_solr_params with that
152
- # value. Move it over to rows.
153
- if solr_params.has_key?(:per_page)
154
- Deprecation.warn self, "Blacklight::SolrHelper#solr_search_params: magic :per_page key deprecated, use :rows instead. (Check default_solr_params in blacklight config?)"
155
- per_page = solr_params.delete(:per_page)
156
- solr_params[:rows] ||= per_page
157
- end
158
147
 
159
148
  # Now any over-rides from current URL?
160
149
  solr_params[:rows] = user_params[:rows].to_i unless user_params[:rows].blank?
@@ -257,11 +246,9 @@ module Blacklight::SolrHelper
257
246
  if ( user_params[:f])
258
247
  f_request_params = user_params[:f]
259
248
 
260
- solr_parameters[:fq] ||= []
261
-
262
249
  f_request_params.each_pair do |facet_field, value_list|
263
250
  Array(value_list).each do |value|
264
- solr_parameters[:fq] << facet_value_to_fq_string(facet_field, value)
251
+ solr_parameters.append_filter_query facet_value_to_fq_string(facet_field, value)
265
252
  end
266
253
  end
267
254
  end
@@ -281,14 +268,11 @@ module Blacklight::SolrHelper
281
268
  fq = case
282
269
  when (facet_config and facet_config.query)
283
270
  facet_config.query[value][:fq]
284
- when (facet_config and facet_config.date)
285
- # in solr 3.2+, this could be replaced by a !term query
286
- "#{prefix}#{facet_field}:#{RSolr.escape(value)}"
287
- when (value.is_a?(DateTime) or value.is_a?(Date) or value.is_a?(Time))
288
- "#{prefix}#{facet_field}:#{RSolr.escape(value.to_time.utc.strftime("%Y-%m-%dT%H:%M:%SZ"))}"
289
- when (value.is_a?(TrueClass) or value.is_a?(FalseClass) or value == 'true' or value == 'false'),
271
+ when (facet_config and facet_config.date),
272
+ (value.is_a?(TrueClass) or value.is_a?(FalseClass) or value == 'true' or value == 'false'),
290
273
  (value.is_a?(Integer) or (value.to_i.to_s == value if value.respond_to? :to_i)),
291
274
  (value.is_a?(Float) or (value.to_f.to_s == value if value.respond_to? :to_f))
275
+ (value.is_a?(DateTime) or value.is_a?(Date) or value.is_a?(Time))
292
276
  "#{prefix}#{facet_field}:#{value}"
293
277
  when value.is_a?(Range)
294
278
  "#{prefix}#{facet_field}:[#{value.first} TO #{value.last}]"
@@ -296,6 +280,7 @@ module Blacklight::SolrHelper
296
280
  "{!raw f=#{facet_field}#{(" " + local_params.join(" ")) unless local_params.empty?}}#{value}"
297
281
  end
298
282
 
283
+
299
284
  end
300
285
 
301
286
  ##
@@ -310,23 +295,13 @@ module Blacklight::SolrHelper
310
295
  # on end), or single values. At least one of these is used by
311
296
  # Stanford for "faux hieararchial facets".
312
297
  if user_params.has_key?("facet.field") || user_params.has_key?("facets")
313
- solr_parameters[:"facet.field"] ||= []
314
298
  solr_parameters[:"facet.field"].concat( [user_params["facet.field"], user_params["facets"]].flatten.compact ).uniq!
315
299
  end
316
300
 
317
301
 
318
302
  if blacklight_config.add_facet_fields_to_solr_request
319
303
  solr_parameters[:facet] = true
320
- solr_parameters[:'facet.field'] ||= []
321
- solr_parameters[:'facet.field'] += blacklight_config.facet_fields_to_add_to_solr
322
-
323
- if blacklight_config.facet_fields.any? { |k,v| v[:query] }
324
- solr_parameters[:'facet.query'] ||= []
325
- end
326
-
327
- if blacklight_config.facet_fields.any? { |k,v| v[:pivot] }
328
- solr_parameters[:'facet.pivot'] ||= []
329
- end
304
+ solr_parameters.append_facet_fields blacklight_config.facet_fields_to_add_to_solr
330
305
  end
331
306
 
332
307
  blacklight_config.facet_fields.each do |field_name, facet|
@@ -334,9 +309,9 @@ module Blacklight::SolrHelper
334
309
  if blacklight_config.add_facet_fields_to_solr_request
335
310
  case
336
311
  when facet.pivot
337
- solr_parameters[:'facet.pivot'] << with_ex_local_param(facet.ex, facet.pivot.join(","))
312
+ solr_parameters.append_facet_pivot with_ex_local_param(facet.ex, facet.pivot.join(","))
338
313
  when facet.query
339
- solr_parameters[:'facet.query'] += facet.query.map { |k, x| with_ex_local_param(facet.ex, x[:fq]) }
314
+ solr_parameters.append_facet_query facet.query.map { |k, x| with_ex_local_param(facet.ex, x[:fq]) }
340
315
 
341
316
  when facet.ex
342
317
  if idx = solr_parameters[:'facet.field'].index(facet.field)
@@ -368,9 +343,8 @@ module Blacklight::SolrHelper
368
343
  return unless blacklight_config.add_field_configuration_to_solr_request
369
344
  blacklight_config.index_fields.each do |field_name, field|
370
345
  if field.highlight
371
- solr_parameters[:hl] ||= true
372
- solr_parameters[:'hl.fl'] ||= []
373
- solr_parameters[:'hl.fl'] << field.field
346
+ solr_parameters[:hl] = true
347
+ solr_parameters.append_highlight_field field.field
374
348
  end
375
349
  end
376
350
  end
@@ -417,8 +391,7 @@ module Blacklight::SolrHelper
417
391
  path = blacklight_config.solr_path
418
392
 
419
393
  # delete these parameters, otherwise rsolr will pass them through.
420
- key = blacklight_config.http_method == :post ? :data : :params
421
- res = blacklight_solr.send_and_receive(path, {key=>solr_params, method:blacklight_config.http_method})
394
+ res = blacklight_solr.send_and_receive(path, params: solr_params.to_hash)
422
395
 
423
396
  solr_response = Blacklight::SolrResponse.new(force_to_utf8(res), solr_params)
424
397
 
@@ -457,14 +430,12 @@ module Blacklight::SolrHelper
457
430
 
458
431
  # given a field name and array of values, get the matching SOLR documents
459
432
  def get_solr_response_for_field_values(field, values, extra_solr_params = {})
460
- values ||= []
461
- values = [values] unless values.respond_to? :each
433
+ values = Array(values) unless values.respond_to? :each
462
434
 
463
- q = nil
464
- if values.empty?
465
- q = "NOT *:*"
435
+ q = if values.empty?
436
+ "NOT *:*"
466
437
  else
467
- q = "#{field}:(#{ values.to_a.map { |x| solr_param_quote(x)}.join(" OR ")})"
438
+ "#{field}:(#{ values.to_a.map { |x| solr_param_quote(x)}.join(" OR ")})"
468
439
  end
469
440
 
470
441
  solr_params = {
@@ -644,12 +615,4 @@ module Blacklight::SolrHelper
644
615
  blacklight_config.index.group
645
616
  end
646
617
 
647
- def blacklight_solr
648
- @solr ||= RSolr.connect(blacklight_solr_config)
649
- end
650
-
651
- def blacklight_solr_config
652
- Blacklight.solr_config
653
- end
654
-
655
618
  end
@@ -1,5 +1,3 @@
1
- require 'kaminari'
2
-
3
1
  class Blacklight::SolrResponse < HashWithIndifferentAccess
4
2
 
5
3
  require 'blacklight/solr_response/pagination_methods'
@@ -87,10 +85,6 @@ class Blacklight::SolrResponse < HashWithIndifferentAccess
87
85
  def start
88
86
  response[:start].to_s.to_i
89
87
  end
90
-
91
- def empty?
92
- total == 0
93
- end
94
88
 
95
89
  end
96
90
  end
@@ -1,9 +1,6 @@
1
1
  # -*- encoding : utf-8 -*-
2
2
  module Blacklight::User
3
3
 
4
- extend Deprecation
5
- self.deprecation_horizon = 'blacklight 5.0'
6
-
7
4
  # This gives us an is_blacklight_user method that can be included in
8
5
  # the containing applications models.
9
6
  # SEE ALSO: The /lib/blacklight/engine.rb class for how when this
@@ -22,19 +19,18 @@ module Blacklight::User
22
19
  end
23
20
 
24
21
  def has_bookmarks?
25
- Deprecation.warn(Blacklight::User, "User#has_bookmarks? is deprecated; use User#bookmarks.any? instead")
26
22
  bookmarks.any?
27
23
  end
28
24
 
29
25
  def has_searches?
30
- Deprecation.warn(Blacklight::User, "User#has_searchs? is deprecated; use User#searches.any? instead")
31
26
  searches.any?
32
27
  end
33
28
 
34
29
  def bookmarked_document_ids
35
30
  self.bookmarks.pluck(:document_id)
36
31
  end
37
-
32
+
33
+ # see #current_bookmark_for, is easier
38
34
  def document_is_bookmarked?(document_id)
39
35
  bookmarked_document_ids.include? document_id.to_s
40
36
  end
@@ -46,7 +42,6 @@ module Blacklight::User
46
42
  end
47
43
 
48
44
  def documents_to_bookmark=(docs)
49
- Deprecation.warn(Blacklight::User, "User#documents_to_bookmarks= is deprecated and will be removed in Blacklight 5.0")
50
45
  docs.reject { |doc| document_is_bookmarked?(doc[:document_id]) }.each do |doc|
51
46
  self.bookmarks.create(doc)
52
47
  end
@@ -1,7 +1,7 @@
1
1
  require 'ostruct'
2
2
  module Blacklight
3
3
  class OpenStructWithHashAccess < OpenStruct
4
- delegate :keys, :reject!, :select!, :include, :fetch, :to => :to_h
4
+ delegate :keys, :merge, :to => :to_h
5
5
 
6
6
  def []=(key, value)
7
7
  send "#{key}=", value
@@ -14,13 +14,5 @@ module Blacklight
14
14
  def to_h
15
15
  @table
16
16
  end
17
-
18
- def merge other_hash
19
- self.class.new to_h.merge((other_hash if other_hash.is_a? Hash) || other_hash.to_h)
20
- end
21
-
22
- def merge! other_hash
23
- @table.merge!((other_hash if other_hash.is_a? Hash) || other_hash.to_h)
24
- end
25
17
  end
26
18
  end
@@ -1,17 +1,4 @@
1
1
  # -*- encoding : utf-8 -*-
2
- # Copy Blacklight assets to public folder in current app.
3
- # If you want to do this on application startup, you can
4
- # add this next line to your one of your environment files --
5
- # generally you'd only want to do this in 'development', and can
6
- # add it to environments/development.rb:
7
- # require File.join(Blacklight.root, "lib", "generators", "blacklight", "assets_generator.rb")
8
- # Blacklight::Assets.start(["--force", "--quiet"])
9
-
10
-
11
- # Need the requires here so we can call the generator from environment.rb
12
- # as suggested above.
13
- require 'rails/generators'
14
- require 'rails/generators/base'
15
2
  module Blacklight
16
3
  class Assets < Rails::Generators::Base
17
4
  source_root File.expand_path('../templates', __FILE__)
@@ -30,7 +17,6 @@ module Blacklight
30
17
  end
31
18
  end
32
19
 
33
- directory("../../../../app/assets/images/blacklight", "app/assets/images/blacklight")
34
20
  end
35
21
  end
36
22
  end
@@ -6,8 +6,9 @@ class BlacklightGenerator < Rails::Generators::Base
6
6
  source_root File.expand_path('../templates', __FILE__)
7
7
 
8
8
  argument :model_name, :type => :string , :default => "user"
9
- class_option :devise , :type => :boolean, :default => false, :aliases => "-d", :desc => "Use Devise as authentication logic (this is default)."
10
-
9
+ class_option :devise , :type => :boolean, :default => false, :aliases => "-d", :desc => "Use Devise as authentication logic."
10
+ class_option :marc , :type => :boolean, :default => false, :aliases => "-m", :desc => "Generate MARC-based demo ."
11
+
11
12
  desc """
12
13
  This generator makes the following changes to your application:
13
14
  1. Generates blacklight:models
@@ -20,11 +21,6 @@ This generator makes the following changes to your application:
20
21
  Thank you for Installing Blacklight.
21
22
  """
22
23
 
23
- def add_bootstrap_gem
24
- # Don't need a version here, because we specify the version in blacklight.gemspec
25
- gem 'bootstrap-sass'
26
- end
27
-
28
24
  def bundle_install
29
25
  Bundler.with_clean_env do
30
26
  run "bundle install"
@@ -60,21 +56,28 @@ Thank you for Installing Blacklight.
60
56
  end
61
57
  end
62
58
 
63
- # TODO
64
- # def generate_stub_catalog_controller
65
- ## see blacklight:marc generator
66
- ##copy_file "catalog_controller.rb", "app/controllers/catalog_controller.rb"
67
- #end
59
+ # Generate blacklight catalog controller
60
+ def create_blacklight_catalog
61
+ copy_file "catalog_controller.rb", "app/controllers/catalog_controller.rb"
62
+ end
68
63
 
69
64
  def generate_blacklight_marc_demo
70
- generate 'blacklight:marc'
65
+ if options[:marc]
66
+ gem "blacklight_marc"
67
+
68
+ Bundler.with_clean_env do
69
+ run "bundle install"
70
+ end
71
+
72
+ generate 'blacklight_marc:marc'
73
+ end
71
74
  end
72
75
 
73
76
  def inject_blacklight_routes
74
77
  # These will end up in routes.rb file in reverse order
75
78
  # we add em, since each is added at the top of file.
76
79
  # we want "root" to be FIRST for optimal url generation.
77
- route('Blacklight.add_routes(self)')
80
+ route('blacklight_for :catalog')
78
81
  route('root :to => "catalog#index"')
79
82
  end
80
83
 
@@ -0,0 +1,3 @@
1
+ @import 'bootstrap';
2
+
3
+ @import 'blacklight/blacklight';
@@ -1,5 +1,6 @@
1
1
  # -*- encoding : utf-8 -*-
2
- #
2
+ require 'blacklight/catalog'
3
+
3
4
  class CatalogController < ApplicationController
4
5
 
5
6
  include Blacklight::Catalog
@@ -174,4 +175,6 @@ class CatalogController < ApplicationController
174
175
  config.spell_max = 5
175
176
  end
176
177
 
178
+
179
+
177
180
  end
@@ -13,7 +13,9 @@ namespace :blacklight do
13
13
  namespace :solr do
14
14
  desc "Put sample data into solr"
15
15
  task :seed do
16
- Rake::Task["solr:marc:index_test_data"].invoke
16
+ docs = YAML::load(File.open(File.join(Blacklight.root, 'solr', 'sample_solr_documents.yml')))
17
+ Blacklight.solr.add docs
18
+ Blacklight.solr.commit
17
19
  end
18
20
  end
19
21
 
@@ -0,0 +1,641 @@
1
+ ---
2
+ - published_display:
3
+ - Karācī
4
+ author_display: Ayaz, Shaikh, 1923-1997
5
+ lc_callnum_display:
6
+ - PK2788.9.A9 F55 1998
7
+ pub_date:
8
+ - '1998'
9
+ format: Book
10
+ material_type_display:
11
+ - 375 p.
12
+ title_display: Fikr-i Ayāz
13
+ id: 00282214
14
+ language_facet:
15
+ - Urdu
16
+ - published_display:
17
+ - Karācī
18
+ author_display: Ayaz, Shaikh, 1923-1997
19
+ lc_callnum_display:
20
+ - MLCME 2002/02660 (D)
21
+ pub_date:
22
+ - '1986'
23
+ format: Book
24
+ material_type_display:
25
+ - 232 p.
26
+ title_display: Sāhivāl jail kī ḍāʼirī
27
+ id: 00282371
28
+ language_facet:
29
+ - Urdu
30
+ - subtitle_display: 'guft va gū-yi Akbar Ganjī bā ʻAbd Allāh Nūrī : bih payvast-i
31
+ matn-i istīz̤āḥ-i ʻAbd Allāh Nūrī dar Majlis-i panjum'
32
+ author_vern_display: ‏نورى، عبد الله
33
+ title_display: Naqdī barā-yi tamām-i fuṣūl
34
+ subject_era_facet:
35
+ - 1997-
36
+ id: 00313831
37
+ isbn_t:
38
+ - '9645625963'
39
+ subject_geo_facet:
40
+ - Iran
41
+ subject_topic_facet:
42
+ - Nūrī, ʻAbd Allāh, 1949-
43
+ - Iran. Vizārat-i Kishvar
44
+ published_display:
45
+ - Tihrān
46
+ author_display: Nūrī, ʻAbd Allāh, 1949-
47
+ title_vern_display: ‏نقدى براى تمام فصول :‏
48
+ lc_callnum_display:
49
+ - DS318.84.N87 N87 2000
50
+ pub_date:
51
+ - '2000'
52
+ published_vern_display:
53
+ - ‏تهران :‏
54
+ format: Book
55
+ subtitle_vern_display: '‏گفت و گوى اکبر گنجى با عبد الله نورى : به پيوست متن استيضاح
56
+ عبد الله نورى در مجلس پنجم'
57
+ material_type_display:
58
+ - 245 p.
59
+ language_facet:
60
+ - Persian
61
+ - published_display:
62
+ - Tōkyō
63
+ title_vern_display: 久保栄 「火山灰地」 を読む
64
+ author_display: Yoshida, Hajime, 1934-
65
+ pub_date:
66
+ - '1997'
67
+ published_vern_display:
68
+ - 東京
69
+ format: Book
70
+ author_vern_display: 吉田一, 1934-
71
+ material_type_display:
72
+ - 480 p.
73
+ title_display: Kubo Sakae "Kazanbaichi" o yomu
74
+ subject_era_facet:
75
+ - 20th century
76
+ id: '00314247'
77
+ subject_geo_facet:
78
+ - Japan
79
+ subject_topic_facet:
80
+ - Kubo, Sakae, 1901-1958
81
+ - Japanese drama
82
+ - Political plays, Japanese
83
+ - Theater
84
+ language_facet:
85
+ - Japanese
86
+ - published_display:
87
+ - Moskva
88
+ author_display: Vi︠a︡tkin, M. P. (Mikhail Porfirʹevich), 1895-1967
89
+ lc_callnum_display:
90
+ - DK861.K3 V5
91
+ pub_date:
92
+ - '1941'
93
+ format: Book
94
+ material_type_display:
95
+ - v.
96
+ title_display: Ocherki po istorii Kazakhskoĭ SSR
97
+ id: '43037890'
98
+ subject_geo_facet:
99
+ - Kazakhstan
100
+ language_facet:
101
+ - Russian
102
+ - published_display:
103
+ - Moskva
104
+ author_display: Korea (North)
105
+ lc_callnum_display:
106
+ - KPC13 1952
107
+ pub_date:
108
+ - '1952'
109
+ format: Book
110
+ material_type_display:
111
+ - 396 p.
112
+ title_display: Konstitut︠s︡ii︠a︡ i osnovnye zakonodatelʹnye akty Koreĭskoĭ Narodno-Demokraticheskoĭ
113
+ Respubliki
114
+ id: '53029833'
115
+ language_facet:
116
+ - Russian
117
+ - published_display:
118
+ - Sŏul
119
+ title_vern_display: 高麗 人物 列傅
120
+ lc_callnum_display:
121
+ - DS912.38 .K982 1976
122
+ pub_date:
123
+ - '1976'
124
+ published_vern_display:
125
+ - 서울
126
+ format: Book
127
+ material_type_display:
128
+ - 255 p.
129
+ title_display: Koryŏ inmul yŏlchŏn
130
+ subject_era_facet:
131
+ - Koryŏ period, 935-1392
132
+ id: '77826928'
133
+ subject_geo_facet:
134
+ - Korea
135
+ language_facet:
136
+ - Korean
137
+ - published_display:
138
+ - Puṇyapattanam
139
+ - Haidrābāda
140
+ author_display: Parikshit Sharma, Ogeti, 1930-
141
+ lc_callnum_display:
142
+ - PK3799.P29 Y3
143
+ pub_date:
144
+ - '1976'
145
+ format: Book
146
+ material_type_display:
147
+ - 24, 128, 2 p.
148
+ title_display: Yaśodharā-mahākāvyam
149
+ id: '78908283'
150
+ subject_topic_facet:
151
+ - Gautama Buddha
152
+ - Yaśodharā (Wife of Gautama Buddha)
153
+ language_facet:
154
+ - Sanskrit
155
+ - published_display:
156
+ - Lāhaur
157
+ author_display: Iṣlāḥī, Amīn Aḥsan, 1904-1997
158
+ lc_callnum_display:
159
+ - HQ1745.5 .I83 1978
160
+ pub_date:
161
+ - '1978'
162
+ format: Book
163
+ material_type_display:
164
+ - 8, 174 p.
165
+ title_display: Pākistānī ʻaurat dorāhe par
166
+ id: '79930185'
167
+ subject_geo_facet:
168
+ - Pakistan
169
+ subject_topic_facet:
170
+ - Women
171
+ language_facet:
172
+ - Urdu
173
+ - published_display:
174
+ - Trivandrum
175
+ author_display: Nārāyaṇapaṇḍita, 17th cent
176
+ lc_callnum_display:
177
+ - Microfiche 90/61328 (P)
178
+ pub_date:
179
+ - '1946'
180
+ format: Book
181
+ material_type_display:
182
+ - xii, 24 p.
183
+ title_display: Āśleṣāśataka of Nārāyaṇa Paṇḍita
184
+ id: '85910001'
185
+ language_facet:
186
+ - Sanskrit
187
+ - subtitle_display: sipurim mafliʼim ha-mevusasim ʻal ʻuvdot hisṭoriyot
188
+ author_vern_display: ‏פינקל, חיים יעקב
189
+ title_display: Shodede-yam Yehudiyim
190
+ id: '86207417'
191
+ isbn_t:
192
+ - '9650101373'
193
+ subject_topic_facet:
194
+ - Jewish pirates
195
+ - Jewish criminals
196
+ published_display:
197
+ - Yerushalayim
198
+ author_display: Finkel, Chaim Jacob
199
+ title_vern_display: ‏שודדי־ים יהודיים :‏
200
+ lc_callnum_display:
201
+ - G535 .F54 1984
202
+ pub_date:
203
+ - '1984'
204
+ published_vern_display:
205
+ - ‏ירושלים :‏
206
+ format: Book
207
+ subtitle_vern_display: ‏ספורים מפליאים המבוססים על עובדות היסטוריות /‏
208
+ material_type_display:
209
+ - 283 p.
210
+ language_facet:
211
+ - Hebrew
212
+ - published_display:
213
+ - Iṣfahān
214
+ title_vern_display: ‏اشنائى با حوزه‌هاى علميۀ شيعه در طول تاريخ /‏
215
+ author_display: Muvaḥḥid Abṭaḥī, Ḥujjat
216
+ lc_callnum_display:
217
+ - BP44 .M88 1986
218
+ pub_date:
219
+ - '1986'
220
+ published_vern_display:
221
+ - ‏اصفهان :‏
222
+ format: Book
223
+ author_vern_display: ‏موحد ابطحى، خجة
224
+ material_type_display:
225
+ - v. <1>
226
+ title_display: Āshnāʼī bā ḥawzahʹhā-yi ʻilmīyah-ʼi Shīʻah dar ṭūl-i tārīkh
227
+ id: '87931798'
228
+ subject_geo_facet:
229
+ - Islamic countries
230
+ subject_topic_facet:
231
+ - Religious institutions
232
+ - Shiites
233
+ - Islamic universities and colleges
234
+ language_facet:
235
+ - Persian
236
+ - published_display:
237
+ - Tʻbilisi
238
+ author_display: Lomtʻatʻiże, Čola, 1879-1915
239
+ lc_callnum_display:
240
+ - MLCSN 96/3906 (H)
241
+ pub_date:
242
+ - '1975'
243
+ subtitle_display: tʻeoriul-metʻoduri narkvevi
244
+ format: Book
245
+ material_type_display:
246
+ - 65 p.
247
+ title_display: Mrecvelobis mušakis cʻxovrebis cesi
248
+ id: '90142413'
249
+ subject_topic_facet:
250
+ - Industrial workers; life style
251
+ language_facet:
252
+ - Georgian
253
+ - published_display:
254
+ - Sŏul Tʻŭkpyŏlsi
255
+ title_vern_display: 北韓 法令集 /
256
+ author_display: Korea (North)
257
+ lc_callnum_display:
258
+ - KPC13 .K67 1990
259
+ pub_date:
260
+ - '1990'
261
+ published_vern_display:
262
+ - 서울 持別市 :
263
+ format: Book
264
+ material_type_display:
265
+ - 5 v.
266
+ title_display: Pukhan pŏmnyŏngjip
267
+ id: '92117465'
268
+ subject_geo_facet:
269
+ - Korea (North)
270
+ subject_topic_facet:
271
+ - Law
272
+ language_facet:
273
+ - Korean
274
+ - subtitle_display: ṿe-hu perush yafeh u-menupeh ʻal Shulḥan ʻarukh Oraḥ ḥayim
275
+ asher ḥiber Yosef Ḳaro ... ʻim ḥidushe dinim she-hishmiṭ ha-gaʼon ... ṿe-himtsiʼam
276
+ ... Mosheh Iserlish
277
+ author_vern_display: ‏ישראל מאיר,‏ ‏הכהן
278
+ title_display: Sefer Mishnah berurah
279
+ id: '92828023'
280
+ subject_topic_facet:
281
+ - Karo, Joseph ben Ephraim, 1488-1575
282
+ - Jewish law
283
+ - Judaism
284
+ published_display:
285
+ - Jerusalem?
286
+ author_display: Israel Meir, ha-Kohen, 1838-1933
287
+ title_vern_display: ‏ספר משנה ברורה :‏
288
+ lc_callnum_display:
289
+ - BM520.88.A53 I88 1992b
290
+ pub_date:
291
+ - '1992'
292
+ published_vern_display:
293
+ - ‏[Jerusalem? :‏
294
+ format: Book
295
+ subtitle_vern_display: ‏והוא פירוש יפה ומנפה על שלחן ערוך ארח חיים אשר חבר יוסף
296
+ קארו ... עם חידושי דינים שהשמיט הגאון ... והמציאם משה איסרליש /‏
297
+ material_type_display:
298
+ - v. <1-5>
299
+ language_facet:
300
+ - Hebrew
301
+ - subtitle_display: 'kangnam yŏin kwa sin pʻalbulchʻul : Kim Hong-sin setʻae rŭpʻo'
302
+ author_vern_display: 김 홍신, 1947-
303
+ title_display: Ajikto kŭrŏk chŏrŏk sasimnikka
304
+ id: '94120425'
305
+ subject_geo_facet:
306
+ - Seoul (Korea)
307
+ - Korea (South)
308
+ subject_topic_facet:
309
+ - Women
310
+ published_display:
311
+ - Sŏul
312
+ author_display: Kim, Hong-sin, 1947-
313
+ title_vern_display: 아직도 그럭 저럭 사십니까
314
+ lc_callnum_display:
315
+ - HQ1765.5 .K46 1990
316
+ pub_date:
317
+ - '1990'
318
+ published_vern_display:
319
+ - 서울
320
+ format: Book
321
+ subtitle_vern_display: '강남 여인 과 신 팔불출 : 金 洪信 세태 르포'
322
+ material_type_display:
323
+ - 289 p.
324
+ language_facet:
325
+ - Korean
326
+ - subtitle_display: dar khiradvarzī-i siyāsī va huvīyat-i mā Īrānīyān
327
+ author_vern_display: ‏رجايى، فرهنگ .
328
+ title_display: Maʻrakah-ʼi jahānʹbīnīʹhā
329
+ id: '96933325'
330
+ subject_geo_facet:
331
+ - Iran
332
+ subject_topic_facet:
333
+ - Political science
334
+ - Iranians
335
+ published_display:
336
+ - Tihrān
337
+ author_display: Rajāyī, Farhang, 1952 or 3-
338
+ title_vern_display: ‏معركۀ جهان‌بينىها :‏
339
+ lc_callnum_display:
340
+ - DS274 .R327 1994
341
+ pub_date:
342
+ - '1994'
343
+ published_vern_display:
344
+ - ‏تهران :‏
345
+ format: Book
346
+ subtitle_vern_display: ‏در خردورزى سياسى و هويت ما ايرانيان /‏
347
+ material_type_display:
348
+ - 323 p.
349
+ language_facet:
350
+ - Persian
351
+ - published_display:
352
+ - Bangalore
353
+ author_display: Nārāyaṇa Paṇḍitācārya, 13th cent
354
+ lc_callnum_display:
355
+ - PK3798.N313 S87 2000
356
+ pub_date:
357
+ - '2000'
358
+ format: Book
359
+ material_type_display:
360
+ - v. <1 >
361
+ title_display: Sumadhvavijayaḥ
362
+ id: '2001417245'
363
+ subject_topic_facet:
364
+ - Madhva, 13th cent
365
+ language_facet:
366
+ - Sanskrit
367
+ - published_display:
368
+ - Nuwākshūṭ
369
+ title_vern_display: الحرب في الألفية الثالثة
370
+ author_display: Wuld Mawlāy al-Zayn, Sayyid Muḥammad wuld Sayyid
371
+ lc_callnum_display:
372
+ - U21.2 .W85 2003
373
+ pub_date:
374
+ - '2003'
375
+ published_vern_display:
376
+ - نواكشوط
377
+ format: Book
378
+ author_vern_display: ولد مولاي الزين، سيد محمد ولد سيد
379
+ material_type_display:
380
+ - 128 p.
381
+ title_display: al-Ḥarb fī al-alfīyah al-thālithah
382
+ subject_era_facet:
383
+ - 21st century
384
+ id: '2003546302'
385
+ subject_topic_facet:
386
+ - War
387
+ - Military art and science
388
+ - Warfare, Conventional
389
+ - Military weapons
390
+ language_facet:
391
+ - Arabic
392
+ - published_display:
393
+ - Lha-sa
394
+ author_display: Bstan-ʼdzin-mkhas-grub, 1967-
395
+ lc_callnum_display:
396
+ - DS797.82.B663 B75 2004
397
+ pub_date:
398
+ - '2004'
399
+ format: Book
400
+ material_type_display:
401
+ - 149 p.
402
+ title_display: Bon-brgyaʼi lo rgyus lugs gñis gsal baʼi me loṅ źes bya ba bźugs
403
+ so
404
+ id: '2004310986'
405
+ subject_geo_facet:
406
+ - Bon-brgya (China)
407
+ language_facet:
408
+ - Tibetan
409
+ - subtitle_display: min jald al-dhāt ilá ṣidq al-sharḥ
410
+ author_vern_display: أبو الخير، علي عبد الحميد
411
+ title_display: Thuqūb fī ʻaql al-ummah
412
+ subject_era_facet:
413
+ - 20th century
414
+ - 21st century
415
+ id: '2005461726'
416
+ subject_topic_facet:
417
+ - Islam
418
+ published_display:
419
+ - al-Maʻādī, al-Qāhirah
420
+ author_display: Abū al-Khayr, ʻAlī ʻAbd al-Ḥamīd
421
+ title_vern_display: ثقوب في عقل الأمة
422
+ lc_callnum_display:
423
+ - BP161.3 .A27 2006
424
+ pub_date:
425
+ - '2006'
426
+ published_vern_display:
427
+ - المعادي، القاهرة
428
+ format: Book
429
+ subtitle_vern_display: من جلد الذات إلى صدق الشرح
430
+ material_type_display:
431
+ - 85 p.
432
+ language_facet:
433
+ - Arabic
434
+ - published_display:
435
+ - Israel
436
+ title_vern_display: ביטוח וביטחון סוציאלי
437
+ lc_callnum_display:
438
+ - HG8695.2 .B57 1962
439
+ pub_date:
440
+ - '1962'
441
+ format: Book
442
+ material_type_display:
443
+ - items 1-<13> of <13>
444
+ title_display: Bituaḥ u-viṭaḥon sotsyali
445
+ id: '2005553155'
446
+ subject_geo_facet:
447
+ - Israel
448
+ subject_topic_facet:
449
+ - Insurance
450
+ - Social security
451
+ - Family allowances
452
+ - Maternity insurance
453
+ - Accident insurance
454
+ - Old age
455
+ language_facet:
456
+ - Hebrew
457
+ - published_display:
458
+ - New York
459
+ author_display: Hearth, Amy Hill, 1958-
460
+ lc_callnum_display:
461
+ - E99.D2 H437 2008
462
+ pub_date:
463
+ - '2008'
464
+ subtitle_display: 'a Native American elder has her say : an oral history'
465
+ format: Book
466
+ url_suppl_display:
467
+ - http://www.loc.gov/catdir/toc/ecip0719/2007020969.html
468
+ - http://www.loc.gov/catdir/enhancements/fy0808/2007020969-d.html
469
+ - http://www.loc.gov/catdir/enhancements/fy0808/2007020969-s.html
470
+ material_type_display:
471
+ - xvii, 267 p.
472
+ title_display: '"Strong Medicine speaks"'
473
+ isbn_t:
474
+ - '9780743297790'
475
+ - 0743297792
476
+ id: '2007020969'
477
+ subject_geo_facet:
478
+ - New Jersey
479
+ - Bridgeton
480
+ subject_topic_facet:
481
+ - Strong Medicine, 1922-
482
+ - Delaware women
483
+ - Indian women shamans
484
+ - Delaware Indians
485
+ language_facet:
486
+ - English
487
+ - published_display:
488
+ - ʼPhags-yul Dhe-ra-dhun
489
+ author_display: Dkon-mchog-rgya-mtsho, Ra-se, 1968-
490
+ lc_callnum_display:
491
+ - BQ7684.4 .D564 2008
492
+ pub_date:
493
+ - '2008'
494
+ subtitle_display: dam paʼi chos dgoṅs pa gcig paʼi dri ba legs bśad bsu baʼi pho
495
+ ñaʼi dris lan Dgoṅs-gcig smra baʼi mdzes rgyan źes bya ba bźugs so
496
+ format: Book
497
+ material_type_display:
498
+ - 208 p.
499
+ title_display: Dris lan don gcig ma
500
+ id: '2008305903'
501
+ subject_topic_facet:
502
+ - ʼBri-guṅ-pa (Sect)
503
+ language_facet:
504
+ - Tibetan
505
+ - subtitle_display: a supplication to the noble Lama Mahaguru Padmasambhava
506
+ title_display: Pluvial nectar of blessings
507
+ id: '2008308175'
508
+ isbn_t:
509
+ - '8186470336'
510
+ subject_geo_facet:
511
+ - India
512
+ subject_topic_facet:
513
+ - Padma Sambhava, ca. 717-ca. 762
514
+ - Priests, Buddhist
515
+ published_display:
516
+ - Dharamsala
517
+ author_display: Ṅag-dbaṅ-blo-bzaṅ-rgya-mtsho, Dalai Lama V, 1617-1682
518
+ lc_callnum_display:
519
+ - BQ5593.P3 N3313 2002
520
+ pub_date:
521
+ - '2002'
522
+ format: Book
523
+ material_type_display:
524
+ - viii, 101 p.
525
+ language_facet:
526
+ - English
527
+ - Tibetan
528
+ - published_display:
529
+ - Dharamsala, H.P.
530
+ author_display: Bstan-ʼdzin-rgya-mtsho, Dalai Lama XIV, 1935-
531
+ lc_callnum_display:
532
+ - BQ4036 .B78 2008
533
+ pub_date:
534
+ - '2008'
535
+ subtitle_display: goṅ sa skyabs mgon chen po mchog nas deṅ dus Bod rigs na gźon
536
+ rnams la naṅ chos ṅo sprod bstsal ba bźugs so
537
+ format: Book
538
+ material_type_display:
539
+ - 4, iv, 254 p.
540
+ title_display: Bod kyi naṅ chos ṅo sprod sñiṅ bsdus
541
+ id: '2008308201'
542
+ subject_topic_facet:
543
+ - Buddhism
544
+ language_facet:
545
+ - Tibetan
546
+ - published_display:
547
+ - Dharamsala, H.P.
548
+ author_display: Thub-bstan-yar-ʼphel, Rnam-grwa
549
+ lc_callnum_display:
550
+ - DS785 .T475 2005
551
+ pub_date:
552
+ - '2005'
553
+ format: Book
554
+ material_type_display:
555
+ - a-e, iv, ii, 407 p.
556
+ title_display: Bod gaṅs can gyi rgyal rabs mdor bsdus dris lan brgya pa rab gsal
557
+ śel gyi me loṅ źes bya ba bźugs so
558
+ id: '2008308202'
559
+ subject_geo_facet:
560
+ - Tibet (China)
561
+ language_facet:
562
+ - Tibetan
563
+ - published_display:
564
+ - Dharamsala, Distt. Kangra, H.P.
565
+ pub_date:
566
+ - '2007'
567
+ format: Book
568
+ title_display: Śes yon
569
+ material_type_display:
570
+ - xii, 419 p.
571
+ id: '2008308478'
572
+ subject_geo_facet:
573
+ - China
574
+ - Tibet
575
+ - India
576
+ subject_topic_facet:
577
+ - Education and state
578
+ - Tibetans
579
+ - Tibetan language
580
+ - Teaching
581
+ language_facet:
582
+ - Tibetan
583
+ - author_vern_display: 吉田一, 1934-
584
+ title_display: Kubo Sakae 'Kazanbaichi' o yomu
585
+ subject_era_facet:
586
+ - 20th century
587
+ id: '2008543486'
588
+ isbn_t:
589
+ - '9784588460050'
590
+ - '4588460056'
591
+ subject_geo_facet:
592
+ - Japan
593
+ subject_topic_facet:
594
+ - Kubo, Sakae, 1901-1958
595
+ - Japanese drama
596
+ - Political plays, Japanese
597
+ - Theater
598
+ published_display:
599
+ - Tōkyō
600
+ author_display: Yoshida, Hajime, 1934-
601
+ title_vern_display: 久保栄「火山灰地」を読む
602
+ lc_callnum_display:
603
+ - PL832.U25 Z96 1997
604
+ pub_date:
605
+ - '1997'
606
+ published_vern_display:
607
+ - 東京
608
+ format: Book
609
+ material_type_display:
610
+ - 480 p.
611
+ language_facet:
612
+ - Japanese
613
+ - author_vern_display: 林行止
614
+ title_display: Ci an zhou bian
615
+ subject_era_facet:
616
+ - 1990-
617
+ - 2005-2015
618
+ - 1997-
619
+ id: '2009373513'
620
+ isbn_t:
621
+ - '9789573908678'
622
+ - '9573908670'
623
+ subject_geo_facet:
624
+ - Economic history
625
+ - World politics
626
+ - Hong Kong (China)
627
+ published_display:
628
+ - Taibei Xian Banqiao Shi
629
+ author_display: Lin, Xingzhi
630
+ title_vern_display: 次按驟變
631
+ lc_callnum_display:
632
+ - HC59.15 .L533 2008
633
+ pub_date:
634
+ - '2008'
635
+ published_vern_display:
636
+ - 臺北縣板橋市
637
+ format: Book
638
+ material_type_display:
639
+ - 5, 300 p.
640
+ language_facet:
641
+ - Chinese