scinote-web/app/controllers/client_api/users/users_controller.rb

84 lines
2 KiB
Ruby
Raw Normal View History

module ClientApi
module Users
class UsersController < ApplicationController
2017-09-14 17:46:49 +08:00
def preferences_info
respond_to do |format|
format.json do
render template: 'client_api/users/preferences',
status: :ok,
locals: { user: current_user}
end
end
end
def profile_info
respond_to do |format|
format.json do
render template: '/client_api/users/profile',
status: :ok,
locals: { user: current_user }
end
end
end
def statistics_info
respond_to do |format|
format.json do
render template: '/client_api/users/statistics',
status: :ok,
locals: { user: current_user }
end
end
end
def current_user_info
respond_to do |format|
format.json do
render template: '/client_api/users/show',
2017-09-14 17:46:49 +08:00
status: :ok,
locals: { user: current_user }
end
end
end
2017-09-21 19:42:49 +08:00
def update
binding.pry
2017-09-22 22:59:38 +08:00
respond_to do |format|
if current_user.update(user_params)
sign_in(current_user, bypass: true)
format.json { render json: {}, status: :ok }
else
format.json {
render json: { message: current_user.errors.full_messages },
status: :unprocessable_entity
}
end
end
2017-09-21 19:42:49 +08:00
end
2017-09-04 20:56:03 +08:00
private
def user_params
2017-09-22 22:59:38 +08:00
params.require(:user).permit(:password, :initials, :email, :full_name)
2017-09-04 20:56:03 +08:00
end
def change_notification(dinamic_param, params)
user = current_user
user[dinamic_param] = params['status']
status =
if user.save
user[dinamic_param]
else
user.reload[dinamic_param]
end
respond_to do |format|
format.json { render json: { status: status } }
end
end
end
end
end