Пример #1
0
        private void ExportSubscriptions(bool all, bool perUser)
        {
            List <int> selectedSubscriptions = new List <int>();

            if (all)
            {
                int subscriptionPlanId             = AlwaysConvert.ToInt(SubscriptionPlan.SelectedValue);
                IList <Subscription> subscriptions = SubscriptionDataSource.Search(subscriptionPlanId, OrderNumber.Text, string.Empty, FirstName.Text, LastName.Text, Email.Text, ExpirationStart.SelectedDate, ExpirationEnd.SelectedDate, BitFieldState.Any);
                foreach (Subscription subscription in subscriptions)
                {
                    selectedSubscriptions.Add(subscription.Id);
                }
            }
            else
            {
                List <DataKey> selectedItems = GetSelectedItems();
                foreach (DataKey item in selectedItems)
                {
                    selectedSubscriptions.Add((int)item.Value);
                }
            }
            if (selectedSubscriptions.Count <= 0)
            {
                return;
            }
            Session["Subscriptions_To_Export"] = selectedSubscriptions;
            StringBuilder exportJS = new StringBuilder();

            exportJS.AppendLine("var iframe = document.createElement(\"iframe\");");
            exportJS.AppendLine("iframe.src = \"ExportSubscriptions.ashx?PerUser="******"\";");
            exportJS.AppendLine("iframe.style.display = \"none\";");
            exportJS.AppendLine("document.body.appendChild(iframe);");
            ScriptManager.RegisterClientScriptBlock(SubscriptionsAjax, typeof(UpdatePanel), "downloadexportfile", exportJS.ToString(), true);
        }
Пример #2
0
        private void SendEmail(bool all, bool perUser)
        {
            List <int> selectedIds = new List <int>();

            if (all)
            {
                if (perUser)
                {
                    int subscriptionPlanId             = AlwaysConvert.ToInt(SubscriptionPlan.SelectedValue);
                    IList <Subscription> subscriptions = SubscriptionDataSource.Search(subscriptionPlanId, OrderNumber.Text, string.Empty, FirstName.Text, LastName.Text, Email.Text, ExpirationStart.SelectedDate, ExpirationEnd.SelectedDate, (BitFieldState)Enum.Parse(typeof(BitFieldState), ActiveOnly.SelectedValue));
                    foreach (Subscription subscription in subscriptions)
                    {
                        int userId = subscription.User.Id;
                        if (!selectedIds.Contains(userId))
                        {
                            selectedIds.Add(userId);
                        }
                    }
                }
                else
                {
                    int subscriptionPlanId             = AlwaysConvert.ToInt(SubscriptionPlan.SelectedValue);
                    IList <Subscription> subscriptions = SubscriptionDataSource.Search(subscriptionPlanId, OrderNumber.Text, string.Empty, FirstName.Text, LastName.Text, Email.Text, ExpirationStart.SelectedDate, ExpirationEnd.SelectedDate, (BitFieldState)Enum.Parse(typeof(BitFieldState), ActiveOnly.SelectedValue));
                    foreach (Subscription subscription in subscriptions)
                    {
                        selectedIds.Add(subscription.Id);
                    }
                }
            }
            else
            {
                if (perUser)
                {
                    List <DataKey> selectedItems = GetSelectedItems();
                    foreach (DataKey item in selectedItems)
                    {
                        if (item.Values.Count > 1)
                        {
                            int userId = AlwaysConvert.ToInt(item.Values[1].ToString());
                            if (!selectedIds.Contains(userId))
                            {
                                selectedIds.Add(userId);
                            }
                        }
                    }
                }
                else
                {
                    List <DataKey> selectedItems = GetSelectedItems();
                    foreach (DataKey item in selectedItems)
                    {
                        int subscriptionId = AlwaysConvert.ToInt(item.Value.ToString());
                        selectedIds.Add(subscriptionId);
                    }
                }
            }

            if (selectedIds.Count < 1)
            {
                return;
            }
            Session["SendMail_IdList"] = (perUser ? "UserId:" : "SubscriptionId:") + AlwaysConvert.ToList(",", selectedIds);
            Response.Redirect("../Users/SendMail.aspx?ReturnUrl=" + Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes("~/Admin/People/Subscriptions/Default.aspx")));
        }