enju_circulation 0.0.47 → 0.0.48

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. data/app/models/reserve.rb +9 -9
  2. data/lib/enju_circulation/controller.rb +25 -0
  3. data/lib/enju_circulation/manifestation.rb +61 -45
  4. data/lib/enju_circulation/version.rb +1 -1
  5. data/lib/enju_circulation.rb +4 -1
  6. data/spec/dummy/README.rdoc +261 -0
  7. data/spec/dummy/app/controllers/application_controller.rb +4 -13
  8. data/spec/dummy/app/models/user_group.rb +11 -0
  9. data/spec/dummy/config/initializers/mime_types.rb +0 -1
  10. data/spec/dummy/db/migrate/001_create_patrons.rb +1 -5
  11. data/spec/dummy/db/migrate/005_create_manifestations.rb +1 -8
  12. data/spec/dummy/db/migrate/006_create_items.rb +1 -6
  13. data/spec/dummy/db/migrate/012_create_owns.rb +12 -0
  14. data/spec/dummy/db/migrate/015_create_creates.rb +12 -0
  15. data/spec/dummy/db/migrate/047_create_produces.rb +12 -0
  16. data/spec/dummy/db/migrate/073_create_carrier_types.rb +1 -5
  17. data/spec/dummy/db/migrate/125_create_donates.rb +12 -0
  18. data/spec/dummy/db/migrate/20080830154109_create_realizes.rb +13 -0
  19. data/spec/dummy/db/migrate/20080830172106_create_exemplifies.rb +1 -7
  20. data/spec/dummy/db/migrate/20080905191442_create_patron_types.rb +1 -5
  21. data/spec/dummy/db/migrate/20081025083323_create_countries.rb +28 -0
  22. data/spec/dummy/db/migrate/20081025083905_create_languages.rb +1 -5
  23. data/spec/dummy/db/migrate/20090812151902_create_patron_relationship_types.rb +12 -0
  24. data/spec/dummy/db/migrate/20091012101112_add_dcndl_schema.rb +27 -0
  25. data/spec/dummy/db/migrate/20091202124834_create_versions.rb +18 -0
  26. data/spec/dummy/db/migrate/20091214131723_create_series_statements.rb +13 -0
  27. data/spec/dummy/db/migrate/20100223121519_rename_series_statement_title_to_original_title.rb +13 -0
  28. data/spec/dummy/db/migrate/20100321235924_add_series_statement_identifier_to_series_statement.rb +10 -0
  29. data/spec/dummy/db/migrate/20100525124311_create_manifestation_relationships.rb +13 -0
  30. data/spec/dummy/db/migrate/20100606073747_create_patron_relationships.rb +13 -0
  31. data/spec/dummy/db/migrate/20100607044753_create_manifestation_relationship_types.rb +12 -0
  32. data/spec/dummy/db/migrate/20100814091104_add_position_to_patron_relationship.rb +11 -0
  33. data/spec/dummy/db/migrate/20110301035123_add_pub_date_to_manifestation.rb +9 -0
  34. data/spec/dummy/db/migrate/20110301121550_add_birth_date_and_death_date_to_patron.rb +11 -0
  35. data/spec/dummy/db/migrate/20110425133109_add_issn_to_series_statement.rb +9 -0
  36. data/spec/dummy/db/migrate/20110618091240_add_periodical_to_series_statement.rb +9 -0
  37. data/spec/dummy/db/migrate/20110619064807_add_edition_string_to_manifestation.rb +9 -0
  38. data/spec/dummy/db/migrate/20110627034940_create_series_statement_merge_lists.rb +9 -0
  39. data/spec/dummy/db/migrate/20110627035057_create_series_statement_merges.rb +12 -0
  40. data/spec/dummy/db/migrate/20110820131417_create_series_has_manifestations.rb +13 -0
  41. data/spec/dummy/db/migrate/20110916053430_rename_manifestation_number_list_to_number_string.rb +13 -0
  42. data/spec/dummy/db/migrate/20110916103953_add_manifestaiton_id_to_series_statement.rb +10 -0
  43. data/spec/dummy/db/migrate/20110918161853_rename_series_statement_manifestation_id_to_root_manifestation_id.rb +13 -0
  44. data/spec/dummy/db/migrate/20110918162329_add_note_to_series_statement.rb +9 -0
  45. data/spec/dummy/db/migrate/20111124110059_create_create_types.rb +12 -0
  46. data/spec/dummy/db/migrate/20111124110319_create_realize_types.rb +12 -0
  47. data/spec/dummy/db/migrate/20111124110355_create_produce_types.rb +12 -0
  48. data/spec/dummy/db/migrate/20111124112131_add_create_type_to_create.rb +7 -0
  49. data/spec/dummy/db/migrate/20120125152919_add_title_subseries_transcription_to_series_statement.rb +6 -0
  50. data/spec/dummy/db/schema.rb +246 -36
  51. data/spec/dummy/db/test.sqlite3 +0 -0
  52. data/spec/dummy/lib/enju_leaf.rb +2 -0
  53. metadata +71 -33
  54. data/lib/enju_circulation/user_group.rb +0 -10
  55. data/spec/dummy/app/models/basket.rb +0 -64
  56. data/spec/dummy/app/models/carrier_type.rb +0 -33
  57. data/spec/dummy/app/models/event.rb +0 -85
  58. data/spec/dummy/app/models/event_category.rb +0 -23
  59. data/spec/dummy/app/models/exemplify.rb +0 -45
  60. data/spec/dummy/app/models/item.rb +0 -278
  61. data/spec/dummy/app/models/language.rb +0 -4
  62. data/spec/dummy/app/models/library.rb +0 -128
  63. data/spec/dummy/app/models/library_group.rb +0 -86
  64. data/spec/dummy/app/models/manifestation.rb +0 -13
  65. data/spec/dummy/app/models/patron.rb +0 -168
  66. data/spec/dummy/app/models/patron_type.rb +0 -19
  67. data/spec/dummy/app/models/request_status_type.rb +0 -19
  68. data/spec/dummy/app/models/request_type.rb +0 -18
  69. data/spec/dummy/app/models/shelf.rb +0 -54
@@ -6,6 +6,10 @@ class ApplicationController < ActionController::Base
6
6
 
7
7
  before_filter :set_locale
8
8
 
9
+ enju_biblio
10
+ enju_library
11
+ enju_circulation
12
+
9
13
  private
10
14
  def render_403
11
15
  return if performed?
@@ -44,14 +48,6 @@ class ApplicationController < ActionController::Base
44
48
  @user = User.where(:username => params[:user_id]).first if params[:user_id]
45
49
  end
46
50
 
47
- def get_basket
48
- @basket = Basket.find(params[:basket_id]) if params[:basket_id]
49
- end
50
-
51
- def get_checkout_type
52
- @checkout_type = CheckoutType.find(params[:checkout_type_id]) if params[:checkout_type_id]
53
- end
54
-
55
51
  def get_manifestation
56
52
  @manifestation = Manifestation.find(params[:manifestation_id]) if params[:manifestation_id]
57
53
  authorize! :show, @manifestation if @manifestation
@@ -61,11 +57,6 @@ class ApplicationController < ActionController::Base
61
57
  @user_group = UserGroup.find(params[:user_group_id]) if params[:user_group_id]
62
58
  end
63
59
 
64
- def get_item
65
- @item = Item.find(params[:item_id]) if params[:item_id]
66
- authorize! :show, @item if @item
67
- end
68
-
69
60
  def set_locale
70
61
  if params[:locale]
71
62
  unless I18n.available_locales.include?(params[:locale].to_s.intern)
@@ -17,6 +17,17 @@ class UserGroup < ActiveRecord::Base
17
17
  def self.per_page
18
18
  10
19
19
  end
20
+
21
+ if defined?(EnjuCirculation)
22
+ has_many :user_group_has_checkout_types, :dependent => :destroy
23
+ has_many :checkout_types, :through => :user_group_has_checkout_types, :order => :position
24
+ has_many :lending_policies
25
+
26
+ validates_numericality_of :number_of_day_to_notify_due_date,
27
+ :number_of_day_to_notify_overdue,
28
+ :number_of_time_to_notify_overdue,
29
+ :greater_than_or_equal_to => 0
30
+ end
20
31
  end
21
32
 
22
33
  # == Schema Information
@@ -3,4 +3,3 @@
3
3
  # Add new mime types for use in respond_to blocks:
4
4
  # Mime::Type.register "text/richtext", :rtf
5
5
  # Mime::Type.register_alias "text/html", :iphone
6
- Mime::Type.register_alias "text/html", :mobile
@@ -1,5 +1,5 @@
1
1
  class CreatePatrons < ActiveRecord::Migration
2
- def self.up
2
+ def change
3
3
  create_table :patrons do |t|
4
4
  t.integer :user_id
5
5
  t.string :last_name
@@ -55,8 +55,4 @@ class CreatePatrons < ActiveRecord::Migration
55
55
  add_index :patrons, :required_role_id
56
56
  add_index :patrons, :full_name
57
57
  end
58
-
59
- def self.down
60
- drop_table :patrons
61
- end
62
58
  end
@@ -1,5 +1,5 @@
1
1
  class CreateManifestations < ActiveRecord::Migration
2
- def self.up
2
+ def change
3
3
  create_table :manifestations do |t|
4
4
  t.text :original_title, :null => false
5
5
  t.text :title_alternative
@@ -27,9 +27,6 @@ class CreateManifestations < ActiveRecord::Migration
27
27
  t.string :oclc_number
28
28
  t.string :issn
29
29
  t.integer :price # TODO: 通貨単位
30
- #t.text :filename
31
- #t.string :content_type
32
- #t.integer :size
33
30
  t.text :fulltext
34
31
  t.string :volume_number_list
35
32
  t.string :issue_number_list
@@ -61,8 +58,4 @@ class CreateManifestations < ActiveRecord::Migration
61
58
  add_index :manifestations, :manifestation_identifier
62
59
  add_index :manifestations, :updated_at
63
60
  end
64
-
65
- def self.down
66
- drop_table :manifestations
67
- end
68
61
  end
@@ -1,5 +1,5 @@
1
1
  class CreateItems < ActiveRecord::Migration
2
- def self.up
2
+ def change
3
3
  create_table :items do |t|
4
4
  #t.integer :manifestation_id
5
5
  t.string :call_number
@@ -9,7 +9,6 @@ class CreateItems < ActiveRecord::Migration
9
9
  t.timestamps
10
10
  t.datetime :deleted_at
11
11
  t.integer :shelf_id, :default => 1, :null => false
12
- t.integer :basket_id
13
12
  t.boolean :include_supplements, :default => false, :null => false
14
13
  t.integer :checkouts_count, :default => 0, :null => false
15
14
  t.integer :owns_count, :default => 0, :null => false
@@ -29,8 +28,4 @@ class CreateItems < ActiveRecord::Migration
29
28
  add_index :items, :item_identifier
30
29
  add_index :items, :required_role_id
31
30
  end
32
-
33
- def self.down
34
- drop_table :items
35
- end
36
31
  end
@@ -0,0 +1,12 @@
1
+ class CreateOwns < ActiveRecord::Migration
2
+ def change
3
+ create_table :owns do |t|
4
+ t.references :patron, :null => false
5
+ t.references :item, :null => false
6
+ t.integer :position
7
+ t.timestamps
8
+ end
9
+ add_index :owns, :patron_id
10
+ add_index :owns, :item_id
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ class CreateCreates < ActiveRecord::Migration
2
+ def change
3
+ create_table :creates do |t|
4
+ t.references :patron, :null => false
5
+ t.references :work, :null => false
6
+ t.integer :position
7
+ t.timestamps
8
+ end
9
+ add_index :creates, :patron_id
10
+ add_index :creates, :work_id
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ class CreateProduces < ActiveRecord::Migration
2
+ def change
3
+ create_table :produces do |t|
4
+ t.references :patron, :null => false
5
+ t.references :manifestation, :null => false
6
+ t.integer :position
7
+ t.timestamps
8
+ end
9
+ add_index :produces, :patron_id
10
+ add_index :produces, :manifestation_id
11
+ end
12
+ end
@@ -1,5 +1,5 @@
1
1
  class CreateCarrierTypes < ActiveRecord::Migration
2
- def self.up
2
+ def change
3
3
  create_table :carrier_types do |t|
4
4
  t.string :name, :null => false
5
5
  t.text :display_name
@@ -8,8 +8,4 @@ class CreateCarrierTypes < ActiveRecord::Migration
8
8
  t.timestamps
9
9
  end
10
10
  end
11
-
12
- def self.down
13
- drop_table :carrier_types
14
- end
15
11
  end
@@ -0,0 +1,12 @@
1
+ class CreateDonates < ActiveRecord::Migration
2
+ def change
3
+ create_table :donates do |t|
4
+ t.integer :patron_id, :null => false
5
+ t.integer :item_id, :null => false
6
+
7
+ t.timestamps
8
+ end
9
+ add_index :donates, :patron_id
10
+ add_index :donates, :item_id
11
+ end
12
+ end
@@ -0,0 +1,13 @@
1
+ class CreateRealizes < ActiveRecord::Migration
2
+ def change
3
+ create_table :realizes do |t|
4
+ t.references :patron, :null => false
5
+ t.references :expression, :null => false
6
+ t.integer :position
7
+
8
+ t.timestamps
9
+ end
10
+ add_index :realizes, :patron_id
11
+ add_index :realizes, :expression_id
12
+ end
13
+ end
@@ -1,19 +1,13 @@
1
1
  class CreateExemplifies < ActiveRecord::Migration
2
- def self.up
2
+ def change
3
3
  create_table :exemplifies do |t|
4
4
  t.integer :manifestation_id, :null => false
5
5
  t.integer :item_id, :null => false
6
- t.string :type
7
6
  t.integer :position
8
7
 
9
8
  t.timestamps
10
9
  end
11
10
  add_index :exemplifies, :manifestation_id
12
11
  add_index :exemplifies, :item_id, :unique => true
13
- add_index :exemplifies, :type
14
- end
15
-
16
- def self.down
17
- drop_table :exemplifies
18
12
  end
19
13
  end
@@ -1,5 +1,5 @@
1
1
  class CreatePatronTypes < ActiveRecord::Migration
2
- def self.up
2
+ def change
3
3
  create_table :patron_types do |t|
4
4
  t.string :name, :null => false
5
5
  t.text :display_name
@@ -9,8 +9,4 @@ class CreatePatronTypes < ActiveRecord::Migration
9
9
  t.timestamps
10
10
  end
11
11
  end
12
-
13
- def self.down
14
- drop_table :patron_types
15
- end
16
12
  end
@@ -0,0 +1,28 @@
1
+ class CreateCountries < ActiveRecord::Migration
2
+
3
+ # ISO 3166 is the International Standard for country codes.
4
+ #
5
+ # ISO 3166-1:2006 Codes for the representation of names of countries and their subdivisions - Part 1:
6
+ # Country codes which is what most users know as ISO's country codes. First published in 1974, it is has since
7
+ # then become one of the world's most popular and most widely used standard solution for coding country names.
8
+ # It contains a two-letter code which is recommended as the general purpose code, a three-letter code which has
9
+ # better mnenomic properties and a numeric-3 code which can be useful if script independence of the codes is important.
10
+ #
11
+ # http://www.iso.org/iso/country_codes/background_on_iso_3166/what_is_iso_3166.htm
12
+
13
+ def change
14
+ create_table :countries do |t|
15
+ t.string :name, :size => 80, :null => false
16
+ t.text :display_name
17
+ t.string :alpha_2, :size => 2
18
+ t.string :alpha_3, :size => 3
19
+ t.string :numeric_3, :size => 3
20
+ t.text :note
21
+ t.integer :position
22
+ end
23
+ add_index :countries, :name
24
+ add_index :countries, :alpha_2
25
+ add_index :countries, :alpha_3
26
+ add_index :countries, :numeric_3
27
+ end
28
+ end
@@ -4,7 +4,7 @@ class CreateLanguages < ActiveRecord::Migration
4
4
  # Note this doesn't include macrolanguages (dialects)
5
5
  # Information on macrolanguages http://en.wikipedia.org/wiki/ISO_639_macrolanguage
6
6
 
7
- def self.up
7
+ def change
8
8
  create_table :languages do |t|
9
9
  t.string :name, :null => false
10
10
  t.string :native_name
@@ -20,8 +20,4 @@ class CreateLanguages < ActiveRecord::Migration
20
20
  add_index :languages, :iso_639_2
21
21
  add_index :languages, :iso_639_3
22
22
  end
23
-
24
- def self.down
25
- drop_table :languages
26
- end
27
23
  end
@@ -0,0 +1,12 @@
1
+ class CreatePatronRelationshipTypes < ActiveRecord::Migration
2
+ def change
3
+ create_table :patron_relationship_types do |t|
4
+ t.string :name, :null => false
5
+ t.text :display_name
6
+ t.text :note
7
+ t.integer :position
8
+
9
+ t.timestamps
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,27 @@
1
+ class AddDcndlSchema < ActiveRecord::Migration
2
+ def self.up
3
+ add_column :manifestations, :title_alternative_transcription, :text
4
+ add_column :patrons, :full_name_alternative_transcription, :text
5
+ add_column :manifestations, :description, :text
6
+ add_column :manifestations, :abstract, :text
7
+ add_column :manifestations, :available_at, :timestamp
8
+ add_column :manifestations, :valid_until, :timestamp
9
+ add_column :manifestations, :date_submitted, :timestamp
10
+ add_column :manifestations, :date_accepted, :timestamp
11
+ add_column :manifestations, :date_caputured, :timestamp
12
+ rename_column :manifestations, :copyright_date, :date_copyrighted
13
+ end
14
+
15
+ def self.down
16
+ remove_column :manifestations, :title_alternative_transcription
17
+ remove_column :patrons, :full_name_alternative_transcription
18
+ remove_column :manifestations, :description
19
+ remove_column :manifestations, :abstract
20
+ remove_column :manifestations, :available_at
21
+ remove_column :manifestations, :valid_until
22
+ remove_column :manifestations, :date_submitted
23
+ remove_column :manifestations, :date_accepted
24
+ remove_column :manifestations, :date_caputured
25
+ rename_column :manifestations, :date_copyrighted, :copyright_date
26
+ end
27
+ end
@@ -0,0 +1,18 @@
1
+ class CreateVersions < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :versions do |t|
4
+ t.string :item_type, :null => false
5
+ t.integer :item_id, :null => false
6
+ t.string :event, :null => false
7
+ t.string :whodunnit
8
+ t.text :object
9
+ t.datetime :created_at
10
+ end
11
+ add_index :versions, [:item_type, :item_id]
12
+ end
13
+
14
+ def self.down
15
+ remove_index :versions, [:item_type, :item_id]
16
+ drop_table :versions
17
+ end
18
+ end
@@ -0,0 +1,13 @@
1
+ class CreateSeriesStatements < ActiveRecord::Migration
2
+ def change
3
+ create_table :series_statements do |t|
4
+ t.text :title
5
+ t.text :numbering
6
+ t.text :title_subseries
7
+ t.text :numbering_subseries
8
+ t.integer :position
9
+
10
+ t.timestamps
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ class RenameSeriesStatementTitleToOriginalTitle < ActiveRecord::Migration
2
+ def self.up
3
+ rename_column :series_statements, :title, :original_title
4
+ add_column :series_statements, :title_transcription, :text
5
+ add_column :series_statements, :title_alternative, :text
6
+ end
7
+
8
+ def self.down
9
+ rename_column :series_statements, :original_title, :title
10
+ remove_column :series_statements, :title_transcription
11
+ remove_column :series_statements, :title_alternative
12
+ end
13
+ end
@@ -0,0 +1,10 @@
1
+ class AddSeriesStatementIdentifierToSeriesStatement < ActiveRecord::Migration
2
+ def self.up
3
+ add_column :series_statements, :series_statement_identifier, :string
4
+ add_index :series_statements, :series_statement_identifier
5
+ end
6
+
7
+ def self.down
8
+ remove_column :series_statements, :series_statement_identifier
9
+ end
10
+ end
@@ -0,0 +1,13 @@
1
+ class CreateManifestationRelationships < ActiveRecord::Migration
2
+ def change
3
+ create_table :manifestation_relationships do |t|
4
+ t.integer :parent_id
5
+ t.integer :child_id
6
+ t.integer :manifestation_relationship_type_id
7
+
8
+ t.timestamps
9
+ end
10
+ add_index :manifestation_relationships, :parent_id
11
+ add_index :manifestation_relationships, :child_id
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ class CreatePatronRelationships < ActiveRecord::Migration
2
+ def change
3
+ create_table :patron_relationships do |t|
4
+ t.integer :parent_id
5
+ t.integer :child_id
6
+ t.integer :patron_relationship_type_id
7
+
8
+ t.timestamps
9
+ end
10
+ add_index :patron_relationships, :parent_id
11
+ add_index :patron_relationships, :child_id
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ class CreateManifestationRelationshipTypes < ActiveRecord::Migration
2
+ def change
3
+ create_table :manifestation_relationship_types do |t|
4
+ t.string :name, :null => false
5
+ t.text :display_name
6
+ t.text :note
7
+ t.integer :position
8
+
9
+ t.timestamps
10
+ end
11
+ end
12
+ end