Пример #1
0
        /// <summary>
        /// Saves the changes.
        /// </summary>
        /// <param name="dto">The dto.</param>
        public void SaveChanges(object dto)
        {
            if (Visible)
            {
                _paymentMethodDto = dto as PaymentMethodDto;
                if ((_paymentMethodDto != null) && (_paymentMethodDto.PaymentMethodParameter != null))
                {
                    Guid paymentMethodId = Guid.Empty;
                    if (_paymentMethodDto.PaymentMethod.Count > 0)
                    {
                        paymentMethodId = _paymentMethodDto.PaymentMethod[0].PaymentMethodId;
                    }

                    PaymentMethodDto.PaymentMethodParameterRow parameterByName = GetParameterByName(PriceListArgsParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = PriceArgList.Text;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, PriceListArgsParameter, PriceArgList.Text, paymentMethodId);
                    }

                    parameterByName = GetParameterByName(AdditionalValuesParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = AdditionalValues.Text;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AdditionalValuesParameter, AdditionalValues.Text, paymentMethodId);
                    }
                }
            }
        }
        public void BindData()
        {
            if ((_paymentMethodDto != null) && (_paymentMethodDto.PaymentMethodParameter != null))
            {
                PaymentMethodDto.PaymentMethodParameterRow parameterByName = GetParameterByName(PriceListArgsParameter);
                if (parameterByName != null)
                {
                    PriceArgList.Text = parameterByName.Value;
                }

                parameterByName = GetParameterByName(AdditionalValuesParameter);
                if (parameterByName != null)
                {
                    AdditionalValues.Text = parameterByName.Value;
                }

                parameterByName = GetParameterByName(UseBestPracticeFlowParameter);
                if (parameterByName != null)
                {
                    UseBestPracticeFlow.Checked = "true".Equals(parameterByName.Value, StringComparison.InvariantCultureIgnoreCase);
                }

                parameterByName = GetParameterByName(AddShoppingCartXmlParameter);
                if (parameterByName != null)
                {
                    AddShoppingCartXml.Checked = "true".Equals(parameterByName.Value, StringComparison.InvariantCultureIgnoreCase);
                }
            }
            else
            {
                Visible = false;
            }
        }
Пример #3
0
        public void BindData()
        {
            if ((_paymentMethodDto != null) && (_paymentMethodDto.PaymentMethodParameter != null))
            {
                PaymentMethodDto.PaymentMethodParameterRow parameterByName = GetParameterByName(PriceListArgsParameter);
                if (parameterByName != null)
                {
                    PriceArgList.Text = parameterByName.Value;
                }

                parameterByName = GetParameterByName(AdditionalValuesParameter);
                if (parameterByName != null)
                {
                    AdditionalValues.Text = parameterByName.Value;
                }

                parameterByName = GetParameterByName(UseOnePhaseTransactionParameter);
                if (parameterByName != null)
                {
                    UseOnePhaseTransaction.Checked = "true".Equals(parameterByName.Value, StringComparison.InvariantCultureIgnoreCase);
                }

                parameterByName = GetParameterByName(GetLegalAddressParameter);
                if (parameterByName != null)
                {
                    GetLegalAddress.Checked = "true".Equals(parameterByName.Value, StringComparison.InvariantCultureIgnoreCase);
                }
            }
            else
            {
                Visible = false;
            }
        }
Пример #4
0
        /// <summary>
        /// Binds the data.
        /// </summary>
        public void BindData()
        {
            BindCancelStatusesDropDown();
            BindDefaultTransactionTypesDropDown();

            // fill in the form fields
            if (_paymentMethodDto != null && _paymentMethodDto.PaymentMethodParameter != null)
            {
                PaymentMethodDto.PaymentMethodParameterRow param = null;

                // TestMode parameter
                param = GetParameterByName(AuthorizeTokenExGateway.TestParameterName);
                if (param != null)
                {
                    bool testFlag;
                    bool.TryParse(param.Value, out testFlag);
                    TestFlagYes.Checked = testFlag;
                    TestFlagNo.Checked  = !testFlag;
                }

                param = GetParameterByName(AuthorizeTokenExGateway.UserParameterName);
                if (param != null)
                {
                    User.Text = param.Value;
                }

                param = GetParameterByName(AuthorizeTokenExGateway.TransactionKeyParameterName);
                if (param != null)
                {
                    Password.Text = param.Value;
                }

                param = GetParameterByName(AuthorizeTokenExGateway.PaymentOptionParameterName);
                if (param != null)
                {
                    ListItem li = RadioButtonListOptions.Items.FindByValue(param.Value);
                    if (li != null)
                    {
                        li.Selected = true;
                    }
                }

                param = GetParameterByName(AuthorizeTokenExGateway.RecurringMethodParameterName);
                if (param != null)
                {
                    ManagementHelper.SelectListItem(ddlRecurringMethod, param.Value, StringComparer.Ordinal);
                }

                param = GetParameterByName(AuthorizeTokenExGateway.CancelStatusParameterName);
                if (param != null)
                {
                    ManagementHelper.SelectListItem(ddlCancelStatus, param.Value, StringComparer.Ordinal);
                }
            }
            else
            {
                this.Visible = false;
            }
        }
        /// <summary>
        /// Saves the changes.
        /// </summary>
        /// <param name="dto">The dto.</param>
        public void SaveChanges(object dto)
        {
            if (Visible)
            {
                _paymentMethodDto = dto as PaymentMethodDto;
                if ((_paymentMethodDto != null) && (_paymentMethodDto.PaymentMethodParameter != null))
                {
                    Guid paymentMethodId = Guid.Empty;
                    if (_paymentMethodDto.PaymentMethod.Count > 0)
                    {
                        paymentMethodId = _paymentMethodDto.PaymentMethod[0].PaymentMethodId;
                    }

                    PaymentMethodDto.PaymentMethodParameterRow parameterByName = GetParameterByName(PriceListArgsParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = PriceArgList.Text;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, PriceListArgsParameter, PriceArgList.Text, paymentMethodId);
                    }

                    parameterByName = GetParameterByName(AdditionalValuesParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = AdditionalValues.Text;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AdditionalValuesParameter, AdditionalValues.Text, paymentMethodId);
                    }

                    parameterByName = GetParameterByName(UseBestPracticeFlowParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = UseBestPracticeFlow.Checked.ToString();
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, UseBestPracticeFlowParameter, UseBestPracticeFlow.Checked.ToString(), paymentMethodId);
                    }

                    parameterByName = GetParameterByName(AddShoppingCartXmlParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = AddShoppingCartXml.Checked.ToString();
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AddShoppingCartXmlParameter, AddShoppingCartXml.Checked.ToString(), paymentMethodId);
                    }
                }
            }
        }
Пример #6
0
        /// <summary>
        /// Saves the changes.
        /// </summary>
        /// <param name="dto">The dto.</param>
        public void SaveChanges(object dto)
        {
            if (Visible)
            {
                _paymentMethodDto = dto as PaymentMethodDto;
                if ((_paymentMethodDto != null) && (_paymentMethodDto.PaymentMethodParameter != null))
                {
                    Guid paymentMethodId = Guid.Empty;
                    if (_paymentMethodDto.PaymentMethod.Count > 0)
                    {
                        paymentMethodId = _paymentMethodDto.PaymentMethod[0].PaymentMethodId;
                    }

                    PaymentMethodDto.PaymentMethodParameterRow parameterByName = GetParameterByName(PriceListArgsParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = PriceArgList.Text;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, PriceListArgsParameter, PriceArgList.Text, paymentMethodId);
                    }

                    parameterByName = GetParameterByName(AdditionalValuesParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = AdditionalValues.Text;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AdditionalValuesParameter, AdditionalValues.Text, paymentMethodId);
                    }

                    parameterByName = GetParameterByName(UseOnePhaseTransactionParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = UseOnePhaseTransaction.Checked.ToString();
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, UseOnePhaseTransactionParameter, UseOnePhaseTransaction.Checked.ToString(), paymentMethodId);
                    }

                    parameterByName = GetParameterByName(GetLegalAddressParameter);
                    if (parameterByName != null)
                    {
                        parameterByName.Value = GetLegalAddress.Checked.ToString();
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, GetLegalAddressParameter, GetLegalAddress.Checked.ToString(), paymentMethodId);
                    }
                }
            }
        }
 private void CreateParameter(PaymentMethodDto dto, string name, string value, Guid paymentMethodId)
 {
     PaymentMethodDto.PaymentMethodParameterRow row = dto.PaymentMethodParameter.NewPaymentMethodParameterRow();
     row.PaymentMethodId = paymentMethodId;
     row.Parameter       = name;
     row.Value           = value;
     if (row.RowState == DataRowState.Detached)
     {
         dto.PaymentMethodParameter.Rows.Add(row);
     }
 }
Пример #8
0
        /// <summary>
        /// Creates the parameter.
        /// </summary>
        /// <param name="dto">The dto.</param>
        /// <param name="name">The name.</param>
        /// <param name="value">The value.</param>
        /// <param name="paymentMethodId">The payment method id.</param>
        private void CreateParameter(PaymentMethodDto dto, string name, string value, Guid paymentMethodId)
        {
            PaymentMethodDto.PaymentMethodParameterRow newRow = dto.PaymentMethodParameter.NewPaymentMethodParameterRow();
            newRow.PaymentMethodId = paymentMethodId;
            newRow.Parameter       = name;
            newRow.Value           = value;

            // add the row to the dto
            if (newRow.RowState == DataRowState.Detached)
            {
                dto.PaymentMethodParameter.Rows.Add(newRow);
            }
        }
Пример #9
0
        /// <summary>
        /// Binds the data.
        /// </summary>
        public void BindData()
        {
            GenericTable.Rows.Clear();
            Gateway gateway = GetGateways().GetGatewayById(Gateways.SelectedValue);

            if (gateway == null)
            {
                GenericTable.Visible = false;
                return;
            }
            else
            {
                GenericTable.Visible = true;
            }

            // fill in the form fields
            if (_PaymentMethodDto != null && _PaymentMethodDto.PaymentMethodParameter != null)
            {
                PaymentMethodDto.PaymentMethodParameterRow param = null;
                param = GetParameterByName(_GatewayParameterName);
                if (param != null && String.Compare(param.Value, Gateways.SelectedValue, true) == 0)
                {
                    foreach (PaymentMethodDto.PaymentMethodParameterRow pRow in _PaymentMethodDto.PaymentMethodParameter)
                    {
                        // skip parameter with name "Gateway" and process all the other parameters
                        if (String.Compare(pRow.Parameter, _GatewayParameterName, true) != 0)
                        {
                            GatewayProperty prop = gateway.FindPropertyByName(pRow.Parameter);
                            if (prop != null)
                            {
                                CreateRow(prop.Name, prop.FriendlyName, pRow.Value, prop.Required);
                            }
                        }
                    }
                }
                else
                {
                    if (gateway.Properties != null)
                    {
                        foreach (GatewayProperty prop in gateway.Properties)
                        {
                            CreateRow(prop.Name, prop.FriendlyName, "", prop.Required);
                        }
                    }
                }
            }
            else
            {
                this.Visible = false;
            }
        }
        public static string GetParameter(this PaymentMethodDto.PaymentMethodParameterRow row, string name, string defaultValue = null)
        {
            if (row == null || string.IsNullOrWhiteSpace(row.Value))
            {
                if (defaultValue != null)
                {
                    return(defaultValue);
                }

                throw new PaymentException(
                          PaymentException.ErrorType.ConfigurationError,
                          "NO_SETTING",
                          "Vipps payment provider: Required setting '" + name + "' is not specified.");
            }
            return(row.Value);
        }
Пример #11
0
        /// <summary>
        /// Handles the Load event of the Page control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
        protected void Page_Load(object sender, System.EventArgs e)
        {
            if (!this.IsPostBack)
            {
                if (_PaymentMethodDto != null && _PaymentMethodDto.PaymentMethodParameter != null)
                {
                    PaymentMethodDto.PaymentMethodParameterRow param = null;
                    param = GetParameterByName(_GatewayParameterName);
                    if (param != null && !String.IsNullOrEmpty(param.Value))
                    {
                        ManagementHelper.SelectListItemIgnoreCase(Gateways, param.Value);
                    }

                    BindData();
                }
            }
        }
Пример #12
0
        public void BindData()
        {
            if ((_paymentMethodDto != null) && (_paymentMethodDto.PaymentMethodParameter != null))
            {
                PaymentMethodDto.PaymentMethodParameterRow parameterByName = GetParameterByName(PriceListArgsParameter);
                if (parameterByName != null)
                {
                    PriceArgList.Text = parameterByName.Value;
                }

                parameterByName = GetParameterByName(AdditionalValuesParameter);
                if (parameterByName != null)
                {
                    AdditionalValues.Text = parameterByName.Value;
                }
            }
            else
            {
                Visible = false;
            }
        }
Пример #13
0
        /// <summary>
        /// Saves the object changes.
        /// </summary>
        /// <param name="dto">The dto.</param>
        public void SaveChanges(object dto)
        {
            if (this.Visible)
            {
                _paymentMethodDto = dto as PaymentMethodDto;

                if (_paymentMethodDto != null && _paymentMethodDto.PaymentMethodParameter != null)
                {
                    Guid paymentMethodId = Guid.Empty;
                    if (_paymentMethodDto.PaymentMethod.Count > 0)
                    {
                        paymentMethodId = _paymentMethodDto.PaymentMethod[0].PaymentMethodId;
                    }

                    PaymentMethodDto.PaymentMethodParameterRow param = null;

                    // TestFlag parameter
                    param = GetParameterByName(AuthorizeTokenExGateway.TestParameterName);
                    if (param != null)
                    {
                        param.Value = TestFlagYes.Checked.ToString();
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AuthorizeTokenExGateway.TestParameterName, TestFlagYes.Checked.ToString(), paymentMethodId);
                    }

                    param = GetParameterByName(AuthorizeTokenExGateway.UserParameterName);
                    if (param != null)
                    {
                        param.Value = User.Text;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AuthorizeTokenExGateway.UserParameterName, User.Text, paymentMethodId);
                    }

                    param = GetParameterByName(AuthorizeTokenExGateway.TransactionKeyParameterName);
                    if (param != null)
                    {
                        param.Value = Password.Text;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AuthorizeTokenExGateway.TransactionKeyParameterName, Password.Text, paymentMethodId);
                    }

                    #region Regular Transaction Parameters

                    param = GetParameterByName(AuthorizeTokenExGateway.PaymentOptionParameterName);
                    if (param != null)
                    {
                        param.Value = RadioButtonListOptions.SelectedValue;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AuthorizeTokenExGateway.PaymentOptionParameterName, RadioButtonListOptions.SelectedValue, paymentMethodId);
                    }
                    #endregion

                    #region Recurring Transaction Parameters

                    param = GetParameterByName(AuthorizeTokenExGateway.RecurringMethodParameterName);
                    if (param != null)
                    {
                        param.Value = ddlRecurringMethod.SelectedValue;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AuthorizeTokenExGateway.RecurringMethodParameterName, ddlRecurringMethod.SelectedValue, paymentMethodId);
                    }

                    param = GetParameterByName(AuthorizeTokenExGateway.CancelStatusParameterName);
                    if (param != null)
                    {
                        param.Value = ddlCancelStatus.SelectedValue;
                    }
                    else
                    {
                        CreateParameter(_paymentMethodDto, AuthorizeTokenExGateway.CancelStatusParameterName, ddlCancelStatus.SelectedValue, paymentMethodId);
                    }
                    #endregion
                }
            }
        }
Пример #14
0
        /// <summary>
        /// Saves the object changes.
        /// </summary>
        /// <param name="dto">The dto.</param>
        public void SaveChanges(object dto)
        {
            if (this.Visible)
            {
                _PaymentMethodDto = dto as PaymentMethodDto;

                if (_PaymentMethodDto != null && _PaymentMethodDto.PaymentMethodParameter != null)
                {
                    Guid paymentMethodId = Guid.Empty;
                    if (_PaymentMethodDto.PaymentMethod.Count > 0)
                    {
                        paymentMethodId = _PaymentMethodDto.PaymentMethod[0].PaymentMethodId;
                    }

                    PaymentMethodDto.PaymentMethodParameterRow param = null;

                    param = GetParameterByName(AuthorizePaymentGateway._UserParameterName);
                    if (param != null)
                    {
                        param.Value = User.Text;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, AuthorizePaymentGateway._UserParameterName, User.Text, paymentMethodId);
                    }

                    param = GetParameterByName(AuthorizePaymentGateway._TransactionKeyParameterName);
                    if (param != null)
                    {
                        param.Value = Password.Text;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, AuthorizePaymentGateway._TransactionKeyParameterName, Password.Text, paymentMethodId);
                    }

                    #region Regular Transaction Parameters
                    param = GetParameterByName(AuthorizePaymentGateway._ProcessUrlParameterName);
                    if (param != null)
                    {
                        param.Value = ProcessingUrl.Text;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, AuthorizePaymentGateway._ProcessUrlParameterName, ProcessingUrl.Text, paymentMethodId);
                    }

                    string poValue = "";
                    if (RadioButtonListOptions.SelectedIndex == 0)
                    {
                        poValue = "A";
                    }
                    else if (RadioButtonListOptions.SelectedIndex == 1)
                    {
                        poValue = "S";
                    }

                    param = GetParameterByName(AuthorizePaymentGateway._PaymentOptionParameterName);
                    if (param != null)
                    {
                        param.Value = poValue;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, AuthorizePaymentGateway._PaymentOptionParameterName, poValue, paymentMethodId);
                    }
                    #endregion

                    #region Recurring Transaction Parameters
                    param = GetParameterByName(AuthorizePaymentGateway._RecurringProcessUrlParameterName);
                    if (param != null)
                    {
                        param.Value = RecurringProcessingUrl.Text;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, AuthorizePaymentGateway._RecurringProcessUrlParameterName, RecurringProcessingUrl.Text, paymentMethodId);
                    }

                    param = GetParameterByName(AuthorizePaymentGateway._RecurringMethodParameterName);
                    if (param != null)
                    {
                        param.Value = ddlRecurringMethod.SelectedValue;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, AuthorizePaymentGateway._RecurringMethodParameterName, ddlRecurringMethod.SelectedValue, paymentMethodId);
                    }

                    param = GetParameterByName(AuthorizePaymentGateway._CancelStatusParameterName);
                    if (param != null)
                    {
                        param.Value = ddlCancelStatus.SelectedValue;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, AuthorizePaymentGateway._CancelStatusParameterName, ddlCancelStatus.SelectedValue, paymentMethodId);
                    }
                    #endregion
                }
            }
        }
Пример #15
0
        /// <summary>
        /// Binds the data.
        /// </summary>
        public void BindData()
        {
            GenericTable.Rows.Clear();
            Gateway gateway = GetGateways().GetGatewayById(Gateways.SelectedValue);

            if (gateway == null)
            {
                GenericTable.Visible = false;
                return;
            }
            else
            {
                GenericTable.Visible = true;
            }

            TransactionTypeList.Items.Clear();
            foreach (TransactionType type in gateway.TransactionTypes)
            {
                TransactionTypeList.Items.Add(new ListItem(type.FriendlyName, type.Name));
            }
            TransactionTypeList.DataBind();

            // fill in the form fields
            if (_PaymentMethodDto != null && _PaymentMethodDto.PaymentMethodParameter != null)
            {
                PaymentMethodDto.PaymentMethodParameterRow param = null;
                param = GetParameterByName(_TransactionTypeParameterName);

                if (param != null)
                {
                    ManagementHelper.SelectListItemIgnoreCase(TransactionTypeList, param.Value);
                }

                param = GetParameterByName(_GatewayParameterName);
                if (param != null && String.Compare(param.Value, Gateways.SelectedValue, true) == 0)
                {
                    foreach (PaymentMethodDto.PaymentMethodParameterRow pRow in _PaymentMethodDto.PaymentMethodParameter)
                    {
                        // skip parameter with name "Gateway" and process all the other parameters
                        if (String.Compare(pRow.Parameter, _GatewayParameterName, true) != 0 &&
                            String.Compare(pRow.Parameter, _TransactionTypeParameterName, true) != 0)
                        {
                            GatewayProperty prop = gateway.FindPropertyByName(pRow.Parameter);
                            if (prop != null)
                            {
                                CreateRow(prop.Name, prop.FriendlyName, pRow.Value, prop.Required);
                            }
                        }
                    }
                }
                else
                {
                    if (gateway.Properties != null)
                    {
                        foreach (GatewayProperty prop in gateway.Properties)
                        {
                            CreateRow(prop.Name, prop.FriendlyName, "", prop.Required);
                        }
                    }
                }
            }
            else
            {
                this.Visible = false;
            }
        }
Пример #16
0
        /// <summary>
        /// Saves the object changes.
        /// </summary>
        /// <param name="dto">The dto.</param>
        public void SaveChanges(object dto)
        {
            if (this.Visible)
            {
                _PaymentMethodDto = dto as PaymentMethodDto;

                if (_PaymentMethodDto != null && _PaymentMethodDto.PaymentMethodParameter != null)
                {
                    Gateway gateway = GetGateways().GetGatewayById(Gateways.SelectedValue);

                    Guid paymentMethodId = Guid.Empty;
                    if (_PaymentMethodDto.PaymentMethod.Count > 0)
                    {
                        paymentMethodId = _PaymentMethodDto.PaymentMethod[0].PaymentMethodId;
                    }

                    // add new parameters
                    StringBuilder paramsFilter = new StringBuilder();

                    if (gateway.Properties != null)
                    {
                        foreach (GatewayProperty prop in gateway.Properties)
                        {
                            System.Web.UI.Control ctrl = GenericTable.FindControl(prop.Name);
                            if (ctrl != null)
                            {
                                string val = ((TextBox)ctrl).Text;

                                PaymentMethodDto.PaymentMethodParameterRow row = GetParameterByName(prop.Name);
                                if (row != null)
                                {
                                    row.Value = val;
                                }
                                else
                                {
                                    CreateParameter(_PaymentMethodDto, prop.Name, val, paymentMethodId);
                                }
                                paramsFilter.AppendFormat("Parameter <> '{0}' AND ", prop.Name);
                            }
                        }
                    }

                    // add gateway parameter
                    PaymentMethodDto.PaymentMethodParameterRow gRow = GetParameterByName(_GatewayParameterName);
                    if (gRow != null)
                    {
                        gRow.Value = Gateways.SelectedValue;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, _GatewayParameterName, Gateways.SelectedValue, paymentMethodId);
                    }
                    paramsFilter.AppendFormat("Parameter <> '{0}'", _GatewayParameterName);

                    // add transaction type parameter
                    PaymentMethodDto.PaymentMethodParameterRow trRow = GetParameterByName(_TransactionTypeParameterName);
                    if (trRow != null)
                    {
                        trRow.Value = TransactionTypeList.SelectedValue;
                    }
                    else
                    {
                        CreateParameter(_PaymentMethodDto, _TransactionTypeParameterName, TransactionTypeList.SelectedValue, paymentMethodId);
                    }
                    paramsFilter.AppendFormat(" AND Parameter <> '{0}'", _TransactionTypeParameterName);

                    // remove parameters that are not used anymore
                    string filter = paramsFilter.ToString();

                    PaymentMethodDto.PaymentMethodParameterRow[] rows = (PaymentMethodDto.PaymentMethodParameterRow[])_PaymentMethodDto.PaymentMethodParameter.Select(filter);
                    if (rows != null && rows.Length > 0)
                    {
                        foreach (PaymentMethodDto.PaymentMethodParameterRow pRow in rows)
                        {
                            pRow.Delete();
                        }
                    }
                }
            }
        }
Пример #17
0
        /// <summary>
        /// Binds the data.
        /// </summary>
        public void BindData()
        {
            BindCancelStatusesDropDown();

            // fill in the form fields
            if (_PaymentMethodDto != null && _PaymentMethodDto.PaymentMethodParameter != null)
            {
                PaymentMethodDto.PaymentMethodParameterRow param = null;

                param = GetParameterByName(AuthorizePaymentGateway._UserParameterName);
                if (param != null)
                {
                    User.Text = param.Value;
                }

                param = GetParameterByName(AuthorizePaymentGateway._TransactionKeyParameterName);
                if (param != null)
                {
                    Password.Text = param.Value;
                }

                param = GetParameterByName(AuthorizePaymentGateway._ProcessUrlParameterName);
                if (param != null)
                {
                    ProcessingUrl.Text = param.Value;
                }

                param = GetParameterByName(AuthorizePaymentGateway._PaymentOptionParameterName);
                if (param != null)
                {
                    if (String.Compare(param.Value, "A", true) == 0)
                    {
                        RadioButtonListOptions.SelectedIndex = 0;
                    }
                    else if (String.Compare(param.Value, "S", true) == 0)
                    {
                        RadioButtonListOptions.SelectedIndex = 1;
                    }
                }

                param = GetParameterByName(AuthorizePaymentGateway._RecurringProcessUrlParameterName);
                if (param != null)
                {
                    RecurringProcessingUrl.Text = param.Value;
                }

                param = GetParameterByName(AuthorizePaymentGateway._RecurringMethodParameterName);
                if (param != null)
                {
                    ManagementHelper.SelectListItem(ddlRecurringMethod, param.Value);
                }

                param = GetParameterByName(AuthorizePaymentGateway._CancelStatusParameterName);
                if (param != null)
                {
                    ManagementHelper.SelectListItem(ddlCancelStatus, param.Value);
                }
            }
            else
            {
                this.Visible = false;
            }
        }