コード例 #1
0
        public ActionResult BeginConfirm(TransactionConfirmationModel model)
        {
            if (model.Amount <= 0)
            {
                ModelState.AddModelError("Amount", "The field Amount must be greater than zero");
            }
            else
            {
                try
                {
                    var rublon = new Rublon2Factor(Globals.SystemToken, Globals.SecretKey);
                    var message = string.Format("Do you confirm transaction no. {0} with the amount of {1:C}?", model.TransactionID, model.Amount);
                    var parameters = new JObject();
                    parameters.Add("transId", model.TransactionID);
                    var url = rublon.Confirm(Globals.Host + "/Callback/TransactionConfirm",
                                             User.Identity.Name,
                                             User.Identity.Name,
                                             message,
                                             parameters);

                    if (!string.IsNullOrEmpty(url))
                    {
                        return Redirect(url);
                    }
                }
                catch (Exception)
                {
                    ModelState.AddModelError("", "Transaction confirm failed");
                }
            }

            return View("ConfirmTransaction");
        }
コード例 #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                hiddenTransactionId.Value = new Random().Next().ToString();
                lbTransactionId.Text = hiddenTransactionId.Value;
            }
            else
            {
                try
                {
                    var amount = decimal.Parse(tbAmount.Text);
                    if (amount <= 0)
                    {
                        validatorAmountValue.IsValid = false;
                    }
                    else
                    {
                        try
                        {
                            var rublon = new Rublon2Factor(Globals.SystemToken, Globals.SecretKey);
                            var message = string.Format("Do you confirm transaction no. {0} with the amount of {1:C}?", hiddenTransactionId.Value, amount);
                            var parameters = new JObject();
                            parameters.Add("transId", hiddenTransactionId.Value);
                            var user = Membership.GetUser(User.Identity.Name);
                            var url = rublon.Confirm("http://localhost:53637/Callback/ConfirmTransaction",
                                                     User.Identity.Name,
                                                     user.Email,
                                                     message,
                                                     parameters);

                            if (!string.IsNullOrEmpty(url))
                            {
                                Response.Redirect(url);
                            }
                        }
                        catch (Exception)
                        {

                        }
                    }
                }
                catch(Exception)
                {
                    validatorAmountType.IsValid = false;
                }
            }
        }