diff --git a/app/controllers/project_trends_controller.rb b/app/controllers/project_trends_controller.rb index f283d05f7..4c0b2348f 100644 --- a/app/controllers/project_trends_controller.rb +++ b/app/controllers/project_trends_controller.rb @@ -1,6 +1,6 @@ class ProjectTrendsController < ApplicationController - before_action :load_repository - before_action :check_project_public + before_action :load_repository, except: [:last] + before_action :check_project_public, except: [:last] def index project_trends = @project.project_trends.preload(:user, trend: :user, project: :owner) @@ -42,6 +42,14 @@ class ProjectTrendsController < ApplicationController @project_trends = project_trends.page(@page).per(@limit) end + def last + project_trends = ProjectTrend.preload(:user, trend: :user, project: :owner).order("id desc") + @page = params[:page] || 1 + @limit = params[:limit] || 20 + @project_trends_count = project_trends.count + @project_trends = project_trends.page(@page).per(@limit) + end + private def check_project_public diff --git a/app/views/project_trends/last.json.jbuilder b/app/views/project_trends/last.json.jbuilder new file mode 100644 index 000000000..04edf97a9 --- /dev/null +++ b/app/views/project_trends/last.json.jbuilder @@ -0,0 +1,8 @@ +json.partial! "commons/success" +json.total_count @project_trends_count +json.project_trends do + json.array! @project_trends.to_a.each do |trend| + json.partial! "detail", trend: trend + end +end +