* API Articles v0-v1 restructure * Remove unused helper * Bulk move API controllers into concerns + add V1 controllers * Extract API routes + some fixes * Fix v1 api_controller authenticate! + add more article_controller specs * Completed spec/requests/api/v1/articles_spec.rb * specs up to listings * All v1 specs except for 9 skips * mime_types cleanup + authenticate! relocation Co-authored-by: Fernando Valverde <fernando@visualcosita.com>
27 lines
882 B
Ruby
27 lines
882 B
Ruby
json.array! @articles do |article|
|
|
json.type_of "article"
|
|
|
|
json.extract!(
|
|
article,
|
|
:id, :title, :description, :published, :published_at,
|
|
:slug, :path, :url, :comments_count, :public_reactions_count, :page_views_count,
|
|
:published_timestamp, :body_markdown
|
|
)
|
|
|
|
json.positive_reactions_count article.public_reactions_count
|
|
json.cover_image cloud_cover_url(article.main_image)
|
|
json.tag_list article.cached_tag_list_array
|
|
json.canonical_url article.processed_canonical_url
|
|
json.reading_time_minutes article.reading_time
|
|
|
|
json.partial! "api/v1/shared/user", user: article.user
|
|
|
|
if article.organization
|
|
json.partial! "api/v1/shared/organization", organization: article.organization
|
|
end
|
|
|
|
flare_tag = FlareTag.new(article).tag
|
|
if flare_tag
|
|
json.partial! "flare_tag", flare_tag: flare_tag
|
|
end
|
|
end
|