/// <summary> /// Updates the property type for the specified property type model. /// </summary> /// <param name="contentType">The content type.</param> /// <param name="propertyType">The property type.</param> /// <param name="model">The property type model.</param> private void UpdatePropertyType(TContentType contentType, global::Umbraco.Core.Models.PropertyType propertyType, PropertyType model) { if (!contentType.PropertyGroups.Contains(model.PropertyGroup) || (contentType.PropertyGroups.Contains(model.PropertyGroup) && !contentType.PropertyGroups[model.PropertyGroup].PropertyTypes.Contains(model.Alias))) { contentType.MovePropertyType(model.Alias, model.PropertyGroup); } propertyType.Name = model.Name; propertyType.Alias = model.Alias; propertyType.Mandatory = model.Mandatory; propertyType.Description = model.Description; propertyType.ValidationRegExp = model.RegularExpression; if (model.SortOrder.HasValue) { propertyType.SortOrder = model.SortOrder.Value; } var definition = GetDataTypeDefinition(model); if (propertyType.DataTypeDefinitionId != definition.Id) { propertyType.DataTypeDefinitionId = definition.Id; } }
/// <summary> /// Creates a property type for the specified model. /// </summary> /// <param name="model">The model.</param> /// <param name="contentType">The content type.</param> private void CreatePropertyType(PropertyType model, TContentType contentType) { var definition = GetDataTypeDefinition(model); var propertyType = new global::Umbraco.Core.Models.PropertyType(definition) { Name = model.Name, Alias = model.Alias, Mandatory = model.Mandatory, Description = model.Description, ValidationRegExp = model.RegularExpression }; if (model.SortOrder.HasValue) { propertyType.SortOrder = model.SortOrder.Value; } if (!string.IsNullOrWhiteSpace(model.PropertyGroup)) { contentType.AddPropertyType(propertyType, model.PropertyGroup); } else { contentType.AddPropertyType(propertyType); } }