/// <summary> /// Checks the availability of captured in full. /// </summary> /// <param name="order">The order.</param> /// <param name="e">The <see cref="Sitecore.Ecommerce.Apps.OrderManagement.Views.OrderStateListViewSubstateCreatedEventArgs"/> instance containing the event data.</param> public virtual void CheckAvailabilityOfCapturedInFull([NotNull] Order order, [NotNull] OrderStateListViewSubstateCreatedEventArgs e) { Assert.ArgumentNotNull(order, "order"); Assert.ArgumentNotNull(e, "e"); bool checkingResult = this.StateValidator.CanBeCaptured(order, e.Substate.Code); if (!checkingResult) { e.Enabled = false; } }
protected virtual void OnOrderStateListViewSubstateCreated([NotNull] object sender, [NotNull] OrderStateListViewSubstateCreatedEventArgs e) { Assert.ArgumentNotNull(sender, "sender"); Assert.ArgumentNotNull(e, "e"); e.Enabled = this.MerchantOrderStateConfiguration.GetAdmissibleSubstates(e.State).Any(substate => substate.Code == e.Substate.Code); this.orderStateListValidator.CheckAvailabilityOfCapturedInFull(this.Order, e); }