blacklight_advanced_search 6.4.1 → 8.0.0.alpha2
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.
- checksums.yaml +5 -5
- data/.github/workflows/ruby.yml +125 -0
- data/.gitignore +1 -0
- data/.rubocop.yml +4 -2
- data/.rubocop_todo.yml +6 -374
- data/Gemfile +3 -8
- data/README.md +46 -60
- data/Rakefile +2 -2
- data/VERSION +1 -1
- data/blacklight_advanced_search.gemspec +6 -7
- data/config/routes.rb +1 -1
- data/lib/blacklight_advanced_search/advanced_query_parser.rb +24 -38
- data/lib/blacklight_advanced_search/advanced_search_builder.rb +27 -24
- data/lib/blacklight_advanced_search/controller.rb +15 -16
- data/lib/blacklight_advanced_search/engine.rb +0 -1
- data/lib/blacklight_advanced_search/redirect_legacy_params_filter.rb +24 -7
- data/lib/blacklight_advanced_search.rb +0 -4
- data/lib/generators/blacklight_advanced_search/install_generator.rb +3 -37
- data/lib/parsing_nesting/grammar.rb +0 -12
- data/solr/conf/schema.xml +326 -573
- data/solr/conf/solrconfig.xml +80 -294
- data/spec/features/blacklight_advanced_search_form_spec.rb +13 -18
- data/spec/lib/advanced_search_builder_spec.rb +11 -9
- data/spec/spec_helper.rb +46 -14
- data/spec/test_app_templates/app/controllers/catalog_controller.rb +5 -7
- metadata +41 -62
- data/.travis.yml +0 -21
- data/app/assets/javascripts/blacklight_advanced_search.js +0 -5
- data/app/assets/stylesheets/blacklight_advanced_search/advanced_results.css +0 -21
- data/app/assets/stylesheets/blacklight_advanced_search/blacklight_advanced_search_styles.css.scss +0 -58
- data/app/assets/stylesheets/blacklight_advanced_search.css +0 -6
- data/app/controllers/advanced_controller.rb +0 -25
- data/app/controllers/blacklight_advanced_search/advanced_controller.rb +0 -25
- data/app/helpers/advanced_helper.rb +0 -4
- data/app/helpers/blacklight_advanced_search/advanced_helper_behavior.rb +0 -57
- data/app/views/advanced/_advanced_search_facets.html.erb +0 -16
- data/app/views/advanced/_advanced_search_facets_as_select.html.erb +0 -30
- data/app/views/advanced/_advanced_search_fields.html.erb +0 -8
- data/app/views/advanced/_advanced_search_form.html.erb +0 -43
- data/app/views/advanced/_advanced_search_help.html.erb +0 -24
- data/app/views/advanced/_advanced_search_submit_btns.html.erb +0 -12
- data/app/views/advanced/_facet_limit.html.erb +0 -15
- data/app/views/advanced/index.html.erb +0 -21
- data/app/views/blacklight_advanced_search/_facet_limit.html.erb +0 -16
- data/config/jetty.yml +0 -4
- data/config/locales/blacklight_advanced_search.en.yml +0 -12
- data/lib/blacklight_advanced_search/catalog_helper_override.rb +0 -30
- data/lib/blacklight_advanced_search/filter_parser.rb +0 -11
- data/lib/blacklight_advanced_search/parsing_nesting_parser.rb +0 -15
- data/lib/blacklight_advanced_search/render_constraints_override.rb +0 -136
- data/lib/generators/blacklight_advanced_search/assets_generator.rb +0 -53
- data/lib/generators/blacklight_advanced_search/templates/advanced_controller.rb +0 -56
- data/lib/generators/blacklight_advanced_search/templates/saved_searches_controller.rb +0 -6
- data/lib/generators/blacklight_advanced_search/templates/search_history_controller.rb +0 -6
- data/solr/sample_solr_documents.yml +0 -2692
- data/spec/helpers/advanced_helper_spec.rb +0 -13
- data/spec/lib/blacklight_advanced_search/render_constraints_override_spec.rb +0 -39
- data/spec/lib/filter_parser_spec.rb +0 -22
@@ -4,10 +4,6 @@ module BlacklightAdvancedSearch
|
|
4
4
|
class InstallGenerator < Rails::Generators::Base
|
5
5
|
source_root File.expand_path('../templates', __FILE__)
|
6
6
|
|
7
|
-
def inject_asset_requires
|
8
|
-
generate "blacklight_advanced_search:assets"
|
9
|
-
end
|
10
|
-
|
11
7
|
def inject_search_builder
|
12
8
|
inject_into_file 'app/models/search_builder.rb', after: /include Blacklight::Solr::SearchBuilderBehavior.*$/ do
|
13
9
|
"\n include BlacklightAdvancedSearch::AdvancedSearchBuilder" \
|
@@ -15,51 +11,21 @@ module BlacklightAdvancedSearch
|
|
15
11
|
end
|
16
12
|
end
|
17
13
|
|
18
|
-
def install_catalog_controller_mixin
|
19
|
-
inject_into_class "app/controllers/catalog_controller.rb", "CatalogController" do
|
20
|
-
" include BlacklightAdvancedSearch::Controller\n"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
14
|
def configuration
|
25
15
|
inject_into_file 'app/controllers/catalog_controller.rb', after: "configure_blacklight do |config|" do
|
26
16
|
"\n # default advanced config values" \
|
27
17
|
"\n config.advanced_search ||= Blacklight::OpenStructWithHashAccess.new" \
|
18
|
+
"\n config.advanced_search[:enabled] = true" \
|
19
|
+
"\n config.advanced_search[:form_solr_paramters] = {}" \
|
28
20
|
"\n # config.advanced_search[:qt] ||= 'advanced'" \
|
29
|
-
"\n config.advanced_search[:
|
30
|
-
"\n config.advanced_search[:query_parser] ||= 'dismax'" \
|
31
|
-
"\n config.advanced_search[:form_solr_parameters] ||= {}\n"
|
21
|
+
"\n config.advanced_search[:query_parser] ||= 'dismax'"
|
32
22
|
end
|
33
23
|
end
|
34
24
|
|
35
|
-
def install_search_history_controller
|
36
|
-
copy_file "search_history_controller.rb", "app/controllers/search_history_controller.rb"
|
37
|
-
end
|
38
|
-
|
39
|
-
def install_saved_searches_controller
|
40
|
-
copy_file "saved_searches_controller.rb", "app/controllers/saved_searches_controller.rb"
|
41
|
-
end
|
42
|
-
|
43
25
|
def inject_routes
|
44
26
|
inject_into_file 'config/routes.rb', after: /mount Blacklight::Engine.*$/ do
|
45
27
|
"\n mount BlacklightAdvancedSearch::Engine => '/'\n"
|
46
28
|
end
|
47
29
|
end
|
48
|
-
|
49
|
-
def install_localized_search_form
|
50
|
-
return unless options[:force] || yes?("Install local search form with advanced link? (y/N)", :green)
|
51
|
-
# We're going to copy the search from from actual currently loaded
|
52
|
-
# Blacklight into local app as custom local override -- but add our link at the end too.
|
53
|
-
source_file = File.read(File.join(Blacklight.root, "app/views/catalog/_search_form.html.erb"))
|
54
|
-
|
55
|
-
new_file_contents = source_file + <<-EOF.strip_heredoc
|
56
|
-
\n\n
|
57
|
-
<div class="navbar-form">
|
58
|
-
<%= link_to 'More options', blacklight_advanced_search_engine.advanced_search_path(search_state.to_h), class: 'advanced_search btn btn-default'%>
|
59
|
-
</div>
|
60
|
-
EOF
|
61
|
-
|
62
|
-
create_file("app/views/catalog/_search_form.html.erb", new_file_contents)
|
63
|
-
end
|
64
30
|
end
|
65
31
|
end
|
@@ -1,17 +1,5 @@
|
|
1
|
-
require 'rubygems'
|
2
1
|
require 'parslet'
|
3
2
|
|
4
|
-
# Parslet uses Object#tap, which is in ruby 1.8.7+, but not 1.8.6.
|
5
|
-
# But it's easy enough to implement in pure ruby, let's monkey patch
|
6
|
-
# it in if it's not there, so we'll still work with 1.8.6
|
7
|
-
unless Object.method_defined?(:tap)
|
8
|
-
class Object
|
9
|
-
def tap
|
10
|
-
yield(self)
|
11
|
-
self
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
15
3
|
module ParsingNesting
|
16
4
|
class Grammar < Parslet::Parser
|
17
5
|
root :query
|