internal static NodeData CreateNewNodeData(Node parent, NodeType nodeType, ContentListType listType, int listId)
{
var listTypeId = listType == null ? 0 : listType.Id;
var parentId = parent == null ? 0 : parent.Id;
var userId = AccessProvider.Current.GetOriginalUser().Id;
var name = String.Concat(nodeType.Name, "-", DateTime.Now.ToString("yyyyMMddHHmmss")); //Guid.NewGuid().ToString();
var path = (parent == null) ? "/" + name : RepositoryPath.Combine(parent.Path, name);
var now = DateTime.Now;
var versionNumber = new VersionNumber(1, 0, VersionStatus.Approved);
//---- when create new
var privateData = new NodeData(nodeType, listType)
{
IsShared = false,
SharedData = null,
Id = 0,
NodeTypeId = nodeType.Id,
ContentListTypeId = listTypeId,
ContentListId = listId,
ParentId = parentId,
Name = name,
Path = path,
Index = 0,
IsDeleted = false,
IsInherited = true,
NodeCreationDate = now,
NodeModificationDate = now,
NodeCreatedById = userId,
NodeModifiedById = userId,
VersionId = 0,
Version = versionNumber,
CreationDate = now,
ModificationDate = now,
CreatedById = userId,
ModifiedById = userId,
Locked = false,
LockedById = 0,
ETag = null,
LockType = 0,
LockTimeout = 0,
LockDate = DataProvider.Current.DateTimeMinValue,
LockToken = null,
LastLockUpdate = DataProvider.Current.DateTimeMinValue,
};
privateData.ModificationDateChanged = false;
privateData.ModifiedByIdChanged = false;
privateData.NodeModificationDateChanged = false;
privateData.NodeModifiedByIdChanged = false;
return privateData;
}