enju_circulation 0.0.47 → 0.0.48

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.
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