Sha256: f8e6d777978a371ac5a980c5766ce4b472e3f455d73b608ecb2e92f664e79665

Contents?: true

Size: 1.02 KB

Versions: 6

Compression:

Stored size: 1.02 KB

Contents

# -*- encoding : utf-8 -*-
class Card; module Set; class All
# Set: All cards (Codename)
#
module Codename;
extend Card::Set
def self.source_location; "/Users/ethan/dev/decko/gem/card/mod/core/set/all/codename.rb"; end
def codename
  super&.to_sym
end

event :validate_codename, :validate, on: :update, changed: :codename do
  validate_codename_permission
  validate_codename_uniqueness
end

event :reset_codename_cache, :integrate, changed: :codename do
  return if action == :create && codename.nil?

  Card::Codename.reset_cache
  Card::Codename.generate_id_constants
end

private

def validate_codename_permission
  return if Auth.always_ok? || Auth.as_id == creator_id

  errors.add :codename, tr(:only_admins_codename)
end

def validate_codename_uniqueness
  return (self.codename = nil) if codename.blank?
  return if errors.present? || !Card.find_by_codename(codename)
  errors.add :codename, tr(:error_code_in_use, codename: codename)
end
end;end;end;end;
# ~~ generated from /Users/ethan/dev/decko/gem/card/mod/core/set/all/codename.rb ~~

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
card-1.101.5 tmpsets/set/mod002-core/all/codename.rb
card-1.101.4 tmpsets/set/mod002-core/all/codename.rb
card-1.101.3 tmpsets/set/mod002-core/all/codename.rb
card-1.101.2 tmpsets/set/mod002-core/all/codename.rb
card-1.101.1 tmpsets/set/mod002-core/all/codename.rb
card-1.101.0 tmpsets/set/mod002-core/all/codename.rb