Sha256: f2956c0e14df15c82c888632bd2e4d674ad1f4b626659c6252bf506ac58a4543
Contents?: true
Size: 1.49 KB
Versions: 2
Compression:
Stored size: 1.49 KB
Contents
module Squall # OnApp Role class Role < Base # Public: Lists all roles. # # Returns an Array. def list response = request(:get, '/roles.json') response.collect { |role| role['role']} end # Public: Show info for the given role. # # id - ID of the role # # Returns a Hash. def show(id) response = request(:get, "/roles/#{id}.json") response["role"] end # Public: Create a new Role # # options - Params for creating the roles: # :label - Label for the role # :permission_ids - An array of permission ids granted to the role. # # Example # # create label: 'Admin' def create(options = {}) request(:post, '/roles.json', default_params(options)) end # Public: Edit a Role. # # id - ID of the role # options - Params for editing the roles, see `#create` # # Example # # edit 1, label: 'myrole', permission_ids: [1, 3] # # Returns a Hash. def edit(id, options = {}) request(:put, "/roles/#{id}.json", default_params(options)) end # Public: Delete a Role. # # id - ID of the role # # Returns a Hash. def delete(id) request(:delete, "/roles/#{id}.json") end # Public: Lists all permissions available. # # Returns an Array. def permissions response = request(:get, '/permissions.json') response.collect { |perm| perm['permission'] } end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
squall-1.4.0 | lib/squall/role.rb |
squall-1.3.1 | lib/squall/role.rb |