Sha256: af6d71c8095552e516b048e07b05aaa2e0aef1b9cc6f6ee455a7744ce1c2a7ca

Contents?: true

Size: 1.07 KB

Versions: 2

Compression:

Stored size: 1.07 KB

Contents

# -*- encoding : utf-8 -*-
class Card; module Set; class Type
# Set: All "Cardtype" cards
#
module Cardtype;
extend Card::Set
def self.source_location; "/Users/ethan/dev/decko/gem/card/mod/core/set/type/cardtype.rb"; end
def cards_of_type_exist?
  !new_card? && Card.where(trash: false, type_id: id).exists?
end

def create_ok?
  Card.new(type_id: id).ok? :create
end

def was_cardtype?
  type_id_before_act == Card::CardtypeID
end

event :check_for_cards_of_type, after: :validate_delete do
  errors.add :cardtype, t(:core_cards_exist, cardname: name) if cards_of_type_exist?
end

event :check_for_cards_of_type_when_type_changed,
      :validate, changing: :type, when: :was_cardtype? do
  if cards_of_type_exist?
    errors.add :cardtype, t(:core_error_cant_alter, name: name_before_act)
  end
end

event :validate_cardtype_name, :validate, on: :save, changed: :name do
  if %r{[<>/]}.match?(name)
    errors.add :name, t(:core_error_invalid_character_in_cardtype, banned: "<, >, /")
  end
end
end;end;end;end;
# ~~ generated from /Users/ethan/dev/decko/gem/card/mod/core/set/type/cardtype.rb ~~

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
card-1.101.7 tmpsets/set/mod002-core/type/cardtype.rb
card-1.101.6 tmpsets/set/mod002-core/type/cardtype.rb