FIX merge
This commit is contained in:
commit
2636923c9b
|
@ -386,7 +386,7 @@ class ApplicationController < ActionController::Base
|
||||||
|
|
||||||
def current_user
|
def current_user
|
||||||
if Rails.env.development?
|
if Rails.env.development?
|
||||||
User.current = User.find 36480
|
User.current = User.find 1
|
||||||
else
|
else
|
||||||
User.current
|
User.current
|
||||||
end
|
end
|
||||||
|
@ -750,7 +750,7 @@ class ApplicationController < ActionController::Base
|
||||||
if @project and current_user.can_read_project?(@project)
|
if @project and current_user.can_read_project?(@project)
|
||||||
logger.info "###########: has project and can read project"
|
logger.info "###########: has project and can read project"
|
||||||
@project
|
@project
|
||||||
elsif current_user.is_a?(AnonymousUser)
|
elsif @project && current_user.is_a?(AnonymousUser)
|
||||||
logger.info "###########:This is AnonymousUser"
|
logger.info "###########:This is AnonymousUser"
|
||||||
@project = nil if !@project.is_public?
|
@project = nil if !@project.is_public?
|
||||||
render_forbidden and return
|
render_forbidden and return
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
#
|
#
|
||||||
# 文件上传
|
# 文件上传
|
||||||
class AttachmentsController < ApplicationController
|
class AttachmentsController < ApplicationController
|
||||||
before_action :require_login, :check_auth, except: [:show]
|
before_action :require_login, :check_auth, except: [:show, :preview_attachment]
|
||||||
before_action :find_file, only: %i[show destroy]
|
before_action :find_file, only: %i[show destroy]
|
||||||
before_action :attachment_candown, only: [:show]
|
before_action :attachment_candown, only: [:show]
|
||||||
skip_before_action :check_sign, only: [:show, :create]
|
skip_before_action :check_sign, only: [:show, :create]
|
||||||
|
@ -98,6 +98,26 @@ class AttachmentsController < ApplicationController
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# 附件为视频时,点击播放
|
||||||
|
def preview_attachment
|
||||||
|
attachment = Attachment.find_by(id: params[:id])
|
||||||
|
dir_path = "#{Rails.root}/public/preview"
|
||||||
|
Dir.mkdir(dir_path) unless Dir.exist?(dir_path)
|
||||||
|
if params[:status] == "preview"
|
||||||
|
if system("cp -r #{absolute_path(local_path(attachment))} #{dir_path}/")
|
||||||
|
render json: {status: 1, url: "/preview/#{attachment.disk_filename}"}
|
||||||
|
else
|
||||||
|
normal_status(-1, "出现错误,请稍后重试")
|
||||||
|
end
|
||||||
|
else
|
||||||
|
if system("rm -rf #{dir_path}/#{attachment.disk_filename}")
|
||||||
|
normal_status(1, "操作成功")
|
||||||
|
else
|
||||||
|
normal_status(-1, "出现错误,请稍后重试")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
def find_file
|
def find_file
|
||||||
@file =
|
@file =
|
||||||
|
|
|
@ -183,16 +183,23 @@ class IssuesController < ApplicationController
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if @issue.issue_type.to_s == "2" && @issue.status_id == 5 #已关闭的情况下,只能更新标题和内容,附件
|
# if params[:issue_tag_ids].present?
|
||||||
new_issue_params = {
|
# issue_current_tags = @issue&.issue_tags&.select(:id)&.pluck(:id)
|
||||||
subject: params[:subject],
|
# new_tag_ids = params[:issue_tag_ids] - issue_current_tags
|
||||||
description: params[:description],
|
# old_tag_ids = issue_current_tags - params[:issue_tag_ids]
|
||||||
}
|
# if old_tag_ids.size > 0
|
||||||
if @issue.update_attributes(new_issue_params)
|
# @issue.issue_tags_relates.where(issue_tag_id: old_tag_ids).delete_all
|
||||||
normal_status(0, "更新成功")
|
# end
|
||||||
else
|
# if new_tag_ids.size > 0
|
||||||
normal_status(-1, "更新失败")
|
# new_tag_ids.each do |tag|
|
||||||
end
|
# IssueTagsRelate.create(issue_id: @issue.id, issue_tag_id: tag)
|
||||||
|
# end
|
||||||
|
# end
|
||||||
|
# end
|
||||||
|
|
||||||
|
if params[:status_id].to_i == 5
|
||||||
|
@issue.issue_times.update_all(end_time: Time.now)
|
||||||
|
# @issue.update_closed_issues_count_in_project! #已经有after_update方法了,这里就不需要了
|
||||||
elsif @issue.issue_type.to_s == "2" && params[:status_id].to_i == 5 && @issue.author_id != current_user.try(:id)
|
elsif @issue.issue_type.to_s == "2" && params[:status_id].to_i == 5 && @issue.author_id != current_user.try(:id)
|
||||||
normal_status(-1, "不允许修改为关闭状态")
|
normal_status(-1, "不允许修改为关闭状态")
|
||||||
else
|
else
|
||||||
|
|
|
@ -95,7 +95,7 @@ class ProjectsController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def fork_users
|
def fork_users
|
||||||
fork_users = @project.fork_users.includes(:user, :project).order("fork_users.created_at desc").distinct
|
fork_users = @project.fork_users.includes(:user, :project, :fork_project).order("fork_users.created_at desc").distinct
|
||||||
@forks_count = fork_users.size
|
@forks_count = fork_users.size
|
||||||
@fork_users = paginate(fork_users)
|
@fork_users = paginate(fork_users)
|
||||||
end
|
end
|
||||||
|
|
|
@ -139,7 +139,7 @@ class VersionReleasesController < ApplicationController
|
||||||
body: params[:body],
|
body: params[:body],
|
||||||
draft: params[:draft] || false,
|
draft: params[:draft] || false,
|
||||||
name: params[:name],
|
name: params[:name],
|
||||||
prerelease: params[:prerelease],
|
prerelease: params[:prerelease] || false,
|
||||||
tag_name: params[:tag_name],
|
tag_name: params[:tag_name],
|
||||||
target_commitish: params[:target_commitish] || "master" #分支
|
target_commitish: params[:target_commitish] || "master" #分支
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,8 @@ module Gitea
|
||||||
attr_reader :error, :result
|
attr_reader :error, :result
|
||||||
|
|
||||||
def initialize(token, owner, params)
|
def initialize(token, owner, params)
|
||||||
@owner = owner
|
@token = token
|
||||||
|
@owner = owner
|
||||||
@params = params
|
@params = params
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
class ForkUser < ApplicationRecord
|
class ForkUser < ApplicationRecord
|
||||||
belongs_to :project
|
belongs_to :project
|
||||||
belongs_to :user
|
belongs_to :user
|
||||||
belongs_to :fork_project, class_name: 'ForkUser', foreign_key: :fork_project_id
|
belongs_to :fork_project, class_name: 'Project', foreign_key: :fork_project_id
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -20,7 +20,6 @@ class Gitea::ClientService < ApplicationService
|
||||||
# }
|
# }
|
||||||
def post(url, params={})
|
def post(url, params={})
|
||||||
puts "[gitea] request params: #{params}"
|
puts "[gitea] request params: #{params}"
|
||||||
request_url = [api_url, url].join('').freeze
|
|
||||||
auth_token = authen_params(params[:token])
|
auth_token = authen_params(params[:token])
|
||||||
response = conn(auth_token).post do |req|
|
response = conn(auth_token).post do |req|
|
||||||
req.url "#{request_url}"
|
req.url "#{request_url}"
|
||||||
|
@ -32,7 +31,7 @@ class Gitea::ClientService < ApplicationService
|
||||||
def get(url, params={})
|
def get(url, params={})
|
||||||
auth_token = authen_params(params[:token])
|
auth_token = authen_params(params[:token])
|
||||||
conn(auth_token).get do |req|
|
conn(auth_token).get do |req|
|
||||||
req.url full_url(url)
|
req.url full_url(url, 'get')
|
||||||
params.except(:token).each_pair do |key, value|
|
params.except(:token).each_pair do |key, value|
|
||||||
req.params["#{key}"] = value
|
req.params["#{key}"] = value
|
||||||
end
|
end
|
||||||
|
@ -114,14 +113,15 @@ class Gitea::ClientService < ApplicationService
|
||||||
[domain, base_url].join('')
|
[domain, base_url].join('')
|
||||||
end
|
end
|
||||||
|
|
||||||
def full_url(api_rest)
|
def full_url(api_rest, action='post')
|
||||||
[api_url, api_rest].join('').freeze
|
url = [api_url, api_rest].join('').freeze
|
||||||
|
url = action === 'get' ? url : URI.escape(url)
|
||||||
|
puts "[gitea] request url: #{url}"
|
||||||
|
return url
|
||||||
end
|
end
|
||||||
|
|
||||||
def render_status(response)
|
def render_status(response)
|
||||||
Rails.logger.info("###############____response__#{response}")
|
puts "[gitea] response status: #{response.status}"
|
||||||
Rails.logger.info("###############____response_status_#{response.status}")
|
|
||||||
Rails.logger.info("###############____response_body_#{response.body}")
|
|
||||||
mark = "[gitea] "
|
mark = "[gitea] "
|
||||||
case response.status
|
case response.status
|
||||||
when 201, 200, 202
|
when 201, 200, 202
|
||||||
|
|
|
@ -2,10 +2,9 @@ json.count @forks_count
|
||||||
json.users do
|
json.users do
|
||||||
json.array! @fork_users.each do |f|
|
json.array! @fork_users.each do |f|
|
||||||
user = f.user
|
user = f.user
|
||||||
fork_project = Project.select(:id,:name, :identifier).find_by(id: f.fork_project_id)
|
json.id f.fork_project.id
|
||||||
json.id f.fork_project_id
|
json.identifier f.fork_project.identifier
|
||||||
json.identifier fork_project.identifier
|
json.name "#{user.try(:show_real_name)}/#{f.fork_project.try(:name)}"
|
||||||
json.name "#{user.try(:show_real_name)}/#{fork_project.try(:name)}"
|
|
||||||
json.login user.try(:login)
|
json.login user.try(:login)
|
||||||
json.image_url url_to_avatar(user)
|
json.image_url url_to_avatar(user)
|
||||||
json.format_time f.created_at.strftime("%Y-%m-%d")
|
json.format_time f.created_at.strftime("%Y-%m-%d")
|
||||||
|
|
|
@ -48,6 +48,9 @@ Rails.application.routes.draw do
|
||||||
resources :compose_projects, only: [:create, :destroy]
|
resources :compose_projects, only: [:create, :destroy]
|
||||||
end
|
end
|
||||||
resources :attachments do
|
resources :attachments do
|
||||||
|
member do
|
||||||
|
post :preview_attachment
|
||||||
|
end
|
||||||
collection do
|
collection do
|
||||||
delete :destroy_files
|
delete :destroy_files
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
class ResetVersionsCount < ActiveRecord::Migration[5.2]
|
||||||
|
def change
|
||||||
|
execute "ALTER TABLE licenses MODIFY COLUMN id INT AUTO_INCREMENT;"
|
||||||
|
versions = Version.includes(:issues).select(:id, :closed_issues_count, :percent,:issues_count)
|
||||||
|
versions.each do |v|
|
||||||
|
Version.reset_counters v.id, :issues
|
||||||
|
closed_issues = Issue.select(:id, :fixed_version_id, :status_id).where(fixed_version_id: v.id, status_id: 5).size
|
||||||
|
unless v.closed_issues_count.to_i == closed_issues
|
||||||
|
percent = v.issues_count.to_i <=0 ? 0.0 : (closed_issues.to_f / v.issues_count.to_i)
|
||||||
|
v.closed_issues_count = closed_issues
|
||||||
|
v.percent = percent
|
||||||
|
v.save
|
||||||
|
end
|
||||||
|
puts v.id
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in New Issue