Project

General

Profile

Download (1.3 KB) Statistics
| Branch: | Tag: | Revision:
module Api
module V2
class RolesController < V2::BaseController
before_filter :find_optional_nested_object
before_filter :find_resource, :only => %w{show update destroy}

api :GET, "/roles/", N_("List all roles")
param_group :search_and_pagination, ::Api::V2::BaseController

def index
@roles = resource_scope_for_index
end

api :GET, "/roles/:id/", N_("Show a role")
param :id, :identifier, :required => true

def show
end

def_param_group :role do
param :role, Hash, :required => true, :action_aware => true do
param :name, String, :required => true
end
end

api :POST, "/roles/", N_("Create a role")
param_group :role, :as => :create

def create
@role = Role.new(params[:role])
process_response @role.save
end

api :PUT, "/roles/:id/", N_("Update a role")
param :id, String, :required => true
param_group :role

def update
process_response @role.update_attributes(params[:role])
end

api :DELETE, "/roles/:id/", N_("Delete a role")
param :id, String, :required => true

def destroy
process_response @role.destroy
end

private

def allowed_nested_id
%w(user_id)
end
end
end
end
(42-42/53)