private void DeployImageRenditionSettings(object modelHost, SiteModelHost siteModelHost, ImageRenditionDefinition imageRenditionModel) { var renditions = SiteImageRenditions.GetRenditions(siteModelHost.HostSite); var currentRendition = GetCurrentImageRendition(renditions, imageRenditionModel); InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioning, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); if (currentRendition == null) { currentRendition = new ImageRendition { Name = imageRenditionModel.Name, Width = imageRenditionModel.Width, Height = imageRenditionModel.Height }; InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); renditions.Add(currentRendition); renditions.Update(); } else { InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); } }
protected ImageRendition GetCurrentImageRendition(ImageRenditionCollection renditions, ImageRenditionDefinition imageRenditionModel) { return(renditions.FirstOrDefault(r => !string.IsNullOrEmpty(r.Name) && String.Equals(r.Name, imageRenditionModel.Name, StringComparison.CurrentCultureIgnoreCase))); }
public static ModelNode AddImageRendition(this ModelNode model, ImageRenditionDefinition definition, Action <ModelNode> action) { return(model.AddDefinitionNode(definition, action)); }
public static ModelNode AddImageRendition(this ModelNode model, ImageRenditionDefinition definition) { return(AddImageRendition(model, definition, null)); }
public static TModelNode AddImageRendition <TModelNode>(this TModelNode model, ImageRenditionDefinition definition, Action <ImageRenditionModelNode> action) where TModelNode : ModelNode, ISiteModelNode, new() { return(model.AddTypedDefinitionNode(definition, action)); }
public static TModelNode AddImageRendition <TModelNode>(this TModelNode model, ImageRenditionDefinition definition) where TModelNode : ModelNode, ISiteModelNode, new() { return(AddImageRendition(model, definition, null)); }
private void DeployImageRenditionSettings(object modelHost, SiteModelHost siteModelHost, ImageRenditionDefinition imageRenditionModel) { var context = siteModelHost.HostSite.Context; var renditions = SiteImageRenditions.GetRenditions(siteModelHost.HostSite.Context); context.ExecuteQueryWithTrace(); var currentRendition = GetCurrentImageRendition(renditions, imageRenditionModel); InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioning, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); if (currentRendition == null) { TraceService.Information((int)LogEventId.ModelProvisionProcessingNewObject, "Processing new Image Rendition"); var newRendition = new ImageRendition { Name = imageRenditionModel.Name, Width = imageRenditionModel.Width, Height = imageRenditionModel.Height }; InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = newRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); renditions.Add(newRendition); SiteImageRenditions.SetRenditions(context, renditions); context.ExecuteQueryWithTrace(); } else { TraceService.Information((int)LogEventId.ModelProvisionProcessingNewObject, "Processing existing Image Rendition"); InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); } }