From eb449f99377a06355426cdf927edf163a74c8e52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=91=B1=E5=91=B1=E5=91=B1?= Date: Thu, 24 Aug 2023 17:03:22 +0800 Subject: [PATCH] update --- app/controllers/site_pages_controller.rb | 13 ++++++++++--- app/queries/page_query.rb | 2 +- app/views/site_pages/index.json.jbuilder | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/controllers/site_pages_controller.rb b/app/controllers/site_pages_controller.rb index 4dda0ca0e..adcb66b8e 100644 --- a/app/controllers/site_pages_controller.rb +++ b/app/controllers/site_pages_controller.rb @@ -2,11 +2,12 @@ class SitePagesController < ApplicationController before_action :require_login, except: [:softbot_build, :themes] before_action :require_profile_completed, only: [:create] before_action :load_project, except: [:softbot_build, :index, :themes] - before_action :authenticate_user!, except: [:softbot_build, :index, :themes] + before_action :authenticate_user!, except: [:softbot_build, :index, :themes, :show] + before_action :authenticate_member!, only: [:show] def index - @pages = PageQuery.call(params,current_user) - @pages = paginate(@pages) + pages = PageQuery.call(params,current_user) + @pages = paginate(pages) end def show @@ -66,6 +67,12 @@ class SitePagesController < ApplicationController end end + def authenticate_member! + unless @project.member?(current_user) || current_user.admin? + return render_forbidden('你不是成员,没有权限操作') + end + end + def theme_params params[:language_frame] || "hugo" end diff --git a/app/queries/page_query.rb b/app/queries/page_query.rb index 50fcb92ad..3745232ec 100644 --- a/app/queries/page_query.rb +++ b/app/queries/page_query.rb @@ -3,11 +3,11 @@ class PageQuery < ApplicationQuery def initialize(params, user) @user = user + @params = params end def call pages = Page.where(user: @user) - pages end end \ No newline at end of file diff --git a/app/views/site_pages/index.json.jbuilder b/app/views/site_pages/index.json.jbuilder index 035f4bc1b..40c014984 100644 --- a/app/views/site_pages/index.json.jbuilder +++ b/app/views/site_pages/index.json.jbuilder @@ -1,4 +1,4 @@ -json.total_count @pages.size +json.total_count @pages.total_count json.pages @pages.each do |page| json.partial! 'info', locals: {page: page} end