Sha256: 6b125abfb841f0b67b94a237cb20f45ea5647ac2f2caeccb2caf075b226a4ec4

Contents?: true

Size: 729 Bytes

Versions: 2

Compression:

Stored size: 729 Bytes

Contents

class AbilitiesController < ApplicationController
  
  
  def index
    preload
    authorize! :index, @user_abilities
  end
  
  def create
    preload
    
    abilities = []
    
    params[:module].each do |mdl_id, abilities_arr|
      mdl = SystemModule.find(mdl_id)
      abilities_arr.each do |ab_id,ab_id2|
        ab = SystemAbility.find(ab_id)
        abilities << { :module => mdl, :ability => ab }
      end
    end
    
    @user.define_abilities abilities
    @user.save
    
    authorize! :create, @user_abilities
    render "index"
  end
  
  def preload
    @user = User.find params[:user_id]
    @user_abilities = @user.abilities
    @modules = SystemModule.all
    @abilities = SystemAbility.all
  end
  
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
guara-0.0.3 app/controllers/abilities_controller.rb
guara-0.0.1.rc app/controllers/abilities_controller.rb