Module: EnjuCirculation::EnjuBasket

Extended by:
ActiveSupport::Concern
Defined in:
app/models/concerns/enju_circulation/enju_basket.rb

Instance Method Summary collapse

Instance Method Details

#basket_checkout(librarian) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'app/models/concerns/enju_circulation/enju_basket.rb', line 12

def basket_checkout(librarian)
  return nil if checked_items.size == 0
  Item.transaction do
    checked_items.each do |checked_item|
      checkout = user.checkouts.new
      checkout.librarian = librarian
      checkout.item = checked_item.item
      checkout.basket = self
      checkout.library = librarian.profile.library
      checkout.shelf = checked_item.item.shelf
      checkout.due_date = checked_item.due_date
      checked_item.item.checkout!(user)
      checkout.save!
    end
    CheckedItem.destroy_all(basket_id: id)
  end
end