fix: update repository identifier valid

This commit is contained in:
yystopf 2021-10-14 14:25:00 +08:00
parent 00100e59c4
commit 98a45eb05c
2 changed files with 4 additions and 3 deletions

View File

@ -127,9 +127,9 @@ class ProjectsController < ApplicationController
Gitea::Repository::UpdateService.call(@owner, @project.identifier, gitea_params) Gitea::Repository::UpdateService.call(@owner, @project.identifier, gitea_params)
else else
validate_params = project_params.slice(:name, :description, validate_params = project_params.slice(:name, :description,
:project_category_id, :project_language_id, :private) :project_category_id, :project_language_id, :private, :identifier)
Projects::UpdateForm.new(validate_params).validate! Projects::UpdateForm.new(validate_params.merge(user_id: @project.user_id)).validate!
private = @project.forked_from_project.present? ? !@project.forked_from_project.is_public : params[:private] || false private = @project.forked_from_project.present? ? !@project.forked_from_project.is_public : params[:private] || false

View File

@ -1,11 +1,12 @@
class Projects::UpdateForm < BaseForm class Projects::UpdateForm < BaseForm
attr_accessor :name, :description, :project_category_id, :project_language_id, :private attr_accessor :name, :description, :project_category_id, :project_language_id, :private, :identifier, :user_id
validates :name, presence: true validates :name, presence: true
validates :name, length: { maximum: 50 } validates :name, length: { maximum: 50 }
validates :description, length: { maximum: 200 } validates :description, length: { maximum: 200 }
validate do validate do
check_project_category(project_category_id) check_project_category(project_category_id)
check_project_language(project_language_id) check_project_language(project_language_id)
check_repository_name(user_id, identifier) unless identifier.blank?
end end
end end