Exemple #1
0
        private void GetMail(MailDisplayTypes MailDisplayType)
        {
            if (MailDisplayType == MailDisplayTypes.All)
            {
                this.dt_Messages = Lib.GetAllMail(User["shortname"].ToString());
            }
            else if (MailDisplayType == MailDisplayTypes.Unread)
            {
                this.dt_Messages = Lib.GetUnreadMail(User["shortname"].ToString());
            }
            else if (MailDisplayType == MailDisplayTypes.Sent)
            {
                this.dt_Messages = Lib.GetSentMail(User["shortname"].ToString());
            }

            if (this.dt_Messages.Rows.Count >= 1)
            {
                foreach (DataRow dr_Tmp in this.dt_Messages.Rows)
                {
                    this.o_Message = new UserMailMessage(Convert.ToInt32(dr_Tmp["M_ID"].ToString()), Convert.ToDateTime(dr_Tmp["M_Created"].ToString()), dr_Tmp["M_Sender"].ToString(), dr_Tmp["M_Receiver"].ToString(), dr_Tmp["M_Subject"].ToString(), dr_Tmp["M_Body"].ToString(), Lib.ConvertToBoolean(dr_Tmp["M_Read"]));
                    this.al_Messages.Add(this.o_Message);
                }
            }
        }
Exemple #2
0
        public int DisplayMail(MailDisplayTypes MailDisplayType)
        {
            this.al_Messages.Clear();

            this.GetMail(MailDisplayType);
            this.o_Menu      = new Menu();
            this.o_Menu.User = this.o_User;

            if (MailDisplayType == MailDisplayTypes.All)
            {
                this.o_Menu.Header = "-- Inbox - All --";
            }
            else if (MailDisplayType == MailDisplayTypes.Unread)
            {
                this.o_Menu.Header = "--Inbox - New--";
            }
            else if (MailDisplayType == MailDisplayTypes.Sent)
            {
                this.o_Menu.Header = "--Sent--";
            }

            this.o_Menu.MenuItems = new ArrayList();
            foreach (UserMailMessage o_Tmp in this.al_Messages)
            {
                this.o_Menu.MenuItems.Add("Subject: " + o_Tmp.Subject + "    From: " + o_Tmp.Sender + "    To: " + o_Tmp.Recipient);
            }
            this.o_Menu.Footer   = "";
            this.o_Menu.Prompt   = "Please make a selection: ";
            this.o_Menu.MenuType = Menu.MenuTypes.SingleChoiceBack;
            int result = 0;

            ArrayList al_Tmp = new ArrayList();

            while (result < 1)
            {
                // al_Tmp contains the integer number of the message to view
                al_Tmp = o_Menu.ShowMenu(ref result);
                // Always catch nulls coming back from menus.
                // That usually means the client disconnected at the menu.
                if (al_Tmp == null)
                {
                    return(0);
                }
                if (result >= 1)
                {
                    return(result);
                }
                if (al_Tmp.Count == 0)
                {
                    this.Mail();
                    return(1);
                }
                else
                {
                    for (int i = al_Tmp.Count - 1; i >= 0; i--)
                    {
                        this.ViewMessage((UserMailMessage)al_Messages[((int)al_Tmp[0]) - 1]);
                    }
                }
            }
            return(0);
        }