module Card::Name::CardClass

Name-related Card class methods

Public Instance Methods

generate_alternative_name(name) click to toggle source
# File lib/card/name/card_class.rb, line 20
def generate_alternative_name name
  uniq_name = "#{name} 1"
  uniq_name.next! while Card.exist?(uniq_name)
  uniq_name
end
rename!(oldname, newname) click to toggle source
# File lib/card/name/card_class.rb, line 5
def rename! oldname, newname
  Card[oldname].update! name: newname
end
uniquify_name(name, rename=:new) click to toggle source
# File lib/card/name/card_class.rb, line 9
def uniquify_name name, rename=:new
  name = name.to_name
  return name unless Card.exist? name

  uniq_name = generate_alternative_name name
  return uniq_name unless rename == :old

  rename!(name, uniq_name)
  name
end