commonwealth-vlr-engine 0.0.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 (361) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +91 -0
  3. data/.gitmodules +3 -0
  4. data/Gemfile +20 -0
  5. data/LICENSE +202 -0
  6. data/README.md +38 -0
  7. data/Rakefile +43 -0
  8. data/app/assets/images/commonwealth-vlr-engine/bplLoginButton.png +0 -0
  9. data/app/assets/images/commonwealth-vlr-engine/dc_audio-icon.png +0 -0
  10. data/app/assets/images/commonwealth-vlr-engine/dc_collection-icon.png +0 -0
  11. data/app/assets/images/commonwealth-vlr-engine/dc_image-icon.png +0 -0
  12. data/app/assets/images/commonwealth-vlr-engine/dc_institution-icon.png +0 -0
  13. data/app/assets/images/commonwealth-vlr-engine/dc_moving-image-icon.png +0 -0
  14. data/app/assets/images/commonwealth-vlr-engine/dc_text-icon.png +0 -0
  15. data/app/assets/images/commonwealth-vlr-engine/facebookLoginButton.png +0 -0
  16. data/app/assets/images/commonwealth-vlr-engine/loading-wdl-grid.gif +0 -0
  17. data/app/assets/images/commonwealth-vlr-engine/loading-wdl.gif +0 -0
  18. data/app/assets/images/commonwealth-vlr-engine/loading.gif +0 -0
  19. data/app/assets/images/commonwealth-vlr-engine/openseadragon/fullpage_grouphover.png +0 -0
  20. data/app/assets/images/commonwealth-vlr-engine/openseadragon/fullpage_hover.png +0 -0
  21. data/app/assets/images/commonwealth-vlr-engine/openseadragon/fullpage_pressed.png +0 -0
  22. data/app/assets/images/commonwealth-vlr-engine/openseadragon/fullpage_rest.png +0 -0
  23. data/app/assets/images/commonwealth-vlr-engine/openseadragon/home_grouphover.png +0 -0
  24. data/app/assets/images/commonwealth-vlr-engine/openseadragon/home_hover.png +0 -0
  25. data/app/assets/images/commonwealth-vlr-engine/openseadragon/home_pressed.png +0 -0
  26. data/app/assets/images/commonwealth-vlr-engine/openseadragon/home_rest.png +0 -0
  27. data/app/assets/images/commonwealth-vlr-engine/openseadragon/next_grouphover.png +0 -0
  28. data/app/assets/images/commonwealth-vlr-engine/openseadragon/next_hover.png +0 -0
  29. data/app/assets/images/commonwealth-vlr-engine/openseadragon/next_pressed.png +0 -0
  30. data/app/assets/images/commonwealth-vlr-engine/openseadragon/next_rest.png +0 -0
  31. data/app/assets/images/commonwealth-vlr-engine/openseadragon/previous_grouphover.png +0 -0
  32. data/app/assets/images/commonwealth-vlr-engine/openseadragon/previous_hover.png +0 -0
  33. data/app/assets/images/commonwealth-vlr-engine/openseadragon/previous_pressed.png +0 -0
  34. data/app/assets/images/commonwealth-vlr-engine/openseadragon/previous_rest.png +0 -0
  35. data/app/assets/images/commonwealth-vlr-engine/openseadragon/rotateleft_grouphover.png +0 -0
  36. data/app/assets/images/commonwealth-vlr-engine/openseadragon/rotateleft_hover.png +0 -0
  37. data/app/assets/images/commonwealth-vlr-engine/openseadragon/rotateleft_pressed.png +0 -0
  38. data/app/assets/images/commonwealth-vlr-engine/openseadragon/rotateleft_rest.png +0 -0
  39. data/app/assets/images/commonwealth-vlr-engine/openseadragon/rotateright_grouphover.png +0 -0
  40. data/app/assets/images/commonwealth-vlr-engine/openseadragon/rotateright_hover.png +0 -0
  41. data/app/assets/images/commonwealth-vlr-engine/openseadragon/rotateright_pressed.png +0 -0
  42. data/app/assets/images/commonwealth-vlr-engine/openseadragon/rotateright_rest.png +0 -0
  43. data/app/assets/images/commonwealth-vlr-engine/openseadragon/zoomin_grouphover.png +0 -0
  44. data/app/assets/images/commonwealth-vlr-engine/openseadragon/zoomin_hover.png +0 -0
  45. data/app/assets/images/commonwealth-vlr-engine/openseadragon/zoomin_pressed.png +0 -0
  46. data/app/assets/images/commonwealth-vlr-engine/openseadragon/zoomin_rest.png +0 -0
  47. data/app/assets/images/commonwealth-vlr-engine/openseadragon/zoomout_grouphover.png +0 -0
  48. data/app/assets/images/commonwealth-vlr-engine/openseadragon/zoomout_hover.png +0 -0
  49. data/app/assets/images/commonwealth-vlr-engine/openseadragon/zoomout_pressed.png +0 -0
  50. data/app/assets/images/commonwealth-vlr-engine/openseadragon/zoomout_rest.png +0 -0
  51. data/app/assets/images/commonwealth-vlr-engine/vlr_logo_img.png +0 -0
  52. data/app/assets/javascripts/blacklight_gallery.js +1 -0
  53. data/app/assets/javascripts/blacklight_google_analytics/blacklight_google_analytics.js.erb +165 -0
  54. data/app/assets/javascripts/bootstrap-accessibility-plugin/bootstrap-accessibility.js +586 -0
  55. data/app/assets/javascripts/commonwealth-vlr-engine.js +22 -0
  56. data/app/assets/javascripts/commonwealth-vlr-engine/collection_facets.js +5 -0
  57. data/app/assets/javascripts/commonwealth-vlr-engine/disable_dropdown_nav.js +21 -0
  58. data/app/assets/javascripts/commonwealth-vlr-engine/feedback_alerts.js.erb +19 -0
  59. data/app/assets/javascripts/commonwealth-vlr-engine/folder_tools.js +26 -0
  60. data/app/assets/javascripts/commonwealth-vlr-engine/multi_img_viewer.js.erb +20 -0
  61. data/app/assets/javascripts/commonwealth-vlr-engine/ocr_search_utils.js.erb +32 -0
  62. data/app/assets/javascripts/commonwealth-vlr-engine/volumes_list.js +5 -0
  63. data/app/assets/javascripts/openseadragon.js +2 -0
  64. data/app/assets/javascripts/respond/respond.min.js +6 -0
  65. data/app/assets/javascripts/wdl-viewer/fd-slider.js +1303 -0
  66. data/app/assets/javascripts/wdl-viewer/jquery-deparam.js +113 -0
  67. data/app/assets/javascripts/wdl-viewer/jquery.ba-throttle-debounce.min.js +9 -0
  68. data/app/assets/javascripts/wdl-viewer/jquery.hammer.min.js +7 -0
  69. data/app/assets/javascripts/wdl-viewer/modernizr-wdl.min.js +3 -0
  70. data/app/assets/javascripts/wdl-viewer/wdl-search.js +33 -0
  71. data/app/assets/javascripts/wdl-viewer/wdl-viewer_commonwealth.js +1147 -0
  72. data/app/assets/stylesheets/blacklight_advanced_search.css +5 -0
  73. data/app/assets/stylesheets/blacklight_gallery.css +1 -0
  74. data/app/assets/stylesheets/blacklight_maps.css +1 -0
  75. data/app/assets/stylesheets/bootstrap-accessibility-plugin/bootstrap-accessibility.css +105 -0
  76. data/app/assets/stylesheets/commonwealth-vlr-engine/advanced_search.scss +139 -0
  77. data/app/assets/stylesheets/commonwealth-vlr-engine/basic_search.scss +47 -0
  78. data/app/assets/stylesheets/commonwealth-vlr-engine/book_viewer.scss +576 -0
  79. data/app/assets/stylesheets/commonwealth-vlr-engine/carousel.scss +94 -0
  80. data/app/assets/stylesheets/commonwealth-vlr-engine/cmmnwlth_defaults.scss +45 -0
  81. data/app/assets/stylesheets/commonwealth-vlr-engine/cmmnwlth_shared.scss +75 -0
  82. data/app/assets/stylesheets/commonwealth-vlr-engine/collections.scss +563 -0
  83. data/app/assets/stylesheets/commonwealth-vlr-engine/commonwealth-vlr-engine.css +32 -0
  84. data/app/assets/stylesheets/commonwealth-vlr-engine/facets.scss +111 -0
  85. data/app/assets/stylesheets/commonwealth-vlr-engine/feedback.scss +10 -0
  86. data/app/assets/stylesheets/commonwealth-vlr-engine/folders.scss +276 -0
  87. data/app/assets/stylesheets/commonwealth-vlr-engine/footer.scss +47 -0
  88. data/app/assets/stylesheets/commonwealth-vlr-engine/header.scss +329 -0
  89. data/app/assets/stylesheets/commonwealth-vlr-engine/home.scss +269 -0
  90. data/app/assets/stylesheets/commonwealth-vlr-engine/index.scss +580 -0
  91. data/app/assets/stylesheets/commonwealth-vlr-engine/institutions.scss +246 -0
  92. data/app/assets/stylesheets/commonwealth-vlr-engine/pages.scss +31 -0
  93. data/app/assets/stylesheets/commonwealth-vlr-engine/search_inside.scss +172 -0
  94. data/app/assets/stylesheets/commonwealth-vlr-engine/searches.scss +55 -0
  95. data/app/assets/stylesheets/commonwealth-vlr-engine/show.scss +840 -0
  96. data/app/assets/stylesheets/commonwealth-vlr-engine/signin.scss +43 -0
  97. data/app/assets/stylesheets/commonwealth-vlr-engine/users.scss +18 -0
  98. data/app/assets/stylesheets/commonwealth-vlr-engine/vlr_dependencies.css +8 -0
  99. data/app/assets/stylesheets/ie_fixes.css +16 -0
  100. data/app/assets/stylesheets/openseadragon.css +1 -0
  101. data/app/assets/stylesheets/wdl-viewer/fd-slider.min.css +2 -0
  102. data/app/controllers/blacklight_advanced_search/advanced_controller.rb +66 -0
  103. data/app/controllers/bookmarks_controller.rb +38 -0
  104. data/app/controllers/collections_controller.rb +128 -0
  105. data/app/controllers/commonwealth_vlr_engine/application_controller.rb +8 -0
  106. data/app/controllers/feedback_controller.rb +39 -0
  107. data/app/controllers/folder_items_actions_controller.rb +72 -0
  108. data/app/controllers/folder_items_controller.rb +90 -0
  109. data/app/controllers/folders_controller.rb +132 -0
  110. data/app/controllers/iiif_manifest_controller.rb +74 -0
  111. data/app/controllers/image_viewer_controller.rb +34 -0
  112. data/app/controllers/institutions_controller.rb +62 -0
  113. data/app/controllers/ocr_search_controller.rb +78 -0
  114. data/app/controllers/pages_controller.rb +5 -0
  115. data/app/controllers/users/omniauth_callbacks_controller.rb +10 -0
  116. data/app/controllers/users/registrations_controller.rb +3 -0
  117. data/app/controllers/users/sessions_controller.rb +3 -0
  118. data/app/controllers/users_controller.rb +27 -0
  119. data/app/helpers/blacklight_maps_helper.rb +3 -0
  120. data/app/helpers/collections_helper.rb +3 -0
  121. data/app/helpers/commonwealth_vlr_engine/application_helper.rb +200 -0
  122. data/app/helpers/commonwealth_vlr_engine/blacklight_helper.rb +35 -0
  123. data/app/helpers/commonwealth_vlr_engine/blacklight_url_helper.rb +53 -0
  124. data/app/helpers/commonwealth_vlr_engine/catalog_helper.rb +414 -0
  125. data/app/helpers/commonwealth_vlr_engine/collections_helper_behavior.rb +19 -0
  126. data/app/helpers/commonwealth_vlr_engine/component_helper.rb +22 -0
  127. data/app/helpers/commonwealth_vlr_engine/facets_helper.rb +20 -0
  128. data/app/helpers/commonwealth_vlr_engine/feedback_helper_behavior.rb +14 -0
  129. data/app/helpers/commonwealth_vlr_engine/folders_helper_behavior.rb +9 -0
  130. data/app/helpers/commonwealth_vlr_engine/image_viewer_helper_behavior.rb +14 -0
  131. data/app/helpers/commonwealth_vlr_engine/institutions_helper_behavior.rb +31 -0
  132. data/app/helpers/commonwealth_vlr_engine/layout_helper.rb +22 -0
  133. data/app/helpers/commonwealth_vlr_engine/ocr_search_helper_behavior.rb +48 -0
  134. data/app/helpers/commonwealth_vlr_engine/pages_helper_behavior.rb +38 -0
  135. data/app/helpers/commonwealth_vlr_engine/vlr_blacklight_maps_helper_behavior.rb +59 -0
  136. data/app/helpers/feedback_helper.rb +3 -0
  137. data/app/helpers/folders_helper.rb +3 -0
  138. data/app/helpers/image_viewer_helper.rb +3 -0
  139. data/app/helpers/institutions_helper.rb +3 -0
  140. data/app/helpers/ocr_search_helper.rb +3 -0
  141. data/app/helpers/pages_helper.rb +3 -0
  142. data/app/mailers/notifier.rb +5 -0
  143. data/app/models/carousel_slide.rb +7 -0
  144. data/app/models/record_mailer.rb +18 -0
  145. data/app/models/user.rb +15 -0
  146. data/app/views/advanced/_advanced_search_date.html.erb +23 -0
  147. data/app/views/advanced/_advanced_search_facets.html.erb +5 -0
  148. data/app/views/advanced/_advanced_search_fields.html.erb +39 -0
  149. data/app/views/advanced/_advanced_search_form.html.erb +51 -0
  150. data/app/views/advanced/_advanced_search_help.html.erb +13 -0
  151. data/app/views/advanced/_facet_layout.html.erb +9 -0
  152. data/app/views/advanced/_facet_limit.html.erb +15 -0
  153. data/app/views/advanced/index.html.erb +29 -0
  154. data/app/views/blacklight_advanced_search/_facet_limit.html.erb +12 -0
  155. data/app/views/bookmarks/_tools.html.erb +25 -0
  156. data/app/views/bookmarks/index.html.erb +64 -0
  157. data/app/views/bookmarks/update.js.erb +1 -0
  158. data/app/views/bpluser/folders/_folder.html.erb +36 -0
  159. data/app/views/catalog/_add_this.html.erb +10 -0
  160. data/app/views/catalog/_az_links.html.erb +15 -0
  161. data/app/views/catalog/_basic_search.html.erb +67 -0
  162. data/app/views/catalog/_citation.html.erb +50 -0
  163. data/app/views/catalog/_constraints.html.erb +26 -0
  164. data/app/views/catalog/_document_collections_gallery.html.erb +7 -0
  165. data/app/views/catalog/_facet_limit_series.html.erb +21 -0
  166. data/app/views/catalog/_facets.html.erb +31 -0
  167. data/app/views/catalog/_facets_series.html.erb +4 -0
  168. data/app/views/catalog/_folder_item_control.html.erb +64 -0
  169. data/app/views/catalog/_index_collections_gallery.html.erb +12 -0
  170. data/app/views/catalog/_index_gallery.html.erb +11 -0
  171. data/app/views/catalog/_index_header_default.html.erb +22 -0
  172. data/app/views/catalog/_index_list_collection.html.erb +33 -0
  173. data/app/views/catalog/_index_list_default.html.erb +13 -0
  174. data/app/views/catalog/_index_map_institutions.html.erb +10 -0
  175. data/app/views/catalog/_index_masonry.html.erb +8 -0
  176. data/app/views/catalog/_index_slideshow.html.erb +18 -0
  177. data/app/views/catalog/_more_like_this.html.erb +9 -0
  178. data/app/views/catalog/_opengraph.html.erb +16 -0
  179. data/app/views/catalog/_previous_next_doc.html.erb +22 -0
  180. data/app/views/catalog/_results_pagination.html.erb +9 -0
  181. data/app/views/catalog/_search_form.html.erb +23 -0
  182. data/app/views/catalog/_search_header.html.erb +5 -0
  183. data/app/views/catalog/_show_default.html.erb +75 -0
  184. data/app/views/catalog/_show_main_content.html.erb +27 -0
  185. data/app/views/catalog/_show_more_like_this.html.erb +15 -0
  186. data/app/views/catalog/_show_partials/_show_book_viewer_link.html.erb +25 -0
  187. data/app/views/catalog/_show_partials/_show_default_img.html.erb +32 -0
  188. data/app/views/catalog/_show_partials/_show_default_metadata.html.erb +486 -0
  189. data/app/views/catalog/_show_partials/_show_default_simple_img_viewer.html.erb +45 -0
  190. data/app/views/catalog/_show_partials/_show_downloads.html.erb +14 -0
  191. data/app/views/catalog/_show_partials/_show_flagged_notice.html.erb +29 -0
  192. data/app/views/catalog/_show_partials/_show_multi_img.html.erb +42 -0
  193. data/app/views/catalog/_show_partials/_show_multi_img_pagination.html.erb +20 -0
  194. data/app/views/catalog/_show_partials/_show_oai_item_img.html.erb +5 -0
  195. data/app/views/catalog/_show_partials/_show_oai_item_link.html.erb +8 -0
  196. data/app/views/catalog/_show_partials/_show_prev_next_carousel_links.html.erb +17 -0
  197. data/app/views/catalog/_show_partials/_show_volumes.html.erb +52 -0
  198. data/app/views/catalog/_show_sidebar.html.erb +1 -0
  199. data/app/views/catalog/_show_tools.html.erb +42 -0
  200. data/app/views/catalog/_zero_results.html.erb +20 -0
  201. data/app/views/catalog/email.html.erb +6 -0
  202. data/app/views/catalog/index.html.erb +17 -0
  203. data/app/views/catalog/metadata_view.html.erb +7 -0
  204. data/app/views/catalog/show.html.erb +13 -0
  205. data/app/views/collections/_search_form_collection.html.erb +23 -0
  206. data/app/views/collections/index.html.erb +30 -0
  207. data/app/views/collections/show.html.erb +116 -0
  208. data/app/views/devise/confirmations/new.html.erb +14 -0
  209. data/app/views/devise/mailer/reset_password_instructions.html.erb +13 -0
  210. data/app/views/devise/passwords/edit.html.erb +33 -0
  211. data/app/views/devise/passwords/new.html.erb +31 -0
  212. data/app/views/devise/registrations/edit.html.erb +83 -0
  213. data/app/views/devise/registrations/new.html.erb +53 -0
  214. data/app/views/devise/sessions/new.html.erb +75 -0
  215. data/app/views/devise/shared/_links.erb +29 -0
  216. data/app/views/feedback/complete.html.erb +9 -0
  217. data/app/views/feedback/show.html.erb +61 -0
  218. data/app/views/folder_items/create.js.erb +1 -0
  219. data/app/views/folder_items/destroy.js.erb +1 -0
  220. data/app/views/folder_items/item_actions.js.erb +2 -0
  221. data/app/views/folder_items/update.js.erb +1 -0
  222. data/app/views/folders/_in_folder.html.erb +2 -0
  223. data/app/views/folders/_new_edit_form_fields.html.erb +36 -0
  224. data/app/views/folders/edit.html.erb +25 -0
  225. data/app/views/folders/index.html.erb +73 -0
  226. data/app/views/folders/new.html.erb +27 -0
  227. data/app/views/folders/public_list.html.erb +44 -0
  228. data/app/views/folders/show.html.erb +98 -0
  229. data/app/views/image_viewer/_book_viewer_help.html.erb +125 -0
  230. data/app/views/image_viewer/_render_book_viewer.html.erb +185 -0
  231. data/app/views/image_viewer/book_viewer.html.erb +57 -0
  232. data/app/views/image_viewer/show.js.erb +19 -0
  233. data/app/views/institutions/_intro_text.html.erb +1 -0
  234. data/app/views/institutions/_map_institutions_search.html.erb +9 -0
  235. data/app/views/institutions/_search_form_institution.html.erb +24 -0
  236. data/app/views/institutions/index.html.erb +31 -0
  237. data/app/views/institutions/show.html.erb +104 -0
  238. data/app/views/layouts/_google_analytics.html.erb +9 -0
  239. data/app/views/layouts/book_viewer.html.erb +37 -0
  240. data/app/views/layouts/commonwealth-vlr-engine.html.erb +59 -0
  241. data/app/views/notifier/feedback.text.erb +6 -0
  242. data/app/views/ocr_search/_index_ocr_list.html.erb +17 -0
  243. data/app/views/ocr_search/_search_form_ocr.html.erb +23 -0
  244. data/app/views/ocr_search/_snippets_more.html.erb +15 -0
  245. data/app/views/ocr_search/_zero_results_ocr.html.erb +9 -0
  246. data/app/views/ocr_search/index.html.erb +49 -0
  247. data/app/views/pages/_carousel.html.erb +46 -0
  248. data/app/views/pages/_home_partials/_banner.html.erb +23 -0
  249. data/app/views/pages/_home_partials/_browse.html.erb +55 -0
  250. data/app/views/pages/_home_partials/_context.html.erb +24 -0
  251. data/app/views/pages/_home_partials/_home_content.html.erb +14 -0
  252. data/app/views/pages/about.html.erb +10 -0
  253. data/app/views/pages/about_site.html.erb +6 -0
  254. data/app/views/pages/explore.html.erb +32 -0
  255. data/app/views/pages/home.html.erb +3 -0
  256. data/app/views/record_mailer/email_record.text.erb +7 -0
  257. data/app/views/saved_searches/index.html.erb +60 -0
  258. data/app/views/search_history/index.html.erb +59 -0
  259. data/app/views/shared/_error_messages.html.erb +9 -0
  260. data/app/views/shared/_flash_msg_maintenance.html.erb +6 -0
  261. data/app/views/shared/_folder_item_actions.html.erb +66 -0
  262. data/app/views/shared/_folder_tools.html.erb +4 -0
  263. data/app/views/shared/_footer.html.erb +14 -0
  264. data/app/views/shared/_header_navbar.html.erb +34 -0
  265. data/app/views/shared/_nav_links.html.erb +58 -0
  266. data/app/views/shared/_search_form_header.html.erb +16 -0
  267. data/app/views/shared/_tools.html.erb +14 -0
  268. data/app/views/shared/_user_util_links.html.erb +43 -0
  269. data/app/views/users/show.html.erb +33 -0
  270. data/commonwealth-vlr-engine.gemspec +47 -0
  271. data/config/initializers/patch_blacklight_advanced_search.rb +74 -0
  272. data/config/initializers/patch_blacklight_maps.rb +20 -0
  273. data/config/jetty.yml +7 -0
  274. data/config/locales/commonwealth-vlr-engine.en.yml +463 -0
  275. data/config/routes.rb +92 -0
  276. data/lib/commonwealth-vlr-engine.rb +55 -0
  277. data/lib/commonwealth-vlr-engine/commonwealth_search_builder.rb +66 -0
  278. data/lib/commonwealth-vlr-engine/controller.rb +69 -0
  279. data/lib/commonwealth-vlr-engine/controller_override.rb +238 -0
  280. data/lib/commonwealth-vlr-engine/engine.rb +40 -0
  281. data/lib/commonwealth-vlr-engine/finder.rb +285 -0
  282. data/lib/commonwealth-vlr-engine/iiif_manifest.rb +189 -0
  283. data/lib/commonwealth-vlr-engine/notifier.rb +33 -0
  284. data/lib/commonwealth-vlr-engine/pages.rb +33 -0
  285. data/lib/commonwealth-vlr-engine/render_constraints_override.rb +57 -0
  286. data/lib/commonwealth-vlr-engine/route_sets.rb +49 -0
  287. data/lib/commonwealth-vlr-engine/routes.rb +21 -0
  288. data/lib/commonwealth-vlr-engine/version.rb +3 -0
  289. data/lib/generators/commonwealth_vlr_engine/controller_generator.rb +92 -0
  290. data/lib/generators/commonwealth_vlr_engine/environment_generator.rb +49 -0
  291. data/lib/generators/commonwealth_vlr_engine/install_generator.rb +57 -0
  292. data/lib/generators/commonwealth_vlr_engine/localassets_generator.rb +29 -0
  293. data/lib/generators/commonwealth_vlr_engine/model_generator.rb +65 -0
  294. data/lib/generators/commonwealth_vlr_engine/routes_generator.rb +39 -0
  295. data/lib/generators/commonwealth_vlr_engine/templates/commonwealth_vlr_engine.css.scss +4 -0
  296. data/lib/generators/commonwealth_vlr_engine/templates/config/contact_emails.yml.sample +13 -0
  297. data/lib/generators/commonwealth_vlr_engine/templates/config/fedora.yml.sample +6 -0
  298. data/lib/generators/commonwealth_vlr_engine/templates/config/geojson_static_file.yml.sample +11 -0
  299. data/lib/generators/commonwealth_vlr_engine/templates/config/google_analytics.yml.sample +10 -0
  300. data/lib/generators/commonwealth_vlr_engine/templates/config/iiif_server.yml.sample +10 -0
  301. data/lib/generators/commonwealth_vlr_engine/templates/config/initializers/a_load_commonwealth_vlr_configs.rb +14 -0
  302. data/lib/generators/commonwealth_vlr_engine/templates/config/initializers/devise.rb +269 -0
  303. data/lib/generators/commonwealth_vlr_engine/templates/config/initializers/secret_token.rb +8 -0
  304. data/lib/generators/commonwealth_vlr_engine/templates/config/locales/blacklight.en.yml +44 -0
  305. data/lib/generators/commonwealth_vlr_engine/templates/config/locales/devise.en.yml +12 -0
  306. data/lib/generators/commonwealth_vlr_engine/templates/config/omniauth-facebook.yml.sample +14 -0
  307. data/lib/generators/commonwealth_vlr_engine/templates/config/omniauth-polaris.yml.sample +20 -0
  308. data/lib/generators/commonwealth_vlr_engine/templates/config/vlr.yml +13 -0
  309. data/lib/generators/commonwealth_vlr_engine/yml_generator.rb +29 -0
  310. data/lib/railties/commonwealth_vlr_engine.rake +6 -0
  311. data/solr_conf/conf/schema.xml +476 -0
  312. data/solr_conf/conf/solrconfig.xml +286 -0
  313. data/spec/controllers/catalog_controller_spec.rb +67 -0
  314. data/spec/controllers/collections_controller_spec.rb +127 -0
  315. data/spec/controllers/feedback_controller_spec.rb +51 -0
  316. data/spec/controllers/folder_items_actions_controller_spec.rb +99 -0
  317. data/spec/controllers/folder_items_controller_spec.rb +90 -0
  318. data/spec/controllers/folders_controller_spec.rb +368 -0
  319. data/spec/controllers/iiif_manifest_controller_spec.rb +85 -0
  320. data/spec/controllers/image_viewer_controller_spec.rb +50 -0
  321. data/spec/controllers/institutions_controller_spec.rb +64 -0
  322. data/spec/controllers/ocr_search_controller_spec.rb +71 -0
  323. data/spec/controllers/pages_controller_spec.rb +58 -0
  324. data/spec/controllers/users_controller_spec.rb +62 -0
  325. data/spec/features/catalog/_az_links_spec.rb +27 -0
  326. data/spec/features/catalog/_show_partials/_show_book_viewer_link_spec.rb +47 -0
  327. data/spec/features/catalog/_show_partials/_show_default_simple_img_viewer_spec.rb +19 -0
  328. data/spec/features/catalog/_show_partials/_show_flagged_notice_spec.rb +23 -0
  329. data/spec/features/catalog/_show_partials/_show_multi_img_spec.rb +18 -0
  330. data/spec/features/catalog/_show_partials/_show_volumes_spec.rb +24 -0
  331. data/spec/features/collections/index_spec.rb +35 -0
  332. data/spec/features/feedback/show_spec.rb +47 -0
  333. data/spec/features/image_viewer/book_viewer_spec.rb +67 -0
  334. data/spec/features/institutions/index_spec.rb +31 -0
  335. data/spec/features/institutions/map_view_spec.rb +37 -0
  336. data/spec/features/more_like_this_search_spec.rb +23 -0
  337. data/spec/features/ocr_search/index_spec.rb +89 -0
  338. data/spec/fixtures/sample_rss_feed.xml +56 -0
  339. data/spec/fixtures/sample_solr_documents.yml +2748 -0
  340. data/spec/helpers/application_helper_spec.rb +114 -0
  341. data/spec/helpers/catalog_helper_spec.rb +386 -0
  342. data/spec/helpers/collections_helper_spec.rb +28 -0
  343. data/spec/helpers/component_helper_spec.rb +34 -0
  344. data/spec/helpers/folders_helper_spec.rb +31 -0
  345. data/spec/helpers/image_viewer_helper_spec.rb +15 -0
  346. data/spec/helpers/institutions_helper_spec.rb +53 -0
  347. data/spec/helpers/ocr_search_helper_spec.rb +70 -0
  348. data/spec/helpers/pages_helper_spec.rb +21 -0
  349. data/spec/lib/commonwealth-vlr-engine/commonwealth_search_builder_spec.rb +101 -0
  350. data/spec/lib/commonwealth-vlr-engine/controller_override_spec.rb +41 -0
  351. data/spec/lib/commonwealth-vlr-engine/controller_spec.rb +33 -0
  352. data/spec/lib/commonwealth-vlr-engine/finder_spec.rb +140 -0
  353. data/spec/lib/commonwealth-vlr-engine/iiif_manifest_spec.rb +157 -0
  354. data/spec/lib/commonwealth-vlr-engine/render_constraints_override_spec.rb +97 -0
  355. data/spec/mailers/notifier_spec.rb +31 -0
  356. data/spec/models/carousel_slide_spec.rb +38 -0
  357. data/spec/spec_helper.rb +40 -0
  358. data/spec/tasks/vlr_engine_rake_spec.rb +28 -0
  359. data/spec/test_app_templates/lib/generators/test_app_generator.rb +23 -0
  360. data/tasks/vlr_engine.rake +46 -0
  361. metadata +788 -0
@@ -0,0 +1,19 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'openseadragon image viewer modal' do
4
+
5
+ before do
6
+ visit solr_document_path(:id => 'bpl-dev:h702q6403')
7
+ end
8
+
9
+ it 'should display the OSd viewer modal when the image is clicked', :js => true do
10
+ find('#img_viewer_link').trigger('click')
11
+ expect(page).to have_selector('.openseadragon-container')
12
+ end
13
+
14
+ it 'should display the OSd viewer modal when the zoom icon is clicked', :js => true do
15
+ click_link('img_show_zoom_cue')
16
+ expect(page).to have_selector('.openseadragon-container')
17
+ end
18
+
19
+ end
@@ -0,0 +1,23 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'flagged item modal', js: true do
4
+
5
+ before(:each) do
6
+ visit solr_document_path(:id => 'bpl-dev:00000007x')
7
+ end
8
+
9
+ it 'should display the flagged item modal when the page is loaded' do
10
+ expect(page).to have_selector('#flagged_warning')
11
+ end
12
+
13
+ it 'should return to the search page when the "back" button is clicked' do
14
+ click_link('Back to Search')
15
+ expect(page).to have_selector('#basic_search')
16
+ end
17
+
18
+ it 'should close the flagged item modal when the accept button is clicked' do
19
+ click_button('View Content')
20
+ expect(page).not_to have_selector('#flagged_warning')
21
+ end
22
+
23
+ end
@@ -0,0 +1,18 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'multi image viewer' do
4
+
5
+ before(:each) do
6
+ visit solr_document_path(:id => 'bpl-dev:h702q6403')
7
+ click_link('carousel-nav_next')
8
+ end
9
+
10
+ it 'should display the next image when a prev-next link is clicked' do
11
+ expect(find('.img_show')['src']).to match /bpl-dev:h702q642n/
12
+ end
13
+
14
+ it 'should update the thumbnail in the #thumbnail_list' do
15
+ expect(all('#thumbnail_list li').last).to have_selector('.in_viewer')
16
+ end
17
+
18
+ end
@@ -0,0 +1,24 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'show volumes list', js: true do
4
+
5
+ before(:each) do
6
+ visit solr_document_path(:id => 'bpl-dev:3j334b469')
7
+ end
8
+
9
+ it 'should display the volumes list' do
10
+ expect(page).to have_selector('#volumes_wrapper')
11
+ end
12
+
13
+ it 'should hide the read and download links' do
14
+ expect(page).to have_selector('a.book_viewer_link', visible: false)
15
+ end
16
+
17
+ it 'should display the read, search, and download links when the volume title is clicked' do
18
+ click_link('V.1')
19
+ expect(page).to have_selector('.book_viewer_link', visible: true)
20
+ expect(page).to have_selector('.search_inside_link', visible: true)
21
+ expect(page).to have_selector('.download_volume_links', visible: true)
22
+ end
23
+
24
+ end
@@ -0,0 +1,35 @@
1
+ require 'spec_helper'
2
+
3
+ #include CommonwealthVlrEngine::CollectionsHelperBehavior
4
+
5
+ describe 'Collections#index view' do #, js: true do
6
+
7
+ before { visit collections_path }
8
+
9
+ describe 'facets' do
10
+
11
+ it 'should show facets in the sidebar' do
12
+ expect(page).to have_selector('.facet-content')
13
+ end
14
+
15
+ it 'should not show "Collections" in the facet list for basic genre' do
16
+ within ('#facet-genre_basic_ssim') do
17
+ expect(page.text).to_not include('Collections')
18
+ end
19
+ end
20
+
21
+ describe 'click on facet value' do
22
+
23
+ before { click_link('Photographs') }
24
+
25
+ it 'should show the facet limit in the applied params widget' do
26
+ within ('.constraint-value') do
27
+ expect(page.text).to include('Photographs')
28
+ end
29
+ end
30
+
31
+ end
32
+
33
+ end
34
+
35
+ end
@@ -0,0 +1,47 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'feedback form', js: true do
4
+
5
+ before do
6
+ visit feedback_path
7
+ end
8
+
9
+ describe 'feedback help alerts' do
10
+
11
+ let(:contact_help_text_id) { '#contact_help_text' }
12
+
13
+ it 'should not display the feedback help text' do
14
+ expect(page).to have_selector("#{contact_help_text_id}.hidden", visible: false)
15
+ end
16
+
17
+ describe 'selecting type option with help text' do
18
+
19
+ before do
20
+ select I18n.t('blacklight.feedback.form.topic.options.repro.option'), :from => 'message_type_select'
21
+ end
22
+
23
+ it 'should display the feedback help text' do
24
+ expect(page).not_to have_selector("#{contact_help_text_id}.hidden")
25
+ expect(page).to have_selector("#{contact_help_text_id}", visible: true)
26
+ end
27
+
28
+ describe 'then selecting type option without help text' do
29
+
30
+ before do
31
+ select I18n.t('blacklight.feedback.form.topic.options.default.option'), :from => 'message_type_select'
32
+ end
33
+
34
+ it 'should not display the feedback help text' do
35
+ expect(page).to have_selector("#{contact_help_text_id}.hidden", visible: false)
36
+ end
37
+
38
+ end
39
+
40
+ end
41
+
42
+ end
43
+
44
+ end
45
+
46
+
47
+
@@ -0,0 +1,67 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'book_viewer', js: true do
4
+
5
+ let(:book_pid) { 'bpl-dev:7s75dn48d' }
6
+ let(:ocr_search_param) { 'ocr_q' }
7
+ let(:ocr_search_term) { 'instruction' }
8
+
9
+ describe 'search behavior' do
10
+
11
+ before do
12
+ visit book_viewer_path(:id => book_pid)
13
+ click_link('toggle-search')
14
+ end
15
+
16
+ it 'should render the search inside partial as a Bootstrap modal within the page' do
17
+ expect(page).to have_selector('.modal-header')
18
+ expect(page).to have_selector('.blacklight-image_viewer')
19
+ end
20
+
21
+ describe 'running a search' do
22
+
23
+ before do
24
+ within 'form.ocr-search-form' do
25
+ fill_in ocr_search_param, with: ocr_search_term
26
+ click_button('search')
27
+ end
28
+ end
29
+
30
+ it 'should display the results in the modal window within the page' do
31
+ expect(page).to have_selector('.modal-header')
32
+ expect(page).to have_selector('.blacklight-image_viewer')
33
+ end
34
+
35
+ describe 'linking to page' do
36
+
37
+ before do
38
+ click_link('Page 5')
39
+ end
40
+
41
+ it 'should go to the correct page' do
42
+ expect(page).to have_selector('div.page.current img[src*="bpl-dev:7s75dn59x"]')
43
+ end
44
+
45
+ it 'should update the URL' do
46
+ expect(current_url).to include("#{ocr_search_param}=#{ocr_search_term}#1/2")
47
+ end
48
+
49
+ describe 'starting a new search' do
50
+
51
+ before do
52
+ find('#toggle-search').trigger('click')
53
+ end
54
+
55
+ it 'should display the results for the most recent search' do
56
+ expect(page).to have_selector('#ocr_search_details')
57
+ end
58
+
59
+ end
60
+
61
+ end
62
+
63
+ end
64
+
65
+ end
66
+
67
+ end
@@ -0,0 +1,31 @@
1
+ require 'spec_helper'
2
+
3
+ include CommonwealthVlrEngine::InstitutionsHelperBehavior
4
+
5
+ # set this helper to return true so AZ links are rendered
6
+ def should_render_inst_az?
7
+ true
8
+ end
9
+
10
+ describe 'Institutions#index view' do #, js: true do
11
+
12
+ before { visit institutions_path }
13
+
14
+ # this is really a test for CommonwealthVlrEngine::Controller#search_action_path
15
+ describe 'search_action_path' do
16
+
17
+ before do
18
+ within 'div.item_az_links' do
19
+ click_link('B')
20
+ end
21
+ end
22
+
23
+ it 'should have the correct path in the Start Over link' do
24
+ within ('#startOverLink') do
25
+ expect(page.html).to include('/institutions')
26
+ end
27
+ end
28
+
29
+ end
30
+
31
+ end
@@ -0,0 +1,37 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'Institutions#index map view', js: true do
4
+
5
+ before { visit institutions_path(:view => 'maps') }
6
+
7
+ it 'should show map marker' do
8
+ within ('#institutions-index-map') do
9
+ expect(page).to have_selector('.leaflet-marker-icon')
10
+ end
11
+ end
12
+
13
+ describe 'click marker cluster' do
14
+
15
+ before { find('div.leaflet-marker-icon').click }
16
+
17
+ it 'should show the search_form_institution content' do
18
+ within ('div.leaflet-popup-content') do
19
+ expect(page.text).to include('institution')
20
+ end
21
+ end
22
+
23
+ describe 'constraints links' do
24
+
25
+ before { find('div.leaflet-popup-content a').click }
26
+
27
+ it 'should have .constraints > a.remove that links to institutions#index' do
28
+ within ('#appliedParams') do
29
+ expect(page.html).to include('/institutions?')
30
+ end
31
+ end
32
+
33
+ end
34
+
35
+ end
36
+
37
+ end
@@ -0,0 +1,23 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'more like this search' do
4
+
5
+ it 'should show the more-like-this search link' do
6
+ visit solr_document_path(:id => 'bpl-dev:df65v790j')
7
+ within ('#more_like_this') do
8
+ expect(page).to have_selector('#more_mlt_link')
9
+ end
10
+ end
11
+
12
+ it 'should show related results after clicking the link' do
13
+ visit solr_document_path(:id => 'bpl-dev:df65v790j')
14
+ click_link('more_mlt_link')
15
+ expect(page).to have_selector('#documents div.document')
16
+ end
17
+
18
+ it 'should show the constraint for a more-like-this search' do
19
+ visit catalog_index_path(:mlt_id => 'bpl-dev:df65v790j', :qt => 'mlt')
20
+ expect(page).to have_selector('#appliedParams span.mlt')
21
+ end
22
+
23
+ end
@@ -0,0 +1,89 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'OCR search index view' do
4
+
5
+ let(:book_pid) { 'bpl-dev:7s75dn48d' }
6
+
7
+ describe 'loading the search form' do
8
+
9
+ describe 'with no current_search_session params' do
10
+ it 'should display the search form' do
11
+ visit ocr_search_path(id: book_pid)
12
+ expect(page).to have_selector('form.ocr-search-form')
13
+ end
14
+ end
15
+
16
+ describe 'with current_search_session params' do
17
+
18
+ before do
19
+ visit catalog_index_path(q: 'foo')
20
+ end
21
+
22
+ it 'should display the suggestion link' do
23
+ visit ocr_search_path(id: book_pid)
24
+ expect(page).to have_selector('#ocr_search_suggest')
25
+ end
26
+
27
+ end
28
+
29
+ end
30
+
31
+ describe 'running a search' do
32
+
33
+ before { visit ocr_search_path(id: book_pid) }
34
+
35
+ describe 'no matches' do
36
+ it 'should render the no matches partial' do
37
+ within 'form.ocr-search-form' do
38
+ fill_in 'ocr_q', with: 'sdfsdf'
39
+ click_button('search')
40
+ end
41
+ expect(page).to have_selector('#zero_results_ocr')
42
+ end
43
+ end
44
+
45
+ describe 'with matches' do
46
+
47
+ before do
48
+ within 'form.ocr-search-form' do
49
+ fill_in 'ocr_q', with: 'the'
50
+ click_button('search')
51
+ end
52
+ end
53
+
54
+ it 'should display the sort widget' do
55
+ expect(page).to have_selector('#sort-dropdown')
56
+ end
57
+
58
+ it 'should display the search results' do
59
+ expect(page).to have_selector('.ocr_search_result', count: 2)
60
+ end
61
+
62
+ it 'should display the page link, snippets, term frequency, and more matches' do
63
+ expect(page).to have_selector('.ocr_page_link', count: 2)
64
+ expect(page).to have_selector('.first_snippet', count: 2)
65
+ expect(page).to have_selector('.ocr_term_freq', count: 2)
66
+ expect(page).to have_selector('.ocr_snippets_expand', count: 2)
67
+ end
68
+
69
+ it 'should have hidden snippets' do
70
+ expect(page).to have_selector('#snippet_collapse_1', visible: false)
71
+ end
72
+
73
+ describe 'show hidden snippets' do
74
+
75
+ before do
76
+ page.find("a[href*='#snippet_collapse_1']").click
77
+ end
78
+
79
+ it 'should display more snippets' do
80
+ expect(page).to have_selector('#snippet_collapse_1', visible: true)
81
+ end
82
+
83
+ end
84
+
85
+ end
86
+
87
+ end
88
+
89
+ end
@@ -0,0 +1,56 @@
1
+ <?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
2
+ xmlns:content="http://purl.org/rss/1.0/modules/content/"
3
+ xmlns:wfw="http://wellformedweb.org/CommentAPI/"
4
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
5
+ xmlns:atom="http://www.w3.org/2005/Atom"
6
+ xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
7
+ xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
8
+ >
9
+ <channel>
10
+ <title>News &#38; Announcements - Digital Commonwealth</title>
11
+ <atom:link href="http://blog.somelibrary.org/?feed=rss2" rel="self" type="application/rss+xml" />
12
+ <link>http://blog.somelibrary.org</link>
13
+ <description></description>
14
+ <lastBuildDate>Tue, 15 Sep 2015 03:32:42 +0000</lastBuildDate>
15
+ <language>en-US</language>
16
+ <sy:updatePeriod>hourly</sy:updatePeriod>
17
+ <sy:updateFrequency>1</sy:updateFrequency>
18
+ <item>
19
+ <title>Event 1</title>
20
+ <link>http://blog.somelibrary.org/?p=942</link>
21
+ <comments>http://blog.somelibrary.org/?p=942#comments</comments>
22
+ <pubDate>Tue, 15 Sep 2015 03:25:56 +0000</pubDate>
23
+ <guid isPermaLink="false">http://blog.somelibrary.org/?p=942</guid>
24
+ <description>Description</description>
25
+ <content:encoded>Content</content:encoded>
26
+ </item>
27
+ <item>
28
+ <title>Event 2</title>
29
+ <link>http://blog.somelibrary.org/?p=941</link>
30
+ <comments>http://blog.somelibrary.org/?p=941#comments</comments>
31
+ <pubDate>Mon, 14 Sep 2015 03:25:56 +0000</pubDate>
32
+ <guid isPermaLink="false">http://blog.somelibrary.org/?p=941</guid>
33
+ <description>Description 2</description>
34
+ <content:encoded>Content</content:encoded>
35
+ </item>
36
+ <item>
37
+ <title>Event 3</title>
38
+ <link>http://blog.somelibrary.org/?p=940</link>
39
+ <comments>http://blog.somelibrary.org/?p=940#comments</comments>
40
+ <pubDate>Sun, 13 Sep 2015 03:25:56 +0000</pubDate>
41
+ <guid isPermaLink="false">http://blog.somelibrary.org/?p=940</guid>
42
+ <description>Description 3</description>
43
+ <content:encoded>Content</content:encoded>
44
+ </item>
45
+ <item>
46
+ <title>Event 4</title>
47
+ <link>http://blog.somelibrary.org/?p=939</link>
48
+ <comments>http://blog.somelibrary.org/?p=939#comments</comments>
49
+ <pubDate>Sat, 12 Sep 2015 03:25:56 +0000</pubDate>
50
+ <guid isPermaLink="false">http://blog.somelibrary.org/?p=939</guid>
51
+ <description>Description 4</description>
52
+ <content:encoded>Content</content:encoded>
53
+ </item>
54
+ </channel>
55
+ </rss>
56
+