summaryrefslogtreecommitdiff
path: root/app/models/character_item.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/character_item.rb')
-rw-r--r--app/models/character_item.rb14
1 files changed, 2 insertions, 12 deletions
diff --git a/app/models/character_item.rb b/app/models/character_item.rb
index b54f799..6ee13ab 100644
--- a/app/models/character_item.rb
+++ b/app/models/character_item.rb
@@ -1,4 +1,6 @@
class CharacterItem < ApplicationRecord
+ include DestroyIfZeroQuantity
+
belongs_to :character
belongs_to :item
validates :quantity, presence: true
@@ -9,17 +11,5 @@ class CharacterItem < ApplicationRecord
end
end
- after_save :destroy_if_zero_quantity
-
scope :ordered_by_item_name, -> { includes(:item).order("items.name") }
-
- private
- def destroy_if_zero_quantity
- if self.quantity == 0
- destroy
- elsif self.quantity < 0
- # TODO: Can improve this (at the least, with reporting, later).
- raise ItemQuantityError
- end
- end
end