private void bunifuFlatButton1_Click(object sender, EventArgs e) { if (lvMessages.SelectedItems.Count > 0) { ListViewItem itm = lvMessages.SelectedItems[0]; RemindMeMessages mess = BLOnlineDatabase.GetRemindMeMessageById(Convert.ToInt32(itm.Tag)); if (mess == null) { RemindMeMessageFormManager.MakeMessagePopup("Could not show this message. It does not exist anymore", 4); lvMessages.Items.Remove(itm); BLReadMessages.DeleteMessage(Convert.ToInt32(itm.Tag)); return; //Doesn't exist in the database anymore } if (mess.NotificationType == "REMINDMEBOX") { BLIO.Log("Attempting to show the user a RemindMe message(REMINDMEBOX)..."); RemindMeBox.Show("A Message from the creator of RemindMe", mess.Message.Replace("¤", Environment.NewLine), RemindMeBoxReason.OK); } else if (mess.NotificationType == "REMINDMEMESSAGEFORM") { BLIO.Log("Attempting to show the user a RemindMe message(REMINDMEMESSAGEFORM)..."); RemindMeMessageFormManager.MakeMessagePopup(mess.Message.Replace("¤", Environment.NewLine), mess.NotificationDuration.Value); } else { BLIO.Log("Attempting to show the user a RemindMe message FAILED. Notificationtype=" + mess.NotificationType + " Message=" + mess.Message + " Id=" + mess.Id); RemindMeMessageFormManager.MakeMessagePopup("Could not preview this message. Unknown notification type", 4); lvMessages.Items.Remove(itm); BLReadMessages.DeleteMessage(mess.Id); } } }
private void tmrCheckRemindMeMessages_Tick(object sender, EventArgs e) { //Check for messages sent by me every minute foreach (RemindMeMessages message in BLOnlineDatabase.RemindMeMessages) { //first, check if this user has already read this message. if (BLReadMessages.Messages.Where(m => m.ReadMessageId == message.Id).Count() == 0) { BLIO.Log("RemindMe detected an unread message!"); //User hasn't read it yet. great! Mark the message as read BLReadMessages.MarkMessageRead(message); BLIO.Log("Message marked as read."); if (!string.IsNullOrWhiteSpace(message.MeantForSpecificUser)) { BLIO.Log("This message is specifically for me!"); //This message is meant for a specific user. if (BLSettings.Settings.UniqueString == message.MeantForSpecificUser) { PopupRemindMeMessage(message); } } else if (!string.IsNullOrWhiteSpace(message.MeantForSpecificVersion)) { BLIO.Log("This message is specifically for the currently running RemindMe version (" + IOVariables.RemindMeVersion + ")"); //This message is meant for a specific RemindMe version. Only show this message if the user: Hasn't read this message AND: has this RemindMe version if (IOVariables.RemindMeVersion == message.MeantForSpecificVersion) { //Show the message PopupRemindMeMessage(message); } } else { BLIO.Log("This is a global message. creating popup..."); //A global message, not meant for a specific RemindMe version nor user PopupRemindMeMessage(message); BLIO.Log("popup created"); } } } }