protected override void Display(ConnectorDisplayContext model, dynamic shape, ModelShapeContext context) { if (context.Paradigms.Has("Navigation")) { model.SocketDisplayContext.Paradigms.Add("NavigationChild"); context.Paradigms.Add("NavigationChild"); bool isCurrent = false; string rightUrl = ""; // HACK: Better than before but still a bit hackish if (model.Right.Content != null) { // TODO: Make absolute var url = new UrlHelper(_requestContext); rightUrl = url.ItemDisplayUrl(model.Right.Content); // Check if it's a current page or parent var work = _workContextAccessor.GetContext(); string modelUrl = rightUrl.Replace(work.HttpContext.Request.ApplicationPath, string.Empty).TrimEnd('/').ToUpperInvariant(); isCurrent = ((!string.IsNullOrEmpty(modelUrl) && RequestUrl.StartsWith(modelUrl)) || RequestUrl == modelUrl); // Add Current paradigm so we can modify display if (isCurrent) { context.Paradigms.Add("Current"); } else { context.Paradigms.Remove("Current"); } } (shape.Metadata as ShapeMetadata).OnDisplaying(displaying => { displaying.Shape.IsCurrent = isCurrent; // Store display url displaying.Shape.Url = rightUrl; }); } }
protected override void Displaying(ConnectorDisplayContext model, Origami.Services.ModelShapeContext context) { var connTitle = model.ConnectorContent.As<TitlePart>(); if (connTitle != null && !String.IsNullOrWhiteSpace(connTitle.Title)) { context.Paradigms.Add("TitleOverride"); } var connBody = model.ConnectorContent.As<BodyPart>(); if (connBody != null && !String.IsNullOrWhiteSpace(connBody.Text)) { context.Paradigms.Add("BodyOverride"); } }
void IConnectorHandler.Updated(ConnectorDisplayContext model, ModelShapeContext context) { Updated(model,context); }
void IConnectorHandler.UpdatingInverse(ConnectorDisplayContext model, ModelShapeContext context) { UpdatingInverse(model, context); }
void IConnectorHandler.Edit(ConnectorDisplayContext connectorContext, dynamic shape, ModelShapeContext context) { Edit(connectorContext, shape, context); }
void IConnectorHandler.Editing(ConnectorDisplayContext model, ModelShapeContext context) { Editing(model, context); }
void IConnectorHandler.Display(ConnectorDisplayContext model, dynamic shape, ModelShapeContext context) { Display(model, shape, context); }
protected virtual void UpdatingInverse(ConnectorDisplayContext model, ModelShapeContext context) { }
protected virtual void Edit(ConnectorDisplayContext connectorContext, dynamic shape, ModelShapeContext context) { }
protected virtual void Editing(ConnectorDisplayContext model, ModelShapeContext context) { }
protected virtual void Display(ConnectorDisplayContext model, dynamic shape, ModelShapeContext context) { }