public void HandleEvent(object sender, EventArgs eventArgs) { if (!(string.IsNullOrWhiteSpace(this.Instance) || this.Instance.Replace('-', '_').Equals( Sitecore.Configuration.Settings.InstanceName.Replace('-', '_'), StringComparison.InvariantCultureIgnoreCase))) { return; } SitecoreEventArgs scArgs = eventArgs as SitecoreEventArgs; if (scArgs == null) { Log.Error( this + " : Unexpected everntArgs type in HandleEvent : " + eventArgs.GetType(), this); return; } LogEventData remoteLogEventData = scArgs.Parameters[0] as LogEventData; if (remoteLogEventData == null) { Log.Info(this + " : unexpected scArgs.Parameter[0] in HandleEvent : " + remoteLogEventData, this); return; } this.HandleLogEvent(remoteLogEventData); }
public void Process(object sender, EventArgs args) { SitecoreEventArgs sArgs = args as SitecoreEventArgs; Sitecore.Publishing.Publisher pbl = sArgs.Parameters[0] as Sitecore.Publishing.Publisher; //This prevents from publishing the whole site by mistake if (pbl.Options.Deep) { var allowPublishigWithSubitems = false; customPublishConfig = sitecoreService.GetItem <ICustom_Publishing_Config>(ItemReferences.Instance.CustomPublishingConfig); if (customPublishConfig != null) { allowPublishigWithSubitems = customPublishConfig.Allow_Publishing_With_Subitems; } if (allowPublishigWithSubitems == false) { var rootItem = pbl.Options.RootItem; if (rootItem != null && (rootItem.TemplateID.Guid.Equals(new Guid(Constants.PublicationRootTemplateID)) || rootItem.TemplateID.Guid.Equals(new Guid(Constants.HomeRootTemplateID)) )) { pbl.Options.Deep = false; } } } }
public void Ended(object sender, EventArgs args) { Assert.IsNotNull(args, nameof(args)); try { SitecoreEventArgs jobargs = args as SitecoreEventArgs; string index_name = jobargs.Parameters[0] as string; var index = ContentSearchManager.Indexes.SingleOrDefault(idx => idx.Name == index_name); var payload = new IndexingUpdate { IndexName = index.Name, State = State.Ended, IndexRebuildTime = BuildTime(index), IndexRebuildMilliseconds = IndexHealthHelper.GetIndexRebuildTime(index.Name), ThroughPut = ThroughPut(index), NumberOfDocuments = index.Summary.NumberOfDocuments }; new Services.NotificationService <IndexingUpdate>().Send(payload); } catch (Exception) { } }
/// <summary> /// Eventhandler, called after saving a item /// </summary> /// <param name="sender">Sender</param> /// <param name="args">event arguments</param> public void OnItemSaved(object sender, EventArgs args) { SitecoreEventArgs eventArgs = args as SitecoreEventArgs; try { Assert.IsNotNull(eventArgs, "eventArgs"); Item savedItem = eventArgs.Parameters[0] as Item; Assert.IsNotNull(savedItem, "savedItem"); // ignore tasks themselves, orphand items and only in the context of the 'shell' if ((savedItem.Template.FullName != Constants.ScheduleTemplatePath) && (savedItem.Paths.FullPath.StartsWith(Constants.Orphan, StringComparison.OrdinalIgnoreCase) == false) && (Sitecore.Context.GetSiteName() == Constants.SiteNameShell)) { Database db = Sitecore.Context.ContentDatabase; Language lang = savedItem.Language; TaskBuilder taskBuilder = new TaskBuilder(); taskBuilder.CreateItemPublishSchedule(savedItem, lang, db, true); taskBuilder.CreateItemPublishSchedule(savedItem, lang, db, false); taskBuilder.CreateItemVersionPublishSchedule(savedItem, lang, db, true); taskBuilder.CreateItemVersionPublishSchedule(savedItem, lang, db, false); } } catch (Exception ex) { Log.Error("Error OnItemSaved in Automated Publisher", ex, this); } }
/// <summary> /// Handles the OnRemoveVersion event of the Provider control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> private void Provider_OnRemoveVersion(object sender, EventArgs e) { Assert.ArgumentNotNull(sender, "sender"); Assert.ArgumentNotNull(e, "e"); var database = SitecoreEventArgs.GetObject(e, 0) as Database; if ((database != null) && (database.Name == this.targetDatabase.Name)) { ID id = SitecoreEventArgs.GetID(e, 1); Assert.IsNotNull(id, "ID is not passed to RemoveVersion handler"); var language = SitecoreEventArgs.GetObject(e, 2) as Language; Assert.IsNotNull(language, "Language is not passed to RemoveVersion handler"); var version = SitecoreEventArgs.GetObject(e, 3) as Version; Assert.IsNotNull(version, "Version is not passed to RemoveVersion handler"); using (IndexDeleteContext context = this.remoteIndex.CreateDeleteContext()) { this.DeleteVersion(id, language.ToString(), version.ToString(), context); context.Commit(); } } }
private static SendFilesEventRemote CreateSendFilesEventRemote(EventArgs args) { SitecoreEventArgs sea = (SitecoreEventArgs)args; DateTime startDate = (DateTime)sea.Parameters[0]; DateTime endDate = (DateTime)sea.Parameters[1]; return(new SendFilesEventRemote(startDate, endDate)); }
/// <summary> /// Event handler to re-load configured publish exclusions, when publish exclusions is saved /// </summary> /// <param name="sender">sender</param> /// <param name="args">event arguments</param> public virtual void OnItemSaved(object sender, EventArgs args) { Assert.ArgumentNotNull(args, "args"); if (!ShouldExecuteEventHandlers(args)) { return; } SitecoreEventArgs saveEventArgs = args as SitecoreEventArgs; Item contextItem = saveEventArgs.Parameters[0] as Item; ReinitializeRepository(contextItem); }
public void Ended(object sender, EventArgs args) { try { if (args != null) { SitecoreEventArgs sitecoreEventArg = args as SitecoreEventArgs; if (sitecoreEventArg != null) { Publisher parameters = sitecoreEventArg.Parameters[0] as Publisher; if (parameters != null) { try { var publishData = new PublishUpdate { UserName = parameters.Options.UserName, CompareRevisions = parameters.Options.CompareRevisions, Deep = parameters.Options.Deep, FromDate = parameters.Options.FromDate, Language = parameters.Options.Language.Name, Mode = parameters.Options.Mode.ToString(), PublishDate = parameters.Options.PublishDate, PublishingTargets = parameters.Options.PublishingTargets, PublishRelatedItems = parameters.Options.PublishRelatedItems, RecoveryId = parameters.Options.RecoveryId, RepublishAll = parameters.Options.RepublishAll, RootItemPath = parameters.Options.RootItem?.Paths.FullPath, State = State.Ended }; User user = User.FromName(parameters.Options.UserName, false); if (user != null) { publishData.FullName = user.Profile.FullName; } new Services.NotificationService <PublishUpdate>().Send(publishData); } catch (Exception) { } } } } } catch (Exception exception) { } }
void Provider_OnRemoveItem(object sender, EventArgs e) { Assert.ArgumentNotNull(sender, "sender"); Assert.ArgumentNotNull(e, "e"); Database database = SitecoreEventArgs.GetObject(e, 0) as Database; if ((database != null) && (database.Name == this.m_database.Name)) { ID iD = SitecoreEventArgs.GetID(e, 1); Assert.IsNotNull(iD, "ID is not passed to RemoveItem handler"); solr.Delete(IdHelper.NormalizeGuid(iD.ToString(), false)); solr.Commit(); } }
public void OnItemCopying(object sender, EventArgs args) { SitecoreEventArgs args2 = args as SitecoreEventArgs; if (args2 != null) { Item item = Event.ExtractParameter(args, 0) as Item; if ((item != null) && (item.TemplateID == PollConstants.PollTemplateID)) { args2.Result.Cancel = true; Context.ClientPage.ClientResponse.Alert("Can't copy DMS Poll items."); } } }
public void OnItemSaved_should_not_add_entry_in_table_for_not_integration_item() { // Arrange var item = this.CreateItems(new TestItems { { "1", "GUID1" } }, itemName => false)[0]; var eventArgs = new SitecoreEventArgs("testEvent", new object[] { item }, new EventResult()); // Act this.provider.OnItemSaved(this, eventArgs); // Assert this.tableProvider.DidNotReceiveWithAnyArgs().Add(default(IDTableEntry)); }
private void Provider_OnUpdateItem(object sender, EventArgs e) { Assert.ArgumentNotNull(sender, "sender"); Assert.ArgumentNotNull(e, "e"); Database database = SitecoreEventArgs.GetObject(e, 0) as Database; if ((database != null) && (database.Name == this._database.Name)) { Item item = SitecoreEventArgs.GetObject(e, 1) as Item; if (item != null) { this.UpdateItem(item); } } }
public void OnItemSaved_should_do_nothing_if_IntegrationDisabler_is_enabled() { // Arrange var item = this.CreateItems(new TestItems { { "1", "GUID1" } })[0]; var eventArgs = new SitecoreEventArgs("testEvent", new object[] { item }, new EventResult()); // Act using (new IntegrationDisabler()) { this.provider.OnItemSaved(this, eventArgs); } // Assert this.tableProvider.DidNotReceiveWithAnyArgs().Add(default(IDTableEntry)); }
private void Provider_OnRemoveItem(object sender, EventArgs e) { Assert.ArgumentNotNull(sender, "sender"); Assert.ArgumentNotNull(e, "e"); Database database = SitecoreEventArgs.GetObject(e, 0) as Database; if ((database != null) && (database.Name == this._database.Name)) { ID iD = SitecoreEventArgs.GetID(e, 1); Assert.IsNotNull(iD, "ID is not passed to RemoveItem handler"); using (IndexDeleteContext context = this._index.CreateDeleteContext()) { this.DeleteItem(iD, context); context.Commit(); } } }
public void OnItemAdding(object sender, EventArgs args) { Item dbItem = master.GetItem("/sitecore/content/Administration/Development Settings/Lookups"); Item selectedItem = Event.ExtractParameter(args, 0) as Item; foreach (Item item in dbItem.Axes.GetDescendants()) { if (item.Template.Name.Contains("entry")) { if (item.Fields["Key"].Value == selectedItem.Fields["Key"].Value) { SitecoreEventArgs evt = args as SitecoreEventArgs; evt.Result.Cancel = true; Sitecore.Context.ClientPage.ClientResponse.Alert("Item already exists"); } } } }
private Database GetDatabse(SitecoreEventArgs args) { var indexName = ((Sitecore.Events.SitecoreEventArgs)(args)).Parameters[0] as string; var crawlers = ContentSearchManager.GetIndex(indexName).Crawlers as System.Collections.Generic.List <Sitecore.ContentSearch.IProviderCrawler>; if (crawlers != null && crawlers.Count > 0) { var crawler = crawlers[0] as Sitecore.ContentSearch.SitecoreItemCrawler; if (crawler != null && !string.IsNullOrEmpty(crawler.Database)) { return(Factory.GetDatabase(crawler.Database)); } } return(null); }
public void OnItemSaved_should_add_entry_in_table_for_active_integration_item() { // Arrange var item = this.CreateItems(new TestItems { { "1", "GUID1" } })[0]; using (new ItemIsContentItem(item)) { var eventArgs = new SitecoreEventArgs("testEvent", new object[] { item }, new EventResult()); // Act this.provider.OnItemSaved(this, eventArgs); // Assert this.tableProvider.Received() .Add( Arg.Is <IDTableEntry>(x => x.Prefix == PrefixSave && x.CustomData == "GUID1" && x.ParentID == item.ParentID)); } }
public void OnPublishComplete(object sender, EventArgs args) { SitecoreEventArgs pubArgs = (SitecoreEventArgs)args; var optionsList = Event.ExtractParameter(pubArgs, 0) as IEnumerable <DistributedPublishOptions>; DistributedPublishOptions options = optionsList.First(); Database database = Factory.GetDatabase(options.SourceDatabaseName); string ItemPath = string.Empty, Languages = string.Empty; string ItemId = options.RootItemId.ToString(); Item item = database.GetItem(new ID(ItemId)); if (item != null) { return; } ItemPath = item.Paths.Path; foreach (DistributedPublishOptions opts in optionsList) { Languages += opts.LanguageName + ","; } SendPublishCompletionEmail(Context.User.Name, Context.User.Profile.Email, ItemPath, Languages, options.Deep, options.PublishRelatedItems, options.PublishDate); }
protected virtual void OnItemTransferred(SitecoreEventArgs eventArgs, Item item) { throw new NotImplementedException(); }
protected virtual void OnItemMoving(SitecoreEventArgs eventArgs, Item item, ID oldParent, ID newParent) { throw new NotImplementedException(); }
protected virtual void OnItemTemplateChanged(SitecoreEventArgs eventArgs, Item item, Template oldTemplate, Template newTemplate) { throw new NotImplementedException(); }
protected virtual void OnItemCopying(SitecoreEventArgs eventArgs, Item item, Item targetItem, string copyName, ID copyId) { throw new NotImplementedException(); }
protected virtual void OnItemSaved(SitecoreEventArgs eventArgs, Item item, ItemChanges itemChanges) { throw new NotImplementedException(); }
protected virtual void OnItemCopied(SitecoreEventArgs eventArgs, Item item, Item itemCopy) { throw new NotImplementedException(); }
protected void DialogCreateRedirect(SitecoreEventArgs args) { }
protected virtual void OnItemMoved(SitecoreEventArgs eventArgs, Item item, ID targetParent) { throw new NotImplementedException(); }
protected virtual void OnItemCreating(object sender, SitecoreEventArgs eventArgs, ItemCreatingEventArgs itemCreating) { throw new NotImplementedException(); }
protected override void OnItemCopied(SitecoreEventArgs eventArgs, Item item, Item itemCopy) { ItemCopyingService.ConfiguredInstance.RemapToRelativeDataSources(item, itemCopy); }
protected virtual void OnItemSaving(SitecoreEventArgs eventArgs, Item item) { throw new NotImplementedException(); }