enju_message 0.1.14.pre24 → 0.1.14.pre25

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 931048eaf1302223087dd4114908686cfb07553c
4
- data.tar.gz: 611dfc90bf5a93f570f93d2d54892198eda9d9c9
3
+ metadata.gz: 8142b6f6323115bd8fbb9e97ed5ff0f43db917c7
4
+ data.tar.gz: 21795810e3d5c2fa3a1ee221d8fc2032910ef159
5
5
  SHA512:
6
- metadata.gz: 575df8a44234264bc4db999320b9b2b9cf7744379342803933753c1a476180f01edc771bcaa01d24d913976a35f3d8f94a9e8eaca81528b8405e04ce34881487
7
- data.tar.gz: 32c4f93dee91f303ad6c027b115ec15eba65142a4a8926a66ec36c7163699bdfb1860e9b09457614d468c790e8e9d66e225910b3a0cb5038bbec7b2998e8d601
6
+ metadata.gz: 8cf6d6627d4e87e3bac290bc0e428d14dea88811c38860bd4c8755fbf3b88e94af2d76634c831c70026e6316881747965ac4e3eda80da4e31f540d67b38d5433
7
+ data.tar.gz: d60dc9912499fa081effc6c37ff796701b541eb1d16d9c5b7ff13ceda9192fed658815666d7706f8ff55a8be54e32551981628b40f34b87f261090e2a01298b0
@@ -121,17 +121,13 @@ class MessagesController < ApplicationController
121
121
  end
122
122
 
123
123
  def destroy_selected
124
- if current_user
125
- unless current_user.has_role?('Librarian')
126
- access_denied
127
- end
128
- else
124
+ unless current_user
129
125
  redirect_to new_user_session_url
130
126
  return
131
127
  end
132
128
  respond_to do |format|
133
129
  if params[:delete].present?
134
- messages = params[:delete].map{|m| Message.find_by_id(m)}
130
+ messages = params[:delete].map{|m| Message.where(id: m).first}
135
131
  end
136
132
  if messages.present?
137
133
  messages.each do |message|
@@ -6,6 +6,7 @@ module EnjuMessage
6
6
  case user.try(:role).try(:name)
7
7
  when 'Administrator'
8
8
  can :manage, Message
9
+ can :destroy_selected, Message
9
10
  can [:read, :update, :destroy, :delete], MessageRequest
10
11
  can [:read, :update], MessageTemplate
11
12
  when 'Librarian'
@@ -13,13 +14,13 @@ module EnjuMessage
13
14
  can [:update], Message do |message|
14
15
  message.sender == user
15
16
  end
16
- can [:show, :destroy, :delete], Message do |message|
17
+ can [:show, :destroy, :delete, :destroy_selected], Message do |message|
17
18
  message.receiver == user
18
19
  end
19
20
  can [:read, :update, :destroy, :delete], MessageRequest
20
21
  can :read, MessageTemplate
21
22
  when 'User'
22
- can [:read, :destroy, :delete], Message do |message|
23
+ can [:show, :destroy, :delete, :destroy_selected], Message do |message|
23
24
  message.receiver == user
24
25
  end
25
26
  can :index, Message
@@ -6,15 +6,15 @@ class Message < ActiveRecord::Base
6
6
  belongs_to :sender, class_name: 'User'
7
7
  belongs_to :receiver, class_name: 'User'
8
8
  validates_presence_of :subject, :body #, :sender
9
- validates_presence_of :recipient, on: :create
10
- validates_presence_of :receiver, on: :update
11
- before_save :set_receiver
9
+ validates_presence_of :receiver, message: :invalid
10
+ before_validation :set_receiver
12
11
  after_save :index
13
12
  after_destroy :remove_from_index
14
13
  after_create :send_notification
15
14
 
16
15
  acts_as_nested_set
17
16
  attr_accessor :recipient
17
+ validates :recipient, presence: true, on: :create
18
18
 
19
19
  delegate :can_transition_to?, :transition_to!, :transition_to, :current_state,
20
20
  to: :state_machine
@@ -43,7 +43,7 @@ class Message < ActiveRecord::Base
43
43
 
44
44
  def set_receiver
45
45
  if recipient
46
- self.receiver = User.find(recipient)
46
+ self.receiver = User.where(username: recipient).first
47
47
  end
48
48
  end
49
49
 
@@ -4,11 +4,11 @@
4
4
  <fieldset>
5
5
 
6
6
  <%= simple_form_for(@message, url: messages_path, validate: true) do |f| -%>
7
- <%= f.error_notification -%>
7
+ <%= f.error_messages -%>
8
8
 
9
9
  <div class="field">
10
10
  <label for="message_recepient"><%= t('message.recipient') -%>:</label>
11
- <%- if @message.recipient -%>
11
+ <%- if @message.receiver -%>
12
12
  <%= link_to @message.receiver.username, profile_path(@message.receiver) -%>
13
13
  <%= f.hidden_field :recipient, value: @message.recipient -%>
14
14
  <%- else -%>
@@ -11,6 +11,7 @@ en:
11
11
  body: Body
12
12
  sender: Sender
13
13
  receiver: Receiver
14
+ recipient: Recipient
14
15
  message_template:
15
16
  status: Status
16
17
  locale: Locale
@@ -11,6 +11,7 @@ ja:
11
11
  body: 本文
12
12
  sender: 差出人
13
13
  receiver: 宛て先
14
+ recipient: 宛て先
14
15
  message_template:
15
16
  status: 状態
16
17
  locale: 言語
@@ -1,3 +1,3 @@
1
1
  module EnjuMessage
2
- VERSION = "0.1.14.pre24"
2
+ VERSION = "0.1.14.pre25"
3
3
  end
@@ -229,6 +229,8 @@ describe MessagesController do
229
229
  before(:each) do
230
230
  @attrs = {:recipient => users(:user1).username, :subject => 'test',:body => 'test'}
231
231
  @invalid_attrs = {:recipient => users(:user1).username, :subject => 'test', :body => ''}
232
+ @invalid_user_attrs = {:recipient => "invalid_user", :subject => 'test', :body => 'test'}
233
+ @blank_user_attrs = {:recipient => "", :subject => 'test', :body => 'test'}
232
234
  end
233
235
 
234
236
  describe "When logged in as Administrator" do
@@ -258,6 +260,24 @@ describe MessagesController do
258
260
  response.should be_success
259
261
  end
260
262
  end
263
+ describe "with invalid recipient" do
264
+ it "re-renders the 'new' template" do
265
+ post :create, :message => @invalid_user_attrs
266
+ message = assigns(:message)
267
+ message.should_not be_valid
268
+ message.errors.should have_key :receiver
269
+ message.errors.added?(:receiver, :invalid).should be_truthy
270
+ response.should render_template("new")
271
+ end
272
+ it "re-renders the 'new' template" do
273
+ post :create, :message => @blank_user_attrs
274
+ message = assigns(:message)
275
+ message.should_not be_valid
276
+ message.errors.should have_key :recipient
277
+ message.errors.added?(:recipient, :blank).should be_truthy
278
+ response.should render_template("new")
279
+ end
280
+ end
261
281
  end
262
282
 
263
283
  describe "When logged in as Librarian" do
@@ -425,12 +445,22 @@ describe MessagesController do
425
445
  end
426
446
 
427
447
  describe "DELETE destroy" do
448
+ describe "When logged in as Librarian" do
449
+ login_fixture_librarian
450
+
451
+ it "should destroy own message" do
452
+ @message = FactoryGirl.create(:message, recipient: @user.username)
453
+ delete :destroy, :id => @message.id
454
+ response.should redirect_to messages_url
455
+ end
456
+ end
428
457
  describe "When logged in as User" do
429
458
  login_fixture_user
430
459
 
431
460
  it "should destroy own message" do
432
461
  delete :destroy, :id => 2
433
462
  response.should redirect_to messages_url
463
+ response.should_not be_forbidden
434
464
  end
435
465
 
436
466
  it "should not destroy other user's message" do
@@ -442,6 +472,7 @@ describe MessagesController do
442
472
  describe "When not logged in" do
443
473
  it "destroys the requested message" do
444
474
  delete :destroy, :id => 1
475
+ response.should redirect_to(new_user_session_url)
445
476
  end
446
477
 
447
478
  it "should be redirected to new_user_session_url" do
@@ -450,4 +481,26 @@ describe MessagesController do
450
481
  end
451
482
  end
452
483
  end
484
+
485
+ describe "POST destroy_selected" do
486
+ describe "When logged in as Librarian" do
487
+ login_fixture_librarian
488
+ it "should destroy own message" do
489
+ message = FactoryGirl.create(:message, recipient: @user.username)
490
+ post :destroy_selected, delete: [ message.id ]
491
+ response.should_not be_forbidden
492
+ response.should redirect_to(messages_url)
493
+ end
494
+ end
495
+
496
+ describe "When logged in as User" do
497
+ login_fixture_user
498
+ it "should destroy own message" do
499
+ message = FactoryGirl.create(:message, recipient: @user.username)
500
+ post :destroy_selected, delete: [ message.id ]
501
+ response.should_not be_forbidden
502
+ response.should redirect_to(messages_url)
503
+ end
504
+ end
505
+ end
453
506
  end
@@ -43,7 +43,7 @@ ActiveRecord::Schema.define(version: 20150221063719) do
43
43
  t.integer "user_id"
44
44
  t.text "note"
45
45
  t.datetime "executed_at"
46
- t.string "agent_import_filename"
46
+ t.string "agent_import_file_name"
47
47
  t.string "agent_import_content_type"
48
48
  t.integer "agent_import_file_size"
49
49
  t.datetime "agent_import_updated_at"
@@ -199,18 +199,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
199
199
  t.datetime "updated_at"
200
200
  end
201
201
 
202
- create_table "carrier_type_has_checkout_types", force: :cascade do |t|
203
- t.integer "carrier_type_id", null: false
204
- t.integer "checkout_type_id", null: false
205
- t.text "note"
206
- t.integer "position"
207
- t.datetime "created_at"
208
- t.datetime "updated_at"
209
- end
210
-
211
- add_index "carrier_type_has_checkout_types", ["carrier_type_id"], name: "index_carrier_type_has_checkout_types_on_m_form_id"
212
- add_index "carrier_type_has_checkout_types", ["checkout_type_id"], name: "index_carrier_type_has_checkout_types_on_checkout_type_id"
213
-
214
202
  create_table "carrier_types", force: :cascade do |t|
215
203
  t.string "name", null: false
216
204
  t.text "display_name"
@@ -220,93 +208,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
220
208
  t.datetime "updated_at"
221
209
  end
222
210
 
223
- create_table "checked_items", force: :cascade do |t|
224
- t.integer "item_id", null: false
225
- t.integer "basket_id", null: false
226
- t.datetime "due_date", null: false
227
- t.datetime "created_at"
228
- t.datetime "updated_at"
229
- t.integer "librarian_id"
230
- end
231
-
232
- add_index "checked_items", ["basket_id"], name: "index_checked_items_on_basket_id"
233
- add_index "checked_items", ["item_id"], name: "index_checked_items_on_item_id"
234
-
235
- create_table "checkins", force: :cascade do |t|
236
- t.integer "item_id", null: false
237
- t.integer "librarian_id"
238
- t.integer "basket_id"
239
- t.datetime "created_at"
240
- t.datetime "updated_at"
241
- t.integer "lock_version", default: 0, null: false
242
- end
243
-
244
- add_index "checkins", ["basket_id"], name: "index_checkins_on_basket_id"
245
- add_index "checkins", ["item_id"], name: "index_checkins_on_item_id"
246
- add_index "checkins", ["librarian_id"], name: "index_checkins_on_librarian_id"
247
-
248
- create_table "checkout_stat_has_manifestations", force: :cascade do |t|
249
- t.integer "manifestation_checkout_stat_id", null: false
250
- t.integer "manifestation_id", null: false
251
- t.integer "checkouts_count"
252
- t.datetime "created_at"
253
- t.datetime "updated_at"
254
- end
255
-
256
- add_index "checkout_stat_has_manifestations", ["manifestation_checkout_stat_id"], name: "index_checkout_stat_has_manifestations_on_checkout_stat_id"
257
- add_index "checkout_stat_has_manifestations", ["manifestation_id"], name: "index_checkout_stat_has_manifestations_on_manifestation_id"
258
-
259
- create_table "checkout_stat_has_users", force: :cascade do |t|
260
- t.integer "user_checkout_stat_id", null: false
261
- t.integer "user_id", null: false
262
- t.integer "checkouts_count", default: 0, null: false
263
- t.datetime "created_at"
264
- t.datetime "updated_at"
265
- end
266
-
267
- add_index "checkout_stat_has_users", ["user_checkout_stat_id"], name: "index_checkout_stat_has_users_on_user_checkout_stat_id"
268
- add_index "checkout_stat_has_users", ["user_id"], name: "index_checkout_stat_has_users_on_user_id"
269
-
270
- create_table "checkout_types", force: :cascade do |t|
271
- t.string "name", null: false
272
- t.text "display_name"
273
- t.text "note"
274
- t.integer "position"
275
- t.datetime "created_at"
276
- t.datetime "updated_at"
277
- end
278
-
279
- add_index "checkout_types", ["name"], name: "index_checkout_types_on_name"
280
-
281
- create_table "checkouts", force: :cascade do |t|
282
- t.integer "user_id"
283
- t.integer "item_id", null: false
284
- t.integer "checkin_id"
285
- t.integer "librarian_id"
286
- t.integer "basket_id"
287
- t.datetime "due_date"
288
- t.integer "checkout_renewal_count", default: 0, null: false
289
- t.integer "lock_version", default: 0, null: false
290
- t.datetime "created_at"
291
- t.datetime "updated_at"
292
- end
293
-
294
- add_index "checkouts", ["basket_id"], name: "index_checkouts_on_basket_id"
295
- add_index "checkouts", ["checkin_id"], name: "index_checkouts_on_checkin_id"
296
- add_index "checkouts", ["item_id", "basket_id"], name: "index_checkouts_on_item_id_and_basket_id", unique: true
297
- add_index "checkouts", ["item_id"], name: "index_checkouts_on_item_id"
298
- add_index "checkouts", ["librarian_id"], name: "index_checkouts_on_librarian_id"
299
- add_index "checkouts", ["user_id"], name: "index_checkouts_on_user_id"
300
-
301
- create_table "circulation_statuses", force: :cascade do |t|
302
- t.string "name", null: false
303
- t.text "display_name"
304
- t.text "note"
305
- t.integer "position"
306
- t.datetime "created_at"
307
- t.datetime "updated_at"
308
- end
309
-
310
211
  create_table "content_types", force: :cascade do |t|
311
212
  t.string "name", null: false
312
213
  t.text "display_name"
@@ -446,16 +347,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
446
347
  add_index "import_requests", ["manifestation_id"], name: "index_import_requests_on_manifestation_id"
447
348
  add_index "import_requests", ["user_id"], name: "index_import_requests_on_user_id"
448
349
 
449
- create_table "item_has_use_restrictions", force: :cascade do |t|
450
- t.integer "item_id", null: false
451
- t.integer "use_restriction_id", null: false
452
- t.datetime "created_at"
453
- t.datetime "updated_at"
454
- end
455
-
456
- add_index "item_has_use_restrictions", ["item_id"], name: "index_item_has_use_restrictions_on_item_id"
457
- add_index "item_has_use_restrictions", ["use_restriction_id"], name: "index_item_has_use_restrictions_on_use_restriction_id"
458
-
459
350
  create_table "items", force: :cascade do |t|
460
351
  t.string "call_number"
461
352
  t.string "item_identifier"
@@ -473,8 +364,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
473
364
  t.datetime "acquired_at"
474
365
  t.integer "bookstore_id"
475
366
  t.integer "budget_type_id"
476
- t.integer "circulation_status_id", default: 5, null: false
477
- t.integer "checkout_type_id", default: 1, null: false
478
367
  t.string "binding_item_identifier"
479
368
  t.string "binding_call_number"
480
369
  t.datetime "binded_at"
@@ -483,8 +372,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
483
372
 
484
373
  add_index "items", ["binding_item_identifier"], name: "index_items_on_binding_item_identifier"
485
374
  add_index "items", ["bookstore_id"], name: "index_items_on_bookstore_id"
486
- add_index "items", ["checkout_type_id"], name: "index_items_on_checkout_type_id"
487
- add_index "items", ["circulation_status_id"], name: "index_items_on_circulation_status_id"
488
375
  add_index "items", ["item_identifier"], name: "index_items_on_item_identifier"
489
376
  add_index "items", ["manifestation_id"], name: "index_items_on_manifestation_id"
490
377
  add_index "items", ["required_role_id"], name: "index_items_on_required_role_id"
@@ -506,21 +393,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
506
393
  add_index "languages", ["iso_639_3"], name: "index_languages_on_iso_639_3"
507
394
  add_index "languages", ["name"], name: "index_languages_on_name", unique: true
508
395
 
509
- create_table "lending_policies", force: :cascade do |t|
510
- t.integer "item_id", null: false
511
- t.integer "user_group_id", null: false
512
- t.integer "loan_period", default: 0, null: false
513
- t.datetime "fixed_due_date"
514
- t.integer "renewal", default: 0, null: false
515
- t.integer "fine", default: 0, null: false
516
- t.text "note"
517
- t.integer "position"
518
- t.datetime "created_at"
519
- t.datetime "updated_at"
520
- end
521
-
522
- add_index "lending_policies", ["item_id", "user_group_id"], name: "index_lending_policies_on_item_id_and_user_group_id", unique: true
523
-
524
396
  create_table "libraries", force: :cascade do |t|
525
397
  t.string "name", null: false
526
398
  t.text "display_name"
@@ -578,19 +450,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
578
450
  t.datetime "updated_at"
579
451
  end
580
452
 
581
- create_table "manifestation_checkout_stats", force: :cascade do |t|
582
- t.datetime "start_date"
583
- t.datetime "end_date"
584
- t.text "note"
585
- t.string "state"
586
- t.datetime "created_at"
587
- t.datetime "updated_at"
588
- t.datetime "started_at"
589
- t.datetime "completed_at"
590
- end
591
-
592
- add_index "manifestation_checkout_stats", ["state"], name: "index_manifestation_checkout_stats_on_state"
593
-
594
453
  create_table "manifestation_relationship_types", force: :cascade do |t|
595
454
  t.string "name", null: false
596
455
  t.text "display_name"
@@ -612,19 +471,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
612
471
  add_index "manifestation_relationships", ["child_id"], name: "index_manifestation_relationships_on_child_id"
613
472
  add_index "manifestation_relationships", ["parent_id"], name: "index_manifestation_relationships_on_parent_id"
614
473
 
615
- create_table "manifestation_reserve_stats", force: :cascade do |t|
616
- t.datetime "start_date"
617
- t.datetime "end_date"
618
- t.text "note"
619
- t.string "state"
620
- t.datetime "created_at"
621
- t.datetime "updated_at"
622
- t.datetime "started_at"
623
- t.datetime "completed_at"
624
- end
625
-
626
- add_index "manifestation_reserve_stats", ["state"], name: "index_manifestation_reserve_stats_on_state"
627
-
628
474
  create_table "manifestations", force: :cascade do |t|
629
475
  t.text "original_title", null: false
630
476
  t.text "title_alternative"
@@ -657,7 +503,7 @@ ActiveRecord::Schema.define(version: 20150221063719) do
657
503
  t.integer "required_score", default: 0, null: false
658
504
  t.integer "frequency_id", default: 1, null: false
659
505
  t.boolean "subscription_master", default: false, null: false
660
- t.string "attachment_filename"
506
+ t.string "attachment_file_name"
661
507
  t.string "attachment_content_type"
662
508
  t.integer "attachment_file_size"
663
509
  t.datetime "attachment_updated_at"
@@ -679,7 +525,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
679
525
  t.text "attachment_meta"
680
526
  t.integer "month_of_publication"
681
527
  t.boolean "fulltext_content"
682
- t.string "doi"
683
528
  t.boolean "serial"
684
529
  t.text "statement_of_responsibility"
685
530
  t.text "publication_place"
@@ -690,7 +535,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
690
535
 
691
536
  add_index "manifestations", ["access_address"], name: "index_manifestations_on_access_address"
692
537
  add_index "manifestations", ["date_of_publication"], name: "index_manifestations_on_date_of_publication"
693
- add_index "manifestations", ["doi"], name: "index_manifestations_on_doi"
694
538
  add_index "manifestations", ["manifestation_identifier"], name: "index_manifestations_on_manifestation_identifier"
695
539
  add_index "manifestations", ["updated_at"], name: "index_manifestations_on_updated_at"
696
540
 
@@ -790,7 +634,7 @@ ActiveRecord::Schema.define(version: 20150221063719) do
790
634
  t.integer "position"
791
635
  t.datetime "created_at"
792
636
  t.datetime "updated_at"
793
- t.string "picture_filename"
637
+ t.string "picture_file_name"
794
638
  t.string "picture_content_type"
795
639
  t.integer "picture_file_size"
796
640
  t.datetime "picture_updated_at"
@@ -880,53 +724,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
880
724
  t.datetime "updated_at"
881
725
  end
882
726
 
883
- create_table "reserve_stat_has_manifestations", force: :cascade do |t|
884
- t.integer "manifestation_reserve_stat_id", null: false
885
- t.integer "manifestation_id", null: false
886
- t.integer "reserves_count"
887
- t.datetime "created_at"
888
- t.datetime "updated_at"
889
- end
890
-
891
- add_index "reserve_stat_has_manifestations", ["manifestation_id"], name: "index_reserve_stat_has_manifestations_on_manifestation_id"
892
- add_index "reserve_stat_has_manifestations", ["manifestation_reserve_stat_id"], name: "index_reserve_stat_has_manifestations_on_m_reserve_stat_id"
893
-
894
- create_table "reserve_stat_has_users", force: :cascade do |t|
895
- t.integer "user_reserve_stat_id", null: false
896
- t.integer "user_id", null: false
897
- t.integer "reserves_count"
898
- t.datetime "created_at"
899
- t.datetime "updated_at"
900
- end
901
-
902
- add_index "reserve_stat_has_users", ["user_id"], name: "index_reserve_stat_has_users_on_user_id"
903
- add_index "reserve_stat_has_users", ["user_reserve_stat_id"], name: "index_reserve_stat_has_users_on_user_reserve_stat_id"
904
-
905
- create_table "reserves", force: :cascade do |t|
906
- t.integer "user_id", null: false
907
- t.integer "manifestation_id", null: false
908
- t.integer "item_id"
909
- t.integer "request_status_type_id", null: false
910
- t.datetime "checked_out_at"
911
- t.datetime "created_at"
912
- t.datetime "updated_at"
913
- t.datetime "canceled_at"
914
- t.datetime "expired_at"
915
- t.datetime "deleted_at"
916
- t.string "state"
917
- t.boolean "expiration_notice_to_patron", default: false
918
- t.boolean "expiration_notice_to_library", default: false
919
- t.datetime "retained_at"
920
- t.datetime "postponed_at"
921
- t.integer "lock_version", default: 0, null: false
922
- end
923
-
924
- add_index "reserves", ["item_id"], name: "index_reserves_on_item_id"
925
- add_index "reserves", ["manifestation_id"], name: "index_reserves_on_manifestation_id"
926
- add_index "reserves", ["request_status_type_id"], name: "index_reserves_on_request_status_type_id"
927
- add_index "reserves", ["state"], name: "index_reserves_on_state"
928
- add_index "reserves", ["user_id"], name: "index_reserves_on_user_id"
929
-
930
727
  create_table "resource_export_file_transitions", force: :cascade do |t|
931
728
  t.string "to_state"
932
729
  t.text "metadata", default: "{}"
@@ -941,6 +738,10 @@ ActiveRecord::Schema.define(version: 20150221063719) do
941
738
 
942
739
  create_table "resource_export_files", force: :cascade do |t|
943
740
  t.integer "user_id"
741
+ t.string "resource_export_file_name"
742
+ t.string "resource_export_content_type"
743
+ t.integer "resource_export_file_size"
744
+ t.datetime "resource_export_updated_at"
944
745
  t.datetime "executed_at"
945
746
  t.datetime "created_at"
946
747
  t.datetime "updated_at"
@@ -965,7 +766,7 @@ ActiveRecord::Schema.define(version: 20150221063719) do
965
766
  t.integer "user_id"
966
767
  t.text "note"
967
768
  t.datetime "executed_at"
968
- t.string "resource_import_filename"
769
+ t.string "resource_import_file_name"
969
770
  t.string "resource_import_content_type"
970
771
  t.integer "resource_import_file_size"
971
772
  t.datetime "resource_import_updated_at"
@@ -1101,28 +902,6 @@ ActiveRecord::Schema.define(version: 20150221063719) do
1101
902
  add_index "subscriptions", ["order_list_id"], name: "index_subscriptions_on_order_list_id"
1102
903
  add_index "subscriptions", ["user_id"], name: "index_subscriptions_on_user_id"
1103
904
 
1104
- create_table "use_restrictions", force: :cascade do |t|
1105
- t.string "name", null: false
1106
- t.text "display_name"
1107
- t.text "note"
1108
- t.integer "position"
1109
- t.datetime "created_at"
1110
- t.datetime "updated_at"
1111
- end
1112
-
1113
- create_table "user_checkout_stats", force: :cascade do |t|
1114
- t.datetime "start_date"
1115
- t.datetime "end_date"
1116
- t.text "note"
1117
- t.string "state"
1118
- t.datetime "created_at"
1119
- t.datetime "updated_at"
1120
- t.datetime "started_at"
1121
- t.datetime "completed_at"
1122
- end
1123
-
1124
- add_index "user_checkout_stats", ["state"], name: "index_user_checkout_stats_on_state"
1125
-
1126
905
  create_table "user_export_file_transitions", force: :cascade do |t|
1127
906
  t.string "to_state"
1128
907
  t.text "metadata", default: "{}"
@@ -1137,31 +916,15 @@ ActiveRecord::Schema.define(version: 20150221063719) do
1137
916
 
1138
917
  create_table "user_export_files", force: :cascade do |t|
1139
918
  t.integer "user_id"
919
+ t.string "user_export_file_name"
920
+ t.string "user_export_content_type"
921
+ t.integer "user_export_file_size"
922
+ t.datetime "user_export_updated_at"
1140
923
  t.datetime "executed_at"
1141
924
  t.datetime "created_at"
1142
925
  t.datetime "updated_at"
1143
926
  end
1144
927
 
1145
- create_table "user_group_has_checkout_types", force: :cascade do |t|
1146
- t.integer "user_group_id", null: false
1147
- t.integer "checkout_type_id", null: false
1148
- t.integer "checkout_limit", default: 0, null: false
1149
- t.integer "checkout_period", default: 0, null: false
1150
- t.integer "checkout_renewal_limit", default: 0, null: false
1151
- t.integer "reservation_limit", default: 0, null: false
1152
- t.integer "reservation_expired_period", default: 7, null: false
1153
- t.boolean "set_due_date_before_closing_day", default: false, null: false
1154
- t.datetime "fixed_due_date"
1155
- t.text "note"
1156
- t.integer "position"
1157
- t.datetime "created_at"
1158
- t.datetime "updated_at"
1159
- t.integer "current_checkout_count"
1160
- end
1161
-
1162
- add_index "user_group_has_checkout_types", ["checkout_type_id"], name: "index_user_group_has_checkout_types_on_checkout_type_id"
1163
- add_index "user_group_has_checkout_types", ["user_group_id"], name: "index_user_group_has_checkout_types_on_user_group_id"
1164
-
1165
928
  create_table "user_groups", force: :cascade do |t|
1166
929
  t.string "name"
1167
930
  t.text "display_name"
@@ -1170,11 +933,8 @@ ActiveRecord::Schema.define(version: 20150221063719) do
1170
933
  t.datetime "created_at"
1171
934
  t.datetime "updated_at"
1172
935
  t.datetime "deleted_at"
1173
- t.integer "valid_period_for_new_user", default: 0, null: false
936
+ t.integer "valid_period_for_new_user", default: 0, null: false
1174
937
  t.datetime "expired_at"
1175
- t.integer "number_of_day_to_notify_overdue", default: 1, null: false
1176
- t.integer "number_of_day_to_notify_due_date", default: 7, null: false
1177
- t.integer "number_of_time_to_notify_overdue", default: 3, null: false
1178
938
  end
1179
939
 
1180
940
  create_table "user_has_roles", force: :cascade do |t|
@@ -1203,7 +963,7 @@ ActiveRecord::Schema.define(version: 20150221063719) do
1203
963
  t.integer "user_id"
1204
964
  t.text "note"
1205
965
  t.datetime "executed_at"
1206
- t.string "user_import_filename"
966
+ t.string "user_import_file_name"
1207
967
  t.string "user_import_content_type"
1208
968
  t.string "user_import_file_size"
1209
969
  t.datetime "user_import_updated_at"
@@ -1225,44 +985,28 @@ ActiveRecord::Schema.define(version: 20150221063719) do
1225
985
  t.datetime "updated_at"
1226
986
  end
1227
987
 
1228
- create_table "user_reserve_stats", force: :cascade do |t|
1229
- t.datetime "start_date"
1230
- t.datetime "end_date"
1231
- t.text "note"
1232
- t.string "state"
1233
- t.datetime "created_at"
1234
- t.datetime "updated_at"
1235
- t.datetime "started_at"
1236
- t.datetime "completed_at"
1237
- end
1238
-
1239
- add_index "user_reserve_stats", ["state"], name: "index_user_reserve_stats_on_state"
1240
-
1241
988
  create_table "users", force: :cascade do |t|
1242
- t.string "email", default: "", null: false
1243
- t.string "encrypted_password", default: "", null: false
989
+ t.string "email", default: "", null: false
990
+ t.string "encrypted_password", default: "", null: false
1244
991
  t.string "reset_password_token"
1245
992
  t.datetime "reset_password_sent_at"
1246
993
  t.datetime "remember_created_at"
1247
- t.integer "sign_in_count", default: 0
994
+ t.integer "sign_in_count", default: 0
1248
995
  t.datetime "current_sign_in_at"
1249
996
  t.datetime "last_sign_in_at"
1250
997
  t.string "current_sign_in_ip"
1251
998
  t.string "last_sign_in_ip"
1252
999
  t.datetime "created_at"
1253
1000
  t.datetime "updated_at"
1254
- t.boolean "save_checkout_history", default: false, null: false
1255
- t.string "checkout_icalendar_token"
1256
1001
  t.string "username"
1257
1002
  t.datetime "deleted_at"
1258
1003
  t.datetime "expired_at"
1259
- t.integer "failed_attempts", default: 0
1004
+ t.integer "failed_attempts", default: 0
1260
1005
  t.string "unlock_token"
1261
1006
  t.datetime "locked_at"
1262
1007
  t.datetime "confirmed_at"
1263
1008
  end
1264
1009
 
1265
- add_index "users", ["checkout_icalendar_token"], name: "index_users_on_checkout_icalendar_token", unique: true
1266
1010
  add_index "users", ["email"], name: "index_users_on_email"
1267
1011
  add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
1268
1012
  add_index "users", ["unlock_token"], name: "index_users_on_unlock_token", unique: true
@@ -35,6 +35,11 @@ describe Message do
35
35
  message.read?.should be_truthy
36
36
  message.current_state.should eq 'read'
37
37
  end
38
+
39
+ it "should require valid recipient" do
40
+ @message.recipient = 'invalidusername'
41
+ @message.save.should be_falsy
42
+ end
38
43
  end
39
44
 
40
45
  # == Schema Information
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enju_message
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.14.pre24
4
+ version: 0.1.14.pre25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kosuke Tanabe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-27 00:00:00.000000000 Z
11
+ date: 2015-08-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: simple_form
@@ -522,7 +522,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
522
522
  version: 1.3.1
523
523
  requirements: []
524
524
  rubyforge_project:
525
- rubygems_version: 2.4.5
525
+ rubygems_version: 2.4.5.1
526
526
  signing_key:
527
527
  specification_version: 4
528
528
  summary: enju_message plugin