This commit is contained in:
Stella Rouzi 2014-08-12 16:06:46 +03:00
parent bbeae5e0ff
commit e7a79528b6

View file

@ -197,5 +197,48 @@ module Admin
format.json { render json: @conference.to_json }
end
end
def roles
@user = User.new
@roles = Role::ACTIONABLES + Role::LABELS
params[:user] ? (@selected = params[:user][:roles]) : (@selected = 'Organizer')
@selection = @selected.parameterize.underscore
@role = Role.where(name: @selection, resource: @conference)
@role_users = get_users(@selection)
end
def add_user
user = User.find_by(email: params[:user][:email])
@selected = params[:role]
@selection = @selected.parameterize.underscore
@role_users = get_users(@selection)
user.add_role @selection.to_sym, @conference
render 'roles', formats: [:js]
end
def remove_user
user = User.find(params[:user])
@selected = params[:role]
@selection = @selected.parameterize.underscore
role = Role.where(name: @selection, resource: @conference).first
@role_users = get_users(@selection)
user.revoke role.name.to_sym, @conference
render 'roles', formats: [:js]
end
protected
def get_users(role)
@role_users = {}
get_role = Role.where(name: role, resource: @conference)
get_role.blank? ? @role_users[role] = get_role : @role_users[role] = get_role.first.users
@role_users
end
end
end