Fixes content service to not validate every culture for properties, only the cultures passed in to to the method, removes client side name check,

This commit is contained in:
Shannon
2019-03-14 01:55:39 +11:00
parent 8c3388507d
commit 38cf7a4e49
5 changed files with 2140 additions and 2177 deletions

View File

@@ -945,12 +945,15 @@ namespace Umbraco.Core.Services.Implement
if (cultures.Select(content.PublishCulture).Any(isValid => !isValid))
return new PublishResult(PublishResultType.FailedPublishContentInvalid, evtMsgs, content);
//validate the property values
if (!_propertyValidationService.Value.IsPropertyDataValid(content, out var invalidProperties))
return new PublishResult(PublishResultType.FailedPublishContentInvalid, evtMsgs, content)
{
InvalidProperties = invalidProperties
};
//validate the property values on the cultures trying to be published
foreach (var culture in cultures)
{
if (!_propertyValidationService.Value.IsPropertyDataValid(content, out var invalidProperties, culture))
return new PublishResult(PublishResultType.FailedPublishContentInvalid, evtMsgs, content)
{
InvalidProperties = invalidProperties
};
}
var result = CommitDocumentChangesInternal(scope, content, saveEventArgs, userId, raiseEvents);
scope.Complete();