protected IList <PaymentGateway> LoadGateways() { string classId = GetGiftCertPayGatewayId(); ICriteria criteria = NHibernateHelper.CreateCriteria <PaymentGateway>(); criteria.Add(Restrictions.Not(Restrictions.Eq("Name", "Gift Certificate Payment Provider"))); criteria.Add(Restrictions.Not(Restrictions.Eq("ClassId", StringHelper.SafeSqlString((classId))))); List <PaymentGateway> filteredGateways = new List <PaymentGateway>(); IList <PaymentGateway> gateways = PaymentGatewayDataSource.LoadAll(); for (int i = gateways.Count - 1; i >= 0; i--) { if (gateways[i].Name.Equals("Gift Certificate Payment Provider")) { continue; } if (gateways[i].ClassId.Equals(classId)) { continue; } filteredGateways.Add(gateways[i]); } return(filteredGateways); }
/// <summary> /// Homogenizes the list of items to the same concretee type /// for binding in the datagrid. /// </summary> /// <returns>List of gateway items</returns> private IList <GatewayItem> LoadGateways() { IList <PaymentGateway> configuredGateways = PaymentGatewayDataSource.LoadAll(); List <GatewayItem> gatewayItems = new List <GatewayItem>(); IList <IPaymentProvider> providers = PaymentProviderDataSource.GetProviders(true); string epayProviderClassId = Misc.GetClassId(typeof(CommerceBuilder.Payments.Providers.EPaymentIntegrator.EPayProvider)); foreach (var provider in providers) { string classId = Misc.GetClassId(provider.GetType()); // PROVIDER IS NOT CONFIGURED ALREADY, ALLOW MULTIPLE INSTANCES OF IBIZ PROVIDER if (!configuredGateways.Any(g => g.ClassId == classId) || classId == epayProviderClassId) { gatewayItems.Add(new GatewayItem(Misc.GetClassId(provider.GetType()), provider.Name, provider.GetLogoUrl(Page.ClientScript), GetSupportedTransactions(provider))); } } return(gatewayItems); }