private void upgradeMembershipFromBalance(PurchaseBalances balanceType) { SuccMessagePanel.Visible = false; ErrorMessagePanel.Visible = false; try { AppSettings.DemoCheck(); MembershipPack pack = new MembershipPack(Int32.Parse(ddlOptions.SelectedValue)); Member user = Member.Current; Membership.BuyPack(user, pack, balanceType); Response.Redirect("~/status.aspx?type=upgradeok"); } catch (MsgException ex) { ErrorMessagePanel.Visible = true; if (!TitanFeatures.IsRofriqueWorkMines) { ErrorMessage.Text = ex.Message; } else { ErrorMessage.Text = "YOU DONT HAVE ENOUGH FUNDS IN YOUR CASH BALANCE. PLEASE CLICK ON DEPOSIT FUNDS TO TOP UP YOUR CASH BALANCE."; } } catch (Exception ex) { ErrorLogger.Log(ex); throw ex; } }
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 }); }