Editing a document also changes its title #1156

This commit is contained in:
karel.picman@lbcfree.net 2020-08-20 08:01:58 +02:00
parent 07ca61736e
commit 21efaf110a
2 changed files with 15 additions and 9 deletions

View File

@ -589,13 +589,8 @@ module RedmineDmsf
new_revision = last_revision new_revision = last_revision
reuse_revision = true reuse_revision = true
else else
new_revision = DmsfFileRevision.new new_revision = last_revision ? last_revision.dup : DmsfFileRevision.new
new_revision.source_revision = last_revision new_revision.source_revision = last_revision
if last_revision
new_revision.major_version = last_revision.major_version
new_revision.minor_version = last_revision.minor_version
new_revision.workflow = last_revision.workflow
end
end end
else else
f = DmsfFile.new f = DmsfFile.new
@ -606,14 +601,12 @@ module RedmineDmsf
new_revision = DmsfFileRevision.new new_revision = DmsfFileRevision.new
new_revision.minor_version = 0 new_revision.minor_version = 0
new_revision.major_version = 0 new_revision.major_version = 0
new_revision.title = DmsfFileRevision.filename_to_title(basename)
end end
new_revision.dmsf_file = f new_revision.dmsf_file = f
new_revision.user = User.current new_revision.user = User.current
new_revision.name = basename new_revision.name = basename
new_revision.title = DmsfFileRevision.filename_to_title(basename)
new_revision.description = nil
new_revision.comment = nil
new_revision.increase_version(1) unless reuse_revision new_revision.increase_version(1) unless reuse_revision
new_revision.mime_type = Redmine::MimeType.of(new_revision.name) new_revision.mime_type = Redmine::MimeType.of(new_revision.name)

View File

@ -271,4 +271,17 @@ class DmsfWebdavPutTest < RedmineDmsf::Test::IntegrationTest
assert DmsfFile.find_by(project_id: @project3.id, dmsf_folder: nil, name: 'test-1234.txt') assert DmsfFile.find_by(project_id: @project3.id, dmsf_folder: nil, name: 'test-1234.txt')
end end
def test_put_keep_title
assert @file1.last_revision.size != 0
@file1.last_revision.title = 'Keep that title'
assert @file1.last_revision.save
assert_difference '@file1.dmsf_file_revisions.count', +1 do
put "/dmsf/webdav/#{@project1.identifier}/#{@file1.name}", params: '1234',
headers: @jsmith.merge!({ content_type: :text })
assert_response :created
end
@file1.last_revision.reload
assert_equal @file1.last_revision.title, 'Keep that title'
end
end end