private async void ExecuteSendTweetCommand() { IsSending = true; List <Tuple <ulong, ulong> > statusIds = new List <Tuple <ulong, ulong> >(); if (ScheduleInformation?.IsTweetScheduled == true) { var accountIds = Accounts.Where(a => a.Use).Select(a => a.Context.UserId); var fileNames = AttachedMedias.Select(m => m.FileName); ScheduleInformation.ScheduleTweet(Text, InReplyTo?.Id, accountIds, fileNames); } else { var statuses = await SendTweet(); statusIds.AddRange(statuses); } if (ScheduleInformation?.IsDeletionScheduled == true) { ScheduleInformation.ScheduleDeletion(statusIds, Text); } if (ScheduleInformation?.IsTweetScheduled == true) { await CloseOrReload(); } IsSending = false; }
private void ScheduleTweet() { var job = new SchedulerJob { JobType = SchedulerJobType.CreateStatus, Text = Text, AccountIds = Accounts.Where(a => a.Use).Select(a => a.Context.UserId).ToList(), TargetTime = ScheduleDate + ScheduleTime.TimeOfDay, InReplyToStatus = InReplyTo?.Id ?? 0, FilesToAttach = AttachedMedias.Select(m => m.FileName).ToList() }; Scheduler.AddJob(job); }