blacklight-spotlight 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.md +39 -0
- data/Rakefile +58 -0
- data/app/assets/javascripts/spotlight/application.js +19 -0
- data/app/assets/javascripts/spotlight/attachments.js +2 -0
- data/app/assets/javascripts/spotlight/exhibits.js +11 -0
- data/app/assets/javascripts/spotlight/pages.js +61 -0
- data/app/assets/javascripts/spotlight/record_thumbnail_block.js +53 -0
- data/app/assets/javascripts/spotlight/search_result_block.js +28 -0
- data/app/assets/javascripts/spotlight/searches.js +6 -0
- data/app/assets/javascripts/spotlight/spotlight.js +39 -0
- data/app/assets/stylesheets/scaffold.css +56 -0
- data/app/assets/stylesheets/spotlight/application.css +15 -0
- data/app/assets/stylesheets/spotlight/attachments.css +4 -0
- data/app/assets/stylesheets/spotlight/browse.css.scss +9 -0
- data/app/assets/stylesheets/spotlight/curation.css.scss +56 -0
- data/app/assets/stylesheets/spotlight/header.css.scss +15 -0
- data/app/assets/stylesheets/spotlight/nestable.css.scss +91 -0
- data/app/assets/stylesheets/spotlight/pages.css +4 -0
- data/app/assets/stylesheets/spotlight/record_thumbnail_block.css.scss +4 -0
- data/app/controllers/spotlight/about_pages_controller.rb +16 -0
- data/app/controllers/spotlight/application_controller.rb +14 -0
- data/app/controllers/spotlight/attachments_controller.rb +68 -0
- data/app/controllers/spotlight/blacklight_configurations_controller.rb +46 -0
- data/app/controllers/spotlight/browse_controller.rb +21 -0
- data/app/controllers/spotlight/catalog_controller.rb +19 -0
- data/app/controllers/spotlight/contact_forms_controller.rb +25 -0
- data/app/controllers/spotlight/exhibits_controller.rb +33 -0
- data/app/controllers/spotlight/feature_pages_controller.rb +17 -0
- data/app/controllers/spotlight/home_pages_controller.rb +50 -0
- data/app/controllers/spotlight/pages_controller.rb +92 -0
- data/app/controllers/spotlight/searches_controller.rb +59 -0
- data/app/helpers/spotlight/application_helper.rb +36 -0
- data/app/helpers/spotlight/attachments_helper.rb +4 -0
- data/app/helpers/spotlight/home_pages_helper.rb +22 -0
- data/app/helpers/spotlight/main_app_helpers.rb +9 -0
- data/app/helpers/spotlight/pages_helper.rb +10 -0
- data/app/models/ability.rb +3 -0
- data/app/models/concerns/spotlight/user.rb +6 -0
- data/app/models/spotlight/ability.rb +32 -0
- data/app/models/spotlight/about_page.rb +4 -0
- data/app/models/spotlight/attachment.rb +9 -0
- data/app/models/spotlight/blacklight_configuration.rb +145 -0
- data/app/models/spotlight/contact_form.rb +21 -0
- data/app/models/spotlight/exhibit.rb +71 -0
- data/app/models/spotlight/feature_page.rb +8 -0
- data/app/models/spotlight/home_page.rb +4 -0
- data/app/models/spotlight/page.rb +31 -0
- data/app/models/spotlight/role.rb +5 -0
- data/app/models/spotlight/search.rb +32 -0
- data/app/uploaders/attachment_uploader.rb +65 -0
- data/app/views/_user_util_links.html.erb +21 -0
- data/app/views/catalog/_save_search.html.erb +21 -0
- data/app/views/catalog/_sort_and_per_page.html.erb +9 -0
- data/app/views/layouts/spotlight/spotlight.html.erb +56 -0
- data/app/views/shared/_exhibit_masthead.html.erb +12 -0
- data/app/views/shared/_exhibit_navbar.html.erb +34 -0
- data/app/views/shared/_header_navbar.html.erb +20 -0
- data/app/views/sir-trevor/blocks/_record_thumbnail_block.html.erb +15 -0
- data/app/views/sir-trevor/blocks/_search_results_block.html.erb +8 -0
- data/app/views/spotlight/about_pages/_sidebar.html.erb +8 -0
- data/app/views/spotlight/attachments/_form.html.erb +29 -0
- data/app/views/spotlight/attachments/edit.html.erb +6 -0
- data/app/views/spotlight/attachments/index.html.erb +31 -0
- data/app/views/spotlight/attachments/new.html.erb +5 -0
- data/app/views/spotlight/attachments/show.html.erb +19 -0
- data/app/views/spotlight/blacklight_configurations/edit_facet_fields.html.erb +44 -0
- data/app/views/spotlight/blacklight_configurations/edit_metadata_fields.html.erb +44 -0
- data/app/views/spotlight/browse/_search.html.erb +17 -0
- data/app/views/spotlight/browse/index.html.erb +3 -0
- data/app/views/spotlight/browse/show.html.erb +13 -0
- data/app/views/spotlight/catalog/_document.html.erb +5 -0
- data/app/views/spotlight/catalog/_document_list.html.erb +7 -0
- data/app/views/spotlight/catalog/_index_compact_default.html.erb +26 -0
- data/app/views/spotlight/catalog/_search_header.html.erb +5 -0
- data/app/views/spotlight/catalog/index.html.erb +22 -0
- data/app/views/spotlight/contact_forms/new.html.erb +14 -0
- data/app/views/spotlight/contact_forms/show.html.erb +4 -0
- data/app/views/spotlight/exhibits/edit.html.erb +34 -0
- data/app/views/spotlight/feature_pages/_header.html.erb +18 -0
- data/app/views/spotlight/feature_pages/_sidebar.html.erb +8 -0
- data/app/views/spotlight/home_pages/_sidebar.html.erb +3 -0
- data/app/views/spotlight/pages/_form.html.erb +25 -0
- data/app/views/spotlight/pages/_header.html.erb +0 -0
- data/app/views/spotlight/pages/_page.html.erb +42 -0
- data/app/views/spotlight/pages/_sidebar.html.erb +0 -0
- data/app/views/spotlight/pages/edit.html.erb +6 -0
- data/app/views/spotlight/pages/index.html.erb +27 -0
- data/app/views/spotlight/pages/new.html.erb +5 -0
- data/app/views/spotlight/pages/show.html.erb +10 -0
- data/app/views/spotlight/searches/_search.html.erb +27 -0
- data/app/views/spotlight/searches/edit.html.erb +17 -0
- data/app/views/spotlight/searches/index.html.erb +24 -0
- data/app/views/spotlight/shared/_curation_sidebar.html.erb +13 -0
- data/config/jetty.yml +6 -0
- data/config/locales/spotlight.en.yml +101 -0
- data/config/routes.rb +32 -0
- data/db/migrate/20131119213142_create_spotlight_pages.rb +17 -0
- data/db/migrate/20131120172811_create_spotlight_attachments.rb +11 -0
- data/db/migrate/20140128155151_create_exhibits.rb +15 -0
- data/db/migrate/20140128155152_create_roles.rb +11 -0
- data/db/migrate/20140130155151_create_spotlight_searches.rb +17 -0
- data/db/migrate/20140130215634_create_spotlight_blacklight_configurations.rb +17 -0
- data/lib/blacklight/spotlight.rb +1 -0
- data/lib/generators/spotlight/install_generator.rb +38 -0
- data/lib/generators/spotlight/templates/spotlight.css.scss +3 -0
- data/lib/generators/spotlight/templates/spotlight.js +1 -0
- data/lib/spotlight.rb +6 -0
- data/lib/spotlight/catalog.rb +7 -0
- data/lib/spotlight/controller.rb +14 -0
- data/lib/spotlight/engine.rb +23 -0
- data/lib/spotlight/rails/routes.rb +8 -0
- data/lib/spotlight/version.rb +3 -0
- data/lib/tasks/spotlight_tasks.rake +21 -0
- data/spec/controllers/application_controller_spec.rb +5 -0
- data/spec/controllers/catalog_controller_spec.rb +5 -0
- data/spec/controllers/spotlight/about_pages_controller_spec.rb +58 -0
- data/spec/controllers/spotlight/blacklight_configurations_controller_spec.rb +99 -0
- data/spec/controllers/spotlight/browse_controller_spec.rb +33 -0
- data/spec/controllers/spotlight/catalog_controller_spec.rb +39 -0
- data/spec/controllers/spotlight/exhibits_controller_spec.rb +62 -0
- data/spec/controllers/spotlight/feature_pages_controller_spec.rb +161 -0
- data/spec/controllers/spotlight/home_pages_controller_spec.rb +43 -0
- data/spec/controllers/spotlight/searches_controller_spec.rb +99 -0
- data/spec/factories/exhibits.rb +7 -0
- data/spec/factories/pages.rb +20 -0
- data/spec/factories/roles.rb +5 -0
- data/spec/factories/searches.rb +15 -0
- data/spec/factories/users.rb +22 -0
- data/spec/features/create_page_spec.rb +44 -0
- data/spec/features/curator_items.rb +15 -0
- data/spec/features/exhibits/edit_facet_fields_spec.rb +49 -0
- data/spec/features/exhibits/edit_metadata_fields_spec.rb +30 -0
- data/spec/features/javascript/feature_page_admin_spec.rb +68 -0
- data/spec/features/javascript/record_thumbnail_block_spec.rb +68 -0
- data/spec/features/report_a_problem_spec.rb +27 -0
- data/spec/fixtures/sample_solr_documents.yml +7545 -0
- data/spec/helpers/spotlight/pages_helper_spec.rb +30 -0
- data/spec/internal/Gemfile +53 -0
- data/spec/internal/Gemfile.lock +240 -0
- data/spec/internal/README.rdoc +28 -0
- data/spec/internal/Rakefile +6 -0
- data/spec/internal/app/assets/javascripts/application.js +19 -0
- data/spec/internal/app/assets/javascripts/spotlight.js +1 -0
- data/spec/internal/app/assets/stylesheets/application.css +13 -0
- data/spec/internal/app/assets/stylesheets/blacklight.css.scss +3 -0
- data/spec/internal/app/assets/stylesheets/spotlight.css.scss +3 -0
- data/spec/internal/app/controllers/application_controller.rb +14 -0
- data/spec/internal/app/controllers/catalog_controller.rb +92 -0
- data/spec/internal/app/helpers/application_helper.rb +2 -0
- data/spec/internal/app/models/solr_document.rb +21 -0
- data/spec/internal/app/models/user.rb +17 -0
- data/spec/internal/app/views/layouts/application.html.erb +14 -0
- data/spec/internal/bin/bundle +3 -0
- data/spec/internal/bin/rails +4 -0
- data/spec/internal/bin/rake +4 -0
- data/spec/internal/config.ru +4 -0
- data/spec/internal/config/application.rb +23 -0
- data/spec/internal/config/boot.rb +4 -0
- data/spec/internal/config/database.yml +25 -0
- data/spec/internal/config/environment.rb +5 -0
- data/spec/internal/config/environments/development.rb +29 -0
- data/spec/internal/config/environments/production.rb +80 -0
- data/spec/internal/config/environments/test.rb +36 -0
- data/spec/internal/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/internal/config/initializers/devise.rb +254 -0
- data/spec/internal/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/internal/config/initializers/inflections.rb +16 -0
- data/spec/internal/config/initializers/mime_types.rb +5 -0
- data/spec/internal/config/initializers/secret_token.rb +12 -0
- data/spec/internal/config/initializers/session_store.rb +3 -0
- data/spec/internal/config/initializers/wrap_parameters.rb +14 -0
- data/spec/internal/config/jetty.yml +6 -0
- data/spec/internal/config/locales/blacklight.en.yml +3 -0
- data/spec/internal/config/locales/devise.en.yml +59 -0
- data/spec/internal/config/locales/en.yml +23 -0
- data/spec/internal/config/routes.rb +60 -0
- data/spec/internal/config/solr.yml +16 -0
- data/spec/internal/db/development.sqlite3 +0 -0
- data/spec/internal/db/migrate/20140206235502_devise_create_users.rb +42 -0
- data/spec/internal/db/migrate/20140206235504_add_devise_guests_to_users.rb +15 -0
- data/spec/internal/db/migrate/20140206235506_create_searches.blacklight.rb +19 -0
- data/spec/internal/db/migrate/20140206235507_create_bookmarks.blacklight.rb +18 -0
- data/spec/internal/db/migrate/20140206235508_create_spotlight_pages.spotlight.rb +18 -0
- data/spec/internal/db/migrate/20140206235509_create_spotlight_attachments.spotlight.rb +12 -0
- data/spec/internal/db/migrate/20140206235510_create_exhibits.spotlight.rb +16 -0
- data/spec/internal/db/migrate/20140206235511_create_roles.spotlight.rb +12 -0
- data/spec/internal/db/migrate/20140206235512_create_spotlight_searches.spotlight.rb +18 -0
- data/spec/internal/db/migrate/20140206235513_create_spotlight_blacklight_configurations.spotlight.rb +18 -0
- data/spec/internal/db/schema.rb +128 -0
- data/spec/internal/db/seeds.rb +7 -0
- data/spec/internal/db/test.sqlite3 +0 -0
- data/spec/internal/lib/generators/test_app_generator.rb +25 -0
- data/spec/internal/lib/tasks/spotlight_test.rake +12 -0
- data/spec/internal/log/development.log +4022 -0
- data/spec/internal/log/test.log +13968 -0
- data/spec/internal/public/404.html +58 -0
- data/spec/internal/public/422.html +58 -0
- data/spec/internal/public/500.html +57 -0
- data/spec/internal/public/favicon.ico +0 -0
- data/spec/internal/public/robots.txt +5 -0
- data/spec/internal/test/fixtures/users.yml +11 -0
- data/spec/internal/test/models/user_test.rb +7 -0
- data/spec/internal/test/test_helper.rb +15 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_alerts.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_badges.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_breadcrumbs.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_button-groups.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_buttons.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_carousel.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_close.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_code.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_component-animations.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_dropdowns.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_forms.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_glyphicons.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_grid.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_input-groups.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_jumbotron.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_labels.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_list-group.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_media.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_mixins.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_modals.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_navbar.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_navs.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_normalize.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_pager.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_pagination.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_panels.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_popovers.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_print.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_progress-bars.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_responsive-utilities.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_scaffolding.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_tables.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_thumbnails.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_tooltip.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_type.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_utilities.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_variables.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/27e2a5f741cb5b305187fb9f60bd54cbad191cee/_wells.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/57c0d7bcb994fdcd2936438bb30ba7a791220a90/default.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/7f56115890a28a29097cd3010106a2711cb6c5e4/blacklight.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/7f56115890a28a29097cd3010106a2711cb6c5e4/spotlight.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/86639965509c9318bb7a3137a93a669b1d159dac/browse.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/86639965509c9318bb7a3137a93a669b1d159dac/curation.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/86639965509c9318bb7a3137a93a669b1d159dac/header.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/86639965509c9318bb7a3137a93a669b1d159dac/nestable.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/86639965509c9318bb7a3137a93a669b1d159dac/record_thumbnail_block.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_blacklight_base.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_bookmark.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_catalog.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_facets.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_group.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_header.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_layout.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_modal.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/_search_history.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/blacklight.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/8f57815ddac261385d0c0817e8785373806e1308/blacklight_defaults.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sass/ea576b86ea8d24c041d74febb5a2299daa5eebfa/bootstrap.scssc +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/027fea410d43452180cc570159bf9cf7 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/057d1fa18bc0e1e5b993210f991d9fc8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/080658a24e9de0bbe115b41b2d9e06c8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/087a79914d85e6b54d8988731ab53136 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/0cad22d181614fbdca755e591be6fa1c +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/0de3c377f7421a594ac39ed536b135b0 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/0deba0db9c30e052db9c6f78ae250989 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/108ed3acf1cababc3ccda6af2a4fdca6 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/122bde84dd6cfb9aa6cbb3602c1aa0e9 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/1465aad16206b571e00aa82a16e36380 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/153e55a308813e3c473924a6ef251a76 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/18f05727080f01cd1f6107986e8ef8de +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/19f33e0eae57f608784997d89e271722 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/1ba4256ac293f73c2f4ccb863947876c +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/1d988d95cdf0f87a7817b5c3298cad73 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/1de497275b10b6f32200a846eae58949 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/1f7f2566a4c6697102847e0b791ea7e2 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/20e76a31193186a7494d2e61c38cf2d3 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/2547f96016cfc61bb5ecd334fc794ec4 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/2b621825bca02aece2a68cd70e2548d8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/2c77e85b70df92a428365a2e2ef71e2d +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/2cf9505aa610540803440d6b85d1df4c +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/3202b90ab287ed956815ada8e064f767 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/324e7f183c594151b026cdc2948523bf +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/32d78fc2869ebc867e1904acaad429a8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/33956f5ff4216b0f576e7981f128d2cd +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/3f1f6e242f0a6091c4f7eca81a27f2a4 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/46dc001d1309090c6b365c364fdaa26a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/47e7401ed0031ca67220681719559e72 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/4821062d0243d0f3ad2690e7155acc9e +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/4b102e04198efe0f8b34684c1aaaeb20 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/4b14e90d11a9a4a3ff0863b3cdf28687 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/4ea47b50d05ede7e20ba33f8056f4a92 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/509e1af09af37b02d6bf054d106762ef +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/5228747f20db13cd1842569a0b4d27a8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/52582bfdd22ea0bbd52dd8d4b8c911c8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/53a4fa5b7759f81cdd42e23e9948afea +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/56653f30daec26f700bcf6b7d993f663 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/566e59b689dc2d19731aa1be0561e4a5 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/57dd4ba72cf24cc3ddefc29a90d21e7c +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/57e88b9c9b3246e0554f88ee3f591d4d +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/5a7a1e01b0babb2c7ccaa77e11566f48 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/5baa690fe86addf567b1d575871e3f0a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/5c9a022bacc2286f35355e98c71bbf1d +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/5d366dc18b9d993e45b25bbeebd193f8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/60670f464c5599c5372232b4572eb0e7 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/61b33c8de9b9635815d78ae4d0651421 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/61bd95bd5682421c2fe95a5214946dd6 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/62083f335fc263942d5295bc5d6221c7 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/63b98246f4f05488e1b5914b796db489 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/650cfc75104b1583a6fa2ea130eee6ea +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/66f8fc3b5bbf1829a95239083e9abdb9 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/670abadd46e1a2d1f20041e240b70d14 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/68072b0a65736f8a201cfa3901c8d741 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/688940613a12875883378594cee815f0 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/6b9e4455a0b79827fa5395c06e938545 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/6d03c8cc881b762d46baa13fc04db6ff +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/6d5dfd8ac2dccc266426bb5ebb16da5d +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/6f8b7495883fbcbe020c22a1df084241 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/7460c5bff9c90eb138ff07bf3afc71e3 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/75568cdc8c990ae2f6aa620313c33fab +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/76b56ee6205ef8ac8c5184e2fa6806de +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/76e68eadc18148bbc7404e36afe94d1b +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/7a27f5274b6ff4a9da4802de5e0ce100 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/7b1d339b7c370a8bc7335315fc90c285 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/7b9996a94cec146a5c7e9bf95c80737a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/7bf9acc825022f0424cd4ccfb51a57b8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/7e0b25e99e03df931c2f96f1823fe85a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/81cd00ea178ccdbc398f57bc2559dd84 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/86a76437386eeac88713cc514abf0f93 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/86ccc010fd5172ab35a96295c78d335b +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/86cdeea552858d068703405a7ba2ee3a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/886ce70326f2caec8fe4372351f1a442 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/8947a8a58b6f1f989ff707a4f0eb78e3 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/89e9146e88b64247d977a64e32337a6f +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/8b44de87380689cc74f57312141285b4 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/8c5e663a28a29017020ab8e026d92e73 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/8d3ef4024d425a68e618461ba8db037b +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/8dc5fbd0f77eea2d1b3af6024a707b3f +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/8deb4f38d381b7e17e4b5fc69eedd3dd +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/902b59495ff30077d24eaf53b340546b +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/91b396b480293aaeec2ff599af929465 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/93aaa9231a32901266b05632f3d35ecd +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9511867a1b82cbfed0061f63b2e617a7 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9658a89c9b1c50b842e900bdc963f908 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/976c2035643c83ca56d4945c1302cc5e +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9a207c2dc4675908fb5e7b4b9d0c2a3a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9a2cad4366ab55e70eba881fcf1552b1 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9b309a75f9f09f6bdbd264f46b51c3bd +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9b728cb477435b572376c53c01aed70a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9cad4327e714920ec27afae484c96b22 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9e5d0b8e4298581d34bcb92d00a10f6f +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/9f454e9700fb058adcc4ff2f4b942f7b +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/a0c35895c526b4a7bec46d5e2f5e90f9 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/a2f98a3febfae5298030bbf8e921aa72 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/a3446e3a0bd1231348be22f347f96630 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/a60980e9d41d10af4d56741c8741b4bd +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/a85e4cbff445c638c0d98c5813bf0e11 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/aa61c68149d34fa5b5400a154773c886 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/aabf26facf07694f96d71d93cc26ce81 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/aadedf451867800a145094f7b39c92d1 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/ac6714823758e543a1efc28facf9abeb +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/ac6e1c3ef7e45f031205e1aae63145d4 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/acff8fdf260f75b731a2752cabe039a3 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/ad403febe269392f688fa500dee79cc1 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/ad4a54c43c2a4c3874bfde1c9f08c248 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/af41b8abd81fca7235ff2f5eea101ec7 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/b8e7ee01850e17fbb705e088d18c8a00 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/b97ba03780eebad80c1e4c8239432f66 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/b98e31bc04d1ed8616c282ac7abaeb08 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/ba120ac0cf12986211b541f82e09ff74 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/ba43150632c4d28c3f29f0e8ec38388b +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/c2cbda4579459322ef12578211800342 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/c48e1de96b94e0a601109e1f864b1408 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/c6690cb202676be0a09efaa3d85662d2 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/c6f0a6faa37bb5c912531e7cbe0bea5f +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/c7ee24d1047e051feebc455244c1200f +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/c82663bc8a8378e410d7c672b13737c6 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/c909d76cfa3928bd1fed493d8bdc6785 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/c9ec3d06afb2cfe440a080eb40c05b2e +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/d08c1375edaded78b3606c7b4af63b4c +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/d0a2147f9a3ad98a5d61e4fe80826414 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/d1513885df939f849f36ba2c2b40b3ee +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/d159c53e21e1a9039d3106b36b84ac92 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/d2bcd182195dcc17cf37e34f033e7a9d +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/d84569cdd916cc8a606b235e12dc4793 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/da9b8567a77c69c2ac19815cb4c5ff10 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/de429a9a63459ff938dc61cfa8132e1a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/de8e960daf121ac3fd1719de5aebae85 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/e0343b5d999cf24f7fb6871b145d3368 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/e04c118e777dd56f543a6a8a54767793 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/e0fd0f648fe28c705714a8d8d471da34 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/e1b7ccff7b73993818ad0cab86fff97d +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/e2e09ef3ca7aa04271903297c8b46709 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/e7a2a052e9aa9e113cc3a63789dce762 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/e8b1266944f0354589afb643cdd3bdc6 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/eb716711c01f005bf1ad7c050e48398a +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/ebeec19a4495d8c78cc4ac91c7c9eca8 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/f067d4e168f42d001d96c5ad4530b998 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/f11879f93e77ada39f81888e2e4e4829 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/f13d5a17eadce75c7d236c2038c90450 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/f3a6e2dee823280a647ae560378d930b +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/f585ec5c9bfe8ec5f58953e069929445 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/f5a0a8a0c2c09f173355e6627a1d8c30 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/f75270647e9898128ede9277d7986676 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/fbbbd4a24912b3a6bf41e19be5bfcb59 +0 -0
- data/spec/internal/tmp/cache/assets/development/sprockets/fed43bc1912cdb19dfa4ab32cf796814 +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_alerts.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_badges.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_breadcrumbs.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_button-groups.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_buttons.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_carousel.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_close.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_code.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_component-animations.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_dropdowns.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_forms.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_glyphicons.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_grid.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_input-groups.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_jumbotron.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_labels.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_list-group.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_media.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_mixins.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_modals.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_navbar.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_navs.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_normalize.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_pager.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_pagination.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_panels.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_popovers.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_print.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_progress-bars.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_responsive-utilities.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_scaffolding.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_tables.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_thumbnails.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_tooltip.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_type.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_utilities.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_variables.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/_wells.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/359fe049c4557cb143aea0e2dbdb99427ec12d31/bootstrap.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/57c0d7bcb994fdcd2936438bb30ba7a791220a90/default.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/70efe81df54d55cb3851a2ec04a22d994c469bc6/bootstrap.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/7f56115890a28a29097cd3010106a2711cb6c5e4/blacklight.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/7f56115890a28a29097cd3010106a2711cb6c5e4/spotlight.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/86639965509c9318bb7a3137a93a669b1d159dac/browse.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/86639965509c9318bb7a3137a93a669b1d159dac/curation.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/86639965509c9318bb7a3137a93a669b1d159dac/header.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/86639965509c9318bb7a3137a93a669b1d159dac/nestable.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/86639965509c9318bb7a3137a93a669b1d159dac/record_thumbnail_block.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_blacklight_base.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_bookmark.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_catalog.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_facets.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_group.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_header.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_layout.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_modal.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/_search_history.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/blacklight.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sass/8f57815ddac261385d0c0817e8785373806e1308/blacklight_defaults.css.scssc +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/057d1fa18bc0e1e5b993210f991d9fc8 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/087a79914d85e6b54d8988731ab53136 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/0de3c377f7421a594ac39ed536b135b0 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/0deba0db9c30e052db9c6f78ae250989 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/0ea10f4bed5bf5cadfe871d225bca20b +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/10e8589fda48ff5bec36c4d7fbb0644f +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/11e890a21ef59f662c059cc396ba7bf9 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/122bde84dd6cfb9aa6cbb3602c1aa0e9 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/153e55a308813e3c473924a6ef251a76 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/18f05727080f01cd1f6107986e8ef8de +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/19f33e0eae57f608784997d89e271722 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/1ba4256ac293f73c2f4ccb863947876c +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/1d988d95cdf0f87a7817b5c3298cad73 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/1e4a15baf86f303af9f1877a23b5e432 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/274c5f30ab180485cba0e170bfdc6086 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/2c4ceb2d4089af94cd1d27e49e2d40b8 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/2c77e85b70df92a428365a2e2ef71e2d +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/3202b90ab287ed956815ada8e064f767 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/3208fe4616a2d340372aa950541bea55 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/32d78fc2869ebc867e1904acaad429a8 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/33956f5ff4216b0f576e7981f128d2cd +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/3f1f6e242f0a6091c4f7eca81a27f2a4 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/47e7401ed0031ca67220681719559e72 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/4b102e04198efe0f8b34684c1aaaeb20 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/4b14e90d11a9a4a3ff0863b3cdf28687 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/4cf0d8cc5428d7570587b142bcde94d6 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/4cf999b7c9fa95eff6bbd716a49cfd26 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/4ea47b50d05ede7e20ba33f8056f4a92 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/509e1af09af37b02d6bf054d106762ef +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/5228747f20db13cd1842569a0b4d27a8 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/52582bfdd22ea0bbd52dd8d4b8c911c8 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/53a4fa5b7759f81cdd42e23e9948afea +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/56653f30daec26f700bcf6b7d993f663 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/566e59b689dc2d19731aa1be0561e4a5 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/577e326d8a45a6555078e99b133a8907 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/57e88b9c9b3246e0554f88ee3f591d4d +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/5a71fa82f9f9b39adfcce52521ff3754 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/5a7a1e01b0babb2c7ccaa77e11566f48 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/5baa690fe86addf567b1d575871e3f0a +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/5c9a022bacc2286f35355e98c71bbf1d +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/5d366dc18b9d993e45b25bbeebd193f8 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/61b33c8de9b9635815d78ae4d0651421 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/61bd95bd5682421c2fe95a5214946dd6 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/62083f335fc263942d5295bc5d6221c7 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/6468861e985c8b8bc945bdf9a4e833f3 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/668fb2db534e4a7e59e38ba123d1faf6 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/66f8fc3b5bbf1829a95239083e9abdb9 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/688940613a12875883378594cee815f0 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/6b9e4455a0b79827fa5395c06e938545 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/6d5dfd8ac2dccc266426bb5ebb16da5d +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/7460c5bff9c90eb138ff07bf3afc71e3 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/76b56ee6205ef8ac8c5184e2fa6806de +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/76e68eadc18148bbc7404e36afe94d1b +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/7a27f5274b6ff4a9da4802de5e0ce100 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/7b9996a94cec146a5c7e9bf95c80737a +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/81cd00ea178ccdbc398f57bc2559dd84 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/86ccc010fd5172ab35a96295c78d335b +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/86cdeea552858d068703405a7ba2ee3a +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/886ce70326f2caec8fe4372351f1a442 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/8947a8a58b6f1f989ff707a4f0eb78e3 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/89e9146e88b64247d977a64e32337a6f +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/8b44de87380689cc74f57312141285b4 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/8c5e663a28a29017020ab8e026d92e73 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/8dc5fbd0f77eea2d1b3af6024a707b3f +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/8deb4f38d381b7e17e4b5fc69eedd3dd +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/902b59495ff30077d24eaf53b340546b +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/93aaa9231a32901266b05632f3d35ecd +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/9511867a1b82cbfed0061f63b2e617a7 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/9a207c2dc4675908fb5e7b4b9d0c2a3a +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/9a2cad4366ab55e70eba881fcf1552b1 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/9b309a75f9f09f6bdbd264f46b51c3bd +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/9f454e9700fb058adcc4ff2f4b942f7b +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/a2f98a3febfae5298030bbf8e921aa72 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/a60980e9d41d10af4d56741c8741b4bd +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/a8ce35eac10038896df30597b0ad27a5 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/aa61c68149d34fa5b5400a154773c886 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/aabf26facf07694f96d71d93cc26ce81 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/ac6e1c3ef7e45f031205e1aae63145d4 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/acff8fdf260f75b731a2752cabe039a3 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/ad4a54c43c2a4c3874bfde1c9f08c248 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/af41b8abd81fca7235ff2f5eea101ec7 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/b97ba03780eebad80c1e4c8239432f66 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/b98e31bc04d1ed8616c282ac7abaeb08 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/b9989bfe2cf406c2c937263eb984d8a3 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/ba43150632c4d28c3f29f0e8ec38388b +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/bddacb28f3d63a8719819f6158fe5c0d +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/c1e35441733548c909c8fa146df26602 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/c2cbda4579459322ef12578211800342 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/c6690cb202676be0a09efaa3d85662d2 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/c7ee24d1047e051feebc455244c1200f +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/c909d76cfa3928bd1fed493d8bdc6785 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/c9ec3d06afb2cfe440a080eb40c05b2e +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/cb05b6353e9c623e52c56484f371a7e7 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/d08c1375edaded78b3606c7b4af63b4c +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/d0a2147f9a3ad98a5d61e4fe80826414 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/d0c29be149e9187377a0763b3ca13d48 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/d1513885df939f849f36ba2c2b40b3ee +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/d1f51e3fade4cc30b260f1acafc843fa +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/d2bcd182195dcc17cf37e34f033e7a9d +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/db83044997d8d4031105f73841e1daf9 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/de429a9a63459ff938dc61cfa8132e1a +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/de8e960daf121ac3fd1719de5aebae85 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/e0343b5d999cf24f7fb6871b145d3368 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/e04c118e777dd56f543a6a8a54767793 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/e0fd0f648fe28c705714a8d8d471da34 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/e1b7ccff7b73993818ad0cab86fff97d +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/e1f9e544a73c07f35cdba9e0803588f3 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/e2e09ef3ca7aa04271903297c8b46709 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/e70d6c07fea01303a226870d40c95fa6 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/e7a2a052e9aa9e113cc3a63789dce762 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/ecd5fe6eb7459d4e3fe1bc201fc6b239 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/ed22c5fbe5ee32755035c97ce6f688ff +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/f11879f93e77ada39f81888e2e4e4829 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/f13d5a17eadce75c7d236c2038c90450 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/f3a6e2dee823280a647ae560378d930b +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/f585ec5c9bfe8ec5f58953e069929445 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/f75270647e9898128ede9277d7986676 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/f9b3cd5b580117b4cdd1262c605c6b24 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/fbbbd4a24912b3a6bf41e19be5bfcb59 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/fc7735c040b8239f4133d3b0f5cc2cf1 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/fed43bc1912cdb19dfa4ab32cf796814 +0 -0
- data/spec/internal/tmp/cache/assets/test/sprockets/ff98057dce31aa3bc826473f64a060d1 +0 -0
- data/spec/lib/spotlight/catalog_spec.rb +0 -0
- data/spec/lib/spotlight/controller_spec.rb +15 -0
- data/spec/models/spotlight/ability_spec.rb +42 -0
- data/spec/models/spotlight/about_page_spec.rb +6 -0
- data/spec/models/spotlight/blacklight_configuration_spec.rb +229 -0
- data/spec/models/spotlight/exhibit_spec.rb +37 -0
- data/spec/models/spotlight/feature_page_spec.rb +56 -0
- data/spec/models/spotlight/search_spec.rb +32 -0
- data/spec/routing/spotlight/pages_routing_spec.rb +45 -0
- data/spec/spec_helper.rb +50 -0
- data/spec/support/controllers/engine_helpers.rb +7 -0
- data/spec/test_app_templates/Gemfile.extra +13 -0
- data/spec/test_app_templates/catalog_controller.rb +90 -0
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +25 -0
- data/spec/test_app_templates/spotlight_test.rake +12 -0
- data/spec/views/_user_util_links.html.erb_spec.rb +59 -0
- data/spec/views/shared/_exhibit_masthead.html.erb_spec.rb +22 -0
- data/spec/views/shared/_exhibit_navbar.html.erb_spec.rb +103 -0
- data/spec/views/spotlight/about_pages/_sidebar.html.erb_spec.rb +22 -0
- data/spec/views/spotlight/browse/_search.html.erb_spec.rb +35 -0
- data/spec/views/spotlight/browse/index.html.erb_spec.rb +18 -0
- data/spec/views/spotlight/browse/show.html.erb_spec.rb +46 -0
- data/spec/views/spotlight/catalog/index.html.erb_spec.rb +19 -0
- data/spec/views/spotlight/feature_pages/_sidebar.html.erb_spec.rb +29 -0
- data/spec/views/spotlight/home_pages/_sidebar.html.erb_spec.rb +12 -0
- data/spec/views/spotlight/pages/edit.html.erb_spec.rb +21 -0
- data/spec/views/spotlight/pages/index.html.erb_spec.rb +40 -0
- data/spec/views/spotlight/pages/new.html.erb_spec.rb +21 -0
- data/spec/views/spotlight/pages/show.html.erb_spec.rb +40 -0
- data/spec/views/spotlight/searches/_search.html.erb_spec.rb +23 -0
- data/spec/views/spotlight/searches/index.html.erb_spec.rb +18 -0
- metadata +1436 -0
@@ -0,0 +1,59 @@
|
|
1
|
+
class Spotlight::SearchesController < Spotlight::ApplicationController
|
2
|
+
load_resource :exhibit, class: "Spotlight::Exhibit", only: [:index, :create, :update_all]
|
3
|
+
before_filter :authenticate_user!
|
4
|
+
before_filter :only_curators!
|
5
|
+
load_and_authorize_resource through: :exhibit, shallow: true
|
6
|
+
|
7
|
+
def create
|
8
|
+
params_copy = params.dup
|
9
|
+
params_copy.delete(:exhibit_id)
|
10
|
+
@search.title = params_copy.delete(:search)[:title]
|
11
|
+
@search.query_params = params_copy.reject { |k,v| blacklisted_search_session_params.include?(k.to_sym) or v.blank? }
|
12
|
+
@search.save!
|
13
|
+
|
14
|
+
redirect_to main_app.catalog_index_path, notice: "Search has been saved"
|
15
|
+
end
|
16
|
+
|
17
|
+
def index
|
18
|
+
end
|
19
|
+
|
20
|
+
def edit
|
21
|
+
@exhibit = @search.exhibit
|
22
|
+
end
|
23
|
+
|
24
|
+
def update
|
25
|
+
if @search.update params.require(:search).permit(:title, :short_description, :long_description, :featured_image)
|
26
|
+
redirect_to exhibit_searches_path(@search.exhibit), notice: "Search has been saved"
|
27
|
+
else
|
28
|
+
render action: 'edit'
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def destroy
|
33
|
+
@search.destroy
|
34
|
+
redirect_to exhibit_searches_path(@search.exhibit), alert: "Search was deleted"
|
35
|
+
end
|
36
|
+
|
37
|
+
def update_all
|
38
|
+
notice = if @exhibit.update search_params
|
39
|
+
"Searches were successfully updated."
|
40
|
+
else
|
41
|
+
"There was an error updating the requested searches."
|
42
|
+
end
|
43
|
+
redirect_to :back, notice: notice
|
44
|
+
end
|
45
|
+
|
46
|
+
protected
|
47
|
+
|
48
|
+
def search_params
|
49
|
+
params.require(:exhibit).permit("searches_attributes" => [:id, :on_landing_page, :weight])
|
50
|
+
end
|
51
|
+
|
52
|
+
def only_curators!
|
53
|
+
authorize! :curate, @exhibit if @exhibit
|
54
|
+
end
|
55
|
+
|
56
|
+
def blacklisted_search_session_params
|
57
|
+
[:commit, :counter, :total, :search_id, :page, :per_page, :authenticity_token, :utf8, :action, :controller]
|
58
|
+
end
|
59
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
module Spotlight
|
2
|
+
module ApplicationHelper
|
3
|
+
|
4
|
+
# search_action_url is a special Blacklight helper (not a route),
|
5
|
+
# so it doesn't get caught by the method_missing logic below.
|
6
|
+
# TODO: we should consider making this configurable
|
7
|
+
def search_action_url *args
|
8
|
+
if controller_path == 'spotlight/catalog'
|
9
|
+
catalog_index_url *args
|
10
|
+
else
|
11
|
+
main_app.catalog_index_url *args
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
# Can search for named routes directly in the main app, omitting
|
16
|
+
# the "main_app." prefix
|
17
|
+
def method_missing method, *args, &block
|
18
|
+
if main_app_url_helper?(method)
|
19
|
+
main_app.send(method, *args)
|
20
|
+
else
|
21
|
+
super
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def respond_to?(method)
|
26
|
+
main_app_url_helper?(method) or super
|
27
|
+
end
|
28
|
+
|
29
|
+
private
|
30
|
+
|
31
|
+
def main_app_url_helper?(method)
|
32
|
+
(method.to_s.end_with?('_path') or method.to_s.end_with?('_url')) and
|
33
|
+
main_app.respond_to?(method)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Spotlight::HomePagesHelper
|
2
|
+
include Blacklight::UrlHelperBehavior
|
3
|
+
|
4
|
+
##
|
5
|
+
# Standard display of a facet value in a list. Used in both _facets sidebar
|
6
|
+
# partial and catalog/facet expanded list. Will output facet value name as
|
7
|
+
# a link to add that to your restrictions, with count in parens.
|
8
|
+
#
|
9
|
+
# @param [Blacklight::SolrResponse::Facets::FacetField]
|
10
|
+
# @param [String] facet item
|
11
|
+
# @param [Hash] options
|
12
|
+
# @option options [Boolean] :suppress_link display the facet, but don't link to it
|
13
|
+
# @option options [Rails::Engine] :route_set route set to use to render the link
|
14
|
+
# @return [String]
|
15
|
+
def render_facet_value(facet_solr_field, item, options ={})
|
16
|
+
scope = options.delete(:route_set) || main_app
|
17
|
+
path = scope.catalog_index_url(add_facet_params_and_redirect(facet_solr_field, item).merge(only_path: true))
|
18
|
+
content_tag(:span, :class => "facet-label") do
|
19
|
+
link_to_unless(options[:suppress_link], facet_display_value(facet_solr_field, item), path, :class=>"facet_select")
|
20
|
+
end + render_facet_count(item.hits)
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module Spotlight::Ability
|
2
|
+
include CanCan::Ability
|
3
|
+
|
4
|
+
def initialize(user)
|
5
|
+
user ||= ::User.new
|
6
|
+
|
7
|
+
# This is the "right" way to do it. But it doesn't work in rails 4
|
8
|
+
# until this PR is merged: https://github.com/ryanb/cancan/pull/917
|
9
|
+
# can :create, Spotlight::Exhibit, admin_roles: { id: user.role_ids }
|
10
|
+
# Until then, workaround:
|
11
|
+
can [:update], Spotlight::Exhibit do |exhibit|
|
12
|
+
exhibit.roles.where(id: user.role_ids, role: 'admin').any?
|
13
|
+
end
|
14
|
+
|
15
|
+
can [:update, :edit_metadata_fields, :edit_facet_fields], Spotlight::BlacklightConfiguration do |config|
|
16
|
+
config.exhibit.roles.where(id: user.role_ids).any?
|
17
|
+
end
|
18
|
+
|
19
|
+
can [:curate], Spotlight::Exhibit do |exhibit|
|
20
|
+
# any curator or admin role
|
21
|
+
exhibit.roles.where(id: user.role_ids).any?
|
22
|
+
end
|
23
|
+
|
24
|
+
can [:read, :index], [Spotlight::Exhibit, Spotlight::Page, Spotlight::Search]
|
25
|
+
|
26
|
+
# any curator or admin role
|
27
|
+
if Spotlight::Exhibit.default.roles.where(id: user.role_ids).any?
|
28
|
+
can [:create, :update, :destroy], [Spotlight::Search, Spotlight::Page]
|
29
|
+
can :update_all, [Spotlight::Search, Spotlight::Page]
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,145 @@
|
|
1
|
+
require 'blacklight/utils'
|
2
|
+
|
3
|
+
module Spotlight
|
4
|
+
class BlacklightConfiguration < ActiveRecord::Base
|
5
|
+
has_one :exhibit
|
6
|
+
serialize :facet_fields, Hash
|
7
|
+
serialize :index_fields, Hash
|
8
|
+
serialize :sort_fields, Hash
|
9
|
+
serialize :default_solr_params, Hash
|
10
|
+
serialize :show, Hash
|
11
|
+
serialize :index, Hash
|
12
|
+
serialize :per_page, Array
|
13
|
+
serialize :document_index_view_types, Array
|
14
|
+
|
15
|
+
# get rid of empty values
|
16
|
+
before_validation do |model|
|
17
|
+
|
18
|
+
model.index_fields.each do |k,v|
|
19
|
+
v[:enabled] ||= v.any? { |k1, v1| !v1.blank? }
|
20
|
+
|
21
|
+
default_blacklight_config.view.keys.each do |view|
|
22
|
+
v[view] &&= (v[view] == "1")
|
23
|
+
end
|
24
|
+
|
25
|
+
v[:show] &&= (v[:show] == "1")
|
26
|
+
|
27
|
+
v.reject! { |k, v1| v1.blank? and !v1 === false }
|
28
|
+
end if model.index_fields
|
29
|
+
|
30
|
+
[:facet_fields, :sort_fields].each do |field|
|
31
|
+
model.send(field).each do |k,v|
|
32
|
+
v[:enabled] &&= (v[:enabled] == "1")
|
33
|
+
v[:enabled] ||= true if v[:enabled].nil?
|
34
|
+
v.reject! { |k, v1| v1.blank? and !v1 === false }
|
35
|
+
end if model.send(field)
|
36
|
+
end
|
37
|
+
|
38
|
+
model.per_page.reject!(&:blank?) if model.per_page
|
39
|
+
model.document_index_view_types.reject!(&:blank?) if model.document_index_view_types
|
40
|
+
end
|
41
|
+
|
42
|
+
##
|
43
|
+
# Serialize this configuration to a Blacklight::Configuration object
|
44
|
+
# appropriate to the current view. If a value isn't set in this record,
|
45
|
+
# it will use the configuration set upstream (in default_blacklight_config)
|
46
|
+
# @param [String] view the configuration may be different depending on the index view selected
|
47
|
+
def blacklight_config view = :list
|
48
|
+
config = default_blacklight_config.inheritable_copy
|
49
|
+
|
50
|
+
config.show.merge! show unless show.blank?
|
51
|
+
config.index.merge! index unless index.blank?
|
52
|
+
|
53
|
+
config.default_solr_params = config.default_solr_params.merge(default_solr_params)
|
54
|
+
|
55
|
+
|
56
|
+
show_fields = index_fields_for_view(:show)
|
57
|
+
unless show_fields.blank?
|
58
|
+
active_show_fields = show_fields.select { |k,v| v[:enabled] == true }
|
59
|
+
config.show_fields = config.index_fields.slice *active_show_fields.keys
|
60
|
+
config.show_fields = Hash[config.show_fields.sort_by { |k,v| active_show_fields.keys.index k }]
|
61
|
+
|
62
|
+
config.index_fields.each do |k, v|
|
63
|
+
next if show_fields[k].blank?
|
64
|
+
|
65
|
+
v.merge! show_fields[k].symbolize_keys
|
66
|
+
v.normalize! config
|
67
|
+
v.validate!
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
unless index_fields_for_view(view).blank?
|
72
|
+
active_index_fields = index_fields_for_view(view).select { |k,v| v[:enabled] == true }
|
73
|
+
config.index_fields.slice! *active_index_fields.keys
|
74
|
+
config.index_fields = Hash[config.index_fields.sort_by { |k,v| active_index_fields.keys.index k }]
|
75
|
+
|
76
|
+
config.index_fields.each do |k, v|
|
77
|
+
next if index_fields[k].blank?
|
78
|
+
|
79
|
+
v.merge! index_fields[k].symbolize_keys
|
80
|
+
v.normalize! config
|
81
|
+
v.validate!
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
unless sort_fields.blank?
|
86
|
+
active_sort_fields = sort_fields.select { |k,v| v[:enabled] == true }
|
87
|
+
config.sort_fields.slice! *active_sort_fields.keys
|
88
|
+
config.sort_fields = Hash[config.sort_fields.sort_by { |k,v| active_sort_fields.keys.index k }]
|
89
|
+
|
90
|
+
config.sort_fields.each do |k, v|
|
91
|
+
next if sort_fields[k].blank?
|
92
|
+
|
93
|
+
v.merge! sort_fields[k].symbolize_keys
|
94
|
+
v.normalize! config
|
95
|
+
v.validate!
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
unless facet_fields.blank?
|
100
|
+
active_facet_fields = facet_fields.select { |k,v| v[:enabled] == true }
|
101
|
+
config.facet_fields.slice! *active_facet_fields.keys
|
102
|
+
config.facet_fields = Hash[config.facet_fields.sort_by { |k,v| active_facet_fields.keys.index k }]
|
103
|
+
|
104
|
+
config.facet_fields.each do |k, v|
|
105
|
+
next if facet_fields[k].blank?
|
106
|
+
|
107
|
+
v.merge! facet_fields[k].symbolize_keys
|
108
|
+
v.normalize! config
|
109
|
+
v.validate!
|
110
|
+
end
|
111
|
+
end
|
112
|
+
|
113
|
+
config.per_page = (config.per_page & per_page) unless per_page.blank?
|
114
|
+
config.view.select! { |k, v| document_index_view_types.include? k.to_s } unless document_index_view_types.blank?
|
115
|
+
|
116
|
+
config
|
117
|
+
end
|
118
|
+
|
119
|
+
def all_facet_fields
|
120
|
+
default_blacklight_config.facet_fields.sort_by { |k,v| facet_fields.keys.index k }
|
121
|
+
end
|
122
|
+
|
123
|
+
def all_index_fields
|
124
|
+
default_blacklight_config.index_fields.sort_by { |k,v| index_fields.keys.index k }
|
125
|
+
end
|
126
|
+
|
127
|
+
##
|
128
|
+
# Get the index fields that should be visible for the given view; if the view is
|
129
|
+
# not found, just use the list view.
|
130
|
+
# @param [String] view
|
131
|
+
def index_fields_for_view view = :list
|
132
|
+
index_fields.select do |key, config|
|
133
|
+
config.with_indifferent_access[:enabled] &&
|
134
|
+
config.with_indifferent_access[view]
|
135
|
+
end
|
136
|
+
end
|
137
|
+
|
138
|
+
##
|
139
|
+
# Get the "upstream" blacklight configuration to use
|
140
|
+
def default_blacklight_config
|
141
|
+
::CatalogController.blacklight_config
|
142
|
+
end
|
143
|
+
|
144
|
+
end
|
145
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'mail_form'
|
2
|
+
|
3
|
+
module Spotlight
|
4
|
+
class ContactForm < MailForm::Base
|
5
|
+
attribute :name, validate: false
|
6
|
+
attribute :email, validate: /\A([\w\.%\+\-]+)@([\w\-]+\.)+([\w]{2,})\z/i
|
7
|
+
attribute :message
|
8
|
+
attribute :current_url
|
9
|
+
|
10
|
+
append :remote_ip, :user_agent
|
11
|
+
|
12
|
+
def headers
|
13
|
+
{
|
14
|
+
subject: "#{I18n.t(:'blacklight.application_name')} Contact Form",
|
15
|
+
to: Spotlight::Exhibit.default.contact_emails.first,
|
16
|
+
from: %("#{name}" <#{email}>),
|
17
|
+
cc: Spotlight::Exhibit.default.contact_emails.join(", ")
|
18
|
+
}
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require 'mail'
|
2
|
+
class Spotlight::Exhibit < ActiveRecord::Base
|
3
|
+
DEFAULT = 'default'.freeze
|
4
|
+
has_many :roles
|
5
|
+
has_many :searches
|
6
|
+
has_many :about_pages
|
7
|
+
has_many :feature_pages
|
8
|
+
has_one :home_page
|
9
|
+
has_many :home_pages
|
10
|
+
|
11
|
+
belongs_to :blacklight_configuration, class_name: Spotlight::BlacklightConfiguration
|
12
|
+
accepts_nested_attributes_for :blacklight_configuration
|
13
|
+
accepts_nested_attributes_for :searches
|
14
|
+
accepts_nested_attributes_for :about_pages
|
15
|
+
accepts_nested_attributes_for :feature_pages
|
16
|
+
delegate :blacklight_config, to: :blacklight_configuration
|
17
|
+
|
18
|
+
serialize :facets, Array
|
19
|
+
serialize :contact_emails, Array
|
20
|
+
|
21
|
+
before_save :sanitize_description
|
22
|
+
validate :name, :title, presence: true
|
23
|
+
validate :valid_emails
|
24
|
+
|
25
|
+
# This is necessary so the form will draw as if we have nested attributes (fields_for).
|
26
|
+
def contact_emails
|
27
|
+
super.each do |e|
|
28
|
+
def e.persisted?
|
29
|
+
false
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
# The attributes setter is required so the form will draw as if we have nested attributes (fields_for)
|
35
|
+
def contact_emails_attributes=(emails)
|
36
|
+
attributes_collection = emails.is_a?(Hash) ? emails.values : emails
|
37
|
+
self.contact_emails = attributes_collection.map {|e| e['email']}.reject(&:blank?)
|
38
|
+
end
|
39
|
+
|
40
|
+
def main_about_page
|
41
|
+
about_pages.published.first
|
42
|
+
end
|
43
|
+
|
44
|
+
# Find or create the default exhibit
|
45
|
+
def self.default
|
46
|
+
self.find_or_create_by!(name: DEFAULT) do |e|
|
47
|
+
e.title = 'Default exhibit'.freeze
|
48
|
+
e.blacklight_configuration = Spotlight::BlacklightConfiguration.create!
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
def has_browse_categories?
|
53
|
+
searches.published.any?
|
54
|
+
end
|
55
|
+
|
56
|
+
protected
|
57
|
+
|
58
|
+
def valid_emails
|
59
|
+
contact_emails.each do |email|
|
60
|
+
begin
|
61
|
+
parsed = Mail::Address.new(email)
|
62
|
+
rescue Mail::Field::ParseError => e
|
63
|
+
end
|
64
|
+
errors.add :contact_emails, "#{email} is not valid" unless !parsed.nil? && parsed.address == email && parsed.local != email #cannot be a local address
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
def sanitize_description
|
69
|
+
self.description = HTML::FullSanitizer.new.sanitize(description) if description_changed?
|
70
|
+
end
|
71
|
+
end
|