Browse Source

Merge branch 'develop' into dev_trustie_server

tags/v3.1.5
yystopf 5 years ago
parent
commit
c6f2021017
5 changed files with 17 additions and 12 deletions
  1. +5
    -4
      app/controllers/public_keys_controller.rb
  2. +1
    -1
      app/helpers/repositories_helper.rb
  3. +2
    -1
      app/services/gitea/user/keys/delete_service.rb
  4. +8
    -5
      app/views/public_keys/create.json.jbuilder
  5. +1
    -1
      app/views/repositories/_simple_entry.json.jbuilder

+ 5
- 4
app/controllers/public_keys_controller.rb View File

@@ -18,11 +18,11 @@ class PublicKeysController < ApplicationController
if @gitea_response[0] == 201
@public_key = @gitea_response[2]
else
return render_error("创建ssh key失败") if @gitea_response[2]["message"].nil?
return render_error("创建ssh key失败") if @gitea_response[2].blank?
return render_ok({status: 10002, message: "密钥格式不正确"}) if @gitea_response[2]["message"].starts_with?("Invalid key content")
exist_public_key = Gitea::PublicKey.find_by(content: public_key_params[:key])
return render_ok({status: 10002, message: "密钥已存在,请勿重复添加"}) if @gitea_response[2]["message"].starts_with?("Key content has been used as non-deploy key") && exist_public_key.owner_id == current_user.gitea_uid
return render_ok({status: 10002, message: "密钥已被占用"}) if @gitea_response[2]["message"].starts_with?("Key content has been used as non-deploy key") && exist_public_key.present?
return render_ok({status: 10002, message: "密钥已被占用"}) if @gitea_response[2]["message"].starts_with?("Key content has been used as non-deploy key") && exist_public_key.present? && exist_public_key&.owner_id != current_user.gitea_uid
return render_ok({status: 10002, message: "密钥已存在,请勿重复添加"}) if @gitea_response[2]["message"].starts_with?("Key content has been used as non-deploy key")
@public_key = nil
end
rescue Exception => e
@@ -32,7 +32,8 @@ class PublicKeysController < ApplicationController

def destroy
return render_not_found unless @public_key.present?
if @public_key.destroy
result = Gitea::User::Keys::DeleteService.call(current_user.gitea_token, @public_key.id)
if result[0] == 204
render_ok
else
render_error


+ 1
- 1
app/helpers/repositories_helper.rb View File

@@ -81,7 +81,7 @@ module RepositoriesHelper
content = Gitea::Repository::Entries::GetService.call(owner, repo.identifier, entry['path'], ref: ref)['content']
readme_render_decode64_content(content, path)
else
file_type = entry['name'].to_s.split(".").last
file_type = File.extname(entry['name'].to_s)[1..-1]
if download_type(file_type)
return entry['content'].nil? ? Gitea::Repository::Entries::GetService.call(owner, repo.identifier, entry['path'], ref: ref)['content'] : entry['content']
end


+ 2
- 1
app/services/gitea/user/keys/delete_service.rb View File

@@ -7,7 +7,8 @@ class Gitea::User::Keys::DeleteService < Gitea::ClientService
end

def call
delete(url, params)
response = delete(url, params)
render_response(response)
end

private


+ 8
- 5
app/views/public_keys/create.json.jbuilder View File

@@ -1,5 +1,8 @@
json.id @public_key["id"]
json.name @public_key["title"]
json.content @public_key["key"]
json.fingerprint @public_key["fingerprint"]
json.created_time @public_key["created_at"].to_time.strftime("%Y/%m/%d %H:%M")
if @public_key.present?
json.status 0
json.id @public_key["id"]
json.name @public_key["title"]
json.content @public_key["key"]
json.fingerprint @public_key["fingerprint"]
json.created_time @public_key["created_at"].to_time.strftime("%Y/%m/%d %H:%M")
end

+ 1
- 1
app/views/repositories/_simple_entry.json.jbuilder View File

@@ -1,6 +1,6 @@
if @project.forge?
file_name = entry['name']
file_type = file_name.to_s.split(".").last
file_type = File.extname(file_name.to_s)[1..-1]
direct_download = download_type(file_type)
image_type = image_type?(file_type)
json.name file_name


Loading…
Cancel
Save