Merge branch 'develop' into dev_trustie_server

This commit is contained in:
jasder 2021-05-21 19:26:47 +08:00
commit 72b89d4b2b
8 changed files with 40 additions and 15 deletions

View File

@ -2,7 +2,7 @@ module Acceleratorable
extend ActiveSupport::Concern extend ActiveSupport::Concern
def enable_accelerator?(clone_addr) def enable_accelerator?(clone_addr)
clone_addr.include?(github_domain) || clone_addr.include?(gitlab_domain) is_foreign_url?(clone_addr) && config_accelerator?
end end
def accelerator_url(repo_name) def accelerator_url(repo_name)
@ -25,4 +25,12 @@ module Acceleratorable
Gitea.gitea_config[:accelerator]["access_key_id"] Gitea.gitea_config[:accelerator]["access_key_id"]
end end
def config_accelerator?
Gitea.gitea_config[:accelerator].present?
end
def is_foreign_url?(clone_addr)
clone_addr.include?(github_domain) || clone_addr.include?(gitlab_domain)
end
end end

View File

@ -136,7 +136,8 @@ class PullRequestsController < ApplicationController
def show def show
@issue_user = @issue.user @issue_user = @issue.user
@issue_assign_to = @issue.get_assign_user @issue_assign_to = @issue.get_assign_user
@gitea_pull = Gitea::PullRequest::GetService.call(@owner.login,
@repository.identifier, @pull_request.gpid, current_user&.gitea_token)
end end
def pr_merge def pr_merge

View File

@ -53,6 +53,18 @@ class RepositoriesController < ApplicationController
@entries = Gitea::Repository::Entries::ListService.new(@owner, @project.identifier, ref: @ref).call @entries = Gitea::Repository::Entries::ListService.new(@owner, @project.identifier, ref: @ref).call
@entries = @entries.present? ? @entries.sort_by{ |hash| hash['type'] } : [] @entries = @entries.present? ? @entries.sort_by{ |hash| hash['type'] } : []
@path = Gitea.gitea_config[:domain]+"/#{@project.owner.login}/#{@project.identifier}/raw/branch/#{@ref}/" @path = Gitea.gitea_config[:domain]+"/#{@project.owner.login}/#{@project.identifier}/raw/branch/#{@ref}/"
# TODO
# 临时处理readme文件问题
admin = current_user.blank? ? User.where(admin: true).last : current_user
result = Gitea::Repository::Readme::GetService.call(@owner.login, @project.identifier, @ref, admin&.gitea_token)
@readme =
if result[:status] == :success
result[:body]
else
{}
end
end end
end end

View File

@ -169,7 +169,8 @@ class User < Owner
# Groups and active users # Groups and active users
scope :active, lambda { where(status: [STATUS_ACTIVE, STATUS_EDIT_INFO]) } scope :active, lambda { where(status: [STATUS_ACTIVE, STATUS_EDIT_INFO]) }
scope :like, lambda { |keywords| scope :like, lambda { |keywords|
where("LOWER(concat(lastname, firstname, login, mail)) LIKE ?", "%#{keywords.split(" ").join('|')}%") unless keywords.blank? sql = "CONCAT(lastname, firstname) LIKE :keyword OR login LIKE :keyword OR mail LIKE :keyword OR nickname LIKE :keyword"
where(sql, :search => "%#{keywords.split(" ").join('|')}%") unless keywords.blank?
} }
scope :simple_select, -> {select(:id, :login, :lastname,:firstname, :nickname, :gitea_uid, :type)} scope :simple_select, -> {select(:id, :login, :lastname,:firstname, :nickname, :gitea_uid, :type)}

View File

@ -1,15 +1,14 @@
# Get a pull request # Get a pull request
class Gitea::PullRequest::GetService < Gitea::ClientService class Gitea::PullRequest::GetService < Gitea::ClientService
attr_reader :user, :repo, :pull_request_id attr_reader :owner, :repo, :number, :token
# user: 用户 #eq:
# repo: 仓库名称/标识 # Gitea::PullRequest::GetService.call(user.login, repository.identifier, pull.gpid, user.gitea_token)
# pull_request_id: pull request主键id def initialize(owner, repo, number, token=nil)
def initialize(user, repo, pull_request_id) @owner = owner
super({token: user.gitea_token})
@user = user
@repo = repo @repo = repo
@pull_request_id = pull_request_id @number = number
@token = token
end end
def call def call
@ -19,11 +18,11 @@ class Gitea::PullRequest::GetService < Gitea::ClientService
private private
def params def params
Hash.new.merge(token: user.gitea_token) Hash.new.merge(token: token)
end end
def url def url
"/repos/#{user.login}/#{repo}/pulls/#{pull_request_id}".freeze "/repos/#{owner}/#{repo}/pulls/#{number}".freeze
end end
def render_result(response) def render_result(response)
@ -31,7 +30,7 @@ class Gitea::PullRequest::GetService < Gitea::ClientService
when 200 when 200
JSON.parse(response.body) JSON.parse(response.body)
else else
nil {}
end end
end end
end end

View File

@ -28,7 +28,7 @@ class Issues::ListQueryService < ApplicationService
end end
if search_name.present? if search_name.present?
issues = issues.where("subject like ?", "%#{search_name}%") issues = issues.where("subject LIKE ? OR description LIKE ? ", "%#{search_name}%", "%#{search_name}%")
end end
if start_time&.present? || end_time&.present? if start_time&.present? || end_time&.present?

View File

@ -12,6 +12,8 @@ json.pull_request do
json.pull_request_staus @pull_request.status == 1 ? "merged" : (@pull_request.status == 2 ? "closed" : "open") json.pull_request_staus @pull_request.status == 1 ? "merged" : (@pull_request.status == 2 ? "closed" : "open")
json.fork_project_user @pull_request&.fork_project&.owner.try(:login) json.fork_project_user @pull_request&.fork_project&.owner.try(:login)
json.create_user @pull_request&.user&.login json.create_user @pull_request&.user&.login
json.mergeable @gitea_pull["mergeable"]
json.state @gitea_pull["state"]
end end
json.issue do json.issue do

View File

@ -59,4 +59,6 @@ if @project.forge?
end end
end end
end end
json.readme @readme.merge(content: readme_render_decode64_content(@readme["content"], nil))
end end