Class: Appwrite::Role

Inherits:
Object
  • Object
show all
Defined in:
lib/appwrite/role.rb

Overview

Helper class to generate role strings for ‘Permission`.

Class Method Summary collapse

Class Method Details

.anyString

Grants access to anyone.

This includes authenticated and unauthenticated users.

Returns:

  • (String)


11
12
13
# File 'lib/appwrite/role.rb', line 11

def self.any
    'any'
end

.guestsString

Grants access to any guest user without a session.

Authenticated users don’t have access to this role.

Returns:

  • (String)


53
54
55
# File 'lib/appwrite/role.rb', line 53

def self.guests
    'guests'
end

.label(name) ⇒ String

Grants access to a user with the specified label.

Parameters:

  • name (String)

Returns:

  • (String)


91
92
93
# File 'lib/appwrite/role.rb', line 91

def self.label(name)
    "label:#{name}"
end

.member(id) ⇒ String

Grants access to a specific member of a team.

When the member is removed from the team, they will no longer have access.

Parameters:

  • id (String)

Returns:

  • (String)


82
83
84
# File 'lib/appwrite/role.rb', line 82

def self.member(id)
    "member:#{id}"
end

.team(id, role = "") ⇒ String

Grants access to a team by team ID.

You can optionally pass a role for ‘role` to target team members with the specified role.

Parameters:

  • id (String)
  • role (String) (defaults to: "")

Returns:

  • (String)


66
67
68
69
70
71
72
# File 'lib/appwrite/role.rb', line 66

def self.team(id, role = "")
    if(role.empty?)
        "team:#{id}"
    else
        "team:#{id}/#{role}"
    end
end

.user(id, status = "") ⇒ String

Grants access to a specific user by user ID.

You can optionally pass verified or unverified for ‘status` to target specific types of users.

Parameters:

  • id (String)
  • status (String) (defaults to: "")

Returns:

  • (String)


24
25
26
27
28
29
30
# File 'lib/appwrite/role.rb', line 24

def self.user(id, status = "")
    if(status.empty?)
        "user:#{id}"
    else
        "user:#{id}/#{status}"
    end
end

.users(status = "") ⇒ String

Grants access to any authenticated or anonymous user.

You can optionally pass verified or unverified for ‘status` to target specific types of users.

Parameters:

  • status (String) (defaults to: "")

Returns:

  • (String)


40
41
42
43
44
45
46
# File 'lib/appwrite/role.rb', line 40

def self.users(status = "")
    if(status.empty?)
        'users'
    else
        "users/#{status}"
    end
end