--HG--
branch : dev
This commit is contained in:
Nathan Heskew
2010-11-25 22:10:32 -08:00
3 changed files with 11 additions and 7 deletions

View File

@@ -44,16 +44,19 @@ namespace Orchard.ContentTypes.Controllers {
if (!Services.Authorizer.Authorize(Permissions.CreateContentTypes, T("Not allowed to create a content type.")))
return new HttpUnauthorizedResult();
if(String.IsNullOrWhiteSpace(viewModel.DisplayName)) {
ModelState.AddModelError("DisplayName", T("The Content Type name can't be empty.").ToString());
viewModel.DisplayName = viewModel.DisplayName ?? String.Empty;
viewModel.Name = viewModel.Name ?? String.Empty;
if (String.IsNullOrWhiteSpace(viewModel.DisplayName)) {
ModelState.AddModelError("DisplayName", T("The Display Name name can't be empty.").ToString());
}
if ( _contentDefinitionService.GetTypes().Any(t => String.Equals(t.Name.Trim(), viewModel.Name.Trim(), StringComparison.OrdinalIgnoreCase)) ) {
ModelState.AddModelError("Name", T("A type with the same technical name already exists.").ToString());
ModelState.AddModelError("Name", T("A type with the same Id already exists.").ToString());
}
if ( _contentDefinitionService.GetTypes().Any(t => String.Equals(t.DisplayName.Trim(), viewModel.DisplayName.Trim(), StringComparison.OrdinalIgnoreCase)) ) {
ModelState.AddModelError("DisplayName", T("A type with the same name already exists.").ToString());
ModelState.AddModelError("DisplayName", T("A type with the same Name already exists.").ToString());
}
if (!ModelState.IsValid) {

View File

@@ -5,7 +5,7 @@
<fieldset>
<label for="DisplayName">@T("Display Name")</label>
@Html.TextBoxFor(m => m.DisplayName, new {@class = "textMedium", autofocus = "autofocus"})
<label for="Name">@T("Technical Name")</label>
<label for="Name">@T("Content Type Id")</label>
@Html.TextBoxFor(m => m.Name, new {@class = "text"})
</fieldset>
<fieldset>

View File

@@ -12,11 +12,12 @@
@Html.ValidationSummary()
<fieldset>
<label for="DisplayName">@T("Display Name")</label>
@Html.TextBoxFor(m => m.DisplayName, new { @class = "textMedium" }) @T("Technical name: {0}", Model.Name)
@Html.TextBoxFor(m => m.DisplayName, new { @class = "textMedium" })
<span class="hint">@T("Content Type Id: {0}", Model.Name)</span>
@* todo: if we continue to go down the midrodata route, some helpers would be nice *@
<meta itemprop="DisplayName" content="@Model.DisplayName" />
@* has unintended consequences (renamging the type) - changing the name creates a new type of that name *@
<meta itemprop="Name" content="@Model.Name" />
<meta itemprop="Id" content="@Model.Name" />
@Html.HiddenFor(m => m.Name)
</fieldset>
@{ Html.RenderTemplates(Model.Templates); }