/// <summary>Called when the item is saving.</summary> protected void OnItemSaving(object sender, EventArgs args) { Assert.ArgumentNotNull(sender, "sender"); Assert.ArgumentNotNull((object)args, "args"); // Do not run rules when installting Sitecore packages if (Sitecore.Context.Job?.Name == "Install") { return; } // Do not run rules when publishing if (!Settings.Rules.ItemEventHandlers.RunDuringPublishing && PublishHelper.IsPublishing()) { return; } Item obj = Event.ExtractParameter(args, 0) as Item; if (obj == null) { return; } this.RunItemSavingRules(obj); }
protected void OnItemSaved(object sender, EventArgs args) { if (args == null || LinkDisabler.IsActive || !Settings.LinkDatabase.UpdateDuringPublish && PublishHelper.IsPublishing()) { return; } Item item = Event.ExtractParameter(args, 0) as Item; Assert.IsNotNull(item, "No item in parameters"); var imageTemplateIDs = new ID[] { Sitecore.TemplateIDs.Image, Sitecore.TemplateIDs.UnversionedImage, Sitecore.TemplateIDs.VersionedImage }; var templateItem = TemplateManager.GetTemplate(item); foreach (var templateID in imageTemplateIDs) { if (IsDerived(templateItem, templateID)) { var command = new OptimizeImageCommand(); command.StartProcess(new object[] { new Item[] { item } }); break; } } }