Files
2026-04-24 22:01:18 +00:00

46 lines
1.7 KiB
Plaintext

api.deal do
api.id @deal.id
api.name @deal.name
api.price @deal.price
api.currency @deal.currency
api.price_type @deal.price_type
api.duration @deal.duration
api.probability @deal.probability
api.due_date @deal.due_date
api.background @deal.background
api.project(:id => @deal.project_id, :name => @deal.project.name) unless @deal.project.nil?
api.status(:id => @deal.status_id, :name => @deal.status.name) unless @deal.status.nil?
api.category(:id => @deal.category_id, :name => @deal.category.name) unless @deal.category.nil?
api.author(:id => @deal.author_id, :name => @deal.author.name) unless @deal.author.nil?
api.contact(:id => @deal.contact_id, :name => @deal.contact.name) unless @deal.contact.nil?
api.assigned_to(:id => @deal.assigned_to_id, :name => @deal.assigned_to.name) unless @deal.assigned_to.nil?
render_api_custom_values @deal.custom_field_values, api
api.created_on @deal.created_on
api.updated_on @deal.updated_on
api.array :related_contacts do
@deal.related_contacts.each do |contact|
api.contact(:id => contact.id, :name => contact.name)
end
end if @deal.related_contacts.any?
if authorize_for(:notes, :show)
api.array :notes do
@deal.notes.each do |note|
api.note do
api.id note.id
api.content note.content
api.type_id note.type_id
api.author(:id => note.author_id, :name => note.author.name) unless note.author.nil?
api.created_on note.created_on
api.updated_on note.updated_on
end
end
end if include_in_api_response?('notes') && @deal.notes.present? && User.current.allowed_to?(:view_deals, @project)
end
call_hook(:api_deals_show)
end