Ejemplo n.º 1
0
        public async Task SetReminderCommand(SocketGuildUser user, string time, [Remainder] string message)
        {
            TimeSpan timeSpan = TimeSpan.TryParse(time, out timeSpan) ? timeSpan : TimeSpan.Zero;

            if (timeSpan.Minutes < 1 || timeSpan.Hours > 24)
            {
                await ReplyAsync("Invalid time, please choose a time between 1 min (00:01:00) and 24 hours (24:00:00).");

                return;
            }

            var userReminder = new UserReminder()
            {
                UserId   = user.Id,
                TimeSpan = timeSpan,
                Message  = message,
            };

            userReminder.Timer = new Timer(userReminder.TimeSpan.TotalMilliseconds)
            {
                Enabled = true,
            };
            userReminder.Timer.Elapsed += async(sender, e) =>
            {
                await SendReminderMessage(userReminder);
            };

            await ReplyAsync($"Reminder was set!");
        }
Ejemplo n.º 2
0
 public TimeReminderUserReminder SaveMyReminder(TimeReminderUserReminder timeReminderUserReminder)
 {
     if (timeReminderUserReminder.ID == 0)
     {
         using (var db = new ReminderDBEntities())
         {
             UserReminder userreminder = new UserReminder()
             {
                 Reminder = timeReminderUserReminder.Reminder, ReminderDate = timeReminderUserReminder.ReminderDate, UserID = timeReminderUserReminder.UserID
             };
             db.UserReminders.Add(userreminder);
             db.SaveChanges();
             timeReminderUserReminder.ID = userreminder.ID;
         }
     }
     else
     {
         using (var db = new ReminderDBEntities())
         {
             var userReminder = db.UserReminders.SingleOrDefault(u => u.ID == timeReminderUserReminder.ID);
             if (userReminder != null)
             {
                 userReminder.Reminder     = timeReminderUserReminder.Reminder;
                 userReminder.ReminderDate = timeReminderUserReminder.ReminderDate;
                 userReminder.UserID       = timeReminderUserReminder.UserID;
                 db.SaveChanges();
             }
         }
     }
     return(timeReminderUserReminder);
 }
        public ActionResult DeleteConfirmed(int id)
        {
            UserReminder userReminder = db.UserReminders.Find(id);

            db.UserReminders.Remove(userReminder);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 4
0
        private async Task SendReminderMessage(UserReminder userReminder)
        {
            var user = Context.Client.GetUser(userReminder.UserId);
            await user.SendMessageAsync($"Reminder after {userReminder.TimeSpan.ToString(@"hh\:mm\:ss")} with the message '{userReminder.Message}'");

            userReminder.HasReminded = true;
            userReminder.Timer.Dispose();
        }
 public ActionResult Edit([Bind(Include = "ID,UserID,Reminder,ReminderDate")] UserReminder userReminder)
 {
     if (ModelState.IsValid)
     {
         db.Entry(userReminder).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.UserID = new SelectList(db.Users, "ID", "UserName", userReminder.UserID);
     return(View(userReminder));
 }
        public ActionResult Create([Bind(Include = "ID,UserID,Reminder,ReminderDate")] UserReminder userReminder)
        {
            if (ModelState.IsValid)
            {
                db.UserReminders.Add(userReminder);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.UserID = new SelectList(db.Users, "ID", "UserName", userReminder.UserID);
            return(View(userReminder));
        }
        // GET: UserReminders/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            UserReminder userReminder = db.UserReminders.Find(id);

            if (userReminder == null)
            {
                return(HttpNotFound());
            }
            return(View(userReminder));
        }
        // GET: UserReminders/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            UserReminder userReminder = db.UserReminders.Find(id);

            if (userReminder == null)
            {
                return(HttpNotFound());
            }
            ViewBag.UserID = new SelectList(db.Users, "ID", "UserName", userReminder.UserID);
            return(View(userReminder));
        }