Class: Turntabler::Avatar

Inherits:
Resource show all
Defined in:
lib/turntabler/avatar.rb

Overview

Represents an avatar for DJ’ing

Instance Attribute Summary collapse

Attributes inherited from Resource

#id

Instance Method Summary collapse

Methods inherited from Resource

#==, attribute, #attributes=, #hash, #initialize, #load, #loaded?, #pretty_print, #pretty_print_instance_variables

Methods included from Assertions

#assert_valid_keys, #assert_valid_values

Methods included from DigestHelpers

#digest

Constructor Details

This class inherits a constructor from Turntabler::Resource

Instance Attribute Details

#aclFixnum (readonly)

The access control required to activate this avatar

Returns:

  • (Fixnum)


12
# File 'lib/turntabler/avatar.rb', line 12

attribute :acl

#minimum_pointsFixnum (readonly)

The minimum points required to activate this avatar

Returns:

  • (Fixnum)


8
# File 'lib/turntabler/avatar.rb', line 8

attribute :minimum_points, :min

Instance Method Details

#available?Boolean

Determines whether this avatar is available to the current user.

Returns:

  • (Boolean)

    true if the avatar is available, otherwise false



17
18
19
# File 'lib/turntabler/avatar.rb', line 17

def available?
  client.user.points >= minimum_points && (!acl || client.user.acl >= acl)
end

#settrue

Updates the current user’s avatar to this one.

Examples:

avatar.set    # => true

Returns:

  • (true)

Raises:



27
28
29
30
31
32
# File 'lib/turntabler/avatar.rb', line 27

def set
  api('user.set_avatar', :avatarid => id)
  client.user.attributes = {'avatarid' => id}
  client.user.avatar.attributes = {'min' => minimum_points, 'acl' => acl}
  true
end