protected TreeNode CreateEntityTreeNode(FluidityCollectionConfig collection, object entity, FormDataCollection queryStrings) { var itemId = entity.GetPropertyValue(collection.IdProperty); var compositeId = collection.Alias + "!" + itemId; var entityName = collection.NameProperty != null?entity.GetPropertyValue(collection.NameProperty).ToString() : collection.NameFormat != null?collection.NameFormat(entity) : entity.ToString(); var node = CreateTreeNode( compositeId, collection.Alias, queryStrings, entityName, collection.IconSingular, false, SectionAlias + "/fluidity/edit/" + compositeId); if (!collection.IconColor.IsNullOrWhiteSpace()) { node.SetColorStyle(collection.IconColor); } node.Path = collection.Path + FluidityConstants.PATH_SEPERATOR + compositeId; node.AdditionalData.AddOrUpdate("entityId", itemId); return(node); }
protected TreeNode CreateEntityTreeNode(FluidityCollectionConfig collection, object entity, FormDataCollection queryStrings) { var itemId = entity.GetPropertyValue(collection.IdProperty); var compositeId = collection.Alias + "!" + itemId; var entityName = collection.NameProperty != null?entity.GetPropertyValue(collection.NameProperty).ToString() : collection.NameFormat != null?collection.NameFormat(entity) : entity.ToString(); var node = CreateTreeNode( compositeId, collection.Alias, queryStrings, entityName, collection.IconSingular, false, SectionAlias + "/fluidity/edit/" + compositeId); if (!collection.IconColor.IsNullOrWhiteSpace()) { node.SetColorStyle(collection.IconColor); } node.Path = collection.Path + FluidityConstants.PATH_SEPERATOR + compositeId; node.AdditionalData.AddOrUpdate("entityId", itemId); node.AdditionalData.AddOrUpdate("collectionAlias", collection.Alias); node.AdditionalData.AddOrUpdate("sectionAlias", SectionAlias); node.AdditionalData.AddOrUpdate("dashboardRoute", collection.ViewMode == FluidityViewMode.Tree ? SectionAlias // Tree mode so just show the default dashboard : SectionAlias + "/fluidity/list/" + collection.Alias); // List view so show the list return(node); }
public FluidityEntityDisplayModel ToDisplayModel(FluiditySectionConfig section, FluidityCollectionConfig collection, object entity) { var entityId = entity?.GetPropertyValue(collection.IdProperty); var entityCompositeId = entityId != null ? collection.Alias + "!" + entityId : null; var name = ""; if (collection.NameProperty != null) { name = entity.GetPropertyValue(collection.NameProperty).ToString(); } else if (collection.NameFormat != null) { name = collection.NameFormat(entity); } else { name = entity?.ToString(); } var display = new FluidityEntityDisplayModel { Id = entity?.GetPropertyValue(collection.IdProperty), Name = name, Icon = collection.IconSingular + (collection.IconColor != null ? " color-" + collection.IconColor : ""), Section = section.Alias, Tree = section.Tree.Alias, Collection = collection.Alias, CreateDate = entity != null && collection.DateCreatedProperty != null ? (DateTime)entity.GetPropertyValue(collection.DateCreatedProperty) : DateTime.MinValue, UpdateDate = entity != null && collection.DateModifiedProperty != null ? (DateTime)entity.GetPropertyValue(collection.DateModifiedProperty) : DateTime.MinValue, EditPath = $"{section.Alias}/fluidity/edit/{entityCompositeId}", }; if (collection.ListView != null) { var properties = new List <ContentPropertyBasic>(); foreach (var field in collection.ListView.Fields) { var value = entity?.GetPropertyValue(field.Property); var encryptedProp = collection.EncryptedProperties?.FirstOrDefault(x => x.Name == field.Property.Name); if (encryptedProp != null) { value = SecurityHelper.Decrypt(value.ToString()); } if (field.Format != null) { value = field.Format(value, entity); } var propertyScaffold = new ContentPropertyBasic { Id = properties.Count, Alias = field.Property.Name, Value = value?.ToString() }; properties.Add(propertyScaffold); } display.Properties = properties; } return(display); }