private async Task InternalStartPoll(string arg, bool isPublic = false) { var channel = (ITextChannel)Context.Channel; if (!(Context.User as IGuildUser).GuildPermissions.ManageChannels) { return; } if (string.IsNullOrWhiteSpace(arg) || !arg.Contains(";")) { return; } var data = arg.Split(';'); if (data.Length < 3) { return; } var poll = new Poll(Context.Message, data[0], data.Skip(1), isPublic: isPublic); if (ActivePolls.TryAdd(channel.Guild, poll)) { await poll.StartPoll().ConfigureAwait(false); } else { await channel.SendErrorAsync("Poll is already running on this server.").ConfigureAwait(false); } }
private async Task InternalStartPoll(string arg, bool isPublic = false) { var channel = (ITextChannel)Context.Channel; if (string.IsNullOrWhiteSpace(arg) || !arg.Contains(";")) { return; } var data = arg.Split(';'); if (data.Length < 3) { return; } var poll = new Poll(Context.Message, data[0], data.Skip(1), isPublic: isPublic); if (ActivePolls.TryAdd(channel.Guild.Id, poll)) { await poll.StartPoll().ConfigureAwait(false); } else { await ReplyErrorLocalized("poll_already_running").ConfigureAwait(false); } }
private async Task InternalStartPoll(IUserMessage umsg, string arg, bool isPublic = false) { var channel = (ITextChannel)umsg.Channel; if (!(umsg.Author as IGuildUser).GuildPermissions.ManageChannels) return; if (string.IsNullOrWhiteSpace(arg) || !arg.Contains(";")) return; var data = arg.Split(';'); if (data.Length < 3) return; var poll = new Poll(umsg, data[0], data.Skip(1), isPublic: isPublic); if (ActivePolls.TryAdd(channel.Guild, poll)) { await poll.StartPoll().ConfigureAwait(false); } else await channel.SendMessageAsync("`Poll is already running on this server.`").ConfigureAwait(false); }