blacklight 3.1.2 → 3.2.0pre1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +5 -2
- data/README.md +7 -2
- data/VERSION +1 -1
- data/app/assets/images/favicon.ico +0 -0
- data/app/assets/javascripts/blacklight/blacklight.js +23 -1
- data/app/assets/stylesheets/blacklight/_catalog.css.scss +369 -0
- data/app/assets/stylesheets/blacklight/_facets.css.scss +117 -0
- data/app/assets/stylesheets/blacklight/_folder.css.scss +38 -0
- data/app/assets/stylesheets/blacklight/_formatting.css.scss +164 -0
- data/app/assets/stylesheets/blacklight/_header.css.scss +36 -0
- data/app/assets/stylesheets/blacklight/_layout.css.scss +79 -0
- data/app/assets/stylesheets/blacklight/_print.css.scss +54 -0
- data/app/assets/stylesheets/blacklight/_search_history.css.scss +44 -0
- data/app/assets/stylesheets/blacklight/_susy_framework.css.scss +228 -0
- data/app/assets/stylesheets/blacklight/blacklight.css.scss +27 -0
- data/app/assets/stylesheets/blacklight/blacklight_defaults.css.scss +48 -0
- data/app/controllers/bookmarks_controller.rb +2 -1
- data/app/controllers/folder_controller.rb +4 -0
- data/app/controllers/saved_searches_controller.rb +4 -0
- data/app/controllers/search_history_controller.rb +4 -0
- data/app/helpers/blacklight/blacklight_helper_behavior.rb +64 -104
- data/app/helpers/blacklight/catalog_helper_behavior.rb +4 -4
- data/app/helpers/blacklight/facets_helper_behavior.rb +52 -5
- data/app/helpers/blacklight/render_constraints_helper_behavior.rb +14 -59
- data/app/helpers/blacklight/search_history_constraints_helper_behavior.rb +56 -0
- data/app/helpers/search_history_constraints_helper.rb +3 -0
- data/app/models/record_mailer.rb +1 -2
- data/app/views/_flash_msg.html.erb +4 -5
- data/app/views/_user_util_links.html.erb +3 -1
- data/app/views/bookmarks/index.html.erb +2 -2
- data/app/views/catalog/_bookmark_control.html.erb +6 -6
- data/app/views/catalog/_facet_layout.html.erb +4 -0
- data/app/views/catalog/_facet_limit.html.erb +20 -33
- data/app/views/catalog/_facets.html.erb +1 -5
- data/app/views/catalog/_folder_control.html.erb +5 -5
- data/app/views/catalog/_index_default.html.erb +1 -1
- data/app/views/catalog/_search_form.html.erb +4 -3
- data/app/views/catalog/_show_default.html.erb +1 -1
- data/app/views/catalog/_show_tools.html.erb +6 -6
- data/app/views/catalog/_sort_and_per_page.html.erb +1 -1
- data/app/views/catalog/index.atom.builder +2 -2
- data/app/views/catalog/index.rss.builder +1 -1
- data/app/views/catalog/opensearch.xml.builder +10 -0
- data/app/views/catalog/show.html.erb +1 -1
- data/app/views/folder/_tools.html.erb +4 -4
- data/app/views/layouts/blacklight.html.erb +25 -37
- data/app/views/record_mailer/email_record.text.erb +1 -1
- data/app/views/record_mailer/sms_record.text.erb +2 -2
- data/app/views/search_history/index.html.erb +1 -1
- data/blacklight.gemspec +11 -9
- data/lib/{generators/blacklight/templates/SolrMarc.jar → SolrMarc.jar} +0 -0
- data/lib/blacklight.rb +5 -3
- data/lib/blacklight/catalog.rb +3 -4
- data/lib/blacklight/configurable.rb +54 -39
- data/lib/blacklight/configuration.rb +126 -0
- data/lib/blacklight/configuration/fields.rb +142 -0
- data/lib/blacklight/configuration/search_field.rb +12 -0
- data/lib/blacklight/configuration/solr_field.rb +12 -0
- data/lib/blacklight/configuration/sort_field.rb +17 -0
- data/lib/blacklight/controller.rb +16 -14
- data/lib/blacklight/engine.rb +1 -1
- data/lib/blacklight/global_configurable.rb +46 -0
- data/lib/blacklight/search_fields.rb +21 -54
- data/lib/blacklight/solr/document.rb +13 -3
- data/lib/blacklight/solr_helper.rb +88 -52
- data/lib/blacklight/utils.rb +18 -0
- data/lib/generators/blacklight/assets_generator.rb +14 -20
- data/lib/generators/blacklight/blacklight_generator.rb +14 -6
- data/lib/generators/blacklight/jetty_generator.rb +1 -1
- data/lib/generators/blacklight/templates/assets/standard.css.scss +51 -0
- data/lib/generators/blacklight/templates/catalog_controller.rb +148 -0
- data/lib/generators/blacklight/templates/config/blacklight_config.rb +2 -239
- data/lib/generators/blacklight/templates/config/sass.rb +5 -0
- data/lib/generators/blacklight/templates/solr_conf/schema.xml +514 -164
- data/lib/generators/blacklight/templates/solr_conf/solrconfig.xml +1591 -323
- data/lib/generators/blacklight/templates/solr_document.rb +2 -0
- data/lib/railties/all_tests.rake +36 -3
- data/lib/railties/blacklight_cucumber.rake +6 -4
- data/lib/railties/blacklight_rspec.rake +5 -4
- data/test_support/bin/run-tests.sh +2 -13
- data/test_support/bin/test.sh +30 -23
- data/test_support/features/did_you_mean.feature +14 -13
- data/test_support/features/step_definitions/saved_searches_steps.rb +1 -1
- data/test_support/features/step_definitions/search_steps.rb +4 -4
- data/test_support/spec/controllers/application_controller_spec.rb +3 -13
- data/test_support/spec/controllers/catalog_controller_spec.rb +102 -24
- data/test_support/spec/controllers/folder_controller_spec.rb +7 -1
- data/test_support/spec/helpers/blacklight_helper_spec.rb +45 -34
- data/test_support/spec/helpers/facets_helper_spec.rb +68 -0
- data/test_support/spec/helpers/html_head_helper_spec.rb +37 -0
- data/test_support/spec/helpers/{render_constraints_helper_spec.rb → search_history_constraints_helper_spec.rb} +26 -7
- data/test_support/spec/lib/blacklight_configurable_spec.rb +92 -0
- data/test_support/spec/lib/blacklight_configuration_spec.rb +295 -0
- data/test_support/spec/lib/{configurable_spec.rb → global_configurable_spec.rb} +2 -2
- data/test_support/spec/lib/search_fields_spec.rb +26 -29
- data/test_support/spec/{helpers → lib}/solr_helper_spec.rb +268 -287
- data/test_support/spec/lib/tasks/solr_marc_task_spec.rb +1 -1
- data/test_support/spec/lib/utils_spec.rb +58 -0
- data/test_support/spec/models/solr_docment_spec.rb +4 -8
- data/test_support/spec/views/catalog/_facets.html.erb_spec.rb +27 -170
- data/test_support/spec/views/catalog/_index_default.erb_spec.rb +38 -20
- data/test_support/spec/views/catalog/_show_default.erb_spec.rb +38 -19
- data/test_support/spec/views/catalog/index.atom.builder_spec.rb +19 -1
- metadata +148 -145
- data/app/assets/stylesheets/blacklight/blacklight.css +0 -493
- data/app/assets/stylesheets/yui.css +0 -31
- data/app/views/catalog/opensearch.xml.erb +0 -11
- data/doc/Atom-Responses.md +0 -90
- data/doc/CUSTOMIZING.md +0 -121
- data/doc/Extending-blacklight-with-the-document-extension-framework.md +0 -1
- data/doc/Extending-or-Modifying-Blacklight-Search-Behavior.md +0 -131
- data/doc/Features.md +0 -147
- data/doc/Integration-with-Rails-Footnotes.md +0 -20
- data/doc/Pagination.md +0 -38
- data/doc/Quickstart.md +0 -97
- data/doc/Upgrading-Guide.md +0 -98
- data/doc/User-Authentication.md +0 -54
- data/doc/Using-a-custom-solr-uniquekey-field.md +0 -36
- data/lib/blacklight/comma_link_renderer.rb +0 -28
- data/lib/railties/jetty_solr_server.rb +0 -108
- data/test_support/spec/views/catalog/show.html.erb_spec.rb +0 -101
@@ -4,9 +4,7 @@
|
|
4
4
|
# implementations can be of course.
|
5
5
|
#
|
6
6
|
# Includes methods for rendering contraints graphically on the
|
7
|
-
# search results page (render_constraints(_*))
|
8
|
-
# for rendering more textually on Search History page
|
9
|
-
# (render_search_to_s(_*))
|
7
|
+
# search results page (render_constraints(_*))
|
10
8
|
module Blacklight::RenderConstraintsHelperBehavior
|
11
9
|
|
12
10
|
# Render actual constraints, not including header or footer
|
@@ -19,10 +17,10 @@ module Blacklight::RenderConstraintsHelperBehavior
|
|
19
17
|
# So simple don't need a view template, we can just do it here.
|
20
18
|
if (!localized_params[:q].blank?)
|
21
19
|
label =
|
22
|
-
if (localized_params[:search_field]
|
20
|
+
if (localized_params[:search_field].blank? || (default_search_field && localized_params[:search_field] == default_search_field[:key] ) )
|
23
21
|
nil
|
24
22
|
else
|
25
|
-
|
23
|
+
label_for_search_field(localized_params[:search_field])
|
26
24
|
end
|
27
25
|
|
28
26
|
render_constraint_element(label,
|
@@ -36,18 +34,22 @@ module Blacklight::RenderConstraintsHelperBehavior
|
|
36
34
|
|
37
35
|
def render_constraints_filters(localized_params = params)
|
38
36
|
return "".html_safe unless localized_params[:f]
|
39
|
-
content =
|
37
|
+
content = []
|
40
38
|
localized_params[:f].each_pair do |facet,values|
|
41
|
-
|
42
|
-
|
39
|
+
content << render_filter_element(facet, values, localized_params)
|
40
|
+
end
|
41
|
+
|
42
|
+
return content.flatten.join("\n").html_safe
|
43
|
+
end
|
44
|
+
|
45
|
+
def render_filter_element(facet, values, localized_params)
|
46
|
+
values.map do |val|
|
47
|
+
render_constraint_element( facet_field_labels[facet],
|
43
48
|
val,
|
44
49
|
:remove => catalog_index_path(remove_facet_params(facet, val, localized_params)),
|
45
50
|
:classes => ["filter", "filter-" + facet.parameterize]
|
46
51
|
) + "\n"
|
47
|
-
|
48
|
-
end
|
49
|
-
|
50
|
-
return content.html_safe
|
52
|
+
end
|
51
53
|
end
|
52
54
|
|
53
55
|
# Render a label/value constraint on the screen. Can be called
|
@@ -71,51 +73,4 @@ module Blacklight::RenderConstraintsHelperBehavior
|
|
71
73
|
render(:partial => "catalog/constraints_element", :locals => {:label => label, :value => value, :options => options})
|
72
74
|
end
|
73
75
|
|
74
|
-
|
75
|
-
# Simpler textual version of constraints, used on Search History page.
|
76
|
-
# Theoretically can may be DRY'd up with results page render_constraints,
|
77
|
-
# maybe even using the very same HTML with different CSS?
|
78
|
-
# But too tricky for now, too many changes to existing CSS. TODO.
|
79
|
-
def render_search_to_s(params)
|
80
|
-
render_search_to_s_q(params) +
|
81
|
-
render_search_to_s_filters(params)
|
82
|
-
end
|
83
|
-
|
84
|
-
def render_search_to_s_q(params)
|
85
|
-
return "".html_safe if params[:q].blank?
|
86
|
-
|
87
|
-
label = (params[:search_field] == Blacklight.default_search_field[:key]) ?
|
88
|
-
nil :
|
89
|
-
Blacklight.label_for_search_field(params[:search_field])
|
90
|
-
|
91
|
-
render_search_to_s_element(label , params[:q] )
|
92
|
-
end
|
93
|
-
def render_search_to_s_filters(params)
|
94
|
-
return "".html_safe unless params[:f]
|
95
|
-
|
96
|
-
params[:f].collect do |facet_field, value_list|
|
97
|
-
render_search_to_s_element(Blacklight.config[:facet][:labels][facet_field],
|
98
|
-
value_list.collect do |value|
|
99
|
-
render_filter_value(value)
|
100
|
-
end.join(content_tag(:span, 'and', :class =>'label')).html_safe
|
101
|
-
)
|
102
|
-
end.join(" \n ").html_safe
|
103
|
-
end
|
104
|
-
|
105
|
-
# value can be Array, in which case elements are joined with
|
106
|
-
# 'and'. Pass in option :escape_value => false to pass in pre-rendered
|
107
|
-
# html for value. key with escape_key if needed.
|
108
|
-
def render_search_to_s_element(key, value, options = {})
|
109
|
-
content_tag(:span, render_filter_name(key) + render_filter_value(value), :class => 'constraint')
|
110
|
-
end
|
111
|
-
|
112
|
-
def render_filter_name name
|
113
|
-
return "".html_safe if name.blank?
|
114
|
-
content_tag(:span, h(name) + ":", :class => 'filterName')
|
115
|
-
end
|
116
|
-
|
117
|
-
def render_filter_value value
|
118
|
-
content_tag(:span, h(value), :class => 'filterValue')
|
119
|
-
end
|
120
|
-
|
121
76
|
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
# All methods in here are 'api' that may be over-ridden by plugins and local
|
3
|
+
# code, so method signatures and semantics should not be changed casually.
|
4
|
+
# implementations can be of course.
|
5
|
+
#
|
6
|
+
# Includes methods for rendering more textually on Search History page
|
7
|
+
# (render_search_to_s(_*))
|
8
|
+
module Blacklight::SearchHistoryConstraintsHelperBehavior
|
9
|
+
|
10
|
+
# Simpler textual version of constraints, used on Search History page.
|
11
|
+
# Theoretically can may be DRY'd up with results page render_constraints,
|
12
|
+
# maybe even using the very same HTML with different CSS?
|
13
|
+
# But too tricky for now, too many changes to existing CSS. TODO.
|
14
|
+
def render_search_to_s(params)
|
15
|
+
render_search_to_s_q(params) +
|
16
|
+
render_search_to_s_filters(params)
|
17
|
+
end
|
18
|
+
|
19
|
+
def render_search_to_s_q(params)
|
20
|
+
return "".html_safe if params[:q].blank?
|
21
|
+
|
22
|
+
label = (params[:search_field] == default_search_field[:key]) ?
|
23
|
+
nil :
|
24
|
+
label_for_search_field(params[:search_field])
|
25
|
+
|
26
|
+
render_search_to_s_element(label , params[:q] )
|
27
|
+
end
|
28
|
+
def render_search_to_s_filters(params)
|
29
|
+
return "".html_safe unless params[:f]
|
30
|
+
|
31
|
+
params[:f].collect do |facet_field, value_list|
|
32
|
+
render_search_to_s_element(blacklight_config.facet_fields[facet_field].label,
|
33
|
+
value_list.collect do |value|
|
34
|
+
render_filter_value(value)
|
35
|
+
end.join(content_tag(:span, 'and', :class =>'label')).html_safe
|
36
|
+
)
|
37
|
+
end.join(" \n ").html_safe
|
38
|
+
end
|
39
|
+
|
40
|
+
# value can be Array, in which case elements are joined with
|
41
|
+
# 'and'. Pass in option :escape_value => false to pass in pre-rendered
|
42
|
+
# html for value. key with escape_key if needed.
|
43
|
+
def render_search_to_s_element(key, value, options = {})
|
44
|
+
content_tag(:span, render_filter_name(key) + render_filter_value(value), :class => 'constraint')
|
45
|
+
end
|
46
|
+
|
47
|
+
def render_filter_name name
|
48
|
+
return "".html_safe if name.blank?
|
49
|
+
content_tag(:span, h(name) + ":", :class => 'filterName')
|
50
|
+
end
|
51
|
+
|
52
|
+
def render_filter_value value
|
53
|
+
content_tag(:span, h(value), :class => 'filterValue')
|
54
|
+
end
|
55
|
+
|
56
|
+
end
|
data/app/models/record_mailer.rb
CHANGED
@@ -4,8 +4,7 @@ class RecordMailer < ActionMailer::Base
|
|
4
4
|
|
5
5
|
def email_record(documents, details, from_host, url_gen_params)
|
6
6
|
#raise ArgumentError.new("RecordMailer#email_record only works with documents with a #to_marc") unless document.respond_to?(:to_marc)
|
7
|
-
|
8
|
-
recipients details[:to]
|
7
|
+
|
9
8
|
if documents.size == 1
|
10
9
|
subject = "Item Record: #{documents.first.to_semantic_values[:title] rescue 'N/A'}"
|
11
10
|
else
|
@@ -1,6 +1,5 @@
|
|
1
|
-
<%
|
2
|
-
|
1
|
+
<% [:notice, :error, :alert].each do |type| %>
|
2
|
+
<% if flash[type] %>
|
3
|
+
<div class="ui-state-<%= type == :error ? 'error' : 'highlight' %> ui-corner-all <%= type.to_s %>"><%= flash[type] %></div>
|
4
|
+
<% end %>
|
3
5
|
<% end %>
|
4
|
-
<% if flash_error = flash[:error] %>
|
5
|
-
<div class="ui-state-error ui-corner-all error"><%= flash_error %></div>
|
6
|
-
<% end %>
|
@@ -1,4 +1,5 @@
|
|
1
|
-
<% if
|
1
|
+
<% if has_user_authentication_provider? %>
|
2
|
+
<% if current_user%>
|
2
3
|
<%= link_to "Log Out", destroy_user_session_path %> [<%= link_to current_user, edit_user_registration_path %>]
|
3
4
|
|
|
4
5
|
<%= link_to 'Your Bookmarks', bookmarks_path %>
|
@@ -8,6 +9,7 @@
|
|
8
9
|
<%= link_to 'Login', new_user_session_path %>
|
9
10
|
<% end %>
|
10
11
|
|
|
12
|
+
<% end %>
|
11
13
|
<%= link_to "Selected Items", folder_index_path %> (<span id="folder_number"><%= "#{session[:folder_document_ids] ? session[:folder_document_ids].length : 0}" %></span>)
|
12
14
|
|
|
13
15
|
<%= link_to "Search History", search_history_path %>
|
@@ -21,8 +21,8 @@
|
|
21
21
|
<table class="zebra">
|
22
22
|
<% @bookmarks.each do |bm| %>
|
23
23
|
<tr>
|
24
|
-
<td><%= link_to h(bm.title), catalog_path(bm.document_id) %></td>
|
25
|
-
<td><%= button_to 'Remove', {:controller => "bookmarks", :action => "destroy", :id => bm.document_id},
|
24
|
+
<td><%= link_to h(bm.title), catalog_path(CGI.escape(bm.document_id)) %></td>
|
25
|
+
<td><%= button_to 'Remove', {:controller => "bookmarks", :action => "destroy", :id => CGI.escape(bm.document_id)},
|
26
26
|
:method => :delete, :confirm => 'Remove this bookmark?' %></td>
|
27
27
|
</tr>
|
28
28
|
<% end %>
|
@@ -1,5 +1,5 @@
|
|
1
|
-
<% if current_user %>
|
2
|
-
<%- existing_bookmark = current_user.existing_bookmark_for(document
|
1
|
+
<% if has_user_authentication_provider? and current_user %>
|
2
|
+
<%- existing_bookmark = current_user.existing_bookmark_for(document.id) -%>
|
3
3
|
<%-
|
4
4
|
# Note these two forms are pretty similar but for different :methods, classes, and labels.
|
5
5
|
# but it was simpler to leave them seperate instead of DRYing them, got confusing trying that.
|
@@ -7,16 +7,16 @@
|
|
7
7
|
-%>
|
8
8
|
<% unless existing_bookmark %>
|
9
9
|
|
10
|
-
<%= form_tag( bookmark_path( document
|
10
|
+
<%= form_tag( bookmark_path( document ), :method => :put, :class => "bookmark_toggle", "data-doc-id" => document.id, :title=> document[document_show_link_field] ) do %>
|
11
11
|
<%= hidden_field(:bookmark, :title, :value => document[document_show_link_field] ) %>
|
12
|
-
<%= submit_tag("Bookmark", :id => "bookmark_toggle_#{document
|
12
|
+
<%= submit_tag("Bookmark", :id => "bookmark_toggle_#{document.id.to_s.parameterize}", :class => "bookmark_add") %>
|
13
13
|
<% end %>
|
14
14
|
|
15
15
|
<% else %>
|
16
16
|
|
17
|
-
<%= form_tag( bookmark_path( document
|
17
|
+
<%= form_tag( bookmark_path( document ), :method => :delete, :class => "bookmark_toggle", "data-doc-id" => document.id, :title=> document[document_show_link_field]) do %>
|
18
18
|
<%= hidden_field(:bookmark, :title, :value => document[document_show_link_field] ) %>
|
19
|
-
<%= submit_tag("Remove bookmark", :id => "bookmark_toggle_#{document
|
19
|
+
<%= submit_tag("Remove bookmark", :id => "bookmark_toggle_#{document.id.to_s.parameterize}", :class => "bookmark_remove") %>
|
20
20
|
<% end %>
|
21
21
|
|
22
22
|
<% end %>
|
@@ -1,33 +1,20 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
<% else %>
|
22
|
-
<%= render_facet_value(solr_field, item) %>
|
23
|
-
<% end -%>
|
24
|
-
</li>
|
25
|
-
<% end %>
|
26
|
-
|
27
|
-
<% if(paginator.has_next?) %>
|
28
|
-
<li class="more_facets_link"><%= link_to('more »', params.merge(:id => solr_field, :action=>"facet"), :class => "more_facets_link") %></li>
|
29
|
-
<% end %>
|
30
|
-
|
31
|
-
</ul>
|
32
|
-
<% end %>
|
33
|
-
|
1
|
+
<ul>
|
2
|
+
<% paginator =
|
3
|
+
Blacklight::Solr::FacetPaginator.new(display_facet.items,
|
4
|
+
:limit => facet_limit_for(solr_field))
|
5
|
+
%>
|
6
|
+
<% paginator.items.each do |item| -%>
|
7
|
+
<li>
|
8
|
+
<% if facet_in_params?( solr_field, item.value ) %>
|
9
|
+
<%= render_selected_facet_value(solr_field, item) %>
|
10
|
+
<% else %>
|
11
|
+
<%= render_facet_value(solr_field, item) %>
|
12
|
+
<% end -%>
|
13
|
+
</li>
|
14
|
+
<% end %>
|
15
|
+
|
16
|
+
<% if(paginator.has_next?) %>
|
17
|
+
<li class="more_facets_link"><%= link_to('more »', params.merge(:id => solr_field, :action=>"facet"), :class => "more_facets_link") %></li>
|
18
|
+
<% end %>
|
19
|
+
|
20
|
+
</ul>
|
@@ -1,9 +1,5 @@
|
|
1
1
|
<% # main container for facets/limits menu -%>
|
2
2
|
<div id="facets" class="facets">
|
3
3
|
<h2>Limit your search</h2>
|
4
|
-
|
5
|
-
<div class="facet_limit blacklight-<%= solr_fname.parameterize %>">
|
6
|
-
<%= render_facet_limit(solr_fname) %>
|
7
|
-
</div>
|
8
|
-
<% end %>
|
4
|
+
<%= render_facet_partials %>
|
9
5
|
</div>
|
@@ -1,12 +1,12 @@
|
|
1
1
|
<%-
|
2
2
|
# pass in local :document with a SolrDocument
|
3
|
-
method = (item_in_folder?(document
|
4
|
-
label = (item_in_folder?(document
|
5
|
-
cssClass = (item_in_folder?(document
|
3
|
+
method = (item_in_folder?(document.id) ? "delete" : "put")
|
4
|
+
label = (item_in_folder?(document.id) ? "Unselect" : "Select")
|
5
|
+
cssClass = (item_in_folder?(document.id) ? "deleteFolder" : "addFolder")
|
6
6
|
-%>
|
7
7
|
|
8
|
-
<%= form_tag( folder_path(document
|
8
|
+
<%= form_tag( folder_path(document), :method => method, :class=> "folder_toggle #{cssClass}", "data-doc-id" => document.id, :title=>h(document[document_show_link_field])) do -%>
|
9
9
|
<%= hidden_field(:bookmark, :title, :value => document[document_show_link_field]) %>
|
10
|
-
<%= submit_tag(label, :class=>"folder_submit", :id => "folder_submit_#{document
|
10
|
+
<%= submit_tag(label, :class=>"folder_submit", :id => "folder_submit_#{document.id}") %>
|
11
11
|
<% end %>
|
12
12
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<%# default partial to display solr document fields in catalog index view -%>
|
2
2
|
<dl class="defList">
|
3
3
|
|
4
|
-
<%
|
4
|
+
<% index_fields.each do |solr_fname, field| -%>
|
5
5
|
<% if document.has? solr_fname %>
|
6
6
|
<dt class="blacklight-<%= solr_fname.parameterize %>"><%= render_index_field_label :field => solr_fname %></dt>
|
7
7
|
<dd class="blacklight-<%= solr_fname.parameterize %>"><%= render_index_field_value :document => document, :field => solr_fname %></dd>
|
@@ -2,9 +2,10 @@
|
|
2
2
|
<%= form_tag catalog_index_path, :method => :get do %>
|
3
3
|
<h2 class="search"><%= label_tag(:q, "Search ") %></h2>
|
4
4
|
<%= text_field_tag :q, params[:q], :class => "q" %>
|
5
|
-
|
6
|
-
|
7
|
-
|
5
|
+
<% unless search_fields.empty? %>
|
6
|
+
<%= label_tag(:search_field, " in ") %>
|
7
|
+
<%= select_tag(:search_field, options_for_select(search_fields, h(params[:search_field])), :title => "Targeted search options", :class=>"search_field") %>
|
8
|
+
<% end %>
|
8
9
|
<%= search_as_hidden_fields(:omit_keys => [:q, :search_field, :qt, :page]).html_safe %>
|
9
10
|
|
10
11
|
<%= submit_tag 'search', :class=>'submit' %>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<%# default partial to display solr document fields in catalog show view -%>
|
2
2
|
<dl class="defList">
|
3
|
-
<% document_show_fields.each do |solr_fname| -%>
|
3
|
+
<% document_show_fields.each do |solr_fname, field| -%>
|
4
4
|
<% if document.has? solr_fname %>
|
5
5
|
<dt class="blacklight-<%= solr_fname.parameterize %>"><%= render_document_show_field_label :field => solr_fname %></dt>
|
6
6
|
<dd class="blacklight-<%= solr_fname.parameterize %>"><%= render_document_show_field_value :document => document, :field => solr_fname %></dd>
|
@@ -10,36 +10,36 @@
|
|
10
10
|
|
11
11
|
<% if (@document.respond_to?(:export_as_mla_citation_txt) || @document.respond_to?(:export_as_apa_citation_txt)) %>
|
12
12
|
<li class="cite">
|
13
|
-
|
13
|
+
<%= link_to "Cite This", citation_catalog_path(:id => @document), {:id => 'citeLink', :name => 'citation', :class => 'lightboxLink'} %>
|
14
14
|
</li>
|
15
15
|
<% end %>
|
16
16
|
|
17
17
|
<% if @document.export_formats.keys.include?( :refworks_marc_txt ) %>
|
18
18
|
<li class="refworks">
|
19
|
-
|
19
|
+
<%= link_to "Export to RefWorks", refworks_export_url(:id => @document) %>
|
20
20
|
</li>
|
21
21
|
<% end %>
|
22
22
|
|
23
23
|
<% if @document.export_formats.keys.include?( :endnote ) %>
|
24
24
|
<li class="endnote">
|
25
|
-
<%= link_to "Export to EndNote", catalog_path(@document
|
25
|
+
<%= link_to "Export to EndNote", catalog_path(@document, :format => 'endnote') %>
|
26
26
|
</li>
|
27
27
|
<% end %>
|
28
28
|
|
29
29
|
<% if @document.respond_to?( :to_email_text ) %>
|
30
30
|
<li class="email">
|
31
|
-
|
31
|
+
<%= link_to "Email This", email_catalog_path(:id => @document), {:id => 'emailLink', :name => 'email', :class => 'lightboxLink'} %>
|
32
32
|
</li>
|
33
33
|
<%- end -%>
|
34
34
|
<%- if @document.respond_to?( :to_sms_text ) -%>
|
35
35
|
<li class="sms">
|
36
|
-
|
36
|
+
<%= link_to "SMS This", sms_catalog_path(:id => @document), {:id => 'smsLink', :name => 'sms', :class => 'lightboxLink'} %>
|
37
37
|
</li>
|
38
38
|
<%- end -%>
|
39
39
|
|
40
40
|
<% if @document.respond_to?(:to_marc) %>
|
41
41
|
<li class="librarian_view">
|
42
|
-
<%= link_to "Librarian View", librarian_view_catalog_path(@document
|
42
|
+
<%= link_to "Librarian View", librarian_view_catalog_path(@document), {:id => 'librarianLink', :name => 'librarian_view', :class => 'lightboxLink'} %>
|
43
43
|
</li>
|
44
44
|
<% end %>
|
45
45
|
|
@@ -48,12 +48,12 @@ xml.feed("xmlns" => "http://www.w3.org/2005/Atom",
|
|
48
48
|
|
49
49
|
@document_list.each do |doc|
|
50
50
|
xml.entry do
|
51
|
-
xml.title doc.to_semantic_values[:title][0] || doc
|
51
|
+
xml.title doc.to_semantic_values[:title][0] || doc.id
|
52
52
|
|
53
53
|
# updated is required, for now we'll just set it to now, sorry
|
54
54
|
xml.updated Time.now.strftime("%Y-%m-%dT%H:%M:%SZ")
|
55
55
|
|
56
|
-
xml.link "rel" => "alternate", "type" => "text/html", "href" => catalog_url(doc
|
56
|
+
xml.link "rel" => "alternate", "type" => "text/html", "href" => catalog_url(doc)
|
57
57
|
# add other doc-specific formats, atom only lets us have one per
|
58
58
|
# content type, so the first one in the list wins.
|
59
59
|
xml << render_link_rel_alternates(doc, :unique => true)
|
@@ -9,7 +9,7 @@ xml.rss(:version=>"2.0") {
|
|
9
9
|
xml.language('en-us')
|
10
10
|
@document_list.each do |doc|
|
11
11
|
xml.item do
|
12
|
-
xml.title( doc.to_semantic_values[:title][0] || doc
|
12
|
+
xml.title( doc.to_semantic_values[:title][0] || doc.id )
|
13
13
|
xml.link(catalog_url(doc[:id]))
|
14
14
|
xml.author( doc.to_semantic_values[:author][0] ) if doc.to_semantic_values[:author][0]
|
15
15
|
end
|