protected override ApiResultMessage HandleRequest(object args)
        {
            var token            = ((JObject)args)["token"].ToString();
            var membershipPackId = Convert.ToInt32(((JObject)args)["membershipPackId"]);
            var htmlResponse     = false;
            var balance          = (PurchaseBalances)Convert.ToInt32(((JObject)args)["balance"]);

            var userId        = ApiAccessToken.ValidateAndGetUserId(token);
            var pack          = new MembershipPack(membershipPackId);
            var User          = new Member(userId);
            var ResultMessage = U3501.UPGRADEOK;

            if (balance == PurchaseBalances.PaymentProcessor)
            {
                var PackPrice = pack.GetPrice(User);
                var bg        = new UpgradeMembershipButtonGenerator(User, PackPrice, pack);
                ResultMessage = GenerateHTMLButtons.GetPaymentButtons(bg);
                htmlResponse  = true;
            }
            else
            {
                Membership.BuyPack(User, pack, balance);
            }

            return(new ApiResultMessage
            {
                success = true,
                message = ResultMessage,
                messageIsHtml = htmlResponse,
                data = null
            });
        }
Exemple #2
0
    protected void upgradeViaPaymentProcessor_Click(object sender, EventArgs e)
    {
        User = Member.Current;

        PaymentProcessorsButtonPlaceholder.Visible = true;
        BuyUpgradePlaceHolder.Visible = false;

        MembershipPack pack      = new MembershipPack(Int32.Parse(ddlOptions.SelectedValue));
        Money          PackPrice = pack.GetPrice(User);

        PriceLiteral.Text = PackPrice.ToString();

        // Buy membership directly via Paypal, etc.
        var bg = new UpgradeMembershipButtonGenerator(User, PackPrice, pack);

        PaymentButtons.Text = GenerateHTMLButtons.GetPaymentButtons(bg);
    }