Chore: Remove duplication of user JBuilder (#911)
* Chore: Reduce duplication of user JBuilder
This commit is contained in:
@@ -17,11 +17,11 @@ class Api::V1::Accounts::AgentsController < Api::BaseController
|
||||
def update
|
||||
@agent.update!(agent_params.except(:role))
|
||||
@agent.current_account_user.update!(role: agent_params[:role]) if agent_params[:role]
|
||||
render 'api/v1/models/user.json', locals: { resource: @agent }
|
||||
render partial: 'api/v1/models/agent.json.jbuilder', locals: { resource: @agent }
|
||||
end
|
||||
|
||||
def create
|
||||
render 'api/v1/models/user.json', locals: { resource: @user }
|
||||
render partial: 'api/v1/models/agent.json.jbuilder', locals: { resource: @user }
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
@@ -2,7 +2,7 @@ class Api::V1::ProfilesController < Api::BaseController
|
||||
before_action :set_user
|
||||
|
||||
def show
|
||||
render json: @user
|
||||
render partial: 'api/v1/models/user.json.jbuilder', locals: { resource: @user }
|
||||
end
|
||||
|
||||
def update
|
||||
|
||||
@@ -1,10 +1,3 @@
|
||||
json.array! @agents do |agent|
|
||||
json.account_id agent.account.id
|
||||
json.availability_status agent.availability_status
|
||||
json.confirmed agent.confirmed?
|
||||
json.email agent.email
|
||||
json.id agent.id
|
||||
json.name agent.name
|
||||
json.role agent.role
|
||||
json.thumbnail agent.avatar_url
|
||||
json.partial! 'api/v1/models/agent.json.jbuilder', resource: agent
|
||||
end
|
||||
|
||||
8
app/views/api/v1/models/_agent.json.jbuilder
Normal file
8
app/views/api/v1/models/_agent.json.jbuilder
Normal file
@@ -0,0 +1,8 @@
|
||||
json.account_id resource.account.id
|
||||
json.availability_status resource.availability_status
|
||||
json.confirmed resource.confirmed?
|
||||
json.email resource.email
|
||||
json.id resource.id
|
||||
json.name resource.name
|
||||
json.role resource.role
|
||||
json.thumbnail resource.avatar_url
|
||||
21
app/views/api/v1/models/_user.json.jbuilder
Normal file
21
app/views/api/v1/models/_user.json.jbuilder
Normal file
@@ -0,0 +1,21 @@
|
||||
json.id resource.id
|
||||
json.provider resource.provider
|
||||
json.uid resource.uid
|
||||
json.name resource.name
|
||||
json.nickname resource.nickname
|
||||
json.email resource.email
|
||||
json.account_id resource.active_account_user.account_id
|
||||
json.pubsub_token resource.pubsub_token
|
||||
json.role resource.active_account_user.role
|
||||
json.inviter_id resource.active_account_user.inviter_id
|
||||
json.confirmed resource.confirmed?
|
||||
json.avatar_url resource.avatar_url
|
||||
json.access_token resource.access_token.token
|
||||
json.accounts do
|
||||
json.array! resource.account_users do |account_user|
|
||||
json.id account_user.account_id
|
||||
json.name account_user.account.name
|
||||
json.active_at account_user.active_at
|
||||
json.role account_user.role
|
||||
end
|
||||
end
|
||||
@@ -1,12 +0,0 @@
|
||||
json.id resource.id
|
||||
json.provider resource.provider
|
||||
json.uid resource.uid
|
||||
json.name resource.name
|
||||
json.nickname resource.nickname
|
||||
json.email resource.email
|
||||
json.account_id resource.current_account_user.account_id
|
||||
json.pubsub_token resource.pubsub_token
|
||||
json.role resource.current_account_user.role
|
||||
json.inviter_id resource.current_account_user.inviter_id
|
||||
json.confirmed resource.confirmed?
|
||||
json.avatar_url resource.avatar_url
|
||||
@@ -1,9 +1 @@
|
||||
json.id @user.id
|
||||
json.provider @user.provider
|
||||
json.uid @user.uid
|
||||
json.name @user.name
|
||||
json.nickname @user.nickname
|
||||
json.email @user.email
|
||||
json.pubsub_token @user.pubsub_token
|
||||
json.confirmed @user.confirmed?
|
||||
json.avatar_url @user.avatar_url
|
||||
json.partial! 'api/v1/models/user.json.jbuilder', resource: @user
|
||||
|
||||
@@ -1,22 +1,3 @@
|
||||
json.data do
|
||||
json.id resource.id
|
||||
json.provider resource.provider
|
||||
json.uid resource.uid
|
||||
json.name resource.name
|
||||
json.nickname resource.nickname
|
||||
json.email resource.email
|
||||
json.account_id resource.active_account_user.account_id
|
||||
json.pubsub_token resource.pubsub_token
|
||||
json.role resource.active_account_user.role
|
||||
json.inviter_id resource.active_account_user.inviter_id
|
||||
json.confirmed resource.confirmed?
|
||||
json.avatar_url resource.avatar_url
|
||||
json.accounts do
|
||||
json.array! resource.account_users do |account_user|
|
||||
json.id account_user.account_id
|
||||
json.name account_user.account.name
|
||||
json.active_at account_user.active_at
|
||||
json.role account_user.role
|
||||
end
|
||||
end
|
||||
json.partial! 'api/v1/models/user.json.jbuilder', resource: resource
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user