Minor adjustment related to U4-2560 Working with ContentService can give 2 versions of a document as "newest"
This commit is contained in:
@@ -338,19 +338,22 @@ namespace Umbraco.Core.Persistence.Repositories
|
||||
}
|
||||
}
|
||||
|
||||
//Look up (newest) entries by id in cmsDocument table to set newest = false
|
||||
//NOTE: This should only be done for all other versions then the current one, so we don't cause the same entry to be updated multiple times.
|
||||
var documentDtos =
|
||||
Database.Query<DocumentDto>(
|
||||
"WHERE nodeId = @Id AND newest = @IsNewest AND NOT(versionId = @VersionId)",
|
||||
new {Id = entity.Id, IsNewest = true, VersionId = dto.ContentVersionDto.VersionId});
|
||||
foreach (var documentDto in documentDtos)
|
||||
{
|
||||
var docDto = documentDto;
|
||||
docDto.Newest = false;
|
||||
Database.Update(docDto);
|
||||
}
|
||||
|
||||
var contentVersionDto = dto.ContentVersionDto;
|
||||
if (shouldCreateNewVersion)
|
||||
{
|
||||
//Look up (newest) entries by id in cmsDocument table to set newest = false
|
||||
//NOTE: This is only relevant when a new version is created, which is why its done inside this if-statement.
|
||||
var documentDtos = Database.Fetch<DocumentDto>("WHERE nodeId = @Id AND newest = @IsNewest", new { Id = entity.Id, IsNewest = true });
|
||||
foreach (var documentDto in documentDtos)
|
||||
{
|
||||
var docDto = documentDto;
|
||||
docDto.Newest = false;
|
||||
Database.Update(docDto);
|
||||
}
|
||||
|
||||
//Create a new version - cmsContentVersion
|
||||
//Assumes a new Version guid and Version date (modified date) has been set
|
||||
Database.Insert(contentVersionDto);
|
||||
|
||||
Reference in New Issue
Block a user