fluke/devops-service/app/api2/handlers/user.rb

50 lines
1.1 KiB
Ruby
Raw Normal View History

2015-07-16 17:18:55 +03:00
require "db/mongo/models/user"
module Devops
module API2_0
module Handler
class User
def users
Devops::Db.connector.users
end
def create body
Devops::Db.connector.user_insert Devops::Model::User.new(body)
end
def delete user_id
Devops::Db.connector.user_delete user_id
end
def change_user_privileges user_id, cmd, privileges
2015-07-27 18:27:52 +03:00
change_user(user_id) do |user|
2015-07-16 17:18:55 +03:00
user.grant(cmd, privileges)
end
end
2015-07-27 18:27:52 +03:00
def change_email options
user_id, email = options.values_at('user_id', 'email')
change_user(user_id) do |user|
user.email = email
2015-07-16 17:18:55 +03:00
end
end
2015-07-27 18:27:52 +03:00
def change_password options
user_id, password = options.values_at('user_id', 'password')
change_user(user_id) do |user|
user.password = password
2015-07-16 17:18:55 +03:00
end
end
def change_user user_id
user = Devops::Db.connector.user user_id
yield(user)
Devops::Db.connector.user_update user
end
end
end
end
end