enju_subject 0.1.0.pre5 → 0.1.0.pre6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/app/models/enju_subject/ability.rb +68 -0
  3. data/lib/enju_subject/version.rb +1 -1
  4. data/spec/controllers/subjects_controller_spec.rb +2 -0
  5. data/spec/controllers/work_has_subjects_controller_spec.rb +1 -1
  6. data/spec/dummy/app/models/ability.rb +70 -42
  7. data/spec/dummy/config/application.rb +1 -0
  8. data/spec/dummy/db/migrate/059_create_libraries.rb +28 -0
  9. data/spec/dummy/db/migrate/069_create_shelves.rb +15 -0
  10. data/spec/dummy/db/migrate/080_create_library_groups.rb +18 -0
  11. data/spec/dummy/db/migrate/120_create_baskets.rb +12 -0
  12. data/spec/dummy/db/migrate/124_create_bookstores.rb +17 -0
  13. data/spec/dummy/db/migrate/130_create_request_status_types.rb +12 -0
  14. data/spec/dummy/db/migrate/131_create_request_types.rb +12 -0
  15. data/spec/dummy/db/migrate/20081006090811_create_subscriptions.rb +17 -0
  16. data/spec/dummy/db/migrate/20081006093246_create_subscribes.rb +14 -0
  17. data/spec/dummy/db/migrate/20081023092436_create_search_engines.rb +17 -0
  18. data/spec/dummy/db/migrate/20100211105551_add_admin_networks_to_library_group.rb +9 -0
  19. data/spec/dummy/db/migrate/20110222073537_add_url_to_library_group.rb +9 -0
  20. data/spec/dummy/db/migrate/20110627122938_add_number_of_day_to_notify_overdue_to_user_group.rb +13 -0
  21. data/spec/dummy/db/migrate/20120105074911_add_isil_to_library.rb +5 -0
  22. data/spec/dummy/db/migrate/20120129014038_create_budget_types.rb +12 -0
  23. data/spec/dummy/db/migrate/20120319173203_create_accepts.rb +14 -0
  24. data/spec/dummy/db/migrate/20120510140958_add_closed_to_shelf.rb +5 -0
  25. data/spec/dummy/db/schema.rb +167 -2
  26. data/spec/dummy/db/test.sqlite3 +0 -0
  27. data/spec/dummy/solr/data/test/index/segments.gen +0 -0
  28. data/spec/dummy/solr/data/test/index/segments_14k +0 -0
  29. data/spec/fixtures/library_groups.yml +33 -0
  30. metadata +57 -6
  31. data/spec/dummy/solr/data/test/index/segments_b4 +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 76629c4deb6d57ecfde9a1441e79b700f32da047
4
- data.tar.gz: 0e7b420d50ee414a4b5af1380607cea674e1d91e
3
+ metadata.gz: 8b3fbd0d3b98bafeb64ba65c66d786198cf02d81
4
+ data.tar.gz: 03e8e768a6ee6ab072aad5bc5fc33cf4b9d7391c
5
5
  SHA512:
6
- metadata.gz: 71fa0de02fc561949b8e09e2827bf95f7bbfaefb93c1139d97053a7f7e39af8582c1326b032df3349b4e3ec51bd04a383b624e187a8a41b254837000191fff95
7
- data.tar.gz: 37627d39ed0bdc8ab4ca22a0c9fb0a248b6af69950129ff6e3d98f9cbc5d8b933ec668a5b2d03abf469087035d0aaed3de6cfaa3447c5477379a467ef9f1b51e
6
+ metadata.gz: 7a1d84d4be7cc56d4f938f835589c29a8ae737d9941574e50275e7e54296bd19c29a1265138fda50790e758a0da76e82d2f2ff99ff0379a0d0435967a1112e83
7
+ data.tar.gz: 2d1aef73854ab35545774f28924cd3aa83aaf5aab9f2e557d73129d12ba3e5e9cdf969d6ca86ab51c7641c7b97cc07695393466da014db149bd3d24dab5e5954
@@ -0,0 +1,68 @@
1
+ module EnjuSubject
2
+ class Ability
3
+ include CanCan::Ability
4
+
5
+ def initialize(user, ip_address = nil)
6
+ case user.try(:role).try(:name)
7
+ when 'Administrator'
8
+ can :manage, [
9
+ Classification,
10
+ Subject,
11
+ SubjectHasClassification,
12
+ SubjectHeadingTypeHasSubject
13
+ ]
14
+ can :manage, WorkHasSubject
15
+ if LibraryGroup.site_config.network_access_allowed?(ip_address)
16
+ can [:read, :create, :update], ClassificationType
17
+ can :destroy, ClassificationType do |classification_type|
18
+ classification_type.classifications.empty?
19
+ end
20
+ can :manage, [
21
+ Classification,
22
+ Subject,
23
+ SubjectHasClassification,
24
+ SubjectHeadingType,
25
+ SubjectType
26
+ ]
27
+ else
28
+ can :read, [
29
+ ClassificationType,
30
+ SubjectHeadingType,
31
+ SubjectType
32
+ ]
33
+ end
34
+ when 'Librarian'
35
+ can :manage, [
36
+ SubjectHasClassification,
37
+ WorkHasSubject
38
+ ]
39
+ can :read, [
40
+ Classification,
41
+ ClassificationType,
42
+ Subject,
43
+ SubjectType,
44
+ SubjectHeadingType,
45
+ SubjectHeadingTypeHasSubject
46
+ ]
47
+ when 'User'
48
+ can :read, [
49
+ Classification,
50
+ ClassificationType,
51
+ Subject,
52
+ SubjectHasClassification,
53
+ SubjectHeadingType,
54
+ WorkHasSubject
55
+ ]
56
+ else
57
+ can :read, [
58
+ Classification,
59
+ ClassificationType,
60
+ Subject,
61
+ SubjectHasClassification,
62
+ SubjectHeadingType,
63
+ WorkHasSubject
64
+ ]
65
+ end
66
+ end
67
+ end
68
+ end
@@ -1,3 +1,3 @@
1
1
  module EnjuSubject
2
- VERSION = "0.1.0.pre5"
2
+ VERSION = "0.1.0.pre6"
3
3
  end
@@ -42,11 +42,13 @@ describe SubjectsController do
42
42
  describe "When not logged in" do
43
43
  it "assigns all subjects as @subjects" do
44
44
  get :index
45
+ response.should be_success
45
46
  assigns(:subjects).should_not be_nil
46
47
  end
47
48
 
48
49
  it "assigns all subjects as @subjects with work_id" do
49
50
  get :index, :work_id => 1
51
+ response.should be_success
50
52
  assigns(:subjects).should_not be_nil
51
53
  end
52
54
  end
@@ -38,7 +38,7 @@ describe WorkHasSubjectsController do
38
38
  end
39
39
 
40
40
  describe "When not logged in" do
41
- it "should not assign work_has_subjects as @work_has_subjects" do
41
+ it "assigns all work_has_subjects as @work_has_subjects" do
42
42
  get :index
43
43
  assigns(:work_has_subjects).should eq(WorkHasSubject.all)
44
44
  end
@@ -1,44 +1,72 @@
1
- class Ability
2
- include CanCan::Ability
3
-
4
- def initialize(user)
5
- case user.try(:role).try(:name)
6
- when 'Administrator'
7
- can :manage, Classification
8
- can :manage, ClassificationType
9
- can :manage, Subject
10
- can :manage, SubjectHasClassification
11
- can :manage, SubjectHeadingType
12
- can :manage, SubjectHeadingTypeHasSubject
13
- can :manage, SubjectType
14
- can :manage, WorkHasSubject
15
- can :manage, Manifestation
16
- when 'Librarian'
17
- can :read, Classification
18
- can :read, ClassificationType
19
- can :read, Subject
20
- can :manage, SubjectHasClassification
21
- can :read, SubjectHeadingType
22
- can :read, SubjectHeadingTypeHasSubject
23
- can :read, SubjectType
24
- can :manage, WorkHasSubject
25
- can :read, Manifestation
26
- when 'User'
27
- can :read, Classification
28
- can :read, ClassificationType
29
- can :read, Subject
30
- can :read, SubjectHasClassification
31
- can :read, SubjectHeadingType
32
- can :read, WorkHasSubject
33
- can :read, Manifestation
34
- else
35
- can :read, Classification
36
- can :read, ClassificationType
37
- can :read, Subject
38
- can :read, SubjectHasClassification
39
- can :read, SubjectHeadingType
40
- can :read, WorkHasSubject
41
- can :read, Manifestation
1
+ #module EnjuSubject
2
+ class Ability
3
+ include CanCan::Ability
4
+
5
+ def initialize(user, ip_address = '0.0.0.0')
6
+ case user.try(:role).try(:name)
7
+ when 'Administrator'
8
+ can :manage, [
9
+ Classification,
10
+ Subject,
11
+ SubjectHasClassification,
12
+ SubjectHeadingTypeHasSubject
13
+ ]
14
+ can :manage, WorkHasSubject
15
+ if LibraryGroup.site_config.network_access_allowed?(ip_address)
16
+ can [:read, :create, :update], ClassificationType
17
+ can :destroy, ClassificationType do |classification_type|
18
+ classification_type.classifications.empty?
19
+ end
20
+ can :manage, [
21
+ Classification,
22
+ Subject,
23
+ SubjectHasClassification,
24
+ SubjectHeadingType,
25
+ SubjectType
26
+ ]
27
+ else
28
+ can :read, [
29
+ ClassificationType,
30
+ SubjectHeadingType,
31
+ SubjectType
32
+ ]
33
+ end
34
+ can :read, Manifestation
35
+ when 'Librarian'
36
+ can :manage, [
37
+ SubjectHasClassification,
38
+ WorkHasSubject
39
+ ]
40
+ can :read, [
41
+ Classification,
42
+ ClassificationType,
43
+ Subject,
44
+ SubjectType,
45
+ SubjectHeadingType,
46
+ SubjectHeadingTypeHasSubject
47
+ ]
48
+ can :read, Manifestation
49
+ when 'User'
50
+ can :read, [
51
+ Classification,
52
+ ClassificationType,
53
+ Subject,
54
+ SubjectHasClassification,
55
+ SubjectHeadingType,
56
+ WorkHasSubject
57
+ ]
58
+ can :read, Manifestation
59
+ else
60
+ can :read, [
61
+ Classification,
62
+ ClassificationType,
63
+ Subject,
64
+ SubjectHasClassification,
65
+ SubjectHeadingType,
66
+ WorkHasSubject
67
+ ]
68
+ can :read, Manifestation
69
+ end
42
70
  end
43
71
  end
44
- end
72
+ #end
@@ -44,3 +44,4 @@ module Dummy
44
44
  end
45
45
 
46
46
  require 'enju_biblio'
47
+ require 'enju_library'
@@ -0,0 +1,28 @@
1
+ class CreateLibraries < ActiveRecord::Migration
2
+ def change
3
+ create_table :libraries do |t|
4
+ t.string :name, :null => false
5
+ t.text :display_name
6
+ t.string :short_display_name, :null => false
7
+ t.string :zip_code
8
+ t.text :street
9
+ t.text :locality
10
+ t.text :region
11
+ t.string :telephone_number_1
12
+ t.string :telephone_number_2
13
+ t.string :fax_number
14
+ t.text :note
15
+ t.integer :call_number_rows, :default => 1, :null => false
16
+ t.string :call_number_delimiter, :default => "|", :null => false
17
+ t.integer :library_group_id, :default => 1, :null => false
18
+ t.integer :users_count, :default => 0, :null => false
19
+ t.integer :position
20
+ t.integer :country_id
21
+
22
+ t.timestamps
23
+ t.datetime :deleted_at
24
+ end
25
+ add_index :libraries, :library_group_id
26
+ add_index :libraries, :name, :unique => true
27
+ end
28
+ end
@@ -0,0 +1,15 @@
1
+ class CreateShelves < ActiveRecord::Migration
2
+ def change
3
+ create_table :shelves do |t|
4
+ t.string :name, :null => false
5
+ t.text :display_name
6
+ t.text :note
7
+ t.integer :library_id, :default => 1, :null => false
8
+ t.integer :items_count, :default => 0, :null => false
9
+ t.integer :position
10
+ t.timestamps
11
+ t.datetime :deleted_at
12
+ end
13
+ add_index :shelves, :library_id
14
+ end
15
+ end
@@ -0,0 +1,18 @@
1
+ class CreateLibraryGroups < ActiveRecord::Migration
2
+ def change
3
+ create_table :library_groups do |t|
4
+ t.string :name, :null => false
5
+ t.text :display_name
6
+ t.string :short_name, :null => false
7
+ t.string :email
8
+ t.text :my_networks
9
+ t.text :login_banner
10
+ t.text :note
11
+ t.integer :country_id
12
+ t.integer :position
13
+
14
+ t.timestamps
15
+ end
16
+ add_index :library_groups, :short_name
17
+ end
18
+ end
@@ -0,0 +1,12 @@
1
+ class CreateBaskets < ActiveRecord::Migration
2
+ def change
3
+ create_table :baskets do |t|
4
+ t.integer :user_id
5
+ t.text :note
6
+ t.integer :lock_version, :default => 0, :null => false
7
+
8
+ t.timestamps
9
+ end
10
+ add_index :baskets, :user_id
11
+ end
12
+ end
@@ -0,0 +1,17 @@
1
+ class CreateBookstores < ActiveRecord::Migration
2
+ def change
3
+ create_table :bookstores do |t|
4
+ t.text :name, :null => false
5
+ t.string :zip_code
6
+ t.text :address
7
+ t.text :note
8
+ t.string :telephone_number
9
+ t.string :fax_number
10
+ t.string :url
11
+ t.integer :position
12
+ t.datetime :deleted_at
13
+
14
+ t.timestamps
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,12 @@
1
+ class CreateRequestStatusTypes < ActiveRecord::Migration
2
+ def change
3
+ create_table :request_status_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,12 @@
1
+ class CreateRequestTypes < ActiveRecord::Migration
2
+ def change
3
+ create_table :request_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,17 @@
1
+ class CreateSubscriptions < ActiveRecord::Migration
2
+ def change
3
+ create_table :subscriptions do |t|
4
+ t.text :title, :null => false
5
+ t.text :note
6
+ #t.integer :subscription_list_id, :integer
7
+ t.integer :user_id
8
+ t.integer :order_list_id
9
+ t.datetime :deleted_at
10
+ t.integer :subscribes_count, :default => 0, :null => false
11
+
12
+ t.timestamps
13
+ end
14
+ add_index :subscriptions, :user_id
15
+ add_index :subscriptions, :order_list_id
16
+ end
17
+ end
@@ -0,0 +1,14 @@
1
+ class CreateSubscribes < ActiveRecord::Migration
2
+ def change
3
+ create_table :subscribes do |t|
4
+ t.integer :subscription_id, :null => false
5
+ t.integer :work_id, :null => false
6
+ t.datetime :start_at, :null => false
7
+ t.datetime :end_at, :null => false
8
+
9
+ t.timestamps
10
+ end
11
+ add_index :subscribes, :subscription_id
12
+ add_index :subscribes, :work_id
13
+ end
14
+ end
@@ -0,0 +1,17 @@
1
+ class CreateSearchEngines < ActiveRecord::Migration
2
+ def change
3
+ create_table :search_engines do |t|
4
+ t.string :name, :null => false
5
+ t.text :display_name
6
+ t.string :url, :null => false
7
+ t.text :base_url, :null => false
8
+ t.text :http_method, :null => false
9
+ t.text :query_param, :null => false
10
+ t.text :additional_param
11
+ t.text :note
12
+ t.integer :position
13
+
14
+ t.timestamps
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,9 @@
1
+ class AddAdminNetworksToLibraryGroup < ActiveRecord::Migration
2
+ def self.up
3
+ add_column :library_groups, :admin_networks, :text
4
+ end
5
+
6
+ def self.down
7
+ remove_column :library_groups, :admin_networks
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ class AddUrlToLibraryGroup < ActiveRecord::Migration
2
+ def self.up
3
+ add_column :library_groups, :url, :string, :default => 'http://localhost:3000/'
4
+ end
5
+
6
+ def self.down
7
+ remove_column :library_groups, :url
8
+ end
9
+ end
@@ -0,0 +1,13 @@
1
+ class AddNumberOfDayToNotifyOverdueToUserGroup < ActiveRecord::Migration
2
+ def self.up
3
+ add_column :user_groups, :number_of_day_to_notify_overdue, :integer, :default => 1, :null => false
4
+ add_column :user_groups, :number_of_day_to_notify_due_date, :integer, :default => 7, :null => false
5
+ add_column :user_groups, :number_of_time_to_notify_overdue, :integer, :default => 3, :null => false
6
+ end
7
+
8
+ def self.down
9
+ remove_column :user_groups, :number_of_time_to_notify_overdue
10
+ remove_column :user_groups, :number_of_day_to_notify_due_date
11
+ remove_column :user_groups, :number_of_day_to_notify_overdue
12
+ end
13
+ end
@@ -0,0 +1,5 @@
1
+ class AddIsilToLibrary < ActiveRecord::Migration
2
+ def change
3
+ add_column :libraries, :isil, :string
4
+ end
5
+ end
@@ -0,0 +1,12 @@
1
+ class CreateBudgetTypes < ActiveRecord::Migration
2
+ def change
3
+ create_table :budget_types do |t|
4
+ t.string :name
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,14 @@
1
+ class CreateAccepts < ActiveRecord::Migration
2
+ def change
3
+ create_table :accepts do |t|
4
+ t.integer :basket_id
5
+ t.integer :item_id
6
+ t.integer :librarian_id
7
+
8
+ t.timestamps
9
+ end
10
+
11
+ add_index :accepts, :basket_id
12
+ add_index :accepts, :item_id
13
+ end
14
+ end
@@ -0,0 +1,5 @@
1
+ class AddClosedToShelf < ActiveRecord::Migration
2
+ def change
3
+ add_column :shelves, :closed, :boolean, :default => false, :null => false
4
+ end
5
+ end
@@ -13,6 +13,50 @@
13
13
 
14
14
  ActiveRecord::Schema.define(:version => 20120602141129) do
15
15
 
16
+ create_table "accepts", :force => true do |t|
17
+ t.integer "basket_id"
18
+ t.integer "item_id"
19
+ t.integer "librarian_id"
20
+ t.datetime "created_at", :null => false
21
+ t.datetime "updated_at", :null => false
22
+ end
23
+
24
+ add_index "accepts", ["basket_id"], :name => "index_accepts_on_basket_id"
25
+ add_index "accepts", ["item_id"], :name => "index_accepts_on_item_id"
26
+
27
+ create_table "baskets", :force => true do |t|
28
+ t.integer "user_id"
29
+ t.text "note"
30
+ t.integer "lock_version", :default => 0, :null => false
31
+ t.datetime "created_at", :null => false
32
+ t.datetime "updated_at", :null => false
33
+ end
34
+
35
+ add_index "baskets", ["user_id"], :name => "index_baskets_on_user_id"
36
+
37
+ create_table "bookstores", :force => true do |t|
38
+ t.text "name", :null => false
39
+ t.string "zip_code"
40
+ t.text "address"
41
+ t.text "note"
42
+ t.string "telephone_number"
43
+ t.string "fax_number"
44
+ t.string "url"
45
+ t.integer "position"
46
+ t.datetime "deleted_at"
47
+ t.datetime "created_at", :null => false
48
+ t.datetime "updated_at", :null => false
49
+ end
50
+
51
+ create_table "budget_types", :force => true do |t|
52
+ t.string "name"
53
+ t.text "display_name"
54
+ t.text "note"
55
+ t.integer "position"
56
+ t.datetime "created_at", :null => false
57
+ t.datetime "updated_at", :null => false
58
+ end
59
+
16
60
  create_table "carrier_types", :force => true do |t|
17
61
  t.string "name", :null => false
18
62
  t.text "display_name"
@@ -197,6 +241,51 @@ ActiveRecord::Schema.define(:version => 20120602141129) do
197
241
  add_index "languages", ["iso_639_3"], :name => "index_languages_on_iso_639_3"
198
242
  add_index "languages", ["name"], :name => "index_languages_on_name", :unique => true
199
243
 
244
+ create_table "libraries", :force => true do |t|
245
+ t.string "name", :null => false
246
+ t.text "display_name"
247
+ t.string "short_display_name", :null => false
248
+ t.string "zip_code"
249
+ t.text "street"
250
+ t.text "locality"
251
+ t.text "region"
252
+ t.string "telephone_number_1"
253
+ t.string "telephone_number_2"
254
+ t.string "fax_number"
255
+ t.text "note"
256
+ t.integer "call_number_rows", :default => 1, :null => false
257
+ t.string "call_number_delimiter", :default => "|", :null => false
258
+ t.integer "library_group_id", :default => 1, :null => false
259
+ t.integer "users_count", :default => 0, :null => false
260
+ t.integer "position"
261
+ t.integer "country_id"
262
+ t.datetime "created_at", :null => false
263
+ t.datetime "updated_at", :null => false
264
+ t.datetime "deleted_at"
265
+ t.string "isil"
266
+ end
267
+
268
+ add_index "libraries", ["library_group_id"], :name => "index_libraries_on_library_group_id"
269
+ add_index "libraries", ["name"], :name => "index_libraries_on_name", :unique => true
270
+
271
+ create_table "library_groups", :force => true do |t|
272
+ t.string "name", :null => false
273
+ t.text "display_name"
274
+ t.string "short_name", :null => false
275
+ t.string "email"
276
+ t.text "my_networks"
277
+ t.text "login_banner"
278
+ t.text "note"
279
+ t.integer "country_id"
280
+ t.integer "position"
281
+ t.datetime "created_at", :null => false
282
+ t.datetime "updated_at", :null => false
283
+ t.text "admin_networks"
284
+ t.string "url", :default => "http://localhost:3000/"
285
+ end
286
+
287
+ add_index "library_groups", ["short_name"], :name => "index_library_groups_on_short_name"
288
+
200
289
  create_table "licenses", :force => true do |t|
201
290
  t.string "name", :null => false
202
291
  t.string "display_name"
@@ -502,6 +591,24 @@ ActiveRecord::Schema.define(:version => 20120602141129) do
502
591
  add_index "realizes", ["expression_id"], :name => "index_realizes_on_expression_id"
503
592
  add_index "realizes", ["patron_id"], :name => "index_realizes_on_patron_id"
504
593
 
594
+ create_table "request_status_types", :force => true do |t|
595
+ t.string "name", :null => false
596
+ t.text "display_name"
597
+ t.text "note"
598
+ t.integer "position"
599
+ t.datetime "created_at", :null => false
600
+ t.datetime "updated_at", :null => false
601
+ end
602
+
603
+ create_table "request_types", :force => true do |t|
604
+ t.string "name", :null => false
605
+ t.text "display_name"
606
+ t.text "note"
607
+ t.integer "position"
608
+ t.datetime "created_at", :null => false
609
+ t.datetime "updated_at", :null => false
610
+ end
611
+
505
612
  create_table "resource_import_files", :force => true do |t|
506
613
  t.integer "parent_id"
507
614
  t.string "content_type"
@@ -547,6 +654,20 @@ ActiveRecord::Schema.define(:version => 20120602141129) do
547
654
  t.datetime "updated_at", :null => false
548
655
  end
549
656
 
657
+ create_table "search_engines", :force => true do |t|
658
+ t.string "name", :null => false
659
+ t.text "display_name"
660
+ t.string "url", :null => false
661
+ t.text "base_url", :null => false
662
+ t.text "http_method", :null => false
663
+ t.text "query_param", :null => false
664
+ t.text "additional_param"
665
+ t.text "note"
666
+ t.integer "position"
667
+ t.datetime "created_at", :null => false
668
+ t.datetime "updated_at", :null => false
669
+ end
670
+
550
671
  create_table "series_has_manifestations", :force => true do |t|
551
672
  t.integer "series_statement_id"
552
673
  t.integer "manifestation_id"
@@ -595,6 +716,21 @@ ActiveRecord::Schema.define(:version => 20120602141129) do
595
716
  add_index "series_statements", ["root_manifestation_id"], :name => "index_series_statements_on_manifestation_id"
596
717
  add_index "series_statements", ["series_statement_identifier"], :name => "index_series_statements_on_series_statement_identifier"
597
718
 
719
+ create_table "shelves", :force => true do |t|
720
+ t.string "name", :null => false
721
+ t.text "display_name"
722
+ t.text "note"
723
+ t.integer "library_id", :default => 1, :null => false
724
+ t.integer "items_count", :default => 0, :null => false
725
+ t.integer "position"
726
+ t.datetime "created_at", :null => false
727
+ t.datetime "updated_at", :null => false
728
+ t.datetime "deleted_at"
729
+ t.boolean "closed", :default => false, :null => false
730
+ end
731
+
732
+ add_index "shelves", ["library_id"], :name => "index_shelves_on_library_id"
733
+
598
734
  create_table "subject_has_classifications", :force => true do |t|
599
735
  t.integer "subject_id"
600
736
  t.string "subject_type"
@@ -656,13 +792,42 @@ ActiveRecord::Schema.define(:version => 20120602141129) do
656
792
  add_index "subjects", ["term"], :name => "index_subjects_on_term"
657
793
  add_index "subjects", ["use_term_id"], :name => "index_subjects_on_use_term_id"
658
794
 
795
+ create_table "subscribes", :force => true do |t|
796
+ t.integer "subscription_id", :null => false
797
+ t.integer "work_id", :null => false
798
+ t.datetime "start_at", :null => false
799
+ t.datetime "end_at", :null => false
800
+ t.datetime "created_at", :null => false
801
+ t.datetime "updated_at", :null => false
802
+ end
803
+
804
+ add_index "subscribes", ["subscription_id"], :name => "index_subscribes_on_subscription_id"
805
+ add_index "subscribes", ["work_id"], :name => "index_subscribes_on_work_id"
806
+
807
+ create_table "subscriptions", :force => true do |t|
808
+ t.text "title", :null => false
809
+ t.text "note"
810
+ t.integer "user_id"
811
+ t.integer "order_list_id"
812
+ t.datetime "deleted_at"
813
+ t.integer "subscribes_count", :default => 0, :null => false
814
+ t.datetime "created_at", :null => false
815
+ t.datetime "updated_at", :null => false
816
+ end
817
+
818
+ add_index "subscriptions", ["order_list_id"], :name => "index_subscriptions_on_order_list_id"
819
+ add_index "subscriptions", ["user_id"], :name => "index_subscriptions_on_user_id"
820
+
659
821
  create_table "user_groups", :force => true do |t|
660
822
  t.string "name"
661
823
  t.text "display_name"
662
824
  t.text "note"
663
825
  t.integer "position"
664
- t.datetime "created_at", :null => false
665
- t.datetime "updated_at", :null => false
826
+ t.datetime "created_at", :null => false
827
+ t.datetime "updated_at", :null => false
828
+ t.integer "number_of_day_to_notify_overdue", :default => 1, :null => false
829
+ t.integer "number_of_day_to_notify_due_date", :default => 7, :null => false
830
+ t.integer "number_of_time_to_notify_overdue", :default => 3, :null => false
666
831
  end
667
832
 
668
833
  create_table "user_has_roles", :force => true do |t|
Binary file
@@ -0,0 +1,33 @@
1
+ # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
2
+ one:
3
+ id: 1
4
+ name: enju_library
5
+ display_name: "<%= I18n.locale %>: Enju Library"
6
+ short_name: enju
7
+ email: next-l@library.example.jp
8
+ note:
9
+ my_networks: 0.0.0.0/0
10
+ url: "http://localhost:3000/"
11
+ position: 1
12
+ login_banner: "*Next-L Enju*"
13
+
14
+ # == Schema Information
15
+ #
16
+ # Table name: library_groups
17
+ #
18
+ # id :integer not null, primary key
19
+ # name :string(255) not null
20
+ # display_name :text
21
+ # short_name :string(255) not null
22
+ # email :string(255)
23
+ # my_networks :text
24
+ # login_banner :text
25
+ # note :text
26
+ # country_id :integer
27
+ # position :integer
28
+ # created_at :datetime not null
29
+ # updated_at :datetime not null
30
+ # admin_networks :text
31
+ # url :string(255) default("http://localhost:3000/")
32
+ #
33
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enju_subject
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre5
4
+ version: 0.1.0.pre6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kosuke Tanabe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-03-04 00:00:00.000000000 Z
11
+ date: 2013-03-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -128,14 +128,28 @@ dependencies:
128
128
  requirements:
129
129
  - - ~>
130
130
  - !ruby/object:Gem::Version
131
- version: 0.1.0.pre21
131
+ version: 0.1.0.pre23
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - ~>
137
137
  - !ruby/object:Gem::Version
138
- version: 0.1.0.pre21
138
+ version: 0.1.0.pre23
139
+ - !ruby/object:Gem::Dependency
140
+ name: enju_library
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ~>
144
+ - !ruby/object:Gem::Version
145
+ version: 0.1.0.pre12
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ~>
151
+ - !ruby/object:Gem::Version
152
+ version: 0.1.0.pre12
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: sunspot_solr
141
155
  requirement: !ruby/object:Gem::Requirement
@@ -167,6 +181,7 @@ files:
167
181
  - app/controllers/work_has_subjects_controller.rb
168
182
  - app/models/classification.rb
169
183
  - app/models/classification_type.rb
184
+ - app/models/enju_subject/ability.rb
170
185
  - app/models/subject.rb
171
186
  - app/models/subject_has_classification.rb
172
187
  - app/models/subject_heading_type.rb
@@ -296,13 +311,23 @@ files:
296
311
  - spec/dummy/db/migrate/012_create_owns.rb
297
312
  - spec/dummy/db/migrate/015_create_creates.rb
298
313
  - spec/dummy/db/migrate/047_create_produces.rb
314
+ - spec/dummy/db/migrate/059_create_libraries.rb
315
+ - spec/dummy/db/migrate/069_create_shelves.rb
299
316
  - spec/dummy/db/migrate/073_create_carrier_types.rb
317
+ - spec/dummy/db/migrate/080_create_library_groups.rb
300
318
  - spec/dummy/db/migrate/112_create_frequencies.rb
301
319
  - spec/dummy/db/migrate/117_create_form_of_works.rb
320
+ - spec/dummy/db/migrate/120_create_baskets.rb
321
+ - spec/dummy/db/migrate/124_create_bookstores.rb
302
322
  - spec/dummy/db/migrate/125_create_donates.rb
323
+ - spec/dummy/db/migrate/130_create_request_status_types.rb
324
+ - spec/dummy/db/migrate/131_create_request_types.rb
303
325
  - spec/dummy/db/migrate/20080830154109_create_realizes.rb
304
326
  - spec/dummy/db/migrate/20080830172106_create_exemplifies.rb
305
327
  - spec/dummy/db/migrate/20080905191442_create_patron_types.rb
328
+ - spec/dummy/db/migrate/20081006090811_create_subscriptions.rb
329
+ - spec/dummy/db/migrate/20081006093246_create_subscribes.rb
330
+ - spec/dummy/db/migrate/20081023092436_create_search_engines.rb
306
331
  - spec/dummy/db/migrate/20081025083323_create_countries.rb
307
332
  - spec/dummy/db/migrate/20081025083905_create_languages.rb
308
333
  - spec/dummy/db/migrate/20081027150907_create_picture_files.rb
@@ -319,6 +344,7 @@ files:
319
344
  - spec/dummy/db/migrate/20091202124834_create_versions.rb
320
345
  - spec/dummy/db/migrate/20091214131723_create_series_statements.rb
321
346
  - spec/dummy/db/migrate/20100129142347_create_import_requests.rb
347
+ - spec/dummy/db/migrate/20100211105551_add_admin_networks_to_library_group.rb
322
348
  - spec/dummy/db/migrate/20100223121519_rename_series_statement_title_to_original_title.rb
323
349
  - spec/dummy/db/migrate/20100321235924_add_series_statement_identifier_to_series_statement.rb
324
350
  - spec/dummy/db/migrate/20100525124311_create_manifestation_relationships.rb
@@ -328,6 +354,7 @@ files:
328
354
  - spec/dummy/db/migrate/20100925043847_create_resource_import_results.rb
329
355
  - spec/dummy/db/migrate/20100925074559_create_patron_import_results.rb
330
356
  - spec/dummy/db/migrate/20101212070145_add_acquired_at_to_item.rb
357
+ - spec/dummy/db/migrate/20110222073537_add_url_to_library_group.rb
331
358
  - spec/dummy/db/migrate/20110301035123_add_pub_date_to_manifestation.rb
332
359
  - spec/dummy/db/migrate/20110301121550_add_birth_date_and_death_date_to_patron.rb
333
360
  - spec/dummy/db/migrate/20110425133109_add_issn_to_series_statement.rb
@@ -337,6 +364,7 @@ files:
337
364
  - spec/dummy/db/migrate/20110620173525_add_bookstore_id_to_item.rb
338
365
  - spec/dummy/db/migrate/20110627034940_create_series_statement_merge_lists.rb
339
366
  - spec/dummy/db/migrate/20110627035057_create_series_statement_merges.rb
367
+ - spec/dummy/db/migrate/20110627122938_add_number_of_day_to_notify_overdue_to_user_group.rb
340
368
  - spec/dummy/db/migrate/20110820131417_create_series_has_manifestations.rb
341
369
  - spec/dummy/db/migrate/20110916053430_rename_manifestation_number_list_to_number_string.rb
342
370
  - spec/dummy/db/migrate/20110916091020_add_volume_number_to_manifestation.rb
@@ -353,9 +381,12 @@ files:
353
381
  - spec/dummy/db/migrate/20111201155513_add_devise_to_users.rb
354
382
  - spec/dummy/db/migrate/20111201163342_create_user_groups.rb
355
383
  - spec/dummy/db/migrate/20111201163718_create_user_has_roles.rb
384
+ - spec/dummy/db/migrate/20120105074911_add_isil_to_library.rb
356
385
  - spec/dummy/db/migrate/20120125152919_add_title_subseries_transcription_to_series_statement.rb
386
+ - spec/dummy/db/migrate/20120129014038_create_budget_types.rb
357
387
  - spec/dummy/db/migrate/20120129020544_add_budget_type_id_to_item.rb
358
388
  - spec/dummy/db/migrate/20120319120638_add_content_type_id_to_manifestation.rb
389
+ - spec/dummy/db/migrate/20120319173203_create_accepts.rb
359
390
  - spec/dummy/db/migrate/20120410104851_add_year_of_publication_to_manifestation.rb
360
391
  - spec/dummy/db/migrate/20120413072700_add_picture_meta_to_picture_file.rb
361
392
  - spec/dummy/db/migrate/20120413100352_add_fingerprint_to_picture_file.rb
@@ -367,6 +398,7 @@ files:
367
398
  - spec/dummy/db/migrate/20120415060323_rename_patron_import_file_imported_at_to_executed_at.rb
368
399
  - spec/dummy/db/migrate/20120415164821_add_attachment_meta_to_manifestation.rb
369
400
  - spec/dummy/db/migrate/20120418081407_add_month_of_publication_to_manifestation.rb
401
+ - spec/dummy/db/migrate/20120510140958_add_closed_to_shelf.rb
370
402
  - spec/dummy/db/migrate/20120602141129_add_edit_mode_to_patron_import_file.rb
371
403
  - spec/dummy/db/schema.rb
372
404
  - spec/dummy/db/seeds.rb
@@ -388,7 +420,7 @@ files:
388
420
  - spec/dummy/solr/conf/stopwords.txt
389
421
  - spec/dummy/solr/conf/synonyms.txt
390
422
  - spec/dummy/solr/data/test/index/segments.gen
391
- - spec/dummy/solr/data/test/index/segments_b4
423
+ - spec/dummy/solr/data/test/index/segments_14k
392
424
  - spec/dummy/solr/data/test/spellchecker/segments.gen
393
425
  - spec/dummy/solr/data/test/spellchecker/segments_1
394
426
  - spec/dummy/spec/fixtures/subjects.yml
@@ -413,6 +445,7 @@ files:
413
445
  - spec/fixtures/classification_types.yml
414
446
  - spec/fixtures/classifications.yml
415
447
  - spec/fixtures/languages.yml
448
+ - spec/fixtures/library_groups.yml
416
449
  - spec/fixtures/manifestations.yml
417
450
  - spec/fixtures/patron_types.yml
418
451
  - spec/fixtures/patrons.yml
@@ -512,13 +545,23 @@ test_files:
512
545
  - spec/dummy/db/migrate/012_create_owns.rb
513
546
  - spec/dummy/db/migrate/015_create_creates.rb
514
547
  - spec/dummy/db/migrate/047_create_produces.rb
548
+ - spec/dummy/db/migrate/059_create_libraries.rb
549
+ - spec/dummy/db/migrate/069_create_shelves.rb
515
550
  - spec/dummy/db/migrate/073_create_carrier_types.rb
551
+ - spec/dummy/db/migrate/080_create_library_groups.rb
516
552
  - spec/dummy/db/migrate/112_create_frequencies.rb
517
553
  - spec/dummy/db/migrate/117_create_form_of_works.rb
554
+ - spec/dummy/db/migrate/120_create_baskets.rb
555
+ - spec/dummy/db/migrate/124_create_bookstores.rb
518
556
  - spec/dummy/db/migrate/125_create_donates.rb
557
+ - spec/dummy/db/migrate/130_create_request_status_types.rb
558
+ - spec/dummy/db/migrate/131_create_request_types.rb
519
559
  - spec/dummy/db/migrate/20080830154109_create_realizes.rb
520
560
  - spec/dummy/db/migrate/20080830172106_create_exemplifies.rb
521
561
  - spec/dummy/db/migrate/20080905191442_create_patron_types.rb
562
+ - spec/dummy/db/migrate/20081006090811_create_subscriptions.rb
563
+ - spec/dummy/db/migrate/20081006093246_create_subscribes.rb
564
+ - spec/dummy/db/migrate/20081023092436_create_search_engines.rb
522
565
  - spec/dummy/db/migrate/20081025083323_create_countries.rb
523
566
  - spec/dummy/db/migrate/20081025083905_create_languages.rb
524
567
  - spec/dummy/db/migrate/20081027150907_create_picture_files.rb
@@ -535,6 +578,7 @@ test_files:
535
578
  - spec/dummy/db/migrate/20091202124834_create_versions.rb
536
579
  - spec/dummy/db/migrate/20091214131723_create_series_statements.rb
537
580
  - spec/dummy/db/migrate/20100129142347_create_import_requests.rb
581
+ - spec/dummy/db/migrate/20100211105551_add_admin_networks_to_library_group.rb
538
582
  - spec/dummy/db/migrate/20100223121519_rename_series_statement_title_to_original_title.rb
539
583
  - spec/dummy/db/migrate/20100321235924_add_series_statement_identifier_to_series_statement.rb
540
584
  - spec/dummy/db/migrate/20100525124311_create_manifestation_relationships.rb
@@ -544,6 +588,7 @@ test_files:
544
588
  - spec/dummy/db/migrate/20100925043847_create_resource_import_results.rb
545
589
  - spec/dummy/db/migrate/20100925074559_create_patron_import_results.rb
546
590
  - spec/dummy/db/migrate/20101212070145_add_acquired_at_to_item.rb
591
+ - spec/dummy/db/migrate/20110222073537_add_url_to_library_group.rb
547
592
  - spec/dummy/db/migrate/20110301035123_add_pub_date_to_manifestation.rb
548
593
  - spec/dummy/db/migrate/20110301121550_add_birth_date_and_death_date_to_patron.rb
549
594
  - spec/dummy/db/migrate/20110425133109_add_issn_to_series_statement.rb
@@ -553,6 +598,7 @@ test_files:
553
598
  - spec/dummy/db/migrate/20110620173525_add_bookstore_id_to_item.rb
554
599
  - spec/dummy/db/migrate/20110627034940_create_series_statement_merge_lists.rb
555
600
  - spec/dummy/db/migrate/20110627035057_create_series_statement_merges.rb
601
+ - spec/dummy/db/migrate/20110627122938_add_number_of_day_to_notify_overdue_to_user_group.rb
556
602
  - spec/dummy/db/migrate/20110820131417_create_series_has_manifestations.rb
557
603
  - spec/dummy/db/migrate/20110916053430_rename_manifestation_number_list_to_number_string.rb
558
604
  - spec/dummy/db/migrate/20110916091020_add_volume_number_to_manifestation.rb
@@ -569,9 +615,12 @@ test_files:
569
615
  - spec/dummy/db/migrate/20111201155513_add_devise_to_users.rb
570
616
  - spec/dummy/db/migrate/20111201163342_create_user_groups.rb
571
617
  - spec/dummy/db/migrate/20111201163718_create_user_has_roles.rb
618
+ - spec/dummy/db/migrate/20120105074911_add_isil_to_library.rb
572
619
  - spec/dummy/db/migrate/20120125152919_add_title_subseries_transcription_to_series_statement.rb
620
+ - spec/dummy/db/migrate/20120129014038_create_budget_types.rb
573
621
  - spec/dummy/db/migrate/20120129020544_add_budget_type_id_to_item.rb
574
622
  - spec/dummy/db/migrate/20120319120638_add_content_type_id_to_manifestation.rb
623
+ - spec/dummy/db/migrate/20120319173203_create_accepts.rb
575
624
  - spec/dummy/db/migrate/20120410104851_add_year_of_publication_to_manifestation.rb
576
625
  - spec/dummy/db/migrate/20120413072700_add_picture_meta_to_picture_file.rb
577
626
  - spec/dummy/db/migrate/20120413100352_add_fingerprint_to_picture_file.rb
@@ -583,6 +632,7 @@ test_files:
583
632
  - spec/dummy/db/migrate/20120415060323_rename_patron_import_file_imported_at_to_executed_at.rb
584
633
  - spec/dummy/db/migrate/20120415164821_add_attachment_meta_to_manifestation.rb
585
634
  - spec/dummy/db/migrate/20120418081407_add_month_of_publication_to_manifestation.rb
635
+ - spec/dummy/db/migrate/20120510140958_add_closed_to_shelf.rb
586
636
  - spec/dummy/db/migrate/20120602141129_add_edit_mode_to_patron_import_file.rb
587
637
  - spec/dummy/db/schema.rb
588
638
  - spec/dummy/db/seeds.rb
@@ -604,7 +654,7 @@ test_files:
604
654
  - spec/dummy/solr/conf/stopwords.txt
605
655
  - spec/dummy/solr/conf/synonyms.txt
606
656
  - spec/dummy/solr/data/test/index/segments.gen
607
- - spec/dummy/solr/data/test/index/segments_b4
657
+ - spec/dummy/solr/data/test/index/segments_14k
608
658
  - spec/dummy/solr/data/test/spellchecker/segments.gen
609
659
  - spec/dummy/solr/data/test/spellchecker/segments_1
610
660
  - spec/dummy/spec/fixtures/subjects.yml
@@ -629,6 +679,7 @@ test_files:
629
679
  - spec/fixtures/classification_types.yml
630
680
  - spec/fixtures/classifications.yml
631
681
  - spec/fixtures/languages.yml
682
+ - spec/fixtures/library_groups.yml
632
683
  - spec/fixtures/manifestations.yml
633
684
  - spec/fixtures/patron_types.yml
634
685
  - spec/fixtures/patrons.yml