Example #1
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            ScheduledSms scheduledSms = new ScheduledSms();

            try
            {
                scheduledSms.ScheduledSmsGuid  = Guid.NewGuid();
                scheduledSms.PrivateNumberGuid = Helper.GetGuid(drpSenderNumber.SelectedValue.Split(';')[0]);
                var dateTime = dtpSendDateTime.FullDateTime;
                if (Session["Language"].ToString() == "fa")
                {
                    scheduledSms.DateTimeFuture = DateManager.GetChristianDateTimeForDB(dateTime);
                }
                else
                {
                    scheduledSms.DateTimeFuture = DateTime.Parse(dateTime);
                }
                //scheduledSms.DateTimeFuture = DateManager.GetChristianDateTimeForDB(dtpSendDateTime.FullDateTime);
                scheduledSms.FilePath   = hdnFilePath.Value;
                scheduledSms.SmsPattern = hdnSmsFormat.Value.TrimEnd(',');
                scheduledSms.UserGuid   = UserGuid;
                scheduledSms.Status     = (int)ScheduledSmsStatus.Stored;
                scheduledSms.TypeSend   = (int)Common.SmsSendType.SendP2PSms;
                scheduledSms.IP         = Ip;
                scheduledSms.Browser    = Browser;

                Facade.ScheduledSms.InsertP2PSms(scheduledSms);

                Response.Redirect(string.Format("/PageLoader.aspx?c={0}", Helper.Encrypt((int)Arad.SMS.Gateway.Business.UserControls.UI_SmsReports_ScheduledSms, Session)));
            }
            catch (Exception ex)
            {
                ShowMessageBox(ex.Message, string.Empty, "danger");
            }
        }
        private void InitializePage()
        {
            try
            {
                btnCancel.Text = Language.GetString(btnCancel.Text);
                ScheduledSms scheduledSms = new ScheduledSms();
                Outbox       outbox       = new Outbox();
                string       sender       = string.Empty;

                if (MasterPage == "usersoutbox" || MasterPage == "useroutbox" || MasterPage == "manualoutbox")
                {
                    outbox = Facade.Outbox.Load(ReferenceGuid);
                    sender = outbox.SenderId;
                    scheduledSms.RequestXML = outbox.RequestXML;
                    scheduledSms.ID         = outbox.ID;

                    using (StringReader stringReader = new StringReader(outbox.RequestXML))
                        using (XmlTextReader reader = new XmlTextReader(stringReader))
                        {
                            while (reader.Read())
                            {
                                if (reader.IsStartElement())
                                {
                                    switch (reader.Name)
                                    {
                                    case "Guid":
                                        scheduledSms.ScheduledSmsGuid = Helper.GetGuid(reader.ReadString());
                                        break;

                                    case "PrivateNumberGuid":
                                        scheduledSms.PrivateNumberGuid = Helper.GetGuid(reader.ReadString());
                                        break;

                                    case "SmsText":
                                        scheduledSms.SmsText = reader.ReadString();
                                        break;

                                    case "Period":
                                        scheduledSms.Period = Helper.GetInt(reader.ReadString());
                                        break;

                                    case "PeriodType":
                                        scheduledSms.PeriodType = Helper.GetInt(reader.ReadString());
                                        break;

                                    case "SendPageSize":
                                        scheduledSms.SendPageSize = Helper.GetInt(reader.ReadString());
                                        break;

                                    case "TypeSend":
                                        scheduledSms.TypeSend = Helper.GetInt(reader.ReadString());
                                        break;

                                    case "StartDateTime":
                                        scheduledSms.StartDateTime = Helper.GetDateTime(reader.ReadString());
                                        break;

                                    case "EndDateTime":
                                        scheduledSms.EndDateTime = Helper.GetDateTime(reader.ReadString());
                                        break;

                                    case "DateTimeFuture":
                                        scheduledSms.DateTimeFuture = Helper.GetDateTime(reader.ReadString());
                                        break;

                                    case "ZoneGuid":
                                    case "ReferenceGuid":
                                        scheduledSms.ReferenceGuid = reader.ReadString();
                                        break;
                                    }
                                }
                            }
                        }
                }
                else
                {
                    scheduledSms = Facade.ScheduledSms.Load(ReferenceGuid);
                    sender       = Facade.PrivateNumber.LoadNumber(scheduledSms.PrivateNumberGuid).Number;
                }

                switch ((SmsSendType)Helper.GetInt(scheduledSms.TypeSend))
                {
                case SmsSendType.SendSms:
                    lblId.Text                = scheduledSms.ID.ToString();
                    lblSendType.Text          = Language.GetString("SendToNumber");
                    lblGroupName.Text         = "----------";
                    lblSender.Text            = sender;
                    dtpSendDate.Date          = DateManager.GetSolarDate(scheduledSms.DateTimeFuture);
                    dtpSendDate.Time          = scheduledSms.DateTimeFuture.TimeOfDay.ToString();
                    txtSmsText.Text           = scheduledSms.SmsText;
                    mvDetails.ActiveViewIndex = 0;
                    break;

                case SmsSendType.SendGroupSms:
                    lblId.Text                = scheduledSms.ID.ToString();
                    lblSendType.Text          = Language.GetString("SendToPhoneBookGroup");
                    lblGroupName.Text         = Facade.PhoneBook.Load(Helper.GetGuid(scheduledSms.ReferenceGuid)).Name;
                    lblSender.Text            = sender;
                    dtpSendDate.Date          = DateManager.GetSolarDate(scheduledSms.DateTimeFuture);
                    dtpSendDate.Time          = scheduledSms.DateTimeFuture.TimeOfDay.ToString();
                    txtSmsText.Text           = scheduledSms.SmsText;
                    mvDetails.ActiveViewIndex = 0;
                    break;

                case SmsSendType.SendFormatSms:
                    lblId.Text                = scheduledSms.ID.ToString();
                    lblSendType.Text          = Language.GetString("SendFromFormat");
                    lblGroupName.Text         = Facade.PhoneBook.Load(Helper.GetGuid(scheduledSms.ReferenceGuid)).Name;
                    lblSender.Text            = sender;
                    dtpSendDate.Date          = DateManager.GetSolarDate(scheduledSms.DateTimeFuture);
                    dtpSendDate.Time          = scheduledSms.DateTimeFuture.TimeOfDay.ToString();
                    txtSmsText.Text           = scheduledSms.SmsText;
                    mvDetails.ActiveViewIndex = 0;
                    break;

                case SmsSendType.SendPeriodSms:
                    lblPeriodId.Text          = scheduledSms.ID.ToString();
                    lblPeriodGroupName.Text   = Facade.PhoneBook.Load(Helper.GetGuid(scheduledSms.ReferenceGuid)).Name;
                    lblPeriodType.Text        = string.Format(Language.GetString("PeriodType"), scheduledSms.Period, Language.GetString(((Business.SmsSentPeriodType)Helper.GetInt(scheduledSms.PeriodType)).ToString()));
                    lblPeriodSender.Text      = sender;
                    txtPeriodSmsText.Text     = scheduledSms.SmsText;
                    dtpStartDate.Date         = DateManager.GetSolarDate(scheduledSms.StartDateTime);
                    dtpStartDate.Time         = scheduledSms.StartDateTime.TimeOfDay.ToString();
                    dtpEndDate.Date           = DateManager.GetSolarDate(scheduledSms.EndDateTime);
                    dtpEndDate.Time           = scheduledSms.EndDateTime.TimeOfDay.ToString();
                    mvDetails.ActiveViewIndex = 1;
                    break;

                case SmsSendType.SendGradualSms:
                    lblGradualId.Text         = scheduledSms.ID.ToString();
                    lblGradualGroup.Text      = Facade.PhoneBook.Load(Helper.GetGuid(scheduledSms.ReferenceGuid)).Name;
                    lblGradualPerid.Text      = string.Format(Language.GetString("GradualCount"), scheduledSms.Period, scheduledSms.SendPageSize);
                    lblGradualSender.Text     = sender;
                    txtGradualSmsText.Text    = scheduledSms.SmsText;
                    mvDetails.ActiveViewIndex = 2;
                    break;

                case SmsSendType.SendBulkSms:
                    XDocument xdoc = new XDocument();
                    xdoc = XDocument.Parse(scheduledSms.RequestXML);
                    IEnumerable <XElement> elements = xdoc.Root.Elements().Elements();

                    lblBulkId.Text      = scheduledSms.ID.ToString();
                    lblBulkSender.Text  = Facade.PrivateNumber.LoadNumber(scheduledSms.PrivateNumberGuid).Number;
                    txtBulkSmsText.Text = scheduledSms.SmsText;

                    mvDetails.ActiveViewIndex = 3;
                    break;
                }
            }
            catch (Exception ex)
            {
                ShowMessageBox(ex.Message, string.Empty, "danger");
            }
        }