From 0dbebaf12ebd3158bd53a15b5ddc18bb854a8ce9 Mon Sep 17 00:00:00 2001 From: Morten Christensen Date: Mon, 28 Jan 2013 14:31:40 -0100 Subject: [PATCH] Fixes U4-1557 so the name of a Media item is properly saved. This has also be tested and verified for content. --- .../Models/EntityBase/IUmbracoEntity.cs | 23 ++++++++++------- src/Umbraco.Core/Models/IContentBase.cs | 5 ---- src/Umbraco.Core/Models/IContentTypeBase.cs | 5 ---- .../Models/IDataTypeDefinition.cs | 5 ---- src/umbraco.cms/businesslogic/CMSNode.cs | 25 ++++++++++++++++++- 5 files changed, 38 insertions(+), 25 deletions(-) diff --git a/src/Umbraco.Core/Models/EntityBase/IUmbracoEntity.cs b/src/Umbraco.Core/Models/EntityBase/IUmbracoEntity.cs index 7ae9422a25..62130fdab9 100644 --- a/src/Umbraco.Core/Models/EntityBase/IUmbracoEntity.cs +++ b/src/Umbraco.Core/Models/EntityBase/IUmbracoEntity.cs @@ -3,29 +3,34 @@ public interface IUmbracoEntity : IAggregateRoot { /// - /// Gets or sets the Id of the Parent entity + /// Profile of the user who created this Entity /// - int ParentId { get; set; } - - /// - /// Gets or sets the sort order of the Entity - /// - int SortOrder { get; set; } + int CreatorId { get; set; } /// /// Gets or sets the level of the Entity /// int Level { get; set; } + /// + /// Gets or Sets the Name of the Entity + /// + string Name { get; set; } + + /// + /// Gets or sets the Id of the Parent Entity + /// + int ParentId { get; set; } + /// /// Gets or sets the path to the Entity /// string Path { get; set; } /// - /// Profile of the user who created this Entity + /// Gets or sets the sort order of the Entity /// - int CreatorId { get; set; } + int SortOrder { get; set; } /// /// Boolean indicating whether this Entity is Trashed or not. diff --git a/src/Umbraco.Core/Models/IContentBase.cs b/src/Umbraco.Core/Models/IContentBase.cs index 42174ee757..269f6b8572 100644 --- a/src/Umbraco.Core/Models/IContentBase.cs +++ b/src/Umbraco.Core/Models/IContentBase.cs @@ -10,11 +10,6 @@ namespace Umbraco.Core.Models /// public interface IContentBase : IUmbracoEntity { - /// - /// Gets or Sets the Name of the Content - /// - string Name { get; set; } - /// /// Integer Id of the default ContentType /// diff --git a/src/Umbraco.Core/Models/IContentTypeBase.cs b/src/Umbraco.Core/Models/IContentTypeBase.cs index 2b19dd216c..35abf1e241 100644 --- a/src/Umbraco.Core/Models/IContentTypeBase.cs +++ b/src/Umbraco.Core/Models/IContentTypeBase.cs @@ -15,11 +15,6 @@ namespace Umbraco.Core.Models /// string Alias { get; set; } - /// - /// Gets or Sets the Name of the ContentType - /// - string Name { get; set; } - /// /// Gets or Sets the Description for the ContentType /// diff --git a/src/Umbraco.Core/Models/IDataTypeDefinition.cs b/src/Umbraco.Core/Models/IDataTypeDefinition.cs index 3b1391ae8d..e2ed1ef52e 100644 --- a/src/Umbraco.Core/Models/IDataTypeDefinition.cs +++ b/src/Umbraco.Core/Models/IDataTypeDefinition.cs @@ -5,11 +5,6 @@ namespace Umbraco.Core.Models { public interface IDataTypeDefinition : IUmbracoEntity { - /// - /// Gets or sets the name of the current entity - /// - string Name { get; set; } - /// /// Id of the DataType control /// diff --git a/src/umbraco.cms/businesslogic/CMSNode.cs b/src/umbraco.cms/businesslogic/CMSNode.cs index 4838cdc355..9d4091555b 100644 --- a/src/umbraco.cms/businesslogic/CMSNode.cs +++ b/src/umbraco.cms/businesslogic/CMSNode.cs @@ -48,6 +48,7 @@ namespace umbraco.cms.businesslogic private bool _hasChildrenInitialized; private string m_image = "default.png"; private bool? _isTrashed = null; + private IUmbracoEntity _entity; #endregion @@ -55,6 +56,7 @@ namespace umbraco.cms.businesslogic private static readonly string m_DefaultIconCssFile = IOHelper.MapPath(SystemDirectories.Umbraco_client + "/Tree/treeIcons.css"); private static List m_DefaultIconClasses = new List(); + private static void initializeIconClasses() { StreamReader re = File.OpenText(m_DefaultIconCssFile); @@ -394,9 +396,10 @@ namespace umbraco.cms.businesslogic PopulateCMSNodeFromReader(reader); } - protected internal CMSNode(IEntity entity) + protected internal CMSNode(IUmbracoEntity entity) { _id = entity.Id; + _entity = entity; } #endregion @@ -576,6 +579,7 @@ order by level,sortOrder"; /// Moves the CMSNode from the current position in the hierarchy to the target /// /// Target CMSNode id + [Obsolete("Obsolete, Use Umbraco.Core.Services.ContentService.Move() or Umbraco.Core.Services.MediaService.Move()", false)] public virtual void Move(int newParentId) { CMSNode parent = new CMSNode(newParentId); @@ -705,6 +709,9 @@ order by level,sortOrder"; { _sortOrder = value; SqlHelper.ExecuteNonQuery("update umbracoNode set sortOrder = '" + value + "' where id = " + this.Id.ToString()); + + if (_entity != null) + _entity.SortOrder = value; } } @@ -766,6 +773,9 @@ order by level,sortOrder"; { _parentid = value.Id; SqlHelper.ExecuteNonQuery("update umbracoNode set parentId = " + value.Id.ToString() + " where id = " + this.Id.ToString()); + + if (_entity != null) + _entity.ParentId = value.Id; } } @@ -781,6 +791,9 @@ order by level,sortOrder"; { _path = value; SqlHelper.ExecuteNonQuery("update umbracoNode set path = '" + _path + "' where id = " + this.Id.ToString()); + + if (_entity != null) + _entity.Path = value; } } @@ -796,6 +809,9 @@ order by level,sortOrder"; { _level = value; SqlHelper.ExecuteNonQuery("update umbracoNode set level = " + _level.ToString() + " where id = " + this.Id.ToString()); + + if (_entity != null) + _entity.Level = value; } } @@ -915,6 +931,8 @@ order by level,sortOrder"; SqlHelper.CreateParameter("@text", value.Trim()), SqlHelper.CreateParameter("@id", this.Id)); + if (_entity != null) + _entity.Name = value; } } @@ -966,6 +984,9 @@ order by level,sortOrder"; protected void SetText(string txt) { _text = txt; + + if (_entity != null) + _entity.Name = txt; } /// @@ -1086,6 +1107,7 @@ order by level,sortOrder"; _userId = content.CreatorId; _createDate = content.CreateDate; _isTrashed = content.Trashed; + _entity = content; } internal protected void PopulateCMSNodeFromContentTypeBase(IContentTypeBase contentType, Guid objectType) @@ -1100,6 +1122,7 @@ order by level,sortOrder"; _userId = contentType.CreatorId; _createDate = contentType.CreateDate; _isTrashed = false; + _entity = contentType; } #endregion