hydra-core 5.0.0.pre4 → 5.0.0.pre6
Sign up to get free protection for your applications and to get access to all the features.
- data/app/views/catalog/_home.html.erb +1 -3
- data/app/views/catalog/_index_partials/_default.html.erb +3 -3
- data/app/views/catalog/_show_partials/_default.html.erb +0 -1
- data/hydra-core.gemspec +1 -1
- data/lib/generators/hydra/head_generator.rb +7 -1
- data/lib/generators/hydra/templates/config/initializers/hydra_config.rb +2 -0
- data/lib/hydra-core.rb +9 -0
- data/lib/hydra-head/routes.rb +2 -46
- data/lib/hydra-head/version.rb +1 -1
- data/lib/hydra.rb +1 -10
- data/lib/hydra/controller/upload_behavior.rb +0 -1
- data/lib/hydra/model_mixins/solr_document_extension.rb +3 -1
- data/spec/controllers/catalog_controller_spec.rb +0 -13
- data/spec/controllers/catalog_valid_html_spec.rb +1 -8
- data/spec/helpers/facets_helper_spec.rb +6 -0
- data/spec/lib/solr_document_extension_spec.rb +14 -0
- data/spec/support/app/models/generic_content.rb +0 -2
- data/tasks/rspec.rake +2 -2
- metadata +8 -10
- data/app/views/catalog/_constraints_element.html.erb +0 -34
- data/app/views/catalog/_facets.html.erb +0 -37
- data/app/views/catalog/_opensearch_response_metadata.html.erb +0 -2
- data/app/views/catalog/_sort_and_per_page.html.erb +0 -23
@@ -1,6 +1,6 @@
|
|
1
|
-
<tr class="document
|
1
|
+
<tr class="document">
|
2
2
|
<td>
|
3
|
-
<%= link_to_document(document, :label => blacklight_config.show.heading.to_sym
|
3
|
+
<%= link_to_document(document, :label => blacklight_config.show.heading.to_sym) %>
|
4
4
|
</td>
|
5
5
|
<td>
|
6
6
|
|
@@ -12,7 +12,7 @@
|
|
12
12
|
<%= document.document_type(blacklight_config.show.display_type) %>
|
13
13
|
</td>
|
14
14
|
<td>
|
15
|
-
<%= get_file_asset_count(
|
15
|
+
<%= document.get_file_asset_count()%>
|
16
16
|
</td>
|
17
17
|
<td>
|
18
18
|
Created
|
data/hydra-core.gemspec
CHANGED
@@ -21,7 +21,7 @@ Gem::Specification.new do |gem|
|
|
21
21
|
gem.add_dependency "rails", '~>3.2.3'
|
22
22
|
gem.add_dependency "blacklight", '~>3.4'
|
23
23
|
gem.add_dependency "devise"
|
24
|
-
gem.add_dependency "active-fedora", '~>4.
|
24
|
+
gem.add_dependency "active-fedora", '~>4.6.0.rc1'
|
25
25
|
gem.add_dependency 'RedCloth', '=4.2.9'
|
26
26
|
gem.add_dependency 'block_helpers'
|
27
27
|
gem.add_dependency 'sanitize'
|
@@ -30,7 +30,13 @@ class HeadGenerator < Rails::Generators::Base
|
|
30
30
|
copy_file "catalog_controller.rb", "app/controllers/catalog_controller.rb"
|
31
31
|
|
32
32
|
# Initializers
|
33
|
-
|
33
|
+
file_path = "config/initializers/hydra_config.rb"
|
34
|
+
copy_file "config/initializers/hydra_config.rb", file_path
|
35
|
+
insert_into_file file_path, :after => '# specify the user model' do
|
36
|
+
"\n config[:user_model] = '#{model_name.classify}'"
|
37
|
+
end
|
38
|
+
|
39
|
+
|
34
40
|
copy_file "config/initializers/action_dispatch_http_upload_monkey_patch.rb", "config/initializers/action_dispatch_http_upload_monkey_patch.rb"
|
35
41
|
|
36
42
|
# Role Mappings
|
data/lib/hydra-core.rb
CHANGED
@@ -16,3 +16,12 @@ module HydraHead
|
|
16
16
|
HydraHead::Routes.new(router, options).draw
|
17
17
|
end
|
18
18
|
end
|
19
|
+
|
20
|
+
ActiveSupport.on_load(:after_initialize) do
|
21
|
+
begin
|
22
|
+
puts "Requiring SolrDocumentExtension"
|
23
|
+
SolrDocument.use_extension Hydra::ModelMixins::SolrDocumentExtension
|
24
|
+
rescue NameError
|
25
|
+
puts "Couldn't find SolrDocument"
|
26
|
+
end
|
27
|
+
end
|
data/lib/hydra-head/routes.rb
CHANGED
@@ -24,67 +24,23 @@ module HydraHead
|
|
24
24
|
end
|
25
25
|
|
26
26
|
def default_route_sets
|
27
|
-
[:
|
27
|
+
[:assets_with_all_nested_routes]
|
28
28
|
end
|
29
29
|
|
30
30
|
module RouteSets
|
31
|
-
|
32
|
-
|
33
31
|
def assets_with_all_nested_routes
|
34
32
|
add_routes do |options|
|
35
|
-
match "withdraw", :to => "hydra/assets#withdraw", :as => "withdraw"
|
36
33
|
namespace :hydra do
|
37
34
|
resources :file_assets
|
38
35
|
resources :assets do
|
39
|
-
# this is to remove documents from SOLR but not from Fedora.
|
40
|
-
resources :contributors, :only=>[:new,:create]
|
41
|
-
match '/contributors', :to => 'contributors#update', :as => 'update_contributors'
|
42
|
-
# We would need to include the rails JS files (or implement our own) if we want this to work w/ DELETE because we delete from a link not a button.
|
43
|
-
#match 'contributors/:contributor_type/:index', :to => 'contributors#destroy', :as => 'connect', :via => 'delete'
|
44
|
-
match 'contributors/:contributor_type/:index', :to => 'contributors#destroy', :as => 'connect'
|
45
|
-
# There is no ContributorsController#show
|
46
|
-
match 'contributors/:contributor_type/:index', :to => 'contributors#show', :as => 'contributor', :via => 'get'
|
47
36
|
resources :file_assets
|
48
|
-
resources :downloads, :only=>[:index]
|
49
|
-
resources :grants, :only=>[:new,:create]
|
50
|
-
resources :permissions
|
51
|
-
# Allow updates to assets/:asset_id/permissions (no :id necessary)
|
52
|
-
match '/permissions', :to => 'permissions#update', :as => 'update_group_permissions'
|
53
37
|
end
|
54
38
|
end
|
55
|
-
match "generic_contents_object/content/:container_id", :to=>"generic_content_objects#create", :as=>'generic_content_object', :via => 'post'
|
56
39
|
end
|
57
40
|
end
|
58
|
-
|
59
|
-
def permissions
|
60
|
-
add_routes do |options|
|
61
|
-
namespace :hydra do
|
62
|
-
resources :permissions
|
63
|
-
end
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
|
68
|
-
def superuser
|
69
|
-
add_routes do |options|
|
70
|
-
match 'superuser', :to => 'user_sessions#superuser', :as => 'superuser'
|
71
|
-
end
|
72
|
-
end
|
73
|
-
|
74
|
-
def catalog
|
75
|
-
add_routes do |options|
|
76
|
-
match 'catalog/:id/edit', :to => 'catalog#edit', :as => 'edit_catalog'
|
77
|
-
# The delete method renders a confirmation page with a button to submit actual destroy request
|
78
|
-
match 'catalog/:id/delete', :to => 'catalog#delete', :as => 'delete_catalog'
|
79
|
-
end
|
80
|
-
end
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
41
|
end
|
42
|
+
|
86
43
|
include RouteSets
|
87
44
|
|
88
|
-
#match 'generic_contents_object/content/:container_id', :to => 'generic_content_objects#create', :as => 'generic_content_object', :via => :post
|
89
45
|
end
|
90
46
|
end
|
data/lib/hydra-head/version.rb
CHANGED
data/lib/hydra.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
require 'hydra-access-controls'
|
2
|
-
|
2
|
+
|
3
3
|
module Hydra
|
4
4
|
extend ActiveSupport::Autoload
|
5
5
|
autoload :GlobalConfigurable
|
@@ -15,12 +15,3 @@ module Hydra
|
|
15
15
|
end
|
16
16
|
autoload :Models
|
17
17
|
end
|
18
|
-
|
19
|
-
# require these models once the hydra module has been set up, so that all autoloads take place
|
20
|
-
#require 'hydra-file-access'
|
21
|
-
|
22
|
-
begin
|
23
|
-
SolrDocument.use_extension Hydra::ModelMixins::SolrDocumentExtension
|
24
|
-
rescue NameError
|
25
|
-
end
|
26
|
-
|
@@ -18,7 +18,9 @@ module Hydra::ModelMixins
|
|
18
18
|
i += 1
|
19
19
|
end
|
20
20
|
end
|
21
|
+
def get_file_asset_count()
|
22
|
+
ActiveFedora::Base.count(:conditions=>"is_part_of_t:#{ActiveFedora::Base.quote_for_solr(id)}")
|
23
|
+
end
|
21
24
|
end
|
22
25
|
end
|
23
26
|
|
24
|
-
SolrDocument.use_extension Hydra::ModelMixins::SolrDocumentExtension
|
@@ -26,9 +26,6 @@ describe CatalogController do
|
|
26
26
|
it "should map {:controller=>'catalog', :action=>'show', :id=>'test:3'} to GET /catalog/test:3" do
|
27
27
|
{ :get => "/catalog/test:3" }.should route_to(:controller => 'catalog', :action => 'show', :id=>'test:3')
|
28
28
|
end
|
29
|
-
it "should map {:controller=>'catalog', :action=>'edit', :id=>'test:3'} to GET /catalog/test:3" do
|
30
|
-
{ :get => "/catalog/test:3/edit" }.should route_to(:controller => 'catalog', :action => 'edit', :id=>'test:3')
|
31
|
-
end
|
32
29
|
|
33
30
|
it "should map catalog_path" do
|
34
31
|
# catalog_path.should == '/catalog'
|
@@ -68,16 +65,6 @@ describe CatalogController do
|
|
68
65
|
get :index
|
69
66
|
assigns(:document_list).count.should == @public_only_results.docs.count
|
70
67
|
end
|
71
|
-
it "should return all documents if role does have permissions" do
|
72
|
-
pending "Need to put documents into solr"
|
73
|
-
mock_user = FactoryGirl.build(:user, :email=>"BigWig@example.com")
|
74
|
-
mock_user.stub(:is_being_superuser?).and_return(true)
|
75
|
-
controller.stub(:current_user).and_return(mock_user)
|
76
|
-
get :index
|
77
|
-
### This fails when there are more than 10 public documents in the solr index
|
78
|
-
### TODO: instead, expect a certain query(especially the :fq component) to solr
|
79
|
-
assigns(:document_list).count.should > @public_only_results.docs.count
|
80
|
-
end
|
81
68
|
end
|
82
69
|
end
|
83
70
|
|
@@ -35,17 +35,12 @@ describe CatalogController do
|
|
35
35
|
describe "Home Page" do
|
36
36
|
|
37
37
|
it "Should have Valid HTML when not logged in" do
|
38
|
-
controller.stub(:current_user).and_return(nil)
|
39
38
|
get("index", "controller"=>"catalog")
|
40
39
|
document_check(response.body)
|
41
40
|
end
|
42
41
|
|
43
42
|
it "Should have Valid HTML when I'm logged in" do
|
44
|
-
|
45
|
-
mock_user.stub(:can_be_superuser?).and_return(true)
|
46
|
-
mock_user.stub(:is_being_superuser?).and_return(true)
|
47
|
-
|
48
|
-
sign_in mock_user
|
43
|
+
sign_in FactoryGirl.build(:user, :email=>"archivist1@example.com")
|
49
44
|
get("index", "controller"=>"catalog")
|
50
45
|
document_check(response.body)
|
51
46
|
end
|
@@ -55,8 +50,6 @@ describe CatalogController do
|
|
55
50
|
|
56
51
|
before(:each) do
|
57
52
|
mock_user = FactoryGirl.build(:user, :email=>"archivist1@example.com")
|
58
|
-
mock_user.stub(:can_be_superuser?).and_return(true)
|
59
|
-
mock_user.stub(:is_being_superuser?).and_return(true)
|
60
53
|
sign_in mock_user
|
61
54
|
end
|
62
55
|
|
@@ -1,6 +1,12 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe FacetsHelper do
|
4
|
+
let(:blacklight_config) { Blacklight::Configuration.new }
|
5
|
+
|
6
|
+
before(:each) do
|
7
|
+
helper.stub(:blacklight_config).and_return blacklight_config
|
8
|
+
end
|
9
|
+
|
4
10
|
|
5
11
|
describe "render_selected_facet_value" do
|
6
12
|
it "should be html_safe and not have the remove link" do
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Hydra::ModelMixins::SolrDocumentExtension do
|
4
|
+
before do
|
5
|
+
@doc = SolrDocument.new(:id=>'changeme:99')
|
6
|
+
end
|
7
|
+
|
8
|
+
it "should get_file_asset_count" do
|
9
|
+
|
10
|
+
mock_result = {'response'=>{'numFound'=>0}}
|
11
|
+
ActiveFedora::SolrService.should_receive(:query).with("is_part_of_t:\"changeme\\:99\"", :rows=>0, :raw=>true).and_return(mock_result)
|
12
|
+
@doc.get_file_asset_count.should == 0
|
13
|
+
end
|
14
|
+
end
|
@@ -7,8 +7,6 @@ class GenericContent < ActiveFedora::Base
|
|
7
7
|
# FIXME: should this have "include Hydra::ModelMixins::CommonMetadata" instead?
|
8
8
|
has_metadata :name => "rightsMetadata", :type => Hydra::Datastream::RightsMetadata
|
9
9
|
|
10
|
-
#has_metadata :name => "descMetadata", :type => Hydra::Datastream::ModsGenericContent
|
11
|
-
|
12
10
|
# A place to put extra metadata values, e.g. the user id of the object depositor (for permissions)
|
13
11
|
has_metadata :name => "properties", :type => Hydra::Datastream::Properties
|
14
12
|
|
data/tasks/rspec.rake
CHANGED
@@ -18,7 +18,7 @@ task :fixtures do
|
|
18
18
|
end
|
19
19
|
|
20
20
|
|
21
|
-
|
21
|
+
desc "Create the test rails app"
|
22
22
|
task :generate do
|
23
23
|
unless File.exists?('spec/internal/Rakefile')
|
24
24
|
puts "Generating rails app"
|
@@ -40,7 +40,7 @@ task :generate do
|
|
40
40
|
puts "Running specs"
|
41
41
|
end
|
42
42
|
|
43
|
-
|
43
|
+
desc "Clean out the test rails app"
|
44
44
|
task :clean do
|
45
45
|
puts "Removing sample rails app"
|
46
46
|
`rm -rf spec/internal`
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hydra-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0.0.
|
4
|
+
version: 5.0.0.pre6
|
5
5
|
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2012-10-
|
13
|
+
date: 2012-10-12 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rails
|
@@ -67,7 +67,7 @@ dependencies:
|
|
67
67
|
requirements:
|
68
68
|
- - ~>
|
69
69
|
- !ruby/object:Gem::Version
|
70
|
-
version:
|
70
|
+
version: 4.6.0.rc1
|
71
71
|
type: :runtime
|
72
72
|
prerelease: false
|
73
73
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -75,7 +75,7 @@ dependencies:
|
|
75
75
|
requirements:
|
76
76
|
- - ~>
|
77
77
|
- !ruby/object:Gem::Version
|
78
|
-
version:
|
78
|
+
version: 4.6.0.rc1
|
79
79
|
- !ruby/object:Gem::Dependency
|
80
80
|
name: RedCloth
|
81
81
|
requirement: !ruby/object:Gem::Requirement
|
@@ -179,7 +179,7 @@ dependencies:
|
|
179
179
|
requirements:
|
180
180
|
- - '='
|
181
181
|
- !ruby/object:Gem::Version
|
182
|
-
version: 5.0.0.
|
182
|
+
version: 5.0.0.pre6
|
183
183
|
type: :runtime
|
184
184
|
prerelease: false
|
185
185
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -187,7 +187,7 @@ dependencies:
|
|
187
187
|
requirements:
|
188
188
|
- - '='
|
189
189
|
- !ruby/object:Gem::Version
|
190
|
-
version: 5.0.0.
|
190
|
+
version: 5.0.0.pre6
|
191
191
|
- !ruby/object:Gem::Dependency
|
192
192
|
name: sqlite3
|
193
193
|
requirement: !ruby/object:Gem::Requirement
|
@@ -319,21 +319,17 @@ files:
|
|
319
319
|
- app/models/mods_asset.rb
|
320
320
|
- app/views/_flash_msg.html.erb
|
321
321
|
- app/views/catalog/_citation.html.erb
|
322
|
-
- app/views/catalog/_constraints_element.html.erb
|
323
322
|
- app/views/catalog/_delete_partials/_default.html.erb
|
324
323
|
- app/views/catalog/_edit_partials/_default.html.erb
|
325
324
|
- app/views/catalog/_edit_partials/_default_details.html.erb
|
326
|
-
- app/views/catalog/_facets.html.erb
|
327
325
|
- app/views/catalog/_home.html.erb
|
328
326
|
- app/views/catalog/_home_text.html.erb
|
329
327
|
- app/views/catalog/_index_partials/_default.html.erb
|
330
328
|
- app/views/catalog/_index_partials/_default_details.html.erb
|
331
|
-
- app/views/catalog/_opensearch_response_metadata.html.erb
|
332
329
|
- app/views/catalog/_show_partials/_default.html.erb
|
333
330
|
- app/views/catalog/_show_partials/_default_details.html.erb
|
334
331
|
- app/views/catalog/_show_partials/_facets.html.erb
|
335
332
|
- app/views/catalog/_sms_form.html.erb
|
336
|
-
- app/views/catalog/_sort_and_per_page.html.erb
|
337
333
|
- app/views/catalog/_uva_tabs.html.erb
|
338
334
|
- app/views/catalog/about.html.erb
|
339
335
|
- app/views/catalog/show.html.erb
|
@@ -391,6 +387,7 @@ files:
|
|
391
387
|
- spec/lib/global_configurable_spec.rb
|
392
388
|
- spec/lib/model_methods_spec.rb
|
393
389
|
- spec/lib/repository_controller_behavior_spec.rb
|
390
|
+
- spec/lib/solr_document_extension_spec.rb
|
394
391
|
- spec/models/mods_asset_spec.rb
|
395
392
|
- spec/models/solr_document_spec.rb
|
396
393
|
- spec/models/user_spec.rb
|
@@ -447,6 +444,7 @@ test_files:
|
|
447
444
|
- spec/lib/global_configurable_spec.rb
|
448
445
|
- spec/lib/model_methods_spec.rb
|
449
446
|
- spec/lib/repository_controller_behavior_spec.rb
|
447
|
+
- spec/lib/solr_document_extension_spec.rb
|
450
448
|
- spec/models/mods_asset_spec.rb
|
451
449
|
- spec/models/solr_document_spec.rb
|
452
450
|
- spec/models/user_spec.rb
|
@@ -1,34 +0,0 @@
|
|
1
|
-
<%# This view is overridden to change the alt attribute to be a title in the link_to below in order to conform to the HTML5 validity standard. This should ultimately be fixed in Blacklight. -%>
|
2
|
-
<%- # local params:
|
3
|
-
# label
|
4
|
-
# value
|
5
|
-
# options =>
|
6
|
-
# :remove => url for a remove constraint link
|
7
|
-
# :classes => array of classes to add to container span
|
8
|
-
options ||= {}
|
9
|
-
options[:escape_label] = true unless options.has_key?(:escape_label)
|
10
|
-
options[:escape_value] = true unless options.has_key?(:escape_value)
|
11
|
-
-%>
|
12
|
-
|
13
|
-
<span class="appliedFilter constraint <%= options[:classes].join(" ") if options[:classes] %>">
|
14
|
-
<%- unless label.blank? -%>
|
15
|
-
<span class="filterName"><%= options[:escape_label] ? h(label) : label %></span>
|
16
|
-
<%- end -%>
|
17
|
-
<%- unless value.blank? -%>
|
18
|
-
<span class="filterValue"><%= options[:escape_value] ? h(value) : value %></span>
|
19
|
-
<%- end -%>
|
20
|
-
<%- unless options[:remove].blank? -%>
|
21
|
-
<% accessible_remove_label =
|
22
|
-
if label.blank?
|
23
|
-
"Remove constraint #{options[:escape_value] ? h(value) : value}"
|
24
|
-
else
|
25
|
-
"Remove constraint #{options[:escape_value] ? h(value) : value}: #{options[:escape_value] ? h(value) : value}"
|
26
|
-
end
|
27
|
-
%>
|
28
|
-
<%= link_to(accessible_remove_label,
|
29
|
-
options[:remove],
|
30
|
-
:class=>'btnRemove imgReplace',
|
31
|
-
:title=>'remove'
|
32
|
-
) %>
|
33
|
-
<%- end -%>
|
34
|
-
</span>
|
@@ -1,37 +0,0 @@
|
|
1
|
-
<% # main container for facets/limits menu -%>
|
2
|
-
<div id="facets" class="facets">
|
3
|
-
<% facet_field_names.each do |solr_fname| %>
|
4
|
-
|
5
|
-
<% next if solr_fname == 'person_full_name_cid_facet' %>
|
6
|
-
<div>
|
7
|
-
<% display_facet = @response.facets.detect {|f| f.name == solr_fname} -%>
|
8
|
-
<% if display_facet && display_facet.items.length > 0 %>
|
9
|
-
<h3 id="facet_<%= facet_field_labels[solr_fname].downcase.gsub(/ /, '_') -%>"><%= facet_field_labels[solr_fname] -%></h3>
|
10
|
-
<ul>
|
11
|
-
<% paginator =
|
12
|
-
Blacklight::Solr::FacetPaginator.new(display_facet.items,
|
13
|
-
:limit => facet_limit_for(solr_fname))
|
14
|
-
%>
|
15
|
-
<% paginator.items.each do |item| -%>
|
16
|
-
<li>
|
17
|
-
<% if facet_in_params?( solr_fname, item.value ) %>
|
18
|
-
<%= render_selected_facet_value(solr_fname, item) %>
|
19
|
-
<% else %>
|
20
|
-
<% if item.value.blank? %>
|
21
|
-
<%#= render_facet_value(solr_fname, ["Unknown",item.hits]) %>
|
22
|
-
<% else %>
|
23
|
-
<%= render_facet_value(solr_fname, item) %>
|
24
|
-
<% end %>
|
25
|
-
<% end -%>
|
26
|
-
</li>
|
27
|
-
<% end %>
|
28
|
-
|
29
|
-
<% if(paginator.has_next?) %>
|
30
|
-
<li class="more_facets_link"><%= link_to('more »', params.merge(:id => solr_fname, :action=>"facet"), :class => "more_facets_link") %></li>
|
31
|
-
<% end %>
|
32
|
-
|
33
|
-
</ul>
|
34
|
-
<% end %>
|
35
|
-
</div>
|
36
|
-
<% end %>
|
37
|
-
</div>
|
@@ -1,23 +0,0 @@
|
|
1
|
-
<div id="sortAndPerPage">
|
2
|
-
<% unless @response.response['numFound'] < 2 %>
|
3
|
-
<%= form_tag catalog_index_path, :method=>:get, :class=>'per_page' do %>
|
4
|
-
<%= label_tag(:per_page, "Show") %>
|
5
|
-
<%= select_tag(:per_page, options_for_select(['10', '20', '50', '100'], h(params[:per_page])), :title => "Number of results to display per page", :onchange => 'this.form.submit()') %>
|
6
|
-
per page
|
7
|
-
<%= search_as_hidden_fields(:omit_keys => [:page, :per_page]) %>
|
8
|
-
|
9
|
-
<noscript><%= submit_tag 'update' %></noscript>
|
10
|
-
<% end %>
|
11
|
-
|
12
|
-
<%= form_tag catalog_index_path, :method=>:get, :class=>'sort', :id => "sort_form" do %>
|
13
|
-
<%= label_tag 'sort', 'Sort by' %>
|
14
|
-
<%= select_tag(:sort, options_for_select(sort_fields, h(params[:sort])), :onchange => 'this.form.submit()') %>
|
15
|
-
|
16
|
-
<%= search_as_hidden_fields(:omit_keys => [:page, :sort]) %>
|
17
|
-
|
18
|
-
<noscript><%= submit_tag 'sort results' %></noscript>
|
19
|
-
<% end %>
|
20
|
-
<% end %>
|
21
|
-
|
22
|
-
|
23
|
-
</div>
|