示例#1
0
        public override Reminder GetLastDeliveredReminder(int iUserID)
        {
            Reminder rem        = null;
            string   strRequest = @"<?xml version=""1.0"" encoding=""utf-8""?>
<request version=""2.71828"">
  <function name=""GetLastDeliveredReminder"">
      <argument>" + iUserID.ToString() + @"</argument>
  </function>
</request>
";

            try
            {
                XmlDocument dataDoc      = GetDataDocument(strRequest);
                Hashtable   reminderInfo = BuildHash(dataDoc.DocumentElement);

                RepeaterClass newRepeater = null;
                if (reminderInfo[@"repid"] != null)
                {
                    newRepeater = new RepeaterClass(
                        reminderInfo["repid"].ToString(),
                        reminderInfo["pattern"].ToString(),
                        int.Parse(reminderInfo["count"].ToString()),
                        reminderInfo["disabled"].ToString() != "0",
                        reminderInfo["expiration"].ToString());
                }

                DateTime datime = DateTime.ParseExact(reminderInfo["servertime"].ToString(), @"yyyy-MM-dd HH:mm:ss", null);
                rem = new Reminder(
                    reminderInfo[@"id"].ToString(),
                    int.Parse(reminderInfo[@"userid"].ToString()),
                    int.Parse(reminderInfo[@"creatorid"].ToString()),
                    reminderInfo[@"msg"].ToString(),
                    datime,
                    reminderInfo[@"datetime"].ToString(),
                    newRepeater);
            }
            catch (Exception ex)
            {
            }

            return(rem);
        }
示例#2
0
        // used when loading reminders
        public Reminder(string remId,
                        int UserId,
                        int Creator,
                        string strMsg,
                        DateTime dt,
                        string strUserDt,
                        RepeaterClass repeater)
        //ConnectionType deliveredConn,
        //string deliveredName)
        {
            _strID           = remId;
            m_datetime       = dt;
            m_bDelivered     = false;
            _strMessage      = strMsg;
            m_bInDeliveryQue = false;
            _strUserTime     = strUserDt;
            m_repeater       = repeater;

            _iUserID    = UserId;
            _iCreatorID = Creator;

            //_deliveredConnType = deliveredConn;
            //_deliveredName = deliveredName;
        }
示例#3
0
        public override ArrayList GetReminders()
        {
            ArrayList retList    = new ArrayList();
            string    strPattern = "yyyy-MM-dd HH:mm:ss";

            try
            {
                string s =
                    @"<?xml version=""1.0"" encoding=""utf-8""?>
<request version=""2.71828"">
  <function name=""GetReminders"">
      <argument>" + BotName + @"</argument>
  </function>
</request>
";
                XmlDocument dataDoc = GetDataDocument(s);

                XmlNodeList reminderList = dataDoc.SelectNodes(@"/reminders/reminder");
                if (reminderList == null)
                {
                    // yeah, we neeed exceptions
                    return(retList);
                }

                foreach (XmlNode reminderNode in reminderList)
                {
                    Hashtable reminderInfo = new Hashtable();
                    ArrayList contacts     = new ArrayList();

                    foreach (XmlNode remElementNode in reminderNode.ChildNodes)
                    {
                        reminderInfo[remElementNode.Name.ToLower()] = remElementNode.InnerText;
                    }

                    DateTime datime = DateTime.ParseExact(reminderInfo[@"servertime"].ToString(), strPattern, null);

                    RepeaterClass newRepeater = null;
                    if (reminderInfo[@"repid"] != null)
                    {
                        newRepeater = new RepeaterClass(
                            reminderInfo["repid"].ToString(),
                            reminderInfo["pattern"].ToString(),
                            int.Parse(reminderInfo["count"].ToString()),
                            reminderInfo["disabled"].ToString() != "0",
                            reminderInfo["expiration"].ToString());
                    }

                    Reminder rem = new Reminder(
                        reminderInfo[@"id"].ToString(),
                        int.Parse(reminderInfo[@"userid"].ToString()),
                        int.Parse(reminderInfo[@"creatorid"].ToString()),
                        reminderInfo[@"msg"].ToString(),
                        datime,
                        reminderInfo[@"datetime"].ToString(),
                        newRepeater);

                    retList.Add(rem);
                }
            }
            catch (Exception ex)
            {
            }

            return(retList);
        }