private void BindDataToDDL() { Money FirstElementPrice = Money.Zero; ddlOptions.Items.Clear(); ddlOptions.Items.AddRange(UpgradePageHelper.GetMembershipPacks(User, ref FirstElementPrice)); ddlOptions.DataBind(); PriceLiteral.Text = FirstElementPrice.ToString(); }
protected override ApiResultMessage HandleRequest(object args) { string token = ((JObject)args)["token"].ToString(); int userId = ApiAccessToken.ValidateAndGetUserId(token); Member User = new Member(userId); Money FirstPackPrice = Money.Zero; //Available Balances PurchaseOption purchaseOption = PurchaseOption.Get(PurchaseOption.Features.Upgrade); List <int> availableBalances = new List <int>(); if (purchaseOption.PurchaseBalanceEnabled) { availableBalances.Add((int)PurchaseBalances.Purchase); } if (purchaseOption.CashBalanceEnabled) { availableBalances.Add((int)PurchaseBalances.Cash); } //Always allow to upgrade via payment processor availableBalances.Add((int)PurchaseBalances.PaymentProcessor); //List of memberships var activeMemberships = Membership.GetActiveMembershipsDataTables(); return(new ApiResultMessage { success = true, message = String.Empty, data = new ApiUpgradeData { warningMessage = UpgradePageHelper.GetWarningMessage(User), availableMembershipPacks = MembershipPack.AllPurchaseablePacks.Select(elem => new ApiMembershipPack(User, elem)).ToList(), availableBalances = availableBalances, memberships = activeMemberships.Rows.Cast <DataRow>().Select(elem => new ApiMembership(elem)).ToList(), balances = ApiMember.GetBalances(User) } }); }
public ApiMembershipPack(Member user, MembershipPack pack) { this.description = UpgradePageHelper.GetMembershipPackDescription(user, pack); this.packId = pack.Id; this.price = new ApiMoney(pack.GetPrice(user)); }
protected void Page_Load(object sender, EventArgs e) { var targetFeature = PurchaseOption.Features.Upgrade; var purchaseOption = PurchaseOption.Get(targetFeature); if (purchaseOption.PurchaseBalanceEnabled) { UpgradeFromAdBalance.Visible = true; } else { UpgradeFromAdBalance.Visible = false; adBalanceInfo.Visible = false; } if (AppSettings.Payments.CashBalanceEnabled && purchaseOption.CashBalanceEnabled) { UpgradeFromCashBalance.Visible = true; } else { UpgradeFromCashBalance.Visible = false; cashBalanceInfo.Visible = false; } AccessManager.RedirectIfDisabled(AppSettings.TitanFeatures.UpgradeEnabled); User = Member.CurrentInCache; if (!Page.IsPostBack) { //Lang LangAdder.Add(UpgradeFromAdBalance, U6012.PAYVIAPURCHASEBALANCE); LangAdder.Add(UpgradeFromCashBalance, U6005.PAYVIACASHBALANCE); LangAdder.Add(UpgradeViaPaymentProcessor, U6005.PAYVIAPAYMENTPROCESSOR); //Bind the data dor DDL BindDataToDDL(); //Visibility UpgradeViaPaymentProcessorPlaceHolder.Visible = PaymentAccountDetails.AreIncomingPaymentProcessorsAvailable(); } if (TitanFeatures.IsRofriqueWorkMines) { UpgradeFromAdBalancePlaceHolder.Visible = false; UpgradeViaPaymentProcessorPlaceHolder.Visible = false; } HideCashBalanceDepositCommissionColumn = AreAllCashBalanceDepositCommissionsZero(); ddlOptions.Attributes.Add("onchange", "updatePrice();"); autopayHelpArray = new Dictionary <string, bool>(); Label10.Text = AppSettings.Memberships.TenPointsValue.ToClearString(); LabelIle.Text = AppSettings.Memberships.UpgradePointsDiscount.ToString(); //Display warning string WarningMessage = UpgradePageHelper.GetWarningMessage(User); WarningPanel.Visible = !String.IsNullOrEmpty(WarningMessage); WarningLiteral.Text = WarningMessage; AdBalanceLiteral.Text = User.PurchaseBalance.ToString(); CashBalanceLiteral.Text = User.CashBalance.ToString(); if (AppSettings.Points.LevelMembershipPolicyEnabled) { BuyUpgradePlaceHolder.Visible = false; } hiddenProperties = MembershipProperty.GetPropsToHideForClient(); TypesMembershipProperties.Text = AdPackTypeMembershipMapper.Mapper.GetHtmlFromCache(); AdPackPropsPlaceHolder.Visible = AppSettings.TitanFeatures.AdvertAdPacksEnabled; PaymentProcessorsButtonPlaceholder.Visible = false; }