mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-01-19 17:51:45 +08:00
ContentTypes: Fixing previous breaking change in validation when editing the display name of a type and a field
This commit is contained in:
@@ -229,7 +229,9 @@ namespace Orchard.ContentTypes.Controllers {
|
|||||||
|
|
||||||
// Additional Display Name validation.
|
// Additional Display Name validation.
|
||||||
if (!string.IsNullOrWhiteSpace(edited.DisplayName) &&
|
if (!string.IsNullOrWhiteSpace(edited.DisplayName) &&
|
||||||
_contentDefinitionService.GetTypes().Any(t => string.Equals(t.DisplayName.Trim(), edited.DisplayName.Trim(), StringComparison.OrdinalIgnoreCase))) {
|
_contentDefinitionService.GetTypes().Any(t =>
|
||||||
|
!string.Equals(t.Name, edited.Name, StringComparison.OrdinalIgnoreCase) &&
|
||||||
|
string.Equals(t.DisplayName.Trim(), edited.DisplayName.Trim(), StringComparison.OrdinalIgnoreCase))) {
|
||||||
ModelState.AddModelError("DisplayName", T("A content type with this display name already exists.").Text);
|
ModelState.AddModelError("DisplayName", T("A content type with this display name already exists.").Text);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -577,12 +579,14 @@ namespace Orchard.ContentTypes.Controllers {
|
|||||||
if (partViewModel == null) return HttpNotFound();
|
if (partViewModel == null) return HttpNotFound();
|
||||||
|
|
||||||
|
|
||||||
ValidateTechnicalName(viewModel.Name);
|
ValidateDisplayName(viewModel.Name);
|
||||||
|
|
||||||
// Additional Technical Name validation.
|
// Additional Display Name validation.
|
||||||
if (!string.IsNullOrWhiteSpace(viewModel.Name) &&
|
if (!string.IsNullOrWhiteSpace(viewModel.DisplayName) &&
|
||||||
partViewModel.Fields.Any(t => string.Equals(t.Name.ToSafeName(), viewModel.Name.ToSafeName(), StringComparison.OrdinalIgnoreCase))) {
|
partViewModel.Fields.Any(f =>
|
||||||
ModelState.AddModelError("Name", T("A content field with this technical name already exists.").Text);
|
!string.Equals(f.Name, viewModel.Name, StringComparison.OrdinalIgnoreCase) &&
|
||||||
|
string.Equals(f.DisplayName.Trim(), viewModel.DisplayName.Trim(), StringComparison.OrdinalIgnoreCase))) {
|
||||||
|
ModelState.AddModelError("DisplayName", T("A content field with this display name already exists on this content part.").Text);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ModelState.IsValid) return View(viewModel);
|
if (!ModelState.IsValid) return View(viewModel);
|
||||||
|
|||||||
Reference in New Issue
Block a user