Sha256: 3a36a3dd17c1c34a97532bb5501f13836babddfb094e8746b504dbd51d2b779f

Contents?: true

Size: 1.34 KB

Versions: 14

Compression:

Stored size: 1.34 KB

Contents

module ClassMethods
  def default_accounted_type_id
    Card::UserID
  end
end

def account
  fetch :trait=>:account
end

def accountable?
  Card.toggle( rule :accountable )
end

def parties
  @parties ||= (all_roles << self.id).flatten.reject(&:blank?)
end

def among? ok_ids
  ok_ids.each do |ok_id|
    return true if parties.member? ok_id
  end
  ok_ids.member? Card::AnyoneID
end

def is_own_account?
  # card is +*account card of signed_in user.
  cardname.part_names[0].key == Auth.as_card.key and
  cardname.part_names[1].key == Card[:account].key
end

def read_rules
  @read_rules ||= begin
    rule_ids = []
    unless id==Card::WagnBotID # always_ok, so not needed
      ( [ Card::AnyoneID ] + parties ).each do |party_id|
        if rule_ids_for_party = self.class.read_rule_cache[ party_id ]
          rule_ids += rule_ids_for_party
        end
      end
    end
    rule_ids
  end
end

def all_roles
  @all_roles ||= 
    if id == Card::AnonymousID
      []
    else
      Auth.as_bot do
        role_trait = fetch :trait=>:roles
        [ Card::AnyoneSignedInID ] + ( role_trait ? role_trait.item_ids : [] )
      end
    end
end


event :generate_token do
  Digest::SHA1.hexdigest "--#{Time.now.to_s}--#{rand 10}--" 
end

event :set_stamper, :before=>:approve do
  self.updater_id = Auth.current_id
  self.creator_id = self.updater_id if new_card?
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
wagn-1.14.6 mod/05_standard/set/all/account.rb
wagn-1.14.5 mod/05_standard/set/all/account.rb
wagn-1.14.4 mod/05_standard/set/all/account.rb
wagn-1.14.3 mod/05_standard/set/all/account.rb
wagn-1.14.2 mod/05_standard/set/all/account.rb
wagn-1.14.1 mod/05_standard/set/all/account.rb
wagn-1.14.0 mod/05_standard/set/all/account.rb
wagn-1.14.0.pre3 mod/05_standard/set/all/account.rb
wagn-1.14.0.pre2 mod/05_standard/set/all/account.rb
wagn-1.14.0.pre1 mod/05_standard/set/all/account.rb
wagn-1.13.0 mod/standard/set/all/account.rb
wagn-1.13.0.pre2 mods/standard/sets/all/account.rb
wagn-1.13.0.pre1 mods/standard/sets/all/account.rb
wagn-1.13.0.pre mods/standard/sets/all/account.rb