This commit is contained in:
@@ -91,7 +91,7 @@ class WikiPagesController < ApplicationController
|
||||
return head :unprocessable_entity if name.blank? || body.blank?
|
||||
|
||||
tag_name = TagName.find_undiscard_or_create_by!(name:)
|
||||
page = WikiPage.new(tag_name:, created_user: current_user, updated_user: current_user)
|
||||
page = WikiPage.new(tag_name:, body:, created_user: current_user, updated_user: current_user)
|
||||
if page.save
|
||||
message = params[:message].presence
|
||||
Wiki::Commit.content!(page:, body:, created_user: current_user, message:)
|
||||
@@ -115,10 +115,16 @@ class WikiPagesController < ApplicationController
|
||||
page = WikiPage.find(params[:id])
|
||||
base_revision_id = page.current_revision.id
|
||||
|
||||
if params[:title].present? && params[:title].strip != page.title
|
||||
return head :unprocessable_entity
|
||||
old_title = page.title
|
||||
|
||||
tag = Tag.find_by(tag_name_id: page.tag_name_id)
|
||||
|
||||
if tag && title != old_title
|
||||
TagVersioning.ensure_snapshot!(tag, created_by_user: current_user)
|
||||
end
|
||||
|
||||
page.tag_name.update!(name: title) if title != old_title
|
||||
|
||||
message = params[:message].presence
|
||||
Wiki::Commit.content!(page:,
|
||||
body:,
|
||||
@@ -126,6 +132,11 @@ class WikiPagesController < ApplicationController
|
||||
message:,
|
||||
base_revision_id:)
|
||||
|
||||
if tag && title != old_title
|
||||
tag.reload
|
||||
TagVersionRecorder.record!(tag:, event_type: :update, created_by_user: current_user)
|
||||
end
|
||||
|
||||
head :ok
|
||||
end
|
||||
|
||||
|
||||
@@ -79,10 +79,6 @@ module Wiki
|
||||
event_type: @page.wiki_versions.exists? ? :update : :create,
|
||||
reason: message,
|
||||
created_by_user: @created_user)
|
||||
tag = @page.tag_name.tag
|
||||
if tag&.tag_versions&.exists?
|
||||
TagVersionRecorder.record!(tag:, event_type: :update, created_by_user: @created_user)
|
||||
end
|
||||
|
||||
rev = WikiRevision.create!(
|
||||
wiki_page: @page,
|
||||
|
||||
Reference in New Issue
Block a user