private void Displaying(ElementDisplayingContext context, Element element) { var drivers = _elementManager.Value.GetDrivers(element); foreach (var driver in drivers) { driver.Displaying(context); } }
private void Displaying(ElementDisplayingContext context) { var contentTypeName = (string)context.Element.Descriptor.StateBag["ContentTypeName"]; var element = (PlaceableContentItem)context.Element; var contentItemId = element.ContentItemId; var versionOptions = context.DisplayType == "Design" ? VersionOptions.Latest : VersionOptions.Published; var contentItem = contentItemId != null ? _contentManager.Value.Get(contentItemId.Value, versionOptions) : _contentManager.Value.New(contentTypeName); var contentShape = contentItem != null ? _contentManager.Value.BuildDisplay(contentItem) : default(dynamic); context.ElementShape.ContentItem = contentItem; context.ElementShape.ContentShape = contentShape; }
private void Displaying(ElementDisplayingContext context) { var contentTypeName = (string)context.Element.Descriptor.StateBag["ContentTypeName"]; var element = (Widget)context.Element; var widgetId = element.WidgetId; var versionOptions = context.DisplayType == "Design" ? VersionOptions.Latest : VersionOptions.Published; var widget = widgetId != null ? _contentManager.Value.Get(widgetId.Value, versionOptions) : _contentManager.Value.New(contentTypeName); var widgetShape = widget != null ? _contentManager.Value.BuildDisplay(widget) : default(dynamic); context.ElementShape.Widget = widget; context.ElementShape.WidgetShape = widgetShape; }
private void Displaying(ElementDisplayingContext context) { var contentItem = context.Content.ContentItem; var typeName = context.Element.Descriptor.TypeName; var contentField = contentItem.GetContentField(typeName); if ((contentItem.Id == 0 || context.DisplayType == "Design") && context.Updater != null) { // The content item hasn't been stored yet, so bind form values with the content field to represent actual Data. var controller = (Controller)context.Updater; var oldValueProvider = controller.ValueProvider; controller.ValueProvider = context.Element.Data.ToValueProvider(_cultureAccessor.Value.CurrentCulture); _contentFieldDisplay.Value.UpdateEditor(contentItem, contentField, context.Updater); _transactionManager.Value.Cancel(); controller.ValueProvider = oldValueProvider; } var contentFieldShape = _contentFieldDisplay.Value.BuildDisplay(contentItem, contentField, displayType: "Layout"); context.ElementShape.ContentField = contentFieldShape; }
void IElementEventHandler.Displaying(ElementDisplayingContext context) { if (context.DisplayType == "Design") return; var element = context.Element as FormElement; if (element == null) return; var registrationContext = new RegisterClientValidationAttributesContext { FieldName = element.Name }; if (element.Form != null && element.Form.EnableClientValidation == true) { _formService.RegisterClientValidationAttributes(element, registrationContext); if (registrationContext.ClientAttributes.Any()) { registrationContext.ClientAttributes["data-val"] = "true"; } } context.ElementShape.ClientValidationAttributes = registrationContext.ClientAttributes; }
private void Displaying(ElementDisplayingContext context, ShapeDescriptor shapeDescriptor, SnippetDescriptor snippetDescriptor) { var shapeType = shapeDescriptor.ShapeType; var shape = (dynamic)_shapeFactory.Value.Create(shapeType); shape.Element = context.Element; shape.SnippetDescriptor = snippetDescriptor; ElementShapes.AddTokenizers(shape, _tokenizer.Value); context.ElementShape.Snippet = shape; context.ElementShape.SnippetDescriptor = snippetDescriptor; }
private void Displaying(ElementDisplayingContext context, ShapeDescriptor shapeDescriptor) { var shapeType = shapeDescriptor.ShapeType; var shape = _shapeFactory.Value.Create(shapeType); context.ElementShape.Snippet = shape; }
private void Displaying(ElementDisplayingContext context) { }
public dynamic DisplayElement( Element element, IContent content, string displayType = null, IUpdateModel updater = null) { var typeName = element.GetType().Name; var category = element.Category.ToSafeName(); var drivers = element.Descriptor.GetDrivers().ToList(); var createShapeContext = new ElementCreatingDisplayShapeContext { Element = element, DisplayType = displayType, Content = content, }; _elementEventHandlerHandler.CreatingDisplay(createShapeContext); InvokeDrivers(drivers, driver => driver.CreatingDisplay(createShapeContext)); if (element.Descriptor.CreatingDisplay != null) { element.Descriptor.CreatingDisplay(createShapeContext); } if (createShapeContext.Cancel) { return(null); } var elementShapeArguments = CreateArguments(element, content); var elementShape = (dynamic)_shapeFactory.Create("Element", elementShapeArguments, () => new ZoneHolding(() => _shapeFactory.Create("ElementZone"))); elementShape.Metadata.DisplayType = displayType; elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}", typeName)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}_{1}", typeName, displayType)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}__{1}", typeName, category)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}_{1}__{2}", typeName, displayType, category)); var displayingContext = new ElementDisplayingContext { Element = element, ElementShape = elementShape, DisplayType = displayType, Content = content, Updater = updater }; _elementEventHandlerHandler.Displaying(displayingContext); InvokeDrivers(drivers, driver => driver.Displaying(displayingContext)); if (element.Descriptor.Displaying != null) { element.Descriptor.Displaying(displayingContext); } var container = element as Container; if (container != null) { if (container.Elements.Any()) { var childIndex = 0; foreach (var child in container.Elements) { var childShape = DisplayElement(child, content, displayType: displayType, updater: updater); if (childShape != null) { childShape.Parent = elementShape; elementShape.Add(childShape, childIndex++.ToString()); } } } } var displayedContext = new ElementDisplayedContext { Element = element, ElementShape = elementShape, DisplayType = displayType, Content = content, Updater = updater }; _elementEventHandlerHandler.Displayed(displayedContext); InvokeDrivers(drivers, driver => driver.Displayed(displayedContext)); if (element.Descriptor.Displayed != null) { element.Descriptor.Displayed(displayedContext); } return(elementShape); }
public dynamic DisplayElement( Element element, IContent content, string displayType = null, IUpdateModel updater = null) { var typeName = element.GetType().Name; var category = element.Category.ToSafeName(); var drivers = element.Descriptor.GetDrivers().ToList(); var createShapeContext = new ElementCreatingDisplayShapeContext { Element = element, DisplayType = displayType, Content = content, }; _elementEventHandlerHandler.CreatingDisplay(createShapeContext); InvokeDrivers(drivers, driver => driver.CreatingDisplay(createShapeContext)); if (element.Descriptor.CreatingDisplay != null) element.Descriptor.CreatingDisplay(createShapeContext); if (createShapeContext.Cancel) return null; var elementShapeArguments = CreateArguments(element, content); var elementShape = (dynamic)_shapeFactory.Create("Element", elementShapeArguments, () => new ZoneHolding(() => _shapeFactory.Create("ElementZone"))); elementShape.Metadata.DisplayType = displayType; elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}", typeName)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}_{1}", typeName, displayType)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}__{1}", typeName, category)); elementShape.Metadata.Alternates.Add(String.Format("Elements_{0}_{1}__{2}", typeName, displayType, category)); var displayingContext = new ElementDisplayingContext { Element = element, ElementShape = elementShape, DisplayType = displayType, Content = content, Updater = updater }; _elementEventHandlerHandler.Displaying(displayingContext); InvokeDrivers(drivers, driver => driver.Displaying(displayingContext)); if (element.Descriptor.Displaying != null) element.Descriptor.Displaying(displayingContext); var container = element as Container; if (container != null) { if (container.Elements.Any()) { var childIndex = 0; foreach (var child in container.Elements) { var childShape = DisplayElement(child, content, displayType: displayType, updater: updater); if (childShape != null) { childShape.Parent = elementShape; elementShape.Add(childShape, childIndex++.ToString()); } } } } var displayedContext = new ElementDisplayedContext { Element = element, ElementShape = elementShape, DisplayType = displayType, Content = content, Updater = updater }; _elementEventHandlerHandler.Displayed(displayedContext); InvokeDrivers(drivers, driver => driver.Displayed(displayedContext)); if (element.Descriptor.Displayed != null) element.Descriptor.Displayed(displayedContext); return elementShape; }
public virtual void Displaying(ElementDisplayingContext context) { }
private void Displaying(ElementDisplayingContext context, ShapeDescriptor shapeDescriptor, SnippetDescriptor snippetDescriptor) { var shapeType = shapeDescriptor.ShapeType; var shape = (dynamic)_shapeFactory.Value.Create(shapeType); shape.Element = context.Element; if (snippetDescriptor != null) { foreach (var fieldDescriptor in snippetDescriptor.Fields) { var value = context.Element.Data.Get(fieldDescriptor.Name); shape.Properties[fieldDescriptor.Name] = value; } } ElementShapes.AddTokenizers(shape, _tokenizer.Value); context.ElementShape.Snippet = shape; }