class Shelly::Organization

Attributes

app_code_names[RW]
name[RW]
redeem_code[RW]
referral_code[RW]

Public Class Methods

new(attributes = {}) click to toggle source
# File lib/shelly/organization.rb, line 5
def initialize(attributes = {})
  @name           = attributes["name"]
  @app_code_names = attributes["app_code_names"]
end

Public Instance Methods

apps() click to toggle source
# File lib/shelly/organization.rb, line 10
def apps
  app_code_names.map do |code_name|
    Shelly::App.new(code_name)
  end
end
create() click to toggle source
# File lib/shelly/organization.rb, line 16
def create
  attributes = {:name => name, :redeem_code => redeem_code}
  shelly.create_organization(attributes, referral_code)
end
delete_member(email) click to toggle source
# File lib/shelly/organization.rb, line 42
def delete_member(email)
  shelly.delete_member(name, email)
end
inactive_members() click to toggle source
# File lib/shelly/organization.rb, line 34
def inactive_members
  memberships.select { |c| !c["active"] }
end
members() click to toggle source
# File lib/shelly/organization.rb, line 30
def members
  memberships.select { |c| !c["owner"] } - inactive_members
end
memberships() click to toggle source
# File lib/shelly/organization.rb, line 21
def memberships
  @members ||= Array(shelly.members(name)).
    sort_by { |c| c["email"] }
end
owners() click to toggle source
# File lib/shelly/organization.rb, line 26
def owners
  memberships.select { |c| c["owner"] } - inactive_members
end
send_invitation(email, owner) click to toggle source
# File lib/shelly/organization.rb, line 38
def send_invitation(email, owner)
  shelly.send_invitation(name, email, owner)
end
to_s() click to toggle source
# File lib/shelly/organization.rb, line 46
def to_s
  name
end